
enterprise analysis
& design using UML
Delegates will learn
- How to model business processes with process models and activity diagrams
- How to determine the system scope with use case models, conceptual class models and state diagrams
- How to formalise use cases with activity diagram storyboards
- How to design re-usable components
- How to design the internal behaviour of the use cases with interaction diagrams
- How to refine the design with the effective use of OO heuristics, patterns, aggregation and generalisation
- How frameworks can resolve common business problems.
Target Audience
- Business Analysts wishing to know more about OO based definition & design
- Designers and analyst/programmers who are moving to an OO environment
- Those wishing to standardise on UML as their design specification model
- Those needing a visual, round-trip engineering method
Style
This is an intensive 5-day non-residential course presenting design techniques from a practical perspective and using a structured approach based on UML supported by Design Patterns and Frameworks. An live case study is used to help delegates practice the skills learned on the course.
Topics
OVERVIEW OF THE UML
- Introduction
- Business drivers for effective analysis
- Role of the Analyst / Designer
- Profile of an effective Analyst / Designer
- Overview of the UML
- Personal assessment (preliminary)
BUSINESS CONTEXT
- The business context
- Business processes and process flows
- Activity diagrams
- Object flows to determine business states
THE USE CASE MODEL
- The purpose and importance of use cases
- Requirements and Use Cases
- Identifying actors and use cases
- Designing the external view with use case storyboards
- The evolution of use cases
- Ranking and scheduling use cases based on risk
DOMAIN CLASS MODEL
- Class diagrams
- Identifying Entities/Classes, Attributes and Associations
- Association naming and multiplicity
- Packaging classes
STATE MODELLING
- State model and business rules
- State diagram notation
- Sub-states, state and transition actions
- Relationship of object states to business states
REFINING THE CLASS MODEL
- Aggregation and Composition
- Generalisation - types, inheritance, concrete vs abstract operations, abstract classes, class hierarchies
- Interfaces, Polymorphism and Loose coupling
- Navigation – one way, two way, role names, association attributes, association collections
- Attribute, parameter, return value typing
- Handling and Raising exceptions
COMPONENT BASED DEVELOPMENT
- Component based development overview
- Components, events, properties, methods
- Mapping domain classes to components
DESIGNING BEHAVIOUR
- Review of OO Principles
- Responsibility and Collaboration
- Internal view of use cases
- Sequence and Collaboration diagrams
- Objects, messages, operations and navigability
- Worked interaction example
FRAMEWORKS
- Framework overview
- A problem area
- Using a framework to solve the problem
- Examining the code implementation
SUMMARY & CONCLUSION
- Key learning points
- Personal assessment (final)
- Action planning
