Engenharia de Software I Curso de Desenvolvimento de Software Prof. Alessandro J de Souza ajdsouza@cefetrn.br 1 Rational Unified Process RUP Fase Elaboração 2
VISÃO GERAL Fase Elaboração. Visão Geral 3 FASE DE ELABORAÇÃO Os objetivos principais da fase de Elabração incluem: A meta da fase de elaboração é criar a baseline para a arquitetura do sistema a fim de fornecer uma base estável para o esforço da fase de construção. (Projeto da Arquitetura) Criar Protótipos para validação da Arquitetura.(Escolha de Casos de Uso estratégicos) Criar planos de iteração detalhados e baselines para a fase de construção. Tratar todos os riscos significativos do ponto de vista da arquitetura do projeto. Fase Iniciação 4
FASE DE ELABORAÇÃO Marco da Arquitetura do Ciclo de Vida. Critérios de Avaliação Os requisitos do produto são estáveis A arquitetura é estável O teste e a avaliação de protótipos executáveis demonstraram que os principais elementos de risco foram tratados e resolvidos com credibilidade. Os planos de iteração para a fase de construção têm detalhes e fidelidade suficientes para permitir o avanço do trabalho. Todos os envolvidos concordam com a arquitetura proposta. 5 FASE DE ELABORAÇÃO - Disciplinas 6
FASE DE ELABORAÇÃO - Disciplinas 7 FASE DE ELABORAÇÃO - Artefatos Artefatos Modelo de Análise: O Modelo de Análise descreve a realização dos casos de uso e funciona como uma abstração do Artefato: Modelo de Design. O Modelo de Análise contém os resultados da análise do caso de uso. Descrição de Coisa do Mundo Real. Papel: Arquiteto de Software Modelo de Análise não são modelos de componentes de software 8
FASE DE ELABORAÇÃO - Artefatos Artefatos - Modelo de Análise Passos para criar um modelo de Análise: Liste as classes conceituais candidatas Desenhe-as em um modelo de análise Acrescente as associações necessárias para registrar os relacionamentos Acrescente os atributos necessários Ou...? 9 FASE DE ELABORAÇÃO - Artefatos Artefatos - Modelo de Análise Classes Conceituais de Especificação ou Descrição Quando as classes conceituais de especificação são necessárias? Quando houver necessidade de uma descrição sobre um item ou serviço Quando a exclusão de instancias de coisas que elas descrevem resultar em uma perda de informação que precise ser mantida Quando essa especificação ou classe reduzir informações redundantes ou duplicadas Descreve Pior Representado Melhor Representado 10
FASE DE ELABORAÇÃO - Artefatos Artefatos - Modelo de Análise Associações: Representa uma relação estrutural entre domínio Papéis Nome da Associação Multiplicidade 11 FASE DE ELABORAÇÃO - Artefatos Artefatos - Modelo de Análise Generalização: Relaciona classes generalizadas com suas especializações. Denota relações é um tipo de. 12
FASE DE ELABORAÇÃO - Artefatos Artefatos - Modelo de Análise Agregação: É uma associação que expressa a semântica parte de. Neste tipo de relacionamento, temos uma classe representando o todo e outras classes, suas partes 13 FASE DE ELABORAÇÃO - Artefatos Artefatos - Modelo de Análise Composição: É uma associação que expressa a semântica parte de mais fortemente. Neste caso se o todo for destruído, suas partes obrigatoriamente serão. 14
FASE DE ELABORAÇÃO - Artefatos Artefatos Modelo de Design: Conjunto de diagramas que descreve o projeto lógico. Inclui, dentre outros, diagramas de classes de software, de iteração entre objetos, diagrama de pacotes e outros. Papel: Arquiteto de Software Diagrama de Classes Diagrama de Seqüência 15 FASE DE ELABORAÇÃO - Artefatos Artefatos Modelo de Dados: O modelo de dados descreve a representação lógica e física dos dados persistentes no sistema. Também abrange qualquer comportamento definido no banco de dados, como procedimentos armazenados, triggers, restrições etc. Papel: Designer de Banco de Dados 16
FASE DE ELABORAÇÃO - Artefatos Artefatos Doc de Arquitetura de Software: O Documento de Arquitetura de Software fornece uma visão geral de arquitetura abrangente do sistema, usando diversas visões de arquitetura para descrever diferentes aspectos do sistema. Papel: Arquiteto de Software 17 Estudo de Caso 18
Estudo de Caso: Locadora de Caso Uma locadora de veiculo deseja um sistema para facilitar o atendimento a seus clientes. O processo de aluguel de carros atualmente é confuso e está gerando insatisfação entre clientes. A locadora é formada basicamente pelos seus clientes, funcionários e carros para aluguel. Os carros estão divididos em diversos tipos: popular, luxo e utilitário. As informações importantes sobres os carros a serem armazenadas são:placa, tipo, modelo, ano, cor, chassis, quilometragem e valor do aluguel(diária). Os funcionários serão responsáveis pelo cadastro dos clientes e dos carros adquiridos pela locadora, por efetuar o aluguel de um carro para cliente e dar baixa no aluguel. Existem clientes especiais e clientes comuns. Os especiais possuem uma taxa de desconto e um valor de quilometragem extra para seus aluguéis. Qual quer cliente é identificado por RG, nome, CPF, telefone, endereço e contato. Diagrama de Caso de Uso Atividades 1) Desenhar o Modelo de Analise 2) Desenhar o Modelo de Design 3) Realização de Caso de Uso Efetuar aluguel 19 ESTUDO DE CASO - MODELO DE ANÁLISE Listar as classes conceituais candidatas Cliente Comum Cliente Especial Carro Locadora Funcionário Aluguel 20
ESTUDO DE CASO - MODELO DE ANÁLISE Desenhe-as em um modelo de análise 21 ESTUDO DE CASO - MODELO DE ANÁLISE Acrescente as associações necessárias para registrar os relacionamentos 22
ESTUDO DE CASO - MODELO DE ANÁLISE Acrescente os atributos necessários aluga É feito por 23 ESTUDO DE CASO - MODELO DE DESIGN Projetar Diagramas de classe Projetar Diagramas de Interação Diagrama de Seqüência Diagrama de Colaboração 24
ESTUDO DE CASO - MODELO DE DESIGN 25