SASF Sodalia Adaptive Service Fulfilment Ginevra 1999
sodalia framework
1. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 1
The SoftwareThe Software Factory ConceptFactory Concept
and its Implementationand its Implementation inin SodaliaSodalia
Paolo Tiribelli
Managing Director
PROLAMAT ‘98 Trento-September 9-11,1998
2. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 2
Agenda
T Rationale behind the adoption of a Software Factory
T Sodalia: The Advanced Telecommunications Software Factory
T Software Integrated Management & Engineering Process
T Software Reuse
T Process Improvement and SEPG
T CMM Level 3: Measured Vs Expected Benefits
3. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 3
Information Technology and Business
T Information Technology makes three important new capabilities
available to business:
z The database allows you to tell your customers apart and remember them
individually,
z Interactivity means the customer can now talk to you, rather than serve
as the passive target for your messages
z Mass customization technology enables business to customize products
and services as a matter of routine
T The successful enterprise must be able to integrate its actual
production and service delivery processes with the feedback it
receives from interacting with specific, individual customers
4. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 4
Information Technology and Business
T The business is faced with challenges deriving from the present
highly competitive market:
z Margins are shrinking
z Time-to-market becomes a factor of paramount importance
z The IT investment should be “protected” against evolutions in both
technology and user requirements
z The quality of products and services, more than the price, will play an
important role in customer retention
5. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 5
The Players of the Game
CustomerCustomer
Service/Product
Provider
Service/Product
Provider
Service/Product
Provider
Service/Product
Provider
Software
Developer
Software
Developer
Competition/Cooperation
High Quality Products/Services
Competitive Cost
Mass Customisation
Less Money for IT
spending
Time-to-Market
Protection of the
IT investment
Low cost products
Very high quality
Timeliness in deliveries
Modular, flexible system architectures
6. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 6
The Software Factory Principles
T Take software development from a state of artisanship to a full
fledged, industrial process
T Transform the creative phase into a repeatable, measurable yet
flexible process
T Verify timing,processes, product specifications and even change
product requirements at any time during the production process
T Software reuse incorporated in the development process
T Goals:
• Consistent delivery of products of superior quality, at competitive
price, in shorter time periods, that flexibly meet all customer needs
7. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 7
Sodalia
The Advanced Telecommunications Software Factory
Sodalia mission is to be a profitable and competitevely superior software factory that provides
advanced telecommunications products, application frameworks, reusable components and services
to international telecommunications companies.
The Mission
8. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 8
The Software Factory Paradigm is a new way
to rapidly develop and build, based on strong
integrated processes, High Quality Software
Products (from Reusable Components).
Modern Software Factories are using Mature
Software Processes, Object Oriented
Technology, tools and enabling technologies
to achieve this new capability.
Software Reuse, the building of software
systems from existing components, promises
to reduce development costs and timeframes,
increase quality and reduce maintenance
costs.
Sodalia
The Advanced Telecommunications Software Factory
The Software Factory Paradigm
9. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 9
Focus
• Top Management
Committment
• TQM Model
• Software Process
• Maturity Improvement
• Managerial Staff
Competency
• Technical Staff Competency
• OOT
• Software Reuse
• Enabling Technologies
• CASE Tools
• Telecommunications
Technologies
Sodalia
The Advanced Telecommunications Software Factory
Sodalia Software Factory
Results
• High Quality & Low Cost
Telecommunications
Products & Services:
- Application Frameworks
- End User Applications
• Competence Center for
Methodologies and
Technologies:
- Consultancy
- Advanced Software
Engineering methods
and Tools (SIMEP,
SALMS, SPD, …)
10. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 10
The Software Factory Products
SIMEP Guidelines
(SEI CMM)
Quality System Procedures
(ISO 9001)
OBJECT ORIENTED
PLATFORM
(OOP)
SODALIA ASSET
LIBRARY MANAGEMENT
SYSTEM (SALMS)
REUSABLE SOFTWARE
ARTIFACT LIBRARY
TM/AF
ISM/AF
General Purpose Components
Basic Class Libraries
Graphic Libraries
END USER
APPLICATIONS
NTDCA/CS
NTDCA/SDV
IDNM/FM
IMS/EPI
IMS/CI
SPGW
VBS
ST/Amico
IDNM/SPT
SG/IP
Billing Modules
The Advanced Telecommunicatios Software Factory
11. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 11
ISO 9001 Certification
“ The development of both innovative software
applications for telecommunications networks /
services and advanced software engineering
methods and tools”
The Reference Models: ISO 9001 and SEI CMM
SEI CMM Level 3
“...the organization exploits effective software
engineering practices when standardizing its
software processes...”
Carnegie Mellon University
Software Engineering Institute
The Advanced Telecommunicatios Software Factory
12. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 12
The Reference Models: ISO 9001 and SEI CMM
Process Improvement
… The methodologies and the advanced technologies are aimed at
obtaining error prevention, meeting the needs of our customers.
… Institutionalizing a Sodalia Quality System based upon the ISO 9001
standard, as the first step of a continuous process improvement.
… Every one in Sodalia must be focused on primary quality objectives:
• measuring and improving product quality,
• maintaining ISO 9001 Certification,
• increasing our Capability Maturity Level (SEI CMM)
from Sodalia Quality Policy
We will measure the progress toward these objectives through ( …)
periodic assessments and audits, and the counting of faults detected prior
to and after product release.
The Advanced Telecommunicatios Software Factory
13. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 13
Dec 96June 94
First version
of the
software
process
(SIMEP)
June 95
Evolution and
completion
in accord to the
Sodalia Quality
System and
SEI CMM Level 2
SEI CMM
Level 2
Achievement
Dec
95
ISO 9001 (*)
Certification
May
96
Integration with
SEI CMM Level 3
Requirements
SEI CMM
Level 3
Achievement
Set
97
(*) “The development of both innovative software applications for managing telecommunications
networks / services and advanced software engineering methods and tools”
From beginning to CMM Level 3 ….
The Advanced Telecommunicatios Software Factory
14. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 14
ISO 9000/3 and
SEI CMM
compliance
Sodalia Quality System
ISO 9001
compliance
Sodalia Quality
Manual
Level 2: General Procedures
Level 1: Policy
Rules & Standards
for Documentation
Purchasing TrainingEquipment
Management
Quality System
Management
Level 3: Operating Procedures
Project
Management
Configuration
Management
Software
Process
ServicingContract
Management
Qualification
and Delivery
T D P P
Procedures
Sodalia Software Engineering Process
non-sw processes
Purchasing
Training
Sys. Admin.
A
R&S:
DocId: Defined
R&S: Document
R&S: Control
R&S: Document
Identification
& Management
Production & Editing
Template Usage
Chars Groups
V&V Review
SIMEP Model
Exploration
Concept
Requirements
System
Architecture
System
Programming
C++
Analysis Tailoring
Management
Configuration
Management
Project
V&V Testing
Metrics
Sodalia Sw
Tab. de Bord
SAJ & Pj
Qualification
& Delivery
Project Quality
Plan Support
Internal Quality
Audit
Guidelines
The Advanced Telecommunicatios Software Factory
15. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 15
Iteration # 2
Iteration # 1
System Development Strategy
Concept Exploration
Iteration # n
• CMM SEI Level 3
• Iterative approach
• Integration of management and
engineering activities
• OO Technology
• Reuse
• CMM SEI Level 3
• Iterative approach
• Integration of management and
engineering activities
• OO Technology
• Reuse
SIMEP
Software
Integrated
Management and
Engineering
Process
Software Integrated Management & Engineering Process
16. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 16
SIMEP
The Process
SIMEP fully models an advanced software development process to overcome the deficiences and
drawbacks of traditional waterfall approach.
SIMEP recognizes a progression through successive iterations (rigorous framework for
progression in the project by reiterating a sequence of basic process steps). An important goal of
each iteration is to allow Clients and Sodalia to enrich and better specify Expectations (User
Requirements as stated in the contract) and System Requirements for the next iteration, based on
the results of the current one.
SIMEP Model integrates more perspectives (project management, configuration management,
verification & validation, reuse enabling, core development) of the software production,
providing a framework for consistent planning and tracking activities, among the various actors
of the process, in terms of timing, granularity, artifacts, etc.
Software Integrated Management & Engineering Process
17. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 17
t Process Model
t Guidelines for Project Management, including Software Metrics
t Guidelines for each major “engineering” activity (e.g. requirement definition,
architecture definition, analysis, design, construction)
t Guidelines for Configuration Management
t Guidelines for Verification & Validation activities (e.g. reviewing and testing)
t Guidelines for process tailoring ....(see next slide)
SIMEP
The Product
Software Integrated Management & Engineering Process
18. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 18
Project’s Defined SW Process and Project Plan
(4 “standard” development processes + 1 “exploratory”)
Iteration # 2
Iteration # 1
System Development Strategy
Concept Exploration
Iteration # n
SIMEP
Tailoring
Guidelines
Software Process
Database
Project/Product
characteristics
SIMEP
Process Tailoring
size, risk class,
quality, etc.
Software Integrated Management & Engineering Process
19. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 19
SIMEP
The graphical representation
Component Test
Development
Component Test Script
Component Test Strategy
System Test
System Test Script
System Test Strategy
Integration Test
Development
Integration Test Script
Integration Test Strategy
User Documentation
Production
User Documentation
(Manuals)
Design
Design Speci¼ cation
m
m
System Requirements
System Architecture
Acceptance Test
Development
Acceptance Test Script
Acceptance Test Strategy
Analysis
Iteration Plan
Project
Review
Iteration Plan
p
Users
New expectations
Clients
Iteration
Planning
m
Software Component
Construction
m
Component Test
Development
Software Integrated Management & Engineering Process
20. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 20
Reuse Program
Expected Benefits
q Productivity and Quality improvement
z Reduced maintenance cost
z Improved interoperability among systems
21. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 21
Analisi OO
Design OO
Costruzione
Testing
Analisi OO
Design OO
Costruzione
Testing
Analysis
Design
Construction
Test
Analysis
Design
Construction
Test
Extra costs
of development
“for reuse”
Extra costs for reusable
assets identification
Reduced costs
of development
“with reuse”
Engineering
forreuse
Engineering
withreuse Reuse costs/benefits
22. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 22
Reuse Program
q Definition of a global
approach for reuse, to fit
the Sodalia reuse strategy
q Definition, development
and deployment of
techniques and tools to
support systematic reuse
q Set up of an appropriate
organizational structure
to take care of all reuse
related activities in the
Company
¿ Sodalia’s “Reuse Model”
¿ Reuse methodology (SOODEM, Sodalia
Object Oriented Domain Engineering
Method)
¿ SALMS (Sodalia’s Assets Library
Management System)
¿ RSO, Reuse Support Organization
23. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 23
SALMS and RSAL
Sodalia Technical Library
and internal documents
RSAL TL
User File System
traceability
generalization
usage
TL Descriptor Repository
Configuration Management Tool
Visualization Tools (Mosaic, Netscape, StP-OMT, FrameMaker, emacs,etc.
RSAL
Descriptor
Repository
Corporate Asset Repository
SALMS
import
Requirements
Architecture
Design
Code
Manuals
...
...
24. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 24
Reuse Software Artifacts Library
Internal User Restricted user RSAL Admin.Application Admin. TL Admin.
SALMS Repository
(¼le system)
User Categories
Access Tools
External user
Network
Client
Server
Database Interface
Graphical User Interface
RSAL TLMetadata
Sybase DBMS
Viewing Artifacts
Importing Assets
Internal TL User Restricted TL User External TL User
25. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 25
Reuse Software Artifacts Library
Search Mechanisms
q Direct Access
Specify unique identifier of the asset
Particularly efficient to recall an asset already explored
q Filtered Access
Specify filtering criteria (e.g. author, name of project, date of insertion, etc.)
Retrieves a subset of all assets from the library (manual)
q Text -Based Access
Specify character string to be searched in either the Textual Description, Reuse
Experience Reports, or Reuser’s Notes of each descriptor.
Obviously more expensive (e.g. UNIX “grep”), to be (for instance to retrieve poorly
classified assets)
q Faceted Access
Specify a term (i.e. keyword) for each facet
Obtain all assets having exactly the corresponding classification
Preferred method to access asset descriptors in SALMS
26. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 26
RSAL Artifacts
General Purpose Components
• Application Manager
• Bulk Data Transfer
• General Purpose Browser
• ...
Application Generators
• Agent Development Toolkit
• Core VNMS
• ...
Application Frameworks
Basic Class Libraries
•OO Mgmt Platform Extension
•Container
•C++ DCE Wrapper
•Graphic Libraries
• ...
End User Applications
• Network Traffic Data Collection&Analysis
• Automapper
• Currency Conversion Module
Search, Navigation through Relations
RSAL
Generalization
• •
Evolution
• STM/AF
• SISM/AF
27. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 27
Sodalia Software Engineering Process Group
t Formally established in July 1996
t Responsibility assigned to the Research & Technology Department, in
charge of Sodalia software process activities and for coordinating these
activities with the projects
t Staffed by
t SIMEP and SEE (Software Engineering Environment) Area
t Reuse and Technologies Area
t Quality Area representative
t all Project/Area Managers (part-time)
Process Improvement and SEPGProcess Improvement and SEPG
28. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 28
SEPGSEPGSEPG
Projects
Development
V&V
Projects
Development
V&V
SQASQASQA
Procedures
&
Guidelines
Procedures
&
Guidelines
ReportReport
Project Plans &ArtifactsProject Plans &Artifacts
provides
feedback
applies
applies
audit
supports
SEPG, Projects and SQA interactionsSEPG, Projects and SQA interactions
Process Improvement and SEPGProcess Improvement and SEPG
29. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 29
t For each Project, specific roles are assigned.
t Project Manager
t Requirements Manager
t Architect
t Development Manager
t V&V Manager
t Configuration Manager
t Documentation Manager
t For the Company, organizational roles are assigned:
t Methodologies Manager
t Training Manager and Technical Training Coordinator
t Reuse and Technologies Manager
t Quality Assurance Manager
Organization and TrainingOrganization and Training
Process Improvement and SEPGProcess Improvement and SEPG
30. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 30
CMM Level 3: Expected Benefits
“With well-defined processes, performance improves...” [ SEI CMM]
“Organizations at the Repeatable Process Level […] face major risks when they are
presented with new challenges......” [W.S.Humphrey, “Managing the Software Process”]
Sodalia Operating Plan (1996):
“… to continue to demonstrate that Sodalia is a profitable and high reliable developer of
advanced, high quality, low cost, and reusable telecommunications components,
subsystems and systems …
This objectives generates [...]
... achieve and maintain CMM Level 3 ....
.... increase Productivity and Quality
y +5-10% Improvement in Cost/Performance
y +5-10% Improvement in Customer Satisfaction and Product Quality...”
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
31. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 31
CMM Level 3: Expected Benefits
Plans based on past
performance are more
realistic in Level 2
organizations
With well-defined processes,
performance improves in
Level 3 organizations
Based on quantitative
understanding of process
and product, performance
continues to improve in
Level 4 organizations
Performance continuously
improves in Level 5
organizations
Initial
Repeatable
Defined
Managed
Optimizing
Process is informal and
ad hoc
Project management
practices are
institutionalized
Technical practices are
integrated with
management practices and
institutionalized
Product and process are
quantitatively controlled
Process improvement is
institutionalized
Level Process Characteristics Predicted Performance
Probability
Time/$/Quality/...
TargetN-z
Probability
TargetN-y
Time/$/Quality/...
Probability
TargetN-x
Time/$/Quality/...
Probability
TargetN+a
Time/$/Quality/...
TargetN
Probability Time/$/Quality/...
Carnegie Mellon University
Software Engineering Institute
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
32. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 32
Timeframe
Dec 96Jun 94
First version
of thesoftware
process
(SIMEP)
Jun 95
Evolution and
completion
in accord to the
Sodalia Quality
System and
SEI CMM Level 2
SEI CMM
Level 2
Achievement
Dec
95
ISO 9001
Certification
May
96
Integration with
SEI CMM Level 3
Requirements
SEI CMM
Level 3
Achievement
Set
97
Today
1.5 year of work with1.5 year of work with
level 3level 3
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
33. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 33
Expected Benefits: how to measure?
Software Metrics Program
t have a common basis for measurement
t compare results
t among Projects
t between methods (before and after the adoption)
t learn from past experience
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
34. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 34
Software Process Database
. . . . .
December 96
First release
SEI CMM
Level 3
Achievement
Set
97
February 97
Insertion of some
data of 1996 projects
February 98
Insertion of data
of 1997 projects,
driven by CMM
Start operating at
Level 3
Jan
97
First use
of SPD
data
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
35. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 35
Software Process Database
Contents
t 8 Projects, 18 "phases" (Concept Exploration, Iteration)
t The data are collected "in progress" by the Projects staff
t The MSO (Measurement Support Organization) validates the data, before
publishing
Technical characteristics
t Home-made tool
t Prototyped with Java, Oracle 8 (beta test)
t Automated import from other data collection tools (SAJ-SIMEP Activity
Journal, CD-defects)
t Integration with the planning tool (WinProject) is in progress
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
36. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 36
Ratio estimated/measured
-
0,5
1,0
1,5
2,0
Proj j1996 1997
A B
N
C
E
D
F
HG
I L
M
Increased effort estimating capabilities ?
from R&T Department Notebook, SEPG Chapter, Metrics Section, (March 1998)
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
37. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 37
Increased size estimating capabilities ?
I
Ratio estimated/measured
Proj j
-
0,5
1,0
1,5
2,0
1996 1997
D
B
H
K
L
M
from R&T Department Notebook, SEPG Chapter, Metrics Section, (March 1998)
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
38. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 38
Measured BenefitsMeasured Benefits
t Increased estimating capability
t effort
t size
t Increased software quality
t decreased defects number detected after release
t Decreased project costs
t shared software engineering environment
t coordinated use of enabling technologies
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
39. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 39
Behavioural BenefitsBehavioural Benefits
t Systematic approach to improvement
t Resistance to change minimized
t Promote a culture to pro-active improvement
t Identification of Best Practices within the Organization
t The Organization’s knowledge .... grows
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits
40. Sodalia Proprietary Information PROLAMAT ‘98 - Trento, September 9-11, 1998 Pt - 40
The CMM adoption advantages for a SMEThe CMM adoption advantages for a SME
t Full involvement of software project managers and software engineers
t Rapid and effective deployment
t Short “time-to-process-improvement”
t Short path for top management commitment
CMM Level 3: Measured vs Expected BenefitsCMM Level 3: Measured vs Expected Benefits