Modelagem de Processos Prof.: Fernando Ascani
Itens Estruturais Classes Uma Classe é um conjunto de objetos que compartilham os mesmos atributos, operações e relacionamentos. É representada graficamente por retângulos, geralmente incluindo seu nome, atributos e operações, conforme exemplo a seguir.
Classes Nomes Cada classe deve ter um nome que a diferencie de outras classes. O nome é uma sequencia de caracteres e deve ser único. Uma classe pode ser representada apenas pelo seu nome. O nome de uma classe pode ser um texto composto por qualquer numero de caracteres e alguns sinais de pontuação, mas normalmente são substantivos ou expressões breves, tipicamente o primeiro caractere de cada palavra aparece como Maiusculo: Cliente, TemperatureSensor, etc.
Classes Atributos Atributos são características de um objeto. Uma classe pode ter qualquer número de atributos ou até mesmo nenhum atributo. Basicamente a estrutura de dados que vai representar a classe. Exemplos: Funcionário: nome, endereço, telefone, CPF,...; Carro: nome, marca, ano, cor, ; Livro: autor, editora, ano. Por sua vez, os atributos possuem valores. Por exemplo, o atributo cor pode conter o valor azul. Os atributos podem ser representados apenas pelo seu nome ou também com o tipo de variável que ele possui separado por : - string, float, double...
Classes Operações Uma operação é a implementação de um serviço que pode ser solicitado por algum objeto da classe para modificar o comportamento. Uma classe pode ter um conjunto de operações, ou até mesmo nenhuma operação.
Relacionamentos na UML Relacionamentos são os blocos relacionais básicos de construção da UML. Um relacionamento é uma conexão entre itens.
Dependência Uma dependência é um relacionamento de utilização, determinando as modificações na especialização de um item - por exemplo, a classe Event pode afetar outro item que a utilize (Window), mas não necessariamente o inverso. É representada graficamente por uma linha tracejada apontando o item do qual depende.
Generalização É um relacionamento entre itens gerais (chamados superclasses ou classes-mãe) e tipos mais específicos desses itens (chamados subclasses ou classes-filha). As generalizações são muitas vezes chamadas de é um tipo de. Por exemplo: um item (como a classe Retângulo) é um tipo de uma coisa mais geral (como a classe Forma).
Associação É um relacionamento estrutural que especifica objetos de um item conectados a objetos de outro item. A partir de uma associação conectando duas classes, é possível navegar do objeto de uma classe até o objeto de outra classe e vice-versa. Pode-se também colocar uma seta no final da associação indicando que esta só pode ser usada para o lado onde a seta aponta. Mas associações também podem possuir dois nomes, significando um nome para cada sentido da associação.
Associação Para expressar a multiplicidade entre os relacionamentos, um intervalo indica quantos objetos estão relacionados no link. O intervalo pode ser de zero para um (0..1), zero para vários (0..* ou apenas *), um para vários (1..*), dois (2), cinco para 11 (5..11) e assim por diante. É também possível expressar uma série de números como (1, 4, 6..12). Se não for descrito nenhuma multiplicidade, então é considerado o padrão de um para um (1..1 ou apenas 1).
Fases do desenvolvimento do sistema em UML Existem 5 fases no desenvolvimento de sistemas de software, em UML: 1. Análise de requisitos (Use-Case ou Casos de Uso) 2. Análise (Classes e Objetos) 3. Design (Expansão em soluções técnicas) 4. Programação (Código Linguagem orientada a objetos) 5. Testes (Testes de unidade, integração e aceitação)
Diagramas na UML Um diagrama é a representação gráfica de um conjunto de elementos, geralmente representadas como gráficos de vértices (itens) e arcos (relacionamentos). São desenhados para permitir a visualização de um sistema sob diferentes perspectivas; em TI, um diagrama constitui uma projeção de um determinado sistema. Em todos os sistemas, com exceção dos mais básicos e simples, o diagrama representa uma visão parcial dos elementos que compõem o sistema. O mesmo elemento pode aparecer em todos os diagramas, em apenas alguns (o caso mais comum) ou em nenhum diagrama (caso muito raro).
Diagramas na UML 1. Diagrama de classes 2. Diagrama de objetos 3. Diagrama de casos de uso 4. Diagramas de Interação Diagrama de Sequência 5. Diagramas de Interação Diagrama de Colaboração 6. Diagrama de gráficos de estados 7. Diagrama de atividades 8. Diagrama de componentes 9. Diagrama de implantação
1 Diagrama de Classes O Diagrama de classes representa o modelo da estrutura de um sistema orientado a objetos. Esse tipo de diagrama é o centro dos principais conceitos da modelagem orientada a objetos. Permite visualizar o modelo da estrutura de um sistema. É um dos diagramas mais utilizados na modelagem orientada a objetos
2 - Diagrama de Objetos
3 - Diagramas de casos de uso
4 - Diagrama de Seqüência
5 - Diagrama de Colaboração
6 - Diagramas de Estado
7 - Diagramas de Atividades
Exercício Fazer o levantamento (Análise de requisitos), localizar e diagramar as classes, atributos e operações para um sistema de manutenção e controle de contas correntes e aplicações financeiras de um banco fictício. O sistema suportará um cadastro de clientes, onde cada cliente cadastrado poderá ter várias contas correntes, vários dependentes ligados a ele, e várias contas de poupança. Cada dependente poderá possuir várias contas de poupança, mas não poderão ter uma conta corrente própria. Entendemos poupança como uma conta que possui um valor, um prazo de aplicação a uma taxa de juros (definida no vencimento da poupança). Entendemos Aplicações Pré-fixadas como uma aplicação de um valor, em um prazo pré-determinado a uma taxa de juros previamente definida. Tanto a conta corrente quanto a poupança deverão manter um histórico de todas as movimentações de crédito, débito, transferências e aplicações de pré-fixados (préfixados apenas para conta corrente). Uma conta corrente poderá ter várias aplicações préfixadas ligadas a ela.