RUP Rational Unified Process



Documentos relacionados
UNIVERSIDADE ESTADUAL DE MARINGÁ CENTRO DE TECNOLOGIA DEPARTAMENTO DE INFORMÁTICA ENGENHARIA DE SOFTWARE III

Curso: Engenharia de Software com Ênfase em Padrões de Software (UECE Universidade Estadual do Ceará) RUP

Engenharia de Software I

O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no

O modelo unificado de processo. O Rational Unified Process, RUP.

A Disciplina Gerência de Projetos

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

SETIS- III Seminário de Tecnologia Inovação e Sustentabilidade 4 e 5 de novembro de 2014.

O Processo Unificado

Visão Geral do RUP Rational Unified Process. Jorge Fernandes UFRN Junho de 2002

Apresentar os conceitos básicos da metodologia de desenvolvimento Processo Unificado, utilizando como aporte o Processo Unificado Rational RUP

Introdução. AULA 2 A Organização empresarial e a gestão de projetos. Tema relevante em diversas áreas

Universidade Paulista

PROJETO DE FÁBRICA DE SOFTWARE

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga

Ideal para que tipo de empresa (equipe): pequena, média, grande? Em software onde os requisitos não são conhecidos é recomendado o uso do XP? Por quê?

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva.

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

Processos de Desenvolvimento de Software. Prof. Hélio Engholm Jr

Programa do Módulo 2. Processo Unificado: Visão Geral

PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Engenharia de Software II

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004

Processo Unificado (RUP)

ENGENHARIA DE SOFTWARE I

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

EVOLUÇÃO DE SOFTWARE

A PRESIDENTE DO TRIBUNAL REGIONAL DO TRABALHO DA 11ª. REGIÃO, no uso de suas atribuições legais e regimentais,

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP

PLANEJAMENTO E PROJETOS. Lílian Simão Oliveira

Engenharia de Software

Gerenciamento de Níveis de Serviço

Para cada fase consideramos. Tempo para um projeto típico Tempo para um projeto Complexo. Arquitetura do Processo Unificado. A meta a ser atingida

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

ERP Enterprise Resource Planning

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

Agenda. Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria

SISTEMAS DE GESTÃO São Paulo, Janeiro de 2005

UML - Unified Modeling Language

17/02/2009. Curso Superior de Tecnologia: Redes de Computadores. Disciplina: Gestão de Projetos de TI Prof.: Fernando Hadad Zaidan. Unidade 2.

ISO/IEC 12207: Gerência de Configuração

Metodologia e Gerenciamento do Projeto na Fábrica de Software

Análise e Projeto de Sistemas

CONCORRÊNCIA AA Nº 05/2009 BNDES ANEXO X PROJETO BÁSICO: DESCRIÇÃO DOS PROCESSOS DE TI

Processos de Desenvolvimento de Software

COPPE/UFRJ. Ana Regina Rocha. Programa de Engenharia de Sistemas e Computação

15/09/2015. Gestão e Governança de TI. Modelo de Governança em TI. A entrega de valor. A entrega de valor. A entrega de valor. A entrega de valor

Gestão Ambiental. Aula 5 Prof. Pablo Bosco

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br

NORMA ISO/IEC Isac Aguiar isacaguiar.com.br

Gerenciamento de Projetos

Introdução ao Processo Unificado (PU)

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

Processos Técnicos - Aulas 4 e 5

SISTEMAS INTEGRADOS DE GESTÃO PAS 99:2006. Especificação de requisitos comuns de sistemas de gestão como estrutura para a integração

Fábrica de Software 29/04/2015

UNIVERSIDADE DE MOGI DAS CRUZES Centro de Ciências Exatas e Tecnológicas

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite (81 )

Engenharia Reversa e Reengenharia

Gerenciamento de projetos.

Engenharia de Software II

Aplicações da FPA em Insourcing e Fábrica de Software

Segurança de Aplicações Aula 6

Padronização de Documentação de Sistemas. Projeto a ser desenvolvido no âmbito da Gerência de Sistemas/GGTIN e ANVISA

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)

Engenharia de Software Processo de Desenvolvimento de Software

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

ADMINISTRAÇÃO DE ATIVOS DE TI GERENCIAMENTO DE CONFIGURAÇÃO

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini prof.andre.luis.belini@gmail.com /

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

Modelagem de Software

Planejar é dimensionar recursos necessários para uma determinada atividade.

Melhorias de Processos de Engenharia de Software

Objetivos da aula. Planejamento, Execução e Controle de Projetos de Software. O que é um plano de projeto? O que é um projeto?

Sistemas de Informação I

Programa do Curso de Pós-Graduação Lato Sensu MBA em Engenharia de Software Orientada a Serviços (SOA)

Processo de Desenvolvimento Unificado

Governança de TI. ITIL v.2&3. parte 1

Porque estudar Gestão de Projetos?

Prof. Me. Marcos Echevarria

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Desenvolvimento de um software de gerenciamento de projetos para utilização na Web

INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Gestão de Projetos. Marcu Loreto

A ITIL e o Gerenciamento de Serviços de TI

Gerenciamento de Problemas

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Processo de Desenvolvimento de Software. Engenharia de Software.

Transcrição:

Universidade do Contestado UNC Unidade Universitária de Mafra Otávio Rodolfo Piske Curso de Sistemas de Informação 5ª Fase RUP Rational Unified Process MAFRA 2003 Otávio Rodolfo Piske

1 - Introdução O RUP (Rational Unified Process) é uma metodologia para desenvolvimento de software criada pela Rational Software, IBM, SofTeam, Unisys, Nihon Unisys, Alcatel e Q-Labs. O RUP pode ser encontrado na forma de um software, fornecido pela Rational Software, e como um conjunto de processos. Neste trabalho iremos cobrir apenas aspectos relativos ao conjunto de processos refentes ao RUP, incluindo: * conceitos * best practices (melhores práticas) * fases de desenvolvimento 2 - RUP - Conceitos Como citado anteriormente, o RUP é mais do que um softwares para auxiliar no desenvolvimento é uma metodologia de desenvolvimento, com uma estrutura formal e bem definida. Como qualquer metodologia, é composta de conceitos, práticas e regras. Um dos principais pilares do RUP é o conceito de best practices (melhores práticas), que são regras/práticas que visam reduzir o risco (existente em qualquer projeto de software) e tornar o desenvolvimento mais eficiente. O RUP define seis best practices, sendo elas: * desenvolver iterativamente * gerenciar requerimentos * utilizar arquiteturas baseadas em componentes * modelar visualmente * verificação contínua de qualidade * controle de mudanças O RUP, ainda, entrelaça o conceito de best practices em quatro definições, sendo elas:

* funções: grupos de atividades executadas. * disciplinas: áreas de esforço na engenharia de software. * atividades: definições de como (objetos/artefatos) é construído e avaliado. * objetos/artefatos: resultado do trabalho, produzido ou modificado durante o processo. Além destas definições, esta metodologia de desenvolvimento divide o processo de desenvolvimento de software em quatro fases (as quais serão discutidas com mais detalhes posteriormente). São elas: * concepção: definição do escopo do projeto. * elaboração: elaboração básica do software. * construção: desenvolvimento. * transição: 3 - RUP Best Practices O RUP tenta diminuir os riscos do desenvolvimento e efetivamente deixar o desenvolvimento mais eficiente, através de seis práticas básicas (conhecidas por best practices) a serem executadas durante todo o processo de desenvolvimento. 3.1 - Desenvolver Iterativamente Desenvolver iterativamente significa desenvolver em ciclos. Cada ciclo é contém um objetivo que deve ser alcançado (lançamento de um prerelease ou beta, correção de um bug, etc). Esta prática acaba dando ao RUP uma série de vantagens, como a possibilidade de identificar/modificar requerimentos com mais facilidade; integração progressiva (quase continua) de elementos ao software, ocasionando uma melhora no descobrimento e endereçamento de riscos; desenvolvimento iterativo provê aos gerentes maneiras de fazer mudanças táticas aos produtos; etc.

3.2 - Gerenciar Requerimentos Gerenciamento de requerimentos provê uma maneira prática de produzir, organizar, comunicar e organizar os requerimentos de um projeto. Adicionalmente, os casos de uso e cenários descritos nos processo são uma excelente forma de capturar e assegurar requisitos. O gerenciamento de recursos acarreta um melhor controle sobre projetos complexos, além de maior qualidade e redução de custos. O RUP é uma metodologia dirigida-a-casos-de-uso (use-drivencase), de modo que é possível utilizar os mesmos casos de uso definidos no sistema como base para o resto do processo. 3.3 - Utilizar Arquiteturas Baseadas em Componentes Foca o desenvolvimento na modularização, através do uso de componentes, de modo a criar um sistema flexível, adaptável, intuitivamente entendível e reutilizável. O RUP entende componentes como módulos não triviais e/ou subsistemas com uma função clara e específica. Entre os benefícios podemos citar a facilidade para identificar, isolar, manipuar e desenvolver componentes é maior do que para um sistema inteiro; componentes podem ser desenvolvidos com a reutilização em mente; etc. 3.4 - Modelar Visualmente A modelagem visual permite melhor entender não só a concepção e a complexidade do sistema, mas também dimensionar (no sentido de qual a forma do sistema), além de facilitar a idenficação e solução de problemas. 3.5 - Verificação Continua de Qualidade O RUP não toma a qualidade como responsabilidade de apenas

uma pessoa ou grupo, mas como uma responsabilidade de todos os integrantes do projeto. A qualidade é focada especialmente em duas áreas: - Qualidade de produto: a qualidade do produto sendo desenvolvido (software or sistema) e todos as partes envolvidas (componentes, subsistemas, arquitetura, etc). - Qualidade de processo: a qualidade dos processos dentro do projeto de desenvolvimento. 3.6 - Controle de Mudanças Como resultado de um processo de desenvolvimento iterativo, muitas são as mudanças ocorridas no decorrer do projeto. Controlar as mudanças durante todo o projeto é prática fundamental para manter a qualidade do projeto. 4 - Fases de Desenvolvimento O processo de desenvolvimento é dividido em ciclos, sendo que o ciclo de desenvolvimento é subdividido em 4 fases consecutivas. Estas fases são concluídas tão logo uma milestone é alcançada. Uma milestone define uma etapa, na fase, na qual decisões críticas são feitas ou objetivos são alcançados. 4.1 - Concepção Concepção inicial do sistema, aonde é feita uma discussão sobre o problema, definição do escopo do projeto, estimativa de recursos necessários para a execução do projeto, etc. É nesta fase que é apresentadao o plano de projeto, caso de uso inicial e o glossário do projeto, entre outros. 4.2 - Elaboração

O propósito desta fase é analisar o dóminio do problema, desenvolver o plano de projeto, estabelecer a fundação arquitetural e eliminar os elementos de alto risco. Os elementos de risco a serem analisados, nesta fase, são os riscos de requerimentos, tecnológicos (referentes a capacidade das ferramentas disponíveis), de habilidades (dos integrantes do projeto) e políticos. Esta é a fase mais crítica de todas, pois ao final desta fase a engenharia é considerada completa e os custos para modificação do sistema aumentam a medida que o projeto avança. Do ponto de vista administrativo, é ao final desta fase que um projeto deixa de ser uma operação de baixo risco e baixo custo para se tornar uma operação de alto risco e alto custo. 4.3 - Construção Esta fase comprende a fase de modelagem e a fase de desenvolvimento em si, aquela em que o sistema é efetivamente programado. A fase de modelagem deve utilizar alguma notação definida pela UML. 4.4 - Transição A partir desta fase, o sistema já está pronto, começa a implatanção do sistema para o usuário (ou a 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.

5 - Conclusão O RUP prova ser um processo de desenvolvimento robusto e bem definido, embora bastante complexo/trabalhoso para projetos de software de pequeno porte, ele pode ser bem aproveitado para projetos aonde é preciso manter registro constante do fluxo do projeto. 6 - Bibliografia Quadros, Moacir - Gerencia de Projetos de Softwares: Técnicas e Ferramentas, Visual Books. Rational Software - Best Practices for Software Development Teams, www.rational.com. Rational Software - Rationa Unified Process, www.rational.com. The Rational Edge - RUP and XP, Part I - Finding Common Ground, http://therationaledge.com.