A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 3. Análise & Projeto Márcio Aurélio Ribeiro Moreira.

Apresentações semelhantes


Apresentação em tema: "Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 3. Análise & Projeto Márcio Aurélio Ribeiro Moreira."— Transcrição da apresentação:

1 Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 3. Análise & Projeto Márcio Aurélio Ribeiro Moreira

2 Márcio Moreira3. Análise & Projeto – slide 2Metodologia de Desenvolvimento de Software - RUP Evolução da análise DécadaAnáliseAbordagensFerramentas 60-70Tradicional  Funcional • Textos e Fluxogramas 80 Estruturada (Cris Gane, Tony de Marco e Yourdan)  Funcional  Dados • Diagrama de Fluxo de Dados (DFD) • Diagrama de Estrutura de Dados (Modelo Conceitual) • Mini-especificações e Normalização • Dicionário de Dados 90 Essencial (Peter Chen, Stephen McMenamin & John Palmer)  Funcional  Dados  Controle • Lista de Eventos e DFD • Diagrama Entidade-Relacionamento (DER) • Diagrama de Transição de Estados (DTE) • Mini-especificações e Normalização • Dicionário de Dados 2000 Orientada a Objetos (Booch, Rumbaugh & Jacobson)  Todos os aspectos do negócio e do sistema • Equivalentes aos anteriores • Modelos de casos de uso, análise e projeto • Modelos de distribuição, implementação e de testes • Diagramas de seqüência, estado, atividades, etc.

3 Márcio Moreira3. Análise & Projeto – slide 3Metodologia de Desenvolvimento de Software - RUP Objetivos da disciplina de análise & design  Transformar os requisitos em um design (projeto) do sistema a ser criado.  Desenvolver uma arquitetura sofisticada para o sistema.  Adaptar o design (projeto) para que corresponda ao ambiente de implementação, projetando-o para fins de desempenho.

4 Márcio Moreira3. Análise & Projeto – slide 4Metodologia de Desenvolvimento de Software - RUP Fluxo de trabalho de análise & design

5 Márcio Moreira3. Análise & Projeto – slide 5Metodologia de Desenvolvimento de Software - RUP Objetivos das atividades  Realizar Síntese Arquitetural (utilizada na Iniciação):  Construir e avaliar uma Prova de Conceito Arquitetural, para demonstrar que o sistema idealizado é factível.  Definir uma Sugestão de Arquitetura:  Criar um esboço inicial da arquitetura de software.  Identificação de Serviço:  Identificar e qualificar serviços candidatos.  Analisar Comportamento:  Transformar descrições comportamentais fornecidas pelos requisitos em um conjunto de elementos, no qual o design possa se basear.  Refinar a Arquitetura:  Concluir a arquitetura para uma iteração.  Projetar Componentes:  Refinar o design do sistema.  Projetar o Banco de Dados:  Identificar as classes de design a serem persistidas em um banco de dados e projetar as estruturas de banco de dados correspondentes.  Especificação de Serviço:  Especificar o comportamento de serviço e identificar os fornecedores de serviços e partições.

6 Márcio Moreira3. Análise & Projeto – slide 6Metodologia de Desenvolvimento de Software - RUP A: Realizar síntese arquitetural

7 Márcio Moreira3. Análise & Projeto – slide 7Metodologia de Desenvolvimento de Software - RUP A: Definir uma sugestão de arquitetura

8 Márcio Moreira3. Análise & Projeto – slide 8Metodologia de Desenvolvimento de Software - RUP A: Identificação de serviço  Esta atividade é composta por outras 3 atividades:  Decomposição do Domínio:  Decomposição guiada por negócio, top-down, para identificar:  Serviços candidatos e Processos de negócios (fluxos de serviços)  Áreas funcionais que identificam limites para subsistemas (  componentes de serviços candidatos para realizar os serviços)  Atributos comuns e variações da funcionalidade de negócios  Modelagem de Serviço de Meta:  Ajuda a descobrir serviços alinhados a negócios e assegura que importantes serviços não tenham sido perdidos durante a decomposição (objetivos  serviços  KPIs, métricas e eventos)  Análise de Recurso Existente:  Avaliar os recursos existentes para projetar serviços que preservem o máximo destes recursos sem a necessidade de mudanças.

9 Márcio Moreira3. Análise & Projeto – slide 9Metodologia de Desenvolvimento de Software - RUP A: Decomposição de domínio Domínio de Negócio

10 Márcio Moreira3. Análise & Projeto – slide 10Metodologia de Desenvolvimento de Software - RUP A: Modelagem de serviço de meta

11 Márcio Moreira3. Análise & Projeto – slide 11Metodologia de Desenvolvimento de Software - RUP A: Análise de recurso existente

12 Márcio Moreira3. Análise & Projeto – slide 12Metodologia de Desenvolvimento de Software - RUP A: Analisar comportamento 1

13 Márcio Moreira3. Análise & Projeto – slide 13Metodologia de Desenvolvimento de Software - RUP A: Analisar comportamento 2

14 Márcio Moreira3. Análise & Projeto – slide 14Metodologia de Desenvolvimento de Software - RUP A: Refinar a arquitetura 1

15 Márcio Moreira3. Análise & Projeto – slide 15Metodologia de Desenvolvimento de Software - RUP A: Refinar a arquitetura 2

16 Márcio Moreira3. Análise & Projeto – slide 16Metodologia de Desenvolvimento de Software - RUP A: Projetar componentes 1

17 Márcio Moreira3. Análise & Projeto – slide 17Metodologia de Desenvolvimento de Software - RUP A: Projetar componentes 2

18 Márcio Moreira3. Análise & Projeto – slide 18Metodologia de Desenvolvimento de Software - RUP A: Projetar banco de dados

19 Márcio Moreira3. Análise & Projeto – slide 19Metodologia de Desenvolvimento de Software - RUP A: Especificação de serviço  Esta atividade é composta por outras 3 atividades:  Executar Especificação de Serviço:  Definir os limites do serviço e definir as mensagens.  Executar Análise de Subsistema:  Fazer o projeto do subsistema de SOA (Service Oriented Architecture ou Arquitetura Orientada a Serviços).  Executar Especificação de Componente:  Especificar os componentes necessários aos serviços.

20 Márcio Moreira3. Análise & Projeto – slide 20Metodologia de Desenvolvimento de Software - RUP A: Executar especificação de serviço Teste Litmus: É um tipo de teste para serviços de SOA Objetivos: • Assegurar que o serviço seja alinhado com os negócios • Assegurar que o serviço possa ser composto • Assegurar que o serviço tenha descrição externa • Assegurar que o serviço seja reutilizável • Assegurar que o serviço seja viável tecnicamente

21 Márcio Moreira3. Análise & Projeto – slide 21Metodologia de Desenvolvimento de Software - RUP A: Executar análise de subsistema

22 Márcio Moreira3. Análise & Projeto – slide 22Metodologia de Desenvolvimento de Software - RUP A: Executar especificação de componente

23 Márcio Moreira3. Análise & Projeto – slide 23Metodologia de Desenvolvimento de Software - RUP Essência da análise & projeto Estruturar o software Especificar o Software Arquitetura do Software Projeto de sub-sistemas Projeto de interfaces Descrição Arquitetural e M. de Análise e de Serviços Casos de Uso Análise de realização dos Casos de Uso Modelo de Análise Pacotes de Análise Classes de análise Mapa de navegação Projeto Arquitetural Descrição Arquitetural e M. de Projeto e Implementação Projeto de Classes Modelo de Dados Classes de Projeto e Testes Componentes de Serviços Projeto de Casos de Uso Projetos de realização dos Casos de Uso

24 Márcio Moreira3. Análise & Projeto – slide 24Metodologia de Desenvolvimento de Software - RUP P: Modelo de análise

25 Márcio Moreira3. Análise & Projeto – slide 25Metodologia de Desenvolvimento de Software - RUP P: Modelo de serviços

26 Márcio Moreira3. Análise & Projeto – slide 26Metodologia de Desenvolvimento de Software - RUP P: Projeto de serviços

27 Márcio Moreira3. Análise & Projeto – slide 27Metodologia de Desenvolvimento de Software - RUP P: Realização de casos de uso

28 Márcio Moreira3. Análise & Projeto – slide 28Metodologia de Desenvolvimento de Software - RUP P: Mapa de navegação

29 Márcio Moreira3. Análise & Projeto – slide 29Metodologia de Desenvolvimento de Software - RUP P: Pacotes de análise

30 Márcio Moreira3. Análise & Projeto – slide 30Metodologia de Desenvolvimento de Software - RUP P: Modelo de projeto

31 Márcio Moreira3. Análise & Projeto – slide 31Metodologia de Desenvolvimento de Software - RUP P: Projeto de realização

32 Márcio Moreira3. Análise & Projeto – slide 32Metodologia de Desenvolvimento de Software - RUP P: Projeto de componentes

33 Márcio Moreira3. Análise & Projeto – slide 33Metodologia de Desenvolvimento de Software - RUP Modelos de: casos de uso x análise x projeto Modelo de Caso de UsoModelo de AnáliseModelo de Projeto Descrito na linguagem do clienteUsa diagramas de análise (modelo lógico)Usa diagramas de projeto (modelo físico) Visão externa do sistemaVisão interna estrutural do sistemaVisão interna comportamental do sistema Estruturado pelos casos de uso (1 página) Estruturado por sub-sistemas, pacotes e classes (interface, controle e persistência) genéricas do projeto (poucas camadas) Estruturado por componentes e dependente da linguagem de implementação (várias camadas) Contrato entre o cliente e o desenvolvedor (escopo) Usado pelos analistas para entender como o sistema deve ser estruturado Contrato entre analistas e desenvolvedores do comportamento do sistema Pode conter redundâncias, inconsistências, etc. Não deve conter redundâncias, inconsistências, etc. Deve ser objetivo, claro e limpo Captura funcionalidades do sistema, inclusive arquiteturais Esboça como realizar as funcionalidades Funciona como primeiro corte do projeto Detalha a realização das funções do sistema até o nível necessário para desenvolve-las Define os casos de uso que integrarão o Modelo de Análise Define as realizações dos casos de uso e as necessidades de projeto Define as realizações do Modelo de Análise Raramente modificadoMuda pouco no ciclo de vida do projetoMuda bastante e deve ser atualizado

34 Márcio Moreira3. Análise & Projeto – slide 34Metodologia de Desenvolvimento de Software - RUP Do negócio ao software NegócioSistemaSoftware Direcionador de Comportamento Direcionador de Informações Identificar Necessidades Modelar Solução Validar Solução Fluxo de Negócio Fluxo de Negócio Transações de Negócio Transações de Negócio Entidade de Negócio Entidade de Negócio Atividades de Negócio Atividades de Negócio Interfaces & Estruturas Interfaces & Estruturas Modelo de Informação Modelo de Informação Tarefas Automatizáveis Tarefas Automatizáveis Componentes Modelo de Dado Modelo de Dado ArquiteturaArquitetura Modelagem de Negócio &Requisitos &RequisitosAnálise&Design(Projeto)Análise&Design(Projeto) Diagramas Comportamentais Diagramas Comportamentais Diagramas Estruturais Diagramas Estruturais

35 Márcio Moreira3. Análise & Projeto – slide 35Metodologia de Desenvolvimento de Software - RUP Exercício 2: Contexto  Considerando o mesmo projeto do exercício 1 e mais:  A empresa adquiriu o Siebel, um software pronto, de CRM para ser utilizado no projeto, com base nas seguintes ponderações:  O Siebel é um dos mais utilizados na indústria que a empresa está inserida  O Siebel é compatível com o eTOM e foi desenvolvido na arquitetura MVC (Model View Control ou Persistência, Controle e Apresentação) que facilita a integração via SOA  Para atender as funcionalidades específicas da empresa, serão feitas pequenas customizações no Siebel, priorizando:  As customizações devem ficar restritas à camada de Apresentação  Somente serão permitidas customizações na camada de Controle e de Persistência com autorização dos executivos e da Oracle (fabricante)  Você faz parte de uma equipe constituída para implementar o Siebel e:  Existe uma outra equipe que cuida de arquitetura e da integração via SOA e outra que cuida de processos de negócio  Todas as integrações do Siebel com legados e outros softwares são via SOA  Todas as solicitações da área de negócio são alinhadas à processo DataBase Apresentação Controle Persistência View Control Model

36 Márcio Moreira3. Análise & Projeto – slide 36Metodologia de Desenvolvimento de Software - RUP Exercício 2: Questões 1.Que Atividades e Tarefas de Requisitos e Análise & Design (Projeto) do RUP vocês recomendam que sejam utilizadas neste caso? 2.Justifique porque vocês incluíram ou excluíram cada Atividade e Tarefa. 3.Considerando somente as Atividades e Tarefas selecionadas, na construção de quais artefatos o “as-is” de processos poderia ajudar e porque? 4.A consultoria resolveu fazer o Design (projeto técnico) junto com a Implementação. O que vocês acham disto? Quais as possíveis conseqüências?

37 Márcio Moreira3. Análise & Projeto – slide 37Metodologia de Desenvolvimento de Software - RUP Referências SiglaReferência BOO98G. Booch, J. Rumbaugh e I. Jacobson, UML User Guide. Addison-Wesley Longman. DEM89DeMARCO, Tom. Análise estruturada e especificação de sistemas. Rio de Janeiro: Campus, JAC98 Ivar Jacobson, Grady Booch, and James Rumbaugh. The Unified Software Development Process Addison Wesley Longman. KRO03 Per Kroll e Philippe Kruchten The Rational Unified Process Made Easy, A Practitioners Guide to the RUP. Addison Wesley Longman. KRU95Philippe Kruchten 1995, "The 4+1 view model of architecture," IEEE Software. 12(6), KRU98P. Kruchten; The Rational Unified Process: An Introduction, Object Technology Series, Addison-Wesley, MAR05Márcio Moreira. Resumo do livro Unified Process. Márcio. Uberlândia (MG) Resumo do livro Unified Process MAR06Márcio Moreira. Engenharia de Software - RUP. Uniube - Universidade de Uberaba - Uberlândia (MG) Engenharia de Software - RUP MCP91MCMENAMIN, Stephen & PALMER, John. Análise essencial de sistemas. São Paulo : McGraw-Hill, PRE95PRESSMAN, R. S. Engenharia de software. São Paulo: Makron Books RUP08IBM Rational. RUP – Rational Unified Process – 7.5 – For Large and Small Projects IBM Rational. SUM07Sommerville, Ian. Engenharia de Software. 8ª Ed. Pearson / Prentice Hall YOU92YOURDON, Edward. Análise estruturada moderna. Rio de Janeiro: Campus, 1992.


Carregar ppt "Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 3. Análise & Projeto Márcio Aurélio Ribeiro Moreira."

Apresentações semelhantes


Anúncios Google