Escolar Documentos
Profissional Documentos
Cultura Documentos
Taguatinga
2010
2
RESUMO: Quando se trata de tecnologia da informação uma boa gerencia dos processos de
desenvolvimento tem sido um diferencial para se obter padronização dos processos e uma boa
qualidade do produto final, a escolha da metodologia para resolução de problemas na gestão
do projeto ou na equipe de desenvolvimento do software deve ser peculiar às necessidades da
empresa. O RUP (Rational Unified Process) e uma metodologia que se aplica no
gerenciamento de processos que viabilizam padronizar técnicas e dividir as funções do
processo de construção. Entres as propriedades do RUP temos a implementação de técnicas de
Engenharia conhecido como Melhores Praticas que reduzem os riscos e otimizam o processo
de construção sendo estas técnicas a maior potencialidade do RUP. Por ser considerado um
método muito difícil de ser implementado e atendendo as tendências e necessidades de
mercado em suas versões mais recentes o RUP apresenta Modelos de metodologias ágeis
sendo este tipo uma nova tendência do mercado.
1
¹ Mayhara Luayce T. Matos Lima – Estudante de Tecnologia em Análise e desenvolvimento de sistemas, ²
Jardel de Carvalho Brito – Estudante de Tecnologia em Análise e desenvolvimento de sistemas, ³ Rodrigo de
Jesus Silva – Estudante de Tecnologia em Análise e desenvolvimento de sistemas, 4 Thais de Aguiar Costa –
Estudante de Tecnologia em redes de computadores. Professor Orientador: Flaviano Oliveira Silva - Especialista
em Gestão de Produção de Software e Bacharel em Ciências da Computação. Faculdade Jesus Maria José –
FAJESU.
3
1. INTRODUÇÃO
O mundo de gestão de projetos para elaboração de Software esta em freqüente mudança para
se adaptar as novas tendências e necessidades do mercado, uma boa gerência de projetos tem
se tornado um fator competitivo no mercado, dado que influencia diretamente na qualidade do
produto final. E devido a essa complexidade surgem diversos problemas a serem enfrentados
pelas empresas desenvolvedoras como, por exemplo:
O RUP define as seguintes linhas-mestras para avaliação do progresso do projeto pela sua
gerência.
Uma documentação apropriada é essencial para qualquer grande projeto; note que o RUP
descreve como documentar a funcionalidade, restrições de sistema, restrições de projeto e
requisitos de negócio.
A arquitetura baseada em componentes cria um sistema que pode ser facilmente extensível,
promovendo a reutilização de software e um entendimento intuitivo.
Uma passagem pelas quatro fases é um ciclo de desenvolvimento; cada passagem pelas quatro
fases produz uma geração do software. A menos que produto "desapareça", ele irá se
desenvolver na próxima geração, repetindo a mesma seqüência de fases de iniciação,
elaboração, construção e transição, mas agora com ênfase diferente nas diversas fases. Esses
ciclos subseqüentes são chamados de ciclos de evolução. À medida que o produto atravessa
vários ciclos, são produzidas novas gerações.
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 subjacente, reação à concorrência
e assim por diante. Normalmente, a menos que ocorram mudanças significativas do produto
ou da arquitetura, 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.
Uma disciplina mostra todas as atividades que você deve realizar para produzir um
determinado conjunto de artefatos.
Disciplinas RUP:
- Modelagem de Negócios
- Requisitos
- Análise e Design
- Implementação
- Teste
- Implantação
- Ambiente e Gerenciamento de Projeto
- Gerenciamento de Configuração e Mudança
Finalidade:
- Entender a estrutura e a dinâmica da organização na qual um sistema deve ser implantado (a
organização-alvo).
- Entender os problemas atuais da organização-alvo e identificar as possibilidades de
melhoria.
- Assegurar que os clientes, usuários e desenvolvedores tenham um entendimento comum da
organização-alvo.
- Derivar os requisitos de sistema necessários para sustentar a organização-alvo.
4.2 REQUISITOS
8
Finalidade:
- Estabelecer e manter concordância com os clientes e outros envolvidos sobre o que o
sistema deve fazer.
- Oferecer aos desenvolvedores do sistema uma compreensão melhor dos requisitos do
sistema.
- Definir as fronteiras do sistema (ou delimitar o 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, focando nas necessidades e metas dos
usuários.
Finalidade:
- Transformar os requisitos em um projeto do sistema a ser criado.
- Desenvolver uma arquitetura sofisticada para o sistema.
- Adaptar o projeto para que corresponda ao ambiente de implementação, projetando-o para
fins de desempenho.
4.4 IMPLEMENTAÇÃO
Finalidade:
- Definir a organização do código em termos de subsistemas de implementação organizados
em camadas.
- Implementar classes e objetos em termos de componentes (arquivos-fonte, binários,
executáveis e outros).
- Testar os componentes desenvolvidos como unidades.
- Integrar os resultados produzidos por implementadores individuais (ou equipes) ao sistema
executável.
4.5 TESTES
Finalidade:
- Localizar e documentar defeitos na qualidade do software.
- Avisar de forma geral sobre a qualidade observada no software.
9
4.6 IMPLANTAÇÃO
Finalidade:
- Descrever as atividades que garantem que o produto de software será disponibilizado a seus
usuários finais:
• A instalação personalizada;
• O produto em uma forma "compacta”;
• Acesso ao software por meio da Internet.
Finalidade:
- Controlar os inúmeros artefatos produzidos pelas muitas pessoas que trabalham em um
mesmo projeto.
- Evitar confusões dispendiosas e garantir que os artefatos resultantes não entrem em conflito
devido a algum dos seguintes problemas:
• Atualização Simultânea.
• Notificação Limitada.
• Várias Versões.
Finalidade:
- Fornecer um framework para gerenciar projetos intensivos de software.
- Fornecer diretrizes práticas para planejar, montar a equipe, executar e monitorar os projetos.
- Fornecer um framework de gerenciamento de risco.
10
4.9 AMBIENTE
Finalidade:
- A disciplina de Ambiente concentra-se nas atividades necessárias à configuração do processo
para um projeto.
- Oferece à organização o ambiente de desenvolvimento de software.
- Processos e ferramentas que dará suporte à equipe de desenvolvimento.
Um dos principais pilares do RUP é o conceito de melhores práticas (Best practices), 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 melhores praticas (Best practices),
sendo elas:
Desenvolvimento Iterativo
Gerenciamento de Requisitos
Gerenciamento de Mudança
Um projeto que usa o desenvolvimento iterativo tem um ciclo de vida que consiste em várias
iterações. Uma iteração incorpora um conjunto quase seqüencial de atividades em modelagem
de negócios, requisitos, análise e projeto, implementação, teste e implantação, em várias
proporções, dependendo do local em que ela está localizada no ciclo de desenvolvimento.
Vantagens
11
“Uma condição ou uma capacidade com a qual o sistema deverá estar em conformidade”
O gerenciamento de requisitos é uma abordagem sistemática para localizar, documentar,
organizar e controlar os requisitos variáveis em um sistema.
O gerenciamento de requisitos é definido formalmente como uma abordagem sistemática a
identificar, organizar e documentar os requisitos do sistema, além de firmar e atualizar
acordos entre o cliente e a equipe do projeto sobre os requisitos variáveis do sistema.
As chaves para o gerenciamento eficaz de requisitos incluem manter uma sentença clara dos
requisitos, junto com os atributos aplicáveis e a rastreabilidade para outros requisitos e outros
artefatos do projeto. A coleta de requisitos pode parecer uma tarefa bem precisa. Na realidade,
porém, os projetos enfrentam dificuldades pelos seguintes motivos:
Os componentes são grupos de código coesos, na forma de código fonte ou executável, com
interfaces bem definidas e comportamentos que fornecem forte encapsulamento do conteúdo e
são, portanto, substituíveis. As arquiteturas baseadas em componentes tendem a reduzir o
tamanho efetivo e a complexidade da solução e, portanto, são mais robustas e flexíveis.
Um componente de software pode ser definido como um pedaço não-trivial de software, um
módulo, um pacote ou um subsistema, sendo que todos desempenham uma função clara,
possuem uma fronteira clara e podem ser integrados em uma arquitetura bem definida. É a
realização física de uma abstração do design.
Obter qualidade não é simplesmente "atender a requisitos" ou produzir um produto que atende
às necessidades e expectativas dos usuários. Pelo contrário, a qualidade também inclui a
identificação das medidas e dos critérios para demonstrar a obtenção da qualidade e a
implementação de um processo para garantir que o produto por ele criado tenha atingido o
grau desejado de qualidade e possa ser repetido e gerenciado.
A localização e a solução dos problemas de software ficam de 100 a 1.000 vezes mais caros,
se realizados após a implantação. A verificação e o gerenciamento da qualidade durante o
ciclo de vida do projeto é essencial para atingir os objetivos corretos no momento certo.
6. CONCLUSÃO:
obtém-se o sucesso no processo com organização, difusão e capacitação das pessoas que irão
utilizá-lo.
REFERÊNCIAS BIBLIOGRÁFICAS:
http://www-128.ibm.com
http://javafree.uol.com.br/artigo/871455/Obtendo-Qualidade-de-Software-com-o-RUP.html
http://www.guiafar.com.br/portal/index.php?
option=com_content&view=article&id=108%3Arup&catid=43%3Atecnologia-da-
informacao&Itemid=59&lang=pt
http://www.angusyoung.org/arquivos/artigos/trabalho_rup.pdf