




























































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Diferenca do uso da metodologia xp com up
Tipologia: Teses (TCC)
1 / 101
Esta página não é visível na pré-visualização
Não perca as partes importantes!





























































































Alfenas/MG 2009
Monografia apresentada para conclusão do Curso de Ciência da Computação da Universidade José do Rosário Vellano.
Orientador: Prof. Celso de Ávila Ramos
Alfenas/MG 2009
Dedico este trabalho, primeiramente, a Deus, aos meus pais, meus irmãos e, é claro, a minha namorada, que me ajudaram incondicionalmente nesta etapa da vida. Amaury Cássio Baldim
Dedico este trabalho a Deus, a meus pais e irmão, a minha namorada e aos meus amigos pelo apoio que me deram ao longo desses anos, pois em momentos importantes de minha vida, eles sempre se fizeram presentes com palavras de encorajamento e afeto. André Luz Silva
Dedico este trabalho a Deus, em especial a minha avó, minha mãe e meu pai, que me apoiaram em todas as fases dos meus estudos. Simoniades Zacarias Alves Junior
“Enquanto você não se der valor, não valorizará seu tempo. Enquanto não der valor ao tempo, não fará nada de importante.” (M. Scott Peck)
The development from methodologies and processes that help shape and build systems are
constantly growing, but still remains a complex and time consuming. The processes addressed
in this investigation capable of leading a project in a manner consistent with that is gaining
more fans because of this feature. It will be shown through the development of a web
application, the comparison between the processes XP (Extreme Programming) and UP
(Unified Process). This application in question, developed in both cases for comparison
purposes using the Visual Studio platform, is an institutional site of a boutique. The results
are described in project development, and compared to arrive at a conclusion on the use of
two processes. Concluded that the XP process is more effective, flexible and low cost in
developing a small project. Since the UP has been impossible due to their practices that
support grand projects.
Keywords: XP (Extreme Programming).UP (Unified Process). Web applications.
Atualmente, a cada dia aumenta a demanda por sistemas cada vez mais sofisticados
em um pequeno intervalo de tempo, visando satisfazer as necessidades das mais diversas
áreas. Porém, desenvolver software ainda é uma atividade difícil, demorada e arriscada.
Dois processos de desenvolvimento de software vêm ganhando cada vez mais
adeptos devido as suas características que permitem conduzir um projeto de maneira
consistente: Programação Extrema ( Extreme Programming ou XP) e Processo Unificado
( Unified Process ou UP).
A Programação Extrema é capaz de englobar valores nos quais agilizam e tornam o
projeto mais dinâmico, mantendo sua qualidade. Tem como objetivo superar de forma segura
os principais riscos de um projeto de software.
O Processo Unificado é um conjunto de atividades executadas para transformar um
conjunto de requisitos do cliente em um sistema de software. É realizado de maneira iterativa
e adaptativa e as atividades podem ser adicionadas ou removidas de acordo com as
necessidades do projeto.
Estes dois processos possuem maneiras diferentes de tratar o desenvolvimento de
software. A grande importância deste trabalho está nos resultados que serão alcançados ao
adotarmos suas regras e práticas, que deverão ser consistentes e satisfatórios para ambos.
Este trabalho tem como objetivo, apresentar os fundamentos básicos de
desenvolvimento de software adotando as regras e práticas dos processos Programação
Extrema e Processo Unificado, bem como suas características e benefícios. Portanto, será
desenvolvido um mesmo projeto real, adotando estes dois processos, para análise de diversos
fatores.
O Capítulo I é a Introdução, onde estão sendo abordadas a origem do trabalho e sua
importância.
O Capítulo II traz o Referencial Teórico, no qual será apresentado todo fundamento
teórico empregado neste trabalho, para desenvolvimento, utilizando os processos XP e UP.
O Capítulo III, chamado de Material é Métodos traz uma abordagem dos passos que
serão seguidos para o desenvolvimento do projeto estudado.
O Capítulo IV é o Desenvolvimento do Sistema, onde será mostrada uma análise
prática geral dos processos utilizados.
O Capítulo V traz o Resultado e Discussões, onde são apresentados os principais
resultados obtidos com o estudo dos processos.
O Capítulo VI é a Conclusão, apresentando as conclusões obtidas.
Em outras palavras, modelagem ágil não é um processo prescritivo, não havendo,
portanto, especificações de como se deve elaborar um modelo para o desenvolvimento de um
determinado software, é uma forma efetiva de se trabalhar em conjunto para atingir as
necessidades das partes interessadas no projeto.
A MA é uma mistura de métodos simples de modelagem com a ordem vital de
atributos de modelagem de software. A eficiência de um processo de desenvolvimento está na
sua modelagem, portanto é extremamente importante haver comunicação eficaz dentro de
uma equipe de desenvolvimento, assim como entre os clientes do projeto.
“A Modelagem Ágil não significa menos modelagem; na verdade, muitos
desenvolvedores acharão que estão fazendo mais modelagem MA do que antes. Pense na MA
como uma arte, não uma ciência [...]” (AMBLER, 2004, p.25).
Se por um lado há casos em que a modelagem em projetos de software não existe
gerando produtos mal projetados, em outros ela é excessiva, tirando o foco do
desenvolvimento de software, tornando-o lento ou fazendo que até mesmo pare.
A MA conduz o desenvolvedor a encontrar um ponto médio, no qual se modela o
suficiente para concluir seu sistema de forma satisfatória, mas não a ponto de tornar isso uma
carga e retardar o projeto.
Existem vários processos ágeis tais como, o XP que é uma abordagem deliberada e
disciplinada para desenvolvimento de software, a FDD que possui requisitos e passos mais
formais que o XP, além de possuir um mecanismo mais preciso para o acompanhamento do
projeto, o SCRUM que é um processo para construir software incrementalmente em
ambientes complexos, onde os requisitos são vagos ou mudam com freqüência, entre outros.
É vital para o sucesso no desenvolvimento de software. Modela-se para ajudar na
comunicação, assim desenvolvedores e usuários devem se comunicar e de preferência frente a
frente.
Extremamente importante, pois, você não apenas escolhe uma estratégia ágil, mas
precisa mantê-la quando dificuldades aparecerem, necessitando mudar de direção quando
decisões se mostrarem inadequadas.
“O único modo de determinar se o seu trabalho está correto é obtendo retorno
( feedback ), o que também inclui retorno em relação aos seus modelos.” (AMBLER, 2002,
p.37).
Modeladores ágeis têm a humildade de respeitar as pessoas com as quais trabalham,
percebendo que talvez possuam outras prioridades e experiências e, portanto, terão pontos de
vista diferentes. Deve-se ter a humildade de reconhecer que não se conhece ou se sabe tudo,
então explorar o conhecimento dos membros do grupo pode ser muito vantajoso para a equipe
de desenvolvimento.
Modele apenas para satisfazer as necessidades atuais e o faça da maneira mais
simples possível, ou seja, nunca modele demais.