EnglishSite mapContactsFrançais
 CompanyConsultingTrainingDevelopmentProductsProjectsTechnologiesReferencesEventsRecruitment
Analysis and Design
Aims
To acquire proficiency in object-oriented design and analysis techniques:
• To learn the concepts of an object approach and of the UML method
• To realize a case study: the development of the specification and both the preliminary and detailed design documents from the requirements document
Participants
This training course is designed for project managers, design engineers and development engineers who work on or are likely to work on an object-oriented project.

Prerequisites:
• A certain level of knowledge in object-oriented concepts is appreciated.

Ratio of theory to practice:
• 60/40
Ref : UML 4 Days
Paris 2008/2009
Contact us

Objectives
Today's systems are ever more complex. Through different diagrams, UML modeling is used, at different levels of abstraction, to better master their development and to dialog with the different project participants. It is, therefore, important to master the modeling language, as well as its use within the software development process. It is even more important to take advantage of the experience of seasoned consultants, so as to really make the most of modeling.

The basis of the object model
• Object, abstraction, encapsulation, class, instance
• Generalization, polymorphism, instantiation, messages
• The OMG's UML standard
• The roots and history of UML
• The advantages of UML
• Additions to UML: UML profiles
• The nine models

Static models
• Class diagrams
• Fundamental notions: classes, attributes, operations, associations, aggregations, generalizations, ...
• Detailed notions: invariants, pre and post-conditions, the OCL language, notes, ...
• Extensions: tagged values and stereotypes
• Package diagrams

Dynamic models
• Sequence diagrams: objects, messages, control structures
• Collaboration diagrams versus sequences
• State diagrams: states, events, transitions, actions, activities
• Activity diagrams: activities, data flows, partitions

UML metamodel, XMI

How is the UML method used?
• Different forms of use
• Equivalence between model elements
• Directions for the use of classes: normal forms
• Directions for the use of associations, generalizations and packages
• Metrics

Methodology
• Development process and life cycles: defining steps and sequencing

Expression of needs
• Objectives
• Defining the dictionary
• Defining fundamental objects and system decomposition
•Using use cases to identify actors and services
• Use case models: use cases, actors
• Complements to and fine-tuning of use cases

Analysis
• Objectives
• Defining the system's interface classes
• Techniques for identifying classes
• Using scenarios
• Structuring the system's interface
• Decomposition into packages
• Detailed specification of classes
• Pre and post-conditions on operations
• Using state diagrams
• Traceability

Architecure
• Objectives
• Deployment and component diagrams

Design
• Objectives
• Design and structure rules
• Model transformation techniques
• Using design patterns (observer, state...)

Realization
• Philosophy behind the use of object languages
• Rules for mapping the model to an object language
• Mapping attributes, associations and invariants
• Programming: Java example

Modular tests
• Philosophy behind tests
• Implementation techniques

Integration and validation
• From the model to the test plan

Case study

Paris  •  Rennes  •  Nantes  •  Sophia Antipolis  •  Objecteering Software