Meta-model based system design Gábor Privitzky [email protected] Gábor Zsolt Nagy...
-
Upload
drusilla-hubbard -
Category
Documents
-
view
217 -
download
0
Transcript of Meta-model based system design Gábor Privitzky [email protected] Gábor Zsolt Nagy...
![Page 1: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/1.jpg)
![Page 3: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/3.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Table of contents
• Today’s software design• Analysis and design• Elaboration modeling approach• Meta-models• Translation modeling approach• Experiences at Ericsson Hungary
![Page 4: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/4.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
MDA applied in Ericsson Hungary
• MDA related activities since beginning of 2002• Technology evaluation projects• Development of a C++ code generator
– SNMP capabilities (network configuration protocol)– CORBA notification service– Trace, debug capabilities
• Development of 2 sub-systems of a 3G mgmt. System– 90% of code was generated!
• Common service domains (XML, Logging, etc.)• TTCN test bed, XMI export, HTML doc. generator, etc.
![Page 5: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/5.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Today’s software design
• Productivity problems– Labor intensive– Rework
• Portability problems– Emerging technologies– Heterogeneous implementation techniques
• Maintenance problems• Quality problems• Changing requirements
![Page 6: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/6.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Traditional software development life cycle
Requirements
Analysis
Design
Coding
Testing
Text
Text anddiagrams
Text anddiagrams
Code
![Page 7: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/7.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Traditional software development life cycle
Requirements
Analysis
Design
Coding
Testing
Text
Text anddiagrams
Text anddiagrams
Code
– Productivity problems
• Tedious programming tasks
• Late feedback
– Portability problems• Non-formalized analysis• Design and Analysis are not separated• Decisions are made in coding
– Quality problems• Non-formalized
knowledge in heads
– Maintenance• Shortcuts• Documentation overhead
60-70% of the budget in coding!
![Page 8: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/8.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Way of writing specifications
• Textual specification– ambiguous– difficult to verify– difficult to keep up-to-date– “we will sort it out during the design”
• Graphical specifications– no semantic meaning defined– undefined relations between diagram types– difficult to verify
![Page 9: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/9.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Expectations
• Formalized way of specification• Early verification and testing• Separate business logic analysis and implementation• Software reuse• Leverage the initial investment in an early phaseHOW?
![Page 10: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/10.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Analysis and Design
• Analysis– Defines what to do; application business logic– Captures requirements and functional decisions in a platform
independent manner– Results in a Platform Independent Model (PIM)
• Design– Defines how to do– Captures characteristic and interface requirements– Defines a specific platform (e.g. C++, Solaris, .NET, J2EE)– Results in a Platform Specific Model (PSM)
![Page 11: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/11.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
PIM and PSM
• PIM (Platform Independent Model)
Expresses only business functionality and behavior
• PSM (Platform Specific Model)
Defines also technology-specific details
e.g. Chained list, index tables
Director Movie1 0..*
directed by directs
0..* Actor0..*
acts in played by
![Page 12: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/12.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
MDA software development life cycle
Requirements
Analysis
Design
Coding
Testing
Text
PIM
PSM
Code
![Page 13: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/13.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
What is Model Driven Architecture?
• MDA is an object-oriented software development method• Splits platform independent and platform specific decision• Holds decisions in models instead of documents• Based on Unified Modeling Language• 2 approaches:
– Elaboration (model refinement)– Translation
• CASE tools that support software life-cycle
![Page 14: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/14.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
• Elaborationist approach– middleware independence, an open, vendor neutral approach for
interoperability– Booch, Rumbaugh and Jacobsen with UML– OMG, Rational– profiles
• Translationist approach– platform independence– Steve Mellor and Sally Shlaer– meta-model based tools– xUML
PIMPIM PSMPSM CodeCode
Elaboration approach
![Page 15: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/15.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Modeling structure (classes, attributes & associations)
Modeling behavior (FSMs)
Step 1 : During ‘analysis’, construct a model of the user application
Aids :Use Case DiagrammingSequence DiagrammingCollaboration Diagramming
Elaboration approach
![Page 16: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/16.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Step 2: During ‘design’, add control structures, datastructures, GUI concepts, tasking mechanisms etc.
… elaborate the model
Elaboration approach
![Page 17: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/17.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Step 3 : Automated code generation convertsstructural model elements to target language
e.g. C++ header files (.h)
Elaboration approach
![Page 18: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/18.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Step 4 : Behavioral code is added manually, introducingmodel and code maintenance management demands.
e.g. C++ program files (.cpp)
Elaboration approach
![Page 19: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/19.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Problems of elaboration approach
• PSM is an extended PIM• New model elements are sprinkled into the PIM• Some model elements removed, merged or split apart• Destroys the original PIM• Platform specific elements may seep into PIM• Boundary between PIM and PSM is fuzzy• It often needs reverse engineering
![Page 20: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/20.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Platform independent models using MDA
• Elaborationist view – middleware independence, an open, vendor neutral approach for
interoperability– Booch, Rumbaugh and Jacobsen with UML– OMG, Rational– profiles
• Translationist view– platform independence– Steve Mellor and Sally Shlaer– meta-model based tools– xUML
PIMPIM
PSMPSM
CodeCode
![Page 21: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/21.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Simulator
How does translation work?
FunctionalRequirements
OOAModel
TestCases
Characteristicand platform
specificRequirements
SourceCode
TestSuits
ModelTranslator
• OOA models can be simulated before implementation
• OOA models are translated by Model Compilers
![Page 22: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/22.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Meta-modeling concept
• The “meta” prefix– indicates one level of abstraction higher than root– is used in a relative manner
• A meta-model is a model of a model• The concept can be recursively applied to itself
– a meta-meta-model is a model of a meta-model– a meta-meta-meta-model is a model of a meta-meta-model …
• Meta-models are often defined for specific technology domains
• OMG is now using M0-M3 notation for modeling
![Page 23: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/23.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Meta layers
M0 : User Objects{“Pulp Fiction”, 1994, “Quentin Tarantino”}{“Peter Smith”, 2004.12.23}
PopulatesPopulatesDefinesDefines
Director, Actor, MovieM1 : Model
PopulatesPopulatesDefinesDefines
M2 : Meta-modelClass, Attribute, Association
PopulatesPopulatesDefinesDefines
M3 : Meta-meta-modelMOF::Class, MOF::Attribute
![Page 24: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/24.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
M2 (DSL)
Self recursive description
• Concepts:– Class– Attribute– Relationship
Class
• name• description
Attribute
• name
Relationship
• side A multiplicity• side B multiplicity
0..* 1
1 0..*
1 0..*
M3
![Page 25: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/25.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Potential of meta-modeling
• Help others understand the problem domain by using the same language
• Define a vocabulary for the elements in the problem domain
• Manage complexity by raising the level of abstraction at which we think and design
• Enables to develop solid knowledge-base in centralized model repositories
![Page 26: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/26.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
How does C++ meta-model describes a system?
What is the system architecture ?
What are the charac-teristic requirements ?
Model translation
How does PIM meta-model describes a system?
Domain Class
Attribute
State Transition
Operation
PIM meta-modelClass
Attribute
Function
Parameter
Constructor DestructorC++ meta-model
What is the task?To create an alarm handling application
Actor
actor_ID
Client
client_ID
acknowledgecease_alarmfactory
Network_element
IP_addressne_ID
create_alarmcease_alarmfactory
Active_alarm
alarm_IDproblem_cause...IP_address
AMDdomain
PIM
![Page 27: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/27.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Actor
actor_ID
Client
client_ID
acknowledgecease_alarmfactory
Network_element
IP_addressne_ID
create_alarmcease_alarmfactory
Active_alarm
alarm_IDproblem_cause...IP_address
AMDdomain
How does C++ meta-model describes a system?
Model translation
How does PIM meta-model describes a system?
Domain Class
Attribute
State Transition
OperationClass
Attribute
Function
Parameter
Constructor Destructor
AMD
actor_ID
Actor
problem cause
IP address
Active alarm
alarm IDacknowledge
cease alarm
factory
Client
client ID
Network element
IP address
ne ID
create alarm
cease alarm
factory
populated
PIM meta-model
What is the system architecture ?
What are the charac-teristic requirements ?
![Page 28: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/28.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
How does C++ meta-model describes a system?
What are the charac-teristic requirements ?
Actor
actor_ID
Client
client_ID
acknowledgecease_alarmfactory
Network_element
IP_addressne_ID
create_alarmcease_alarmfactory
Active_alarm
alarm_IDproblem_cause...IP_address
AMDdomain
Model translation
How does PIM meta-model describes a system?
Domain Class
Attribute
State Transition
OperationClass
Attribute
Function
Parameter
Constructor Destructor
What is the system architecture ?
AMD
actor_ID
Actor
problem cause
IP address
Active alarm
alarm IDacknowledge
cease alarm
factory
Client
client ID
Network element
IP address
ne ID
create alarm
cease alarm
factory
Model Translation
AMD
actor_ID
Actor
problem cause
IP address
Active alarm
alarm IDacknowledge
cease alarm
factory
Client
client ID
Network element
IP address
ne ID
create alarm
cease alarm
factory
![Page 29: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/29.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
How does C++ meta-model describes a system?
Model translation
How does PIM meta-model describes a system?
Domain Class
Attribute
State Transition
OperationClass
Attribute
Function
Parameter
Constructor Destructor
AMD
actor_ID
Actor
problem cause
IP address
Active alarm
alarm IDacknowledge
cease alarm
factory
Client
client ID
Network element
IP address
ne ID
create alarm
cease alarm
factory
C++ source code
What are the charac-teristic requirements ?
What is the system architecture ?
Model Translation
Actor
actor_ID
Client
client_ID
acknowledgecease_alarmfactory
Network_element
IP_addressne_ID
create_alarmcease_alarmfactory
Active_alarm
alarm_IDproblem_cause...IP_address
AMDdomain
![Page 30: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/30.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Translation process
PIM
Populates
PSIM-M
PSMM-M
PIMM-M
PSIM-M
PSMM-M
Definedmapping
Definedmapping
Definedmapping
Definedmapping
PSMAppliedmapping
Appliedmapping PSI
Generates
Target
Code
![Page 31: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/31.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Benefits of translation approach
• Early verification and testing• Separates business logic analysis and implementation• Software reuse• PSM and PIM are independently maintained• Leverage the initial investment in an early phase
![Page 32: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/32.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Platform independentbusiness logic
App1App2
App3
Platform v1
ModelCompiler for Platform v1
App1App2
App3
![Page 33: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/33.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Platform independentbusiness logic
App1App2
App3
Platform v1 Platform v2
ModelCompiler for Platform v2
App1App2
App3 App1App2
App3
![Page 34: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/34.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Potential of model translation
• Code generation is just one possibility• Architectures can be used for:
– Document generation– Model verification– Model simulation– KPI measurements– Building architectures
![Page 35: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/35.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Model translation techniques
• Template based translation– Source code templates extended with model queries
• Model based translation specified with– ASL– QVT– XSLT– some other query language
• Code generation can be preceded by several model-to-model translations
![Page 36: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/36.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Traditional software development life cycle
Requirements
Analysis
Design
Coding
Testing
Text
Text anddiagrams
Text anddiagrams
Code
– Productivity problems
• Tedious programming tasks
• Late feedback
– Portability problems• Non-formalized analysis• Design and Analysis are not separated• Decisions are made in coding
– Quality problems• Non-formalized
knowledge in heads
– Maintenance• Shortcuts• Documentation overhead
![Page 37: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/37.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
MDA software development life cycle
Requirements
Analysis
Design
Coding
Testing
Text
PIM
PSM
Code
– Productivity problems
• Keeping intellectual property in modelsand architectures
• Automated code generation
• Early verification
– Portability problems
• Splitting platform specific and platform independent decisions
– Maintenance
• Strict forward engineering technique
• Documents and code are generated
• No data redundancy
– Quality
• Uniform code quality
• Early verification
![Page 38: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/38.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Project timelines
Kick-off MS1
Requi
rem
ent
anal
ysis
Func
tiona
l spe
cs
Proto
typi
ng
MS2
Desig
n do
cum
enta
tion
MS3
Codin
g
Test
&ve
rific
atio
n
MS4
Deplo
ymen
t
Kick-off MS1 MS2 MS3 MS4
Requirement
analysis
OOA & OOD
Code generation
Test & verification
Traditional
MDA
Deployment
Model testing
![Page 39: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/39.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Activity distribution of an MDA project
Implementation28%
Testing12%
Other activities11%
Analysis49%
![Page 40: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/40.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Trend diagram of an MDA project
0
20
40
60
80
100
120
140
160
3 6 8 10 12 14 16 18 20 22 24 26 28 31 33 36 38
Week
MH
R
Analysis
Implementation
Testing
![Page 41: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/41.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
KPI comparison of “traditional” and MDA proj.
Traditional MDA
Implemented requirements 48 % 83 %
Not implemented requirements 52 % 18 %
Cost (mhrs) 6800 3440
Analysis TRs 0 12
Implementation TRs 37 7
Architecture TRs 0 2
![Page 42: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/42.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Experiences
• MDA is not a “silver button”. Doesn’t solve anything from itself…
• …but offers a strict process with technology support• Using iterations. At feedback every affected part is
modified• Sometimes difficult to decide between architecture and
application modeling• Loosely connected areas (requirements, legacy codes) are
hard to keep consistent• Model tests replaces basic and function tests (partly)
![Page 43: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/43.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Effects on the organization
• Introduction of new technology needs initial investment– Time and money– Gradual technology shift
• Fear and resistance from management side• Strong resistance from sw. developer side• High expectations• Balance of employees’ competence portfolio must change
![Page 44: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/44.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Conclusion
• It works!• Doesn’t solve everything• Reduces budget and time-to-market significantly• Offers uniform quality (for generated part)• Replaces textual documentation• Can keep different areas consistent but it’s not trivial
– Requirement analysis– Sw analysis, design and implementation– Testing– Quality measurements, project tracking
![Page 45: Meta-model based system design Gábor Privitzky Gabor.Privitzky@ericsson.com Gábor Zsolt Nagy Gabor.Zsolt.Nagy@ericsson.com.](https://reader033.fdocuments.us/reader033/viewer/2022051621/56649eeb5503460f94bfc7e1/html5/thumbnails/45.jpg)
Software Technology Forum Meta-model based system design 2004-11-08
Questions ?