Visão Geral
Curso Analysis and Design with UML é uma introdução abrangente e aprofundada à teoria e prática contemporânea de desenvolvimento de software usando UML.
Com ênfase fundamental nos princípios fundamentais, os participantes passam de conceitos e paradigmas básicos até as mais poderosas técnicas de análise e design.
Este curso de Análise e Design com UML é rico em exercícios e começa com problemas simples antes de avançar para desafios mais complexos, e os participantes terminam o curso com uma compreensão abrangente, poderosa e imediatamente aplicável de Modelagem e Notação de Sistemas.
Objetivo
Ao final deste Curso Analysis and Design with UML, você terá aprendido:
- Uma compreensão profunda e ortogonal do design do sistema
- Compreensão e conhecimento da notação UML
- Como evitar armadilhas e armadilhas comuns
- Gestão do processo de desenvolvimento
Publico Alvo
- Este curso é apropriado para arquitetos de sistemas, designers, gerentes de projetos e programadores que desejam desenvolver seu conhecimento e compreensão de análise e design.
Pre-Requisitos
- É pressuposta alguma experiência em desenvolvimento de sistemas e software, mas a exposição prévia à UML e às técnicas e conceitos de design abordados neste curso não é de forma alguma essencial.
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico
Core Concepts of Analysis and Design
- Modelling basics: state, change and reification.
- The nature of software objects.
- Abstraction, rights and responsibilities: design by contract.
- Determining appropriate scope: encapsulation.
- Intertype relationships. polymorphism.
- Design Patterns: exploiting system symmetries and invariances.
- The role of psychology: modelling the modeller.
Introduction to Modelling Notation and the UML
- Object and class diagrams.
- Sequence and collaboration diagrams.
- State charts and activity diagrams.
- Use Case diagrams.
- Component and deployment diagrams.
- Diagram interrelationships.
UML Notation Basics
- UML document structure.
- Packages: Composite packages, package dependencies, package generalisation.
- Dependencies, constraints and guard conditions.
- Stereotypes and tag values.
- Layout and ascetics.
Object and Class Diagrams
- Object notation: Object states, active objects.
- Class notation.
- Classes, attributes and associations, qualified and N-ary associations.
- Attribute visibility: Private, public, protected and friend.
- Association classes, aggregation and composition.
- Resolving circular associations.
- Inheritance, multiple inheritance, multiple virtual inheritance.
- Private, public and protected inheritance.
- Polymorphism, abstract classes and templates.
- Inheritance misuse:
- The Circle-Ellipse problem.
- Inheritance abuse: avoiding cosmic class-hierarchies.
Architecture and Design Patterns
- The classification of archetypal form.
- Observer.
- Model-View-Controller.
- Singleton.
- Chain of Responsibility.
- Visitor.
- State and Strategy.
- Memento.
- Bridge.
- Factory.
- Façade.
- Composite.
- Decorator.
- Flyweight.
Sequence and Collaboration Diagrams
- Objects, lifelines and activations.
- Object creation and destruction.
- Message passing, control branching and joining.
- Synchronous and asynchronous calls.
- Recursive, reflexive and iterative calls.
- Message sequencing.
State Charts and Activity Diagrams
- States, events and transitions.
- Implementation and protocol state charts.
- Entry and exit actions.
- Signalling, complex, explicit and self-transitions.
- History, pseudo and composite states.
- Junction, concurrent and disjoint sub-states.
- Forks, joins and branches.
- Stub states and transitions.
Use Case Diagrams
- Requirements capture.
- Actors, messages and Use Cases.
- ‘Uses’, ‘includes’, and ‘extends’ relationships.
- Actor generalisation.
- Developing a Use Case diagram.
- Relating Use Case diagrams to other UML models.
Development Processes
- Large projects and process overhead.
- The Waterfall model.
- Iterative and incremental development.
- Design refactoring.
- Agile Development.
- Designing for change.
TENHO INTERESSE