Successfully reported this slideshow.

Aula 03

1,821 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Aula 03

  1. 1. Engenharia de Software Aula 03 Prof. Cleuber Moreira Fernandes Mestre em Ciência da Computação - UnB Cleubermf@yahoo.com.br http://br.groups.yahoo.com/group/ES-2008 1. Visão Geral ________________________________________________________________________ Prof. M.Sc. Cleuber Moreira Fernandes 1
  2. 2. O Rational Unified Process®, conhecido por RUP, é um processo de engenharia de software que adota uma abordagem baseada em disciplinas para atribuir tarefas e responsabilidades em projetos de desenvolvimento de software. Visa garantir a produção de software de alta qualidade que atenda as necessidades dos usuários dentro de um cronograma e orçamento estimado. Aspecto Estático Engenharia Suporte Tempo – Ciclo de Vida Aspecto Dinâmico Figura 1 – Arquitetura do RUP A Figura 1 mostra a arquitetura geral do RUP em duas dimensões Disciplinas e Fases. O eixo horizontal representa o tempo (aspecto dinâmico) e mostra os aspectos do ciclo de vida do processo à medida que se desenvolve. O eixo vertical representa as disciplinas (aspecto estático), que agrupam as atividades de maneira lógica, por natureza. Ainda na Figura 1, as disciplinas de Modelagem de Negócios, Requisitos, Análise e Design, Implementação, Teste e Implantação são essencialmente voltadas para a engenharia de software, construção do produto. Já as disciplinas de Gerenciamento de Configuração e Mudança, Gerenciamento de Projeto e Ambiente são direcionadas a suportar o trabalho de engenharia com atividades que controlam a versão dos artefatos produzidos, gerenciam mudanças, prazos e prepara o ambiente lógico (processos) e físico (ferramentas) do projeto de desenvolvimento. Estas também são conhecidas como áreas de processo guarda-chuva, pois cobrem o projeto do início ao fim. ________________________________________________________________________ Prof. M.Sc. Cleuber Moreira Fernandes 2
  3. 3. Por ser um processo iterativo (ciclo), a cada iteração todas as fases e disciplinas são executadas. Porém, algumas atividades possuem maior ênfase nas primeiras iterações, enquanto que outras têm maior intensidade nas iterações finais. Esta dinâmica é compreensível, uma vez que na fase de iniciação é necessário compreender e modelar o negócio (gastando mais tempo nessas disciplinas) para, posteriormente, na fase de construção, dedicar mais tempo na disciplina de implementação. 2. Fases do Ciclo de Vida O ciclo de vida de software do RUP adota uma perspectiva de gerenciamento, sendo assim dividida em quatro fases seqüenciais (Figura 2), cada uma concluída por um marco (milestone). Cada fase é um intervalo de tempo entre dois marcos. Ao final de cada fase é realizada uma avaliação para determinar se os objetivos da fase foram alcançados, aprovando a execução da próxima fase. Figura 2 – Ciclo de vida composto por quatro fases Uma passagem pelas quatro fases é um ciclo de desenvolvimento ou evolução. Cada passagem pelas quatro fases produz uma geração do software. Figura 3 – Ciclo de desenvolvimento e evolução Os ciclos de evolução têm fases de Iniciação e Elaboração bem menores, pois a definição e a arquitetura básicas do produto foram determinadas por ciclos de desenvolvimento anteriores, salvo quando ocorrer redefinição significativa do produto ou arquitetura. ________________________________________________________________________ Prof. M.Sc. Cleuber Moreira Fernandes 3
  4. 4. Figura 4 - Distribuição de esforço e programação para um ciclo de desenvolvimento inicial típico para um projeto de tamanho médio 3. Disciplinas Uma disciplina mostra todas as atividades que devem ser realizadas para produzir um determinado conjunto de artefatos. Essas disciplinas são descritas em nível geral — um resumo de todos os papéis, atividades e artefatos envolvidos. Também é mostrado, em um nível mais detalhado, como ocorre a colaboração entre papéis e de que forma eles usam e produzem artefatos. Os passos nesse nível detalhado são chamados de quot;detalhamentos do fluxo de trabalhoquot;. Cada disciplina tem, associada a ela, um ou mais modelos que, por sua vez, são compostos por artefatos associados. Os artefatos mais importantes são os modelos que cada disciplina produz: modelo de casos de uso, modelo de design, modelo de implementação e conjunto de testes. A Figura 5 exibe algumas disciplinas e os respectivos modelos produzidos por elas. Figura 5 – Disciplinas e Modelos Produzidos ________________________________________________________________________ Prof. M.Sc. Cleuber Moreira Fernandes 4
  5. 5. Cada disciplina possui definição de um fluxo de trabalho, uma visão geral da atividade e uma visão geral de artefatos, que conduzem as atividades, artefatos de entrada e artefatos de saída. A Figura 6 mostra o fluxo de trabalho da disciplina Requisitos. Figura 6 – Fluxo de Trabalho da disciplina Requisitos A visão geral da atividade mostra todas as atividades na disciplina juntamente com o papel que realiza a atividade. A Figura 7 apresenta uma visão geral da atividade desempenha na disciplina Requisitos. ________________________________________________________________________ Prof. M.Sc. Cleuber Moreira Fernandes 5
  6. 6. Figura 7 – Visão geral de atividade na disciplina Requisitos A visão geral de artefatos mostra todos os artefatos e papéis envolvidos na disciplina. A Figura 6 mostra a visão geral de artefatos produzidos na disciplina Requisitos. Figura 6 – Visão geral de artefatos produzidos na disciplina Requisitos 4. Adaptação do Processo ________________________________________________________________________ Prof. M.Sc. Cleuber Moreira Fernandes 6
  7. 7. O RUP é um processo extenso e complexo de se aplicar. Foi desenvolvido de forma parametrizável, possibilitando assim a sua adaptação para atender tanto a projetos grandes quanto pequenos. Sabe-se que atividades e artefatos custam tempo e dinheiro, dessa forma, gerente de projetos e engenheiro de processos devem distinguir as principais necessidades do processo e determinar se as vantagens compensam o custo. O RUP incentiva a adaptação. Contudo, não se deve ignorar o processo como um todo. Os fundamentos do RUP estão embutidos nas melhores práticas. Essas melhores práticas devem ser consideradas ao adaptar as atividades e os artefatos para atender as necessidades do projeto. Um Caso de Desenvolvimento é uma especificação da adaptação do RUP, que deve ser produzido pelo engenheiro de processos, descrevendo o processo de desenvolvimento escolhido para ser seguido no projeto. Pode ser bastante conciso e abranger apenas as disciplinas, fluxos de trabalho, atividades e artefatos estritamente necessários para o projeto em questão. Os templates de documento devem ser personalizados de acordo com as necessidades específicas do projeto. ________________________________________________________________________ Prof. M.Sc. Cleuber Moreira Fernandes 7

×