Baixe o app para aproveitar ainda mais
Prévia do material em texto
Engenharia de Software2 Modulo 2 – RUP (Rational Unified Process) Prof. André de Paula – Pós-graduando em Web e sistemas de informação e Docência do ensino superior andrepns@gmail.com Prof. André de Paula – Engenharia de Software2 - andrepns@gmail.com RUP ORGANIZER • Software que providencia um espaço de trabalho para a agregação de conteúdos de forma a processar elementos de um modelo. • principais características: • uma visão em árvore dos componentes do processo, chamada Layout; • o suporte para arrastar e resignar; e • a organização dos arquivos (ficheiros) coligados a esta estrutura RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Funções do RUP Organizer • é um componente do Rational Process WorkBench (RPW) • pode ser usado para “empacotar” assets (documentos do RUP gerados ao longo do projeto de software), • de forma a que estes estejam diretamente anexados às atividades, aos elementos (artefatos) e aos papéis relevantes. “A organização acaba se beneficiando em futuros projetos que criem configurações RUP, pois estes obterão exemplos e manuais mais adequados para as suas necessidades.” RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Funções do RUP Organizer • Thin plug-ins é o nome dado para a coleção de assets usáveis. Esta ferramenta é utilizada para: • Agrupar os recursos disponíveis; • Planejar e detalhar o processo para o projeto; • Desenvolver novos thin plug-ins; • Validar os plug-ins; • Exportar plug-ins. • Dispor linhas orientadoras para o projeto; • Montar os templates utilizados no projeto. • Associar os assets com os componentes do processo; • Caso necessário converter para o formato RUP os conteúdos considerados relevantes; RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Funções do RUP Organizer • Primeiramente deve agrupar todos os assets que necessitem ser partilhados. • Os assets incluem: • Diretrizes: denominadas Guidelines, texto adicional ou diagramas que proporcionam lucidez na criação de um elemento individual ou em grupo, incluindo modelos, delineando opções e sugestões, com vista a formalidade; • Checkpoints: questionário a respeito dos artefatos para validar o seu nível de maturidade e qualidade; • Standards organizacionais ou de projeto: requisitos explícitos que têm de estar em conformidade com os artefatos em função das restrições externas, a exemplo: código; • Pagina de Conceito: texto adicional ou diagramas que apresentam maior clareza e compreensão da aproximação intelectual ou prática indicada, sem citar testemunhos do processo. São em formatos de documentos HTML com links, de tamanho pequeno que estão absolutamente relacionados com uma atividade particular ou workflow; • WhitePapers: página de conceito mais extensa frequentemente, em PDF ou Word. Apresentam linhas orientadoras mais abrangentes e densas; RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Funções do RUP Organizer • Primeiramente deve agrupar todos os assets que necessitem ser partilhados. • Os assets incluem (continuação): • Templates: documentos ou modelos pré-prontos, com estrutura organizacional, material descritivo, mas sem conteúdo, pronto para ser utilizado por um projeto como base de um artefato ou conjunto de artefatos; • Exemplos: Templates preenchidos, com conteúdo e com uma estrutura organizacional que podem ser usados para fornecer maior concepção da para a criação do artefato ou ainda como ponto de partida pré-preenchido para futuras elaborações. Podem ser e-mails, bases de dados, documentos, folhas de cálculo, páginas em HTML, planilhas entre outros... É importante agrupar estes assets em um único diretório, separado do material que não estará no conjunto de assets partilhados. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Ciclo de desenvolvimento do RUP • Encerra com uma versão completa do software. • As fases definem os status do projeto, que são definidos por riscos que estão sendo mitigados ou questões que precisam ser respondidas. • O RUP é dividido em quatro fases, são elas: Concepção, Elaboração, Construção e Transição. “Embora varie muito de organização para organização e de projeto para projeto, um ciclo de desenvolvimento normalmente demanda mais tempo na fase de construção, entretanto é importante ressaltar que as principais fases são as iniciais: Iniciação e Elaboração. Pois quanto mais tempo se investe nessas, menos se gasta no decorrer do projeto e principalmente com a manutenção do mesmo” RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Ciclo de desenvolvimento do RUP (continuação) • Cada passagem pelas quatro fases gera um ciclo de desenvolvimento e cada passagem pelas quatro fases produzem uma geração do software. • O produto vai se desenvolvendo a cada geração (ciclo), repetindo a mesma sequência de fases de iniciação, elaboração, construção e transição. • Esses ciclos subsequentes são titulados de ciclos de evolução. À medida que o produto atravessa vários ciclos, são produzidas novas gerações. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Ciclo de desenvolvimento do RUP (continuação) • Os ciclos de evolução podem ser disparados por melhorias sugeridas pelos usuários, mudanças no contexto do usuário, mudanças na tecnologia e principalmente por mudanças funcionais, ou seja, na funcionalidade (adição ou atualização). • Segue abaixo uma visão de processo da iteração de um ciclo. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP “A arquitetura do RUP é baseada em componentes, esta cria um sistema que pode ser facilmente extensível, promovendo a reutilização de software e um entendimento comum. Um componente normalmente se relaciona com um objeto na programação orientada a objetos.” • Focado em produzir um processo executável nas fases iniciais do projeto (antes de comprometer grandes recursos). • Segue abaixo as fases do RUP em sequência e os marcos principais de cada uma delas. • Essas fases podem conter várias iterações. • Essas têm como objetivo capturar a dimensão do tempo. • As quatro fases indicam o enfoque que é dado ao projeto em um determinado instante e cada uma delas possui objetivos específicos. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP - Fase de concepção • É também denominada de fase de iniciação, • é a fase na qual é feita uma discussão sobre o problema, • estimativa de recursos necessários para a execução do projeto, • estabelecimento da visão e a viabilidade econômica do projeto, • além do estudo se o mesmo resolveria os problemas para qual será desenvolvido. • É nesta fase se estabelece o escopo do software do projeto e as condições limite,• incluindo uma visão operacional, • critérios de aceitação e o que deve ou não estar no produto. • A fase de concepção é a fase onde se apresenta o plano de projeto, o caso de uso inicial e o glossário do projeto, entre outros. “Já em projetos de melhorias, ou apenas updade de versões em um sistema existente, a fase de iniciação é mais acelerada, sendo a fase de transição a mais densa. Porém esses tipos de projetos tem um ciclo muito mais rápido comparando com um projeto novo” RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de concepção (cont.) • Meta: A meta predominante da fase de concepção é chegar no consenso entre todos os envolvidos sobre os objetivos do ciclo de vida do projeto. • A fase de iniciação tem muito valor especialmente para os empenhos dos desenvolvimentos novos, ou seja, projetos que iniciaram um software do zero. Pois há muitos riscos de negócios e de requisitos que precisam ser tratados para que o projeto possa dar continuidade. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de concepção (cont.) • Objetivos: • Detalhar o escopo do projeto; • Identificar os casos de uso críticos do sistema, os principais cenários de operação; • Familiarizar com as nomenclaturas utilizadas pelos usuários; • Rascunhar o designer inicial do software, com características e nomenclaturas do negócio; • Estudar alguns cenários básicos; • Prever futuros cenários; • Apresentar pelo menos uma opção de arquitetura; • Estimar o custo e a programação para o projeto como um todo; • Prever possíveis riscos; • Preparar o ambiente de produção e desenvolvimento para o projeto RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de concepção (cont.) • Atividades • Desenvolver o Escopo do projeto: Definir o contexto, os requisitos e as restrições mais formidáveis, para que seja possível definir critérios de aprovação para o produto final. • Planejar e preparar um caso de negócio: Estudar, analisar e avaliar alternativas para: • O controle dos possíveis riscos, • A gestão organizacional da equipe, • O plano do projeto e • As mudanças que podem ser: de custo, de programação e de recursos. • Sintetizar uma possível arquitetura: Analisar as mudanças na interface com o usuário, para se ter uma estimativa de custo, programação e recursos mais realista. Desta forma demonstrar a possibilidade de execução através de alguma forma de prova de conceito. Isso pode ter a forma de um modelo visual que simula o que é exigido, ou de um protótipo inicial que explora os possíveis módulos do sistema. • O esforço do protótipo durante a iniciação deve se limitar a ganhar confiança na possibilidade de uma solução - a solução será executada durante a elaboração e a construção. • Preparar o ambiente para o projeto: Avaliando o projeto e a organização, selecionando ferramentas a serem utilizadas no decorrer do projeto e definindo quais partes do processo devem ser melhoradas ou permanecerem iguais RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP - Fase de elaboração • Fase onde são eliminados os principais riscos, bem como desenvolvido o plano de projeto, definindo a arquitetura do sistema, que deverá ser estável e que permita o sistema evoluir. • Os elementos de risco que devem ser estudados, nesta fase, são: • Riscos de requerimentos, • Riscos de capacidade física, • Riscos tecnológicos, • Riscos de conhecimentos e expertises de toda equipe tanto técnica quanto funcional, • Riscos de negócio. “Podemos considerar que esta é a fase mais crítica de todas, em virtude de que na conclusão da fase a engenharia é considerada completa e os custos para alteração do software aumentam a partir deste momento, pois o projeto começa a avançar. Analisando a vertente financeira do projeto, é ao final desta fase que o projeto deixa de ser uma operação de baixo risco e baixo custo e passa possivelmente a ser de alto risco e alto custo.” RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de elaboração (cont.) • Meta: 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. • O desenvolvimento da arquitetura começa a acontecer, pois os requisitos começam a se clarear mais, principalmente os que influenciam na arquitetura do sistema. • O equilíbrio da arquitetura é avaliado por meio de cenários propostos de arquitetura RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de elaboração (cont.) • Objetivos: • Garantir que a arquitetura, os requisitos e os planos estejam estáveis o suficiente para que os riscos sejam reduzidos a fim de determinar com segurança o custo e a programação para a conclusão do desenvolvimento. • Para a maioria dos projetos, ultrapassar essa marca também corresponde à transição de uma operação rápida e de baixo risco para uma operação de alto custo e alto risco com uma inércia organizacional frequente; • Adotar planos para todos os possíveis riscos impactantes, principalmente os que envolvem a arquitetura do projeto; • Comprovar que a arquitetura de baseline suportará os requisitos do sistema a um custo e tempo acordado com o cliente; • Formar uma arquitetura da baseline derivada do tratamento dos cenários significativos do ponto de vista da arquitetura, pois é a área mais atingida pelos maiores riscos técnicos do projeto; • Instituir um ambiente de suporte; • Para alcançar os objetivos a cima descritos, é fundamental configurar o ambiente de suporte e desenvolvimento para o projeto, que contemple criar um caso de desenvolvimento, criar templates e diretrizes, e configurar ferramentas; • Produzir um protótipo evolutivo dos componentes de qualidade de produção, assim como um ou mais protótipos descartados para diminuir riscos específicos como: • Trocas de interfaces com o usuário • Alteração de requisitos; • Reutilização de elementos (componentes); • Possibilidade de produção do produto ou demonstrações para investidores, clientes e usuários finais. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de elaboração (cont.) • Atividades • Desenvolver cenários de iteração detalhados e baselines para a fase de construção. • Refinar o caso de desenvolvimento e posicionar o ambiente de desenvolvimento, incluindo o processo, as ferramentas e o suporte técnico necessário para dar subsídio à equipe de construção. • Detalhar a arquitetura e selecionar Elementos (componentes). • Os componentes de arquitetura selecionados são associados e estudados em comparação com os cenários básicos. • As lições aprendidas dessas atividades podem resultar em uma nova interface gráfica da arquitetura, levando em consideração designs alternativa ou reavaliando os requisitos.• Os componentes principais são estudados e as decisões de fazer, comprar e utilizar são bem esclarecidas para determinar o custo da fase de construção e programar com confiança. • Determinar, validar e criar a baseline da arquitetura; • Refinar a Visão: buscando novos dados e novas informações durante a fase, estabelecendo uma compreensão concreta dos casos de uso mais críticos que dirigem as decisões de arquitetura e planejamento; RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP - Fase de construção • Nesta fase, o sistema começa a ser codificado, • O desenvolvimento ocorre de maneira iterativa. • Ao final de cada ciclo, pode ser gerada uma versão utilizável, que crescerá a cada iteração. • Podemos definir a fase de construção como um processo de manufatura, em que o foco está no controle de recursos e no controle de operações para aperfeiçoar custos, programações e qualidade. “Esta fase envolve a fase de modelagem e a fase de desenvolvimento em si, aquela em que o sistema é efetivamente programado. A fase de modelagem deve utilizar os diagramas de notação definidos pela UML.” RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de construção (cont.) • Meta: A meta da fase de construção é concluir o desenvolvimento do sistema com base na arquitetura da baseline, • estudar e validar os demais requisitos com o cliente, buscando obtê-los de forma mais clara, para evitar ao máximo futuras alterações. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de construção (cont.) • Objetivos: • Diminuir os custos de desenvolvimento, aperfeiçoando recursos e evitando retalhamento e retrabalho desnecessários. • Trabalhar em prol da máxima qualidade com agilidade e eficiência. • Desenvolver os primeiros releases (versões) como as versões alfa, beta e outros releases de teste. • Concluir a análise de requisitos; • Eleger o design final do produto; • Encerrar o desenvolvimento de todas as funcionalidades, interfaces gráficas e interfaces com outros sistemas; • Concluir os testes de todas as funcionalidades; • Desenvolver de modo iterativo e incremental um produto completo que esteja concluído para ser implantado no ambiente de produção, para a sua comunidade de usuários, denominado, pelo RUP, de transição. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de construção (cont.) • Objetivos (cont.): • Verificar se o software, os locais e os usuários estão prontos para que o aplicativo seja implantado. • Integrar o conhecimento da equipe de desenvolvimento. • Essa unificação ocorre mais facilmente utilizando os diagramas da UML: diagrama de sequência, de objeto, de estado, de classe e de caso de uso. • Em projetos grandes essa integração é essencial, pois o conhecimento deve fluir dentro da equipe, para que os componentes sejam reaproveitados e associados internamente. • Em projetos menores essa integração fica mais fácil e acaba acontecendo naturalmente, pois a equipe de desenvolvimento é reduzida. • O paralelismo pode antecipar bastante as atividades de desenvolvimento; porém amplia a complexidade do gerenciamento de recursos e da sincronização dos fluxos de trabalho. • Uma arquitetura sofisticada será fundamental para atingir este objetivo. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de construção (cont.) • Atividades • Integração de Pessoas, Componentes e definição da Arquitetura; • Otimização do código fonte; • Finalização de validação dos requisitos; • Desenvolvimento de todos os componentes; • Teste dos critérios de avaliação definidos; • Teste integrado do release que vai ser entregue pela próxima fase RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP - Fase de transição • Nesta fase, transfere-se o software do desenvolvedor para o usuário final, a fim de realizar teste e validação, implantando o produto no ambiente real (produção). • A partir desta fase, o sistema já está pronto, começa a implantação do sistema para o usuário (ou à comunidade de usuários do mesmo). “Nesta fase deve ser utilizado o lançamento de versões beta, operação paralela com o sistema legado, treinamento dos usuários e mantenedores do sistema, etc.” RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de transição (cont.) • Meta A meta da Fase de Transição é garantir que o software esteja disponível para os usuários finais. Esses irão acompanhar os testes finais para efetuar a validação do software, ou seja, aprovar o sistema baseado nas especificações. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de transição (cont.) • Objetivos • O feedback do usuário deve priorizar o ajuste final do software, a configuração, a instalação e as questões de navegabilidade e usabilidade; • Ao final da Fase de Transição, os objetivos devem ter sido atendidos e o projeto deve estar em uma posição para encerramento; • Teste beta para validar o novo sistema em confronto com as expectativas do usuário; • Teste integrado beta com todos os legados que efetuarão interface com o produto dentro do ambiente de produção; • Treinamento de usuários e equipe de manutenção; RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de transição (cont.) • Atividades • Efetuar o plano de implantação. • É sugerido quebrar em etapas, pois evita impacto na operação, uma vez que a implantação é feita em partes, desta forma os usuários não sofrem tanto para manter as operações paralelamente (antiga e a nova) até que ocorra a estabilização; • Concluir o material de suporte, atualizando todas as funcionalidades e prints de tela, para entregar ao cliente e orientar o usuário final; • Testar o produto liberado no ambiente de desenvolvimento e produção; • Desenvolver um release (versão) do produto; • Planejar e executar as formas de recolher o feedback dos usuários; • Ajustar o produto com base nos feedback recolhidos dos usuários; • Disponibilizar o produto para os usuários finais, no ambiente de produção RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Continua.. Arquitetura do RUP - Fase de transição (cont.) • Artefatos Exemplo I: Artefatos de Instalação: Os Artefatos de Instalação se referem ao software e às instruções documentadas necessárias para instalar o produto. Papel: Arquiteto ExemploII: Artefato/Elemento: Material de Treinamento que referem-se ao material usado nos programas ou nos cursos de treinamento para ajudar os usuários finais com a utilização, a operação e/ou a manutenção dos produtos. Papel: Consultor de Implantação Exemplo III: Artefato/Elemento: Manual do Sistema para o usuário, materiais que ajudam os usuários finais no processo de aprendizagem, utilização, operação e manutenção do produto. Papel : Redator Técnico RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP - Fases • Analisando de forma sintetizada, segue um resumo das fases: RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP - Disciplinas Outro conceito encontrado no RUP são as disciplinas. Elas servem para organizar logicamente atividades de engenharia de software de acordo com sua natureza. Descrevem o que deve ser feito em cada iteração, no que diz respeito às atividades, responsabilidades e documentos. Existem nove disciplinas básicas, sendo que seis são de engenharia de software e as outras três são de suporte. São elas: • Disciplinas de Engenharia de Software: • Disciplina de Modelagem de Negócios • Disciplina de Requisitos • Disciplina de Análise e Projeto (“Design”) • Disciplina de Implementação • Disciplina de Teste • Disciplina de Implantação • Disciplinas de Suporte: • Disciplina de Gerência de Projeto • Disciplina de Configuração e Gerência de Mudança • Disciplina de Ambiente RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Modelagem de Negócios • Visa entender a estrutura e a dinâmica da organização para qual será desenvolvido o projeto, deixando uma única visão para cliente, usuários e desenvolvedores, além de derivar requerimentos que suportam a organização • Atividades: • Analisar, estudar e entender os problemas atuais do cliente; • Identificar as possibilidades de melhoria; • Assegurar que os clientes, usuários e desenvolvedores tenham um entendimento comum do negócio a ser informatizado; • Derivar os requisitos de sistema necessários para sustentar o negócio. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Requisitos • Define, organiza e documenta as funcionalidades que o sistema irá atender, bem como gerencia o escopo e as mudanças destas funcionalidades • Atividades: • Através de reuniões e técnica de observação, definir junto com os clientes e outros envolvidos, o que o sistema deve fazer e quais as funcionalidades que deve conter para atender as necessidades do negócio; • Propor aos desenvolvedores do sistema uma compreensão melhor dos requisitos do sistema; • Delimitar as fronteiras e limites do sistema; • Fornecer uma base para planejar o conteúdo técnico das iterações; • Fornecer uma base para estimar o custo e o tempo de desenvolvimento do sistema; • Definir uma interface de usuário para o sistema, focado nas necessidades e metas dos usuários. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto • Podemos afirmar que a principal disciplina é a de Análise e Projeto. • Se a equipe conseguir realizar uma boa análise, explorando o máximo do conhecimento do usuário e do processo identificará com eficiência as reais necessidades do cliente e modelar tecnicamente o sistema, através dos modelos visuais, com o desenho ideal. “Desta forma não será necessário ficar reajustando o software e efetuando muitas iterações em função de necessidade de mudanças na estrutura e de requisitos, o resultado disso é a diminuição do custo do projeto.” É por esse motivo que iremos abordar com mais detalhe esta disciplina. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto • A principal finalidade desta disciplina é traduzir os requisitos na linguagem UML, descrevendo como o sistema deve ser implementado. • Além desse temos outras finalidades, como: • Transformar os requisitos em modelos visuais a serem criados através dos diagramas da UML; • Desenvolver uma arquitetura sofisticada para o sistema. • Adaptar o design para que corresponda ao ambiente de produção, projetando-o para fins de desempenho. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto • O objetivo desta disciplina é realizar a construção do modelo de análise e projeto e este nada mais é que detalhar os casos de uso, ou seja, é descrever como executa a funcionalidade associando o caso de uso com as classes do sistema e com outros elementos do projeto, além de desenvolver os diagramas mais técnicos a partir dos casos de uso. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m O modelo de análise e projeto pode ser dividido em dois modelos: Modelo de Análise e Modelo de Projeto. Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto • diferença entre “Análise” e “Projeto” • A Análise trabalha com o foco no entendimento do problema, identificando com eficiência os requisitos funcionais para obter um projeto bem estruturado e desenhado em um modelo simples. • Já o Projeto é um modelo mais complexo que tem o foco no entendimento da solução, operação e atributos. Se preocupa com a performance, com o código e com o ciclo de vida dos objetos e identifica os requisitos não funcionais também RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto • Na Fase de Iniciação, a função da etapa de análise e design é determinar se o sistema é viável, conforme o previsto, e avaliar as tecnologias possíveis para a solução em termos de Arquitetura. • Se houver poucos riscos envolvidos no desenvolvimento, em virtude do conhecimento da equipe ou até da complexidade do sistema, esse detalhe do fluxo de trabalho poderá ser omitido.RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto • Na fase de Elaboração a disciplina de Análise e Projeto prioriza o desenvolvimento de uma arquitetura inicial para o sistema, propondo uma Sugestão de Arquitetura, a fim de prover um ponto de partida para a atividade de análise inicial. • Caso a arquitetura já existir, em função de ter sido produzida nas iterações ou nos projetos anteriores, ou porque foi obtida de um framework de ferramenta, o enfoque do trabalho alterará e passará para o refinamento da arquitetura e para a análise do comportamento e a criação de um conjunto inicial de elementos que fornecerão o comportamento apropriado. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto • Após os elementos iniciais serem identificados, eles serão posteriormente detalhados. • Projetar Componentes produz um conjunto de componentes que fornecem o comportamento apropriado para atender aos requisitos do sistema. • Junto com essas atividades, as questões de persistência são abordadas em Projetar o Banco de Dados. • O resultado é um conjunto inicial de componentes que serão posteriormente refinados na fase de construção e disciplina de implementação RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto • Após os elementos iniciais serem identificados, eles serão posteriormente detalhados. • Projetar Componentes produz um conjunto de componentes que fornecem o comportamento apropriado para atender aos requisitos do sistema. • Junto com essas atividades, as questões de persistência são abordadas em Projetar o Banco de Dados. • O resultado é um conjunto inicial de componentes que serão posteriormente refinados na fase de construção e disciplina de implementação RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto • Através do Diagrama de atividades, a figura abaixo mostra o fluxo de trabalho da disciplina de Análise e Projeto. RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto Atividade: Realizar síntese da arquitetura • Construir e avaliar uma prova de conceito arquitetural: Mostrar que existe uma solução possível de satisfazer os requisitos do sistema relevantes à arquitetura • Atividade: Definir uma sugestão de arquitetura • Objetivos da atividade: • Criar o esqueleto inicial da arquitetura do sistema • Identificar classes de análise dos casos de uso relevantes para a arquitetura • Atualizar a realização de caso de uso com as interações entre classes de análise RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto Atividade: Analisar comportamento • Converter as descrições sobre o comportamento providas pelos casos de uso em um conjunto de elementos nos quais o modelo de projeto vai se embasar RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto Atividade: Projetar Componentes • Esta atividade tem como objetivo refinar as definições dos elementos acrescentando detalhes sobre como estes elementos implementam o comportamento requerido e refinar e atualizar as realizações de casos de uso com os novos elementos identificados. Atividade: Projetar Banco de Dados Projetar Componentes • Esta atividade tem os seguintes objetivos: • Identificar classes persistentes no modelo de projeto; • Modelar as estruturas de banco de dados (Modelo de dados); • Definir técnicas e estratégias para armazenar e recuperar dados RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m Arquitetura do RUP – Disciplinas de Engenharia de Software Disciplina de Análise e Projeto Fluxo de Análise e Projeto Atividade: Refinar Arquitetura • Esta atividade tem os seguintes: • Propor a conversão entre os elementos e mecanismos de análise para os de elementos de projeto; • Manter a consistência e integração da arquitetura; • Delinear a arquitetura de execução e produção da aplicação RUP - Rational Unified Process P ro f. A n d ré d e Pau la – En gen h aria d e So ftw are 2 - an d rep n s@ gm ail.co m
Compartilhar