Baixe o app para aproveitar ainda mais
Prévia do material em texto
Analise e Projeto de Bancos de Dados Professor:Gênesis Lima Email:genesis.lima@ufpe.br Roadmap Processo de Software Técnicas de levantamento e analise de requisitos Análise e projeto de Bancos de dados UML DDL Processo de software Segundo Pressman (2009), define processo de software como um arcabouço para as tarefas que são necessárias para construir software de alta qualidade. Já Sommerville (2010), observa um processo de software como um conjunto de atividades que leva à produção de um produto de software. No guia PMBOK (2013), processo é descrito como um conjunto de atividades inter-relacionadas realizadas para obter um conjunto específico de produtos, resultados ou serviços. Técnicas de levantamento de requisitos Point of View Focada nas diferentes perspectivas dos stakeholders. a.k.a: VORD-viewpoint-oriented requirements definition Etnografia Baseada na observação do ambiente. Seu diferencial está na análise tanto de processos formais quanto de processos informais. Workshop Técnica que utiliza reuniões estruturadas em grupo onde fazem parte: uma equipe de analistas; Stakeholders; Facilitador. Utiliza a técnica de brainstorming para solução de problemas e entendimento dos requisitos. Prototipação Indicada para estudar as alternativas de interface do usuário. Resolver problemas de comunicação com outros produtos. Analisar viabilidade de atendimento dos requisitos de desempenho. Entrevistas Técnica bastante utilizada que consiste na busca por informações de cada envolvido e possui como auxiliares o desenvolvimento de um plano geral de entrevistas, autorização, planejamento, uso de ferramentas automatizadas e busca, também, despertar o interesse do usuário através da informação. Questionários Indicado para levantamento remoto Apresenta vantagem de capturar informações com caráter estatístico para análise. São indicadas perguntas com disponibilização de respostas de múltipla escolha. Os stakeholders devem ser escolhidos com cuidado. Brainstorming Técnica para geração de ideias Pode ser utilizada para criação de novos produtos ou soluções Deve seguir regras como: Iniciar com a explanação do objetivo da reunião de forma clara e objetiva; Gerar a maior quantidade de ideias possível; Deixar as ideias fruírem a vontade; Remodelar e combinar as ideias. JAD – Joint Application Design É uma técnica para promover cooperação, entendimento e trabalho em grupo entre os usuários desenvolvedores. Seus princípios básicos são: dinâmica de grupo; Técnicas visuais; Manutenção da organização ; Processo; Uso de documentação padrão. UML – Unified Modeling language E uma notação padrão para modelagem de objetos do mundo real utilizada no processo de desenvolvimento de aplicações orientadas a objetos. Tipos de diagramas Estruturais Classes Objetos Componentes Pacotes Implantação Estrutura Composta Comportamentais Casos de Uso Interação Visão Geral Sequência Temporal Comunicação Atividades Máquinas de Estados Tipos de Relacionamentos Associação Generalização Dependência Realização UML – Casos de Uso Descreve uma sequência de ações que representam um cenário principal, e cenários alternativos, com o objetivo de demonstrar o comportamento de um sistema, ou sua parte, através de interações com atores. Ator Representa um papel a ser executado por alguém em um determinado contexto Um ator pode representar mais de um papel Um caso de uso pode se relacionar com mais de um ator Ex: Departamento, Usuário, Sistema e etc. Ator Associação Generalização Relacionamentos Extends Indica que um caso de uso terá seu procedimento acrescido de um outro caso de uso em um ponto de extensão base. Include Indica que o caso de uso terá seu procedimento copiado em um local especifico em outro caso de uso base. Relacionamentos Include e Extends UML – Diagrama de Classes Representa um conjunto de objetos que compartilham a mesma estrutura de propriedades dentro de um mesmo contexto. UML - Visibilidade [+] Publico [-] Privado [#] Protegido [~] Pacote Visibilidade Modificador Classe Pacote Subclasse Global Public [+] Sim Sim Sim Sim Protected [#] Sim Sim Sim Não Package-private [~] Sim Sim Não Não Private [-] Sim Não Não Não Multiplicidade Indica uma faixa de cardinalidade permitida a um elemento. Representa a quantidade de instâncias possíveis em um relacionamento. Escopo Objeto Escopo obtido a partir de um objeto ativo em memória. Classe Escopo obtido a partir de uma classe. Não é necessária a criação de um novo objeto para ser obtido. Na UML é representado pelo nome da propriedade sublinhado. Constraints Presente em diversos elementos da UML Representa uma restrição ou uma condição com o propósito de declarar alguma semântica. Ex: estoque:Integer {estoque> 5} Atributo Derivado O atributo derivado tem seu valor computado a partir de outros atributos. Associação Binária N-ária Generalização Sobreposição Disjunção Completa Incompleta Diagrama de Classes vs MER Sobreposição (overlapping) == MER(compartilhada) Disjunção (disjoint) == MER(exclusiva) Completa (complete) == MER(total) Incompleta (Incomplete) == MER(parcial) Outras Associações Dependência Agregação Agregação por composição Dependência Em UML um relacionamento de dependência ocorre quando um elemento, o cliente, usa ou depende de outro elemento, o fornecedor. Este relacionamento indica que a mudança no fornecedor pode requerer uma mudança no cliente. Agregação Simples Agregação é um tipo especial de associação onde os objetos são criados com o objetivo de criar um objeto mais complexo. Descreve um conjunto de objetos e como eles interagem entre si. Pode participar de mais de um aggregate e pode existir de forma independente, ou seja, sem participar de uma associação por agregação. Agregação por composição Composição é uma forma de agregação todo-parte. Na composição o tempo de vida de uma classe parte é dependente da classe todo. UML – Diagrama de Pacotes O diagrama de pacotes é um diagrama estrutural que modela a dependência entre pacotes. Referências CHURCHER, Clare. Beginning Database Design. 2. ed. Estados Unidos: Apress.2012. 252p. MELO, Ana Cristina. Desenvolvendo aplicações com UML 2.0:do conceito à implementação. 2. ed. Rio de Janeiro: Brasport. 2004. 275p. OPEL, Andrew. Databases Demystified. 2. ed. Estados Unidos: McGraw-Hill Osborne Media. 2010 360p.
Compartilhar