1 Modelagem em desenvolvimento de software. 17
1.1 Engenharia de Software. 17
1.2 A complexidade crescente e o paradoxo da
produção de software 19
1.3 Análise e projeto orientados a objetos 22
1.3.1 Análise Orientada a Objetos 24
1.3.2 Projeto Orientado a Objetos 25
1.4 Processo de desenvolvimento de software. 26
1.5 Características das linguagens para
especificação de análise e projeto 27
1.6 O uso de especificações no processo de
modelagem.. 30
2 A estrutura de um programa orientado a
objetos 33
2.1 Os elementos de um programa orientado a
objetos em tempo de desenvolvimento 33
2.2 Os elementos de um programa orientado a
objetos em tempo de execução 37
2.3 A compreensão de um programa orientado a
objetos 42
3 O diagrama de classes de UML. 43
3.1 Classes, atributos e métodos 44
3.2 Relacionamentos entre classes 49
3.2.1 Herança. 49
3.2.2 Agregação. 52
3.2.3 Associação. 55
3.3 Outros relacionamentos previstos em UML. 57
3.4 Interface. 58
3.5 Estereótipo. 60
3.6 Considerações a respeito da modelagem com
diagramas de classes 61
4 Modelagem estrutural e modelagem dinâmica em
orientação a objetos 63
4.1 Requisitos para uma modelagem completa. 63
4.1.1 Um exemplo de notação anterior a UML. 65
4.1.2 Necessidades para geração de código e
manutenção. 69
4.1.3 Requisitos para modelagem de sistemas
físicos e de software 72
4.2
Conteúdo dos quatro pontos de vista
essenciais 76
5 Visão geral de UML. 81
5.1 Histórico de UML. 81
5.2 Estrutura da especificação de UML. 83
5.3 Organização dos diagramas de UML. 84
5.4 Diagramas de UML. 86
5.4.1 Diagrama de classes 87
5.4.2 Diagrama de objetos 87
5.4.3 Diagrama de pacotes 88
5.4.4 Diagrama de estrutura composta. 89
5.4.5 Diagrama de componentes 90
5.4.6 Diagrama de utilização. 90 (deployment diagram)
5.4.7 Diagrama de casos de uso 91
5.4.8 Diagrama de seqüência. 92
5.4.9 Diagrama de comunicação. 93
5.4.10 Diagrama de máquina de estados 93
5.4.11 Diagrama de atividades 94
5.4.12 Diagrama de visão geral de interação. 95
5.4.13 Diagrama de temporização. 97
5.4.14 Classificação dos diagramas de UML segundo o
critério dos quatro pontos de vista 97
5.5 Comparação entre a primeira e a segunda
versão de UML. 99
5.6 Moldura e cabeçalho. 101
5.7 Para ver mais detalhes dos diagramas de
UML. 102
6 O diagrama de casos de uso de UML. 105
6.1 Caso de uso. 105
6.2 Ator 107
6.3 Relações entre elementos do diagrama de
casos de uso. 110
6.3.1 Associação entre ator e caso de uso. 110
6.3.2 Associação entre casos de uso. 112
6.3.3 Associação entre atores 116
6.4 Ponto de extensão em caso de uso. 117
6.5 Considerações a respeito da modelagem de
casos de uso. 118
7 Os diagramas de UML para modelagem de
interação de objetos 121
7.1 A interação de objetos em UML. 121
7.2 Objeto. 123
7.3 Mensagem.. 123
7.4 Um primeiro exemplo de modelagem de
interação. 126
7.5 Diagrama de seqüência. 130
7.5.1 Elementos sintáticos que complementam
objetos e mensagens. 130
7.5.2 Criação e destruição de objeto. 132
7.5.3 Retorno. 132
7.5.4 Fragmento combinado. 133
7.5.5 Uso de interação (referência) 139
7.5.6 Continuação. 140
7.5.7 Portão (gate) 143
7.5.8 Decomposição de parte. 144
7.5.9 Invariante de estado. 144
7.6 Diagrama de comunicação. 145
7.7 Considerações a respeito da modelagem de
interação de objetos 146
8 O diagrama de máquina de estados de UML. 147
8.1 Estado de objeto. 148
8.2 Transição de estado. 153
8.3 Pseudo-estados equivalentes a comandos 154
8.4 Modelagem com estados compostos 155
8.5 Estruturação da modelagem com estado
sub-máquina. 157
8.6 Modelagem de evolução de estados com
paralelismo. 159
8.7 Considerações a respeito da modelagem de
estados 160
9 O diagrama de atividades de UML. 161
9.1 Atividades e ações 161
9.2 Fluxo de controle. 163
9.3 Tratamento de objetos no diagrama de
atividades 168
9.4 Partição de atividade. 172
9.5 Comunicação em diagrama de atividades 173
9.6 Nodos agrupadores na modelagem de
atividades 174
9.7 Nodo tratador de exceção. 178
9.8 Modelagem de workflow com diagrama de atividades 179
9.9 Modelagem de algoritmo de método de
classe com diagrama de atividades 180
9.9.1 Comandos representáveis com um único
elemento sintático do diagrama de atividades 182
9.9.2 Comandos correspondentes a invólucros de
coleções de comandos 183
9.9.3 Comandos sem correspondência em
linguagens de programação 187
9.10 Considerações a respeito da modelagem com
diagrama de atividades 191
10 Os outros diagramas de interação de UML 193
10.1 Diagrama de temporização. 193
10.1.1 Modelagem de objetos 194
10.1.2 Evolução de estados com restrições
temporais 194
10.1.3 Comunicação com restrições temporais 196
10.2 Diagrama de visão geral de interação. 197
10.3 Considerações a respeito da modelagem com
diagramas de temporização e de visão geral de interação. 201
11 Quatro diagramas de UML para modelagem
estrutural 203
11.1 Diagrama de classes 203
11.2 Diagrama de objetos 204
11.3 Diagrama de pacotes 205
11.3.1 Pacote. 206
11.3.2 Relacionamentos envolvendo pacotes 208
11.4 Diagrama de estrutura composta. 211
11.4.1 Modelagem de composição de instâncias no diagrama
de estrutura composta 212
11.4.2 Modelagem de colaboração no diagrama de
estrutura composta 216
11.4.3 Um exemplo de modelagem complexa com o
diagrama de estrutura composta 220
11.5 Considerações a respeito de modelagem
estrutural em UML 223
12 Suporte ao desenvolvimento baseado em
componentes de UML 225
12.1 A abordagem de desenvolvimento baseado em
componentes 225
12.2 Diagrama de componentes 227
12.3 Diagrama de utilização. 231 (deployment diagram)
12.4 Considerações a respeito da modelagem de
software baseado em componentes 234
13 Requisitos para um procedimento de
modelagem com UML. 237
13.1 Etapas para uma modelagem de conteúdo
mínimo. 237
13.2 Qualidade, coesão e consistência de
especificações orientadas a objetos 239
13.3 Considerações a respeito de processos de
modelagem.. 241
|