mac 0332 - engenharia de software marco a. gerosaime / usp mais sobre análise e outros diagramas...

17
MAC 0332 - Engenharia de Software Marco A. Gerosa IME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa [email protected]

Upload: marisa-assuncao-andrade

Post on 07-Apr-2016

217 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Marco A. Gerosa IME / USP

Mais sobre análise e Outros Diagramas UML

MAC0332 Engenharia de Software

Marco Aurélio [email protected]

Page 2: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Tipos de classes

Marco A. Gerosa 2 IME / USP

Page 3: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Diagrama de colaboração

Marco A. Gerosa 3 IME / USP

Page 4: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Diagrama de Sequência

Marco A. Gerosa 4 IME / USP

Page 5: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Diagrama de estados

Marco A. Gerosa 5 IME / USP

Page 6: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Exemplo práticoA product is to be installed to control n elevators in a building with m floors. The problem concerns the logic required to move elevators between floors according to the following constraints:1. Each elevator has a set of m buttons, one for each floor. These illuminate when pressed and cause the elevator to visit the corresponding floor. The illumination is canceled when the corresponding floor is visited by the elevator2. Each floor, except the first and the top floor, has two buttons, one to request an up-elevator, one to request a down-elevator. These buttons illuminate when pressed. The illumination is canceled when an elevator visits the floor, then moves in the desired direction 3. If an elevator has no requests, it remains at its current floor with its doors closed

Marco A. Gerosa 6 IME / USP

Page 7: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Use Case

Marco A. Gerosa 7 IME / USP

Page 8: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Diagrama de atividades

Marco A. Gerosa 8 IME / USP

Page 9: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Diagrama de atividades com raias

Marco A. Gerosa 9 IME / USP

Page 10: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Pacotes

Marco A. Gerosa 10 IME / USP

Page 11: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Cenário (instância dos casos de uso)

Marco A. Gerosa 11 IME / USP

Page 12: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Modelagem• Identificação de substantivos• Buttons in elevators and on the floors control the movement of n elevators in

a building with m floors. Buttons illuminate when pressed to request the elevator to stop at a specific floor; the illumination is canceled when the request has been satisfied. When an elevator has no requests, it remains at its current floor with its doors closed

Marco A. Gerosa 12 IME / USP

Page 13: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Modelagem• Identificação de substantivos• Buttons in elevators and on the floors control the movement of n elevators in

a building with m floors. Buttons illuminate when pressed to request the elevator to stop at a specific floor; the illumination is canceled when the request has been satisfied. When an elevator has no requests, it remains at its current floor with its doors closed

• Classes candidatas: Elevador e Botão• Subclasses candidatas: BotãoElevador e BotãoAndar

Marco A. Gerosa 13 IME / USP

Page 14: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Modelagem

Marco A. Gerosa 14 IME / USP

Problema: Quem controla o conjunto de elevadores?

Page 15: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Uso de uma classe de controle

Marco A. Gerosa 15 IME / USP

Page 16: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Diagrama de estados

Marco A. Gerosa 16 IME / USP

Page 17: MAC 0332 - Engenharia de Software Marco A. GerosaIME / USP Mais sobre análise e Outros Diagramas UML MAC0332 Engenharia de Software Marco Aurélio Gerosa

MAC 0332 - Engenharia de Software

Diagrama de estados mais elaborado

Marco A. Gerosa 17 IME / USP