Sie sind auf Seite 1von 5

Significado de XP?

Extreme Programming (Programação Extrema).

Ideal para que tipo de empresa (equipe): pequena, média, grande?

Pequenas e Médias.

Em software onde os requisitos não são conhecidos é recomendado o uso do XP? Por quê?

Sim. O desenvolvimento do XP é iterativo, ou seja, e feito em diversas iterações. Além


disto, o processo recomenda a presença constante do cliente, desta forma a descoberta de
detalhes de um requisito é constante e como o software é feito em versões é possível inserir
as mudanças sem muito prejuízo.

Quais são os principais valores propostos pelo XP?

Comunicação, simplicidade, feedback e coragem.

Cite os principais princípios que norteiam o desenvolvimento de um software utilizando XP?

FeedBack rápido: ou seja, os módulos tem que ser rapidamente projetados e


implementados para serem apresentados ao cliente.

Presumir simplicidade: o software tem que ser simples, ter apenas o que é necessário.

Mudanças incrementais: as mudanças que se mostrarem necessárias devem ser


inseridas em versões futuras do software.

Abraçar Mudança: mudanças não são recusadas, tem que ser feitas, desta forma
precisamos desenvolver de modo que facilite inserir tais mudanças.

Trabalho de Qualidade: atender as necessidades do usuário e entregar um software


com uma taxa adequada de erros lógicos.

Boas práticas propostas:

Programação em Pares (Pair Programming): Duas pessoas são responsáveis pelo papel
de uma. Enquanto um programador esta desenvolvendo o outro analisa o problema e
identifica possíveis falhas que possa surgir. Geralmente um é iniciante e outro
experiente.

Desenvolvimento Orientado a Testes (Test Driven Development): Recomenda pensar


nos possíveis problemas e criar teste para os mesmo, após isto a codificação é
inicializada. Garante a qualidade do projeto, substitui em partes a Análise e projeto.

Reuniões em pé (Stand-up Meeting): Reuniões rápidas, as pessoas se encontram


abordam tarefas realizadas e definem próximas tarefas. Este processo todo é feito em
pé, como se fosse um momento de descontração.
Posse Coletiva (Collective Ownership): O código desenvolvido não tem dono,
constantemente é trocado entre as equipes. O código desenvolvido por minha equipe
esta semana poderá ser mantido e evoluído por outra equipe na próxima semana.

Integração Contínua (Continuous Integration): Quando um novo modulo é finalizado a


sua instalação e integração deve ser imediata.

Pequenas Versões (Small Releases): A cada semana um conjunto restrito de


funcionalidades é feita, pois desta forma o cliente, sempre terá contado com uma
parte usável do sistema.

Jogo de Planejamento (Planning Game): O desenvolvimento é feito em iterações


semanais. No inicio da semana, Desenvolvedores e cliente reúnem-se para priorizar as
funcionalidades.

Metáfora (Metaphor): Criar um vocabulário próprio e adequado para a comunicação


entre cliente e desenvolvedor. Um desenvolvedor não tem capacidade de conhecer
todas as nomenclaturas de todas as áreas que ele desenvolver. Desta forma para
facilitar a memorização utiliza-se metáforas.

Projeto Simples (Simple Design): Desenvolver apenas o necessário no momento, caso


a única informação necessária sobre o livro seja o seu nome em um primeiro momento
considere apenas ela.

Time Coeso (Whole Team): Criar afinidade e comprometimento entre os clientes e a


equipe de desenvolvimento.

Testes de Aceitação (Customer Tests): O cliente ajuda a projetar os testes do sistema,


pois ele tem uma visão mais detalhada do sistema.

Ritmo Sustentável (Sustainable Pace): Respeitar as limitações dos desenvolvedores,


buscar um ritmo de trabalho saudável (40 horas/semana, 8 horas/dia), sem horas
extras. Só devem ser permitidas quando forem essenciais para manter a produtividade
da equipe.

Padrões de Codificação (Coding Standards): Padrões bem definidos de codificação,


todos programam do mesmo modo, sem vícios, no mesmo formato. Desta forma, o
código irá aparentar ter sido desenvolvido pela mesma pessoa.
RUP:

Foi uma adaptação de qual outro processo?

Do processo unificado(UP), o RUP foi criado pela Rational, adaptando as suas


necessidades. A Rational foi comprada pela IBM, atualmente a IBM chama o processo
como IRUP.

O RUP recomenda a utilização de UML e Orientação a Objeto?

Sim, estas duas tecnologias são essenciais para o bom uso do RUP.

Ele é recomendado para grandes projetos?

Sim, grandes projetos permitem uma estrutura na qual dá para utilizar todo o
potencial do RUP.

E para pequenos?

Completamente não, ele pode ser adaptado as estas outras situações. O


processo é caro, desta forma para ser viável é necessária esta adaptação.

Quais boas práticas de desenvolvimento este modelo propões?

Desenvolvimento iterativo

Gerência de requisitos

Arquitetura em componentes

Modelagem visual do software

Verificação da qualidade de software

Controle de alterações de requisitos

Expliquem a figura abaixo?


O RUP divide o processo de desenvolvimento em 4 fases básicas, cada uma destas
fases podem ter várias subfases(iterações):

Iniciação: Nesta fase o foco e definir com uma precisão o escopo do projeto,
planejando todo o restante do projeto. Ocorre em apenas uma iteração

Elaboração: Nesta fase é feito a análise e o projeto do software, detalhando as


funcionalidades e eliminando possíveis problemas. Podem ocorrer várias iterações,
mas geralmente duas é suficiente.

Construção: Nesta fase o projeto é convertido em produto. Existem diversas iterações,


onde em cada iteração novas funcionalidades são implementadas.

Transição: Fase de implantação e configuração do software.

Cada uma destas fases apresenta diversas disciplinas(tarefas), que terão +ou-
importância dependendo da fase.

- Modelagem do negocio, acontece em quase todas as fases, entretanto é essencial na


concepção, pois permite definir como é o negocio onde o software estará inserido.

- Requisito: Identificação das necessidades do sistema, definição de quais requisitos


são essencial, definição de prioridades entre eles. Ocorre muito na fase de concepção
e Elaboração

- Análise e projeto: as necessidades são analisadas, detalhando como elas são e


projetando soluções para elas. Ocorre principalmente na elaboração.

- Implementação: Ocorre principalmente na construção, onde esta atividade


transforma o projeto em código.

- Teste: valida todo o projeto(projeto e código), ocorre em todo o período, um pouco


mais ao fim da construção.

- Implantação: Ocorre nas ultimas iterações da construção e na Transição.

Atividades de gerencia(projeto, configuração e ambiente) ocorrem em todas as fases.


SCRUM

O Scrum pode ser utilizado em qualquer engenharia?

Sim, ele foi criado para a indústria automobilística.

O Scrum pode ser utilizado em qualquer engenharia?

Sim, ele foi criado para a indústria automobilística.

O que são os conceitos sprint e backlog?

São, respectivamente, as interações necessárias e os requisitos que devem ser


atendidos.

Existe o conceito de reuniões em Pé?

Sim, é recomendadas reuniões rápidas e eficientes.

Deve existir algum chefe para cada equipe?

Não, elas devem ser auto-organizadas, entretanto aparece o papel de scrum


máster, que seria um tipo de tutor para resolver problemas que surjam.

Deve existir algum chefe para cada equipe?

Não, elas devem ser auto-organizadas, entretanto aparece o papel de scrum


máster, que seria um tipo de tutor para resolver problemas que surjam.

Cite algumas características?

Cliente sempre presente.

Entregas rápidas

Não ignorar problemas e procurar soluções sem ficar culpando.

Propõem desenvolver soluções viáveis em 4 semanas.

Qual a principal diferença entre Xp e Scrum?

Na verdade são complementares, onde o Scrum aprofunda nas atividades de


gerencia de projeto e o XP define melhor o processo de desenvolvimento.

Das könnte Ihnen auch gefallen