Você está na página 1de 8

FATEC -SP

Resumo de Engenharia de Software

Vitor Itiro Oki Takahashi


20118921

São Paulo -SP


2020
Sumário
INTRODUÇÃO...........................................................................................................................3
Crystal........................................................................................................................................4
FDD.............................................................................................................................................5
TDD.............................................................................................................................................6
CONSIDERAÇÕES FINAIS.....................................................................................................7
REFERÊNCIAS.........................................................................................................................8
INTRODUÇÃO

Neste trabalho serão abordadas outras metodologias ágeis, como


Crystal, desenvolvimento dirigido a funcionalidade (FDD) e desenvolvimento
dirigido a testes (TDD).
Métodos ágeis foram criados para o desenvolvimento de software rápido
e eficiente, então vários pontos eficazes foram adotados, então cada método
tem alguns pontos atrás.
Crystal

A família Crystal de métodos ágeis está relacionada à gestão de


pessoas, existem diferentes tipos de projetos para diferentes tipos de
metodologias Crystal específicas. Portanto, seja adequado na hora de
gerenciar melhor o projeto com base no tamanho da equipe e nos riscos
envolvidos.

Esse método é característico por algumas características como:

• Flexibilidade seguindo o escopo e tamanho do projeto

• Preço fixo por projeto

• Foco em criticidade e prioridades

• Dificuldade para abordar o projeto no meio do progresso

• Boa comunicação para projetos com poucas pessoas, logo quando se


tem o aumento de pessoas envolvidas, tem-se o aumento de dificuldade de
comunicação.

Além das características acima, tem-se a graduação do projeto por


cores, sendo relacionado a cores mais claras com menor complexidade e
havendo 4 níveis de criticidade como:

• C = conforto

• D = baixo custo

• E = elevado custo

• L = risco de vida

Portanto, cada projeto é determinado de acordo com seus riscos e o


porte da equipe multidisciplinar de especialistas. Faça também uma lista de
prioridades e deixe que cada projeto selecione a metodologia adequada, de
forma que se determine que projetos de médio e pequeno porte preferem
métodos ágeis pela facilidade de comunicação e projetos grandes preferem
métodos clássicos.
FDD

Desenvolvimento orientado funcional (FDD) é um método de processos


orientados a objetos práticos, mais usado para projetos de software de médio a
grande porte. Este modelo concentra-se em atividades de programas de
garantia de qualidade e diretrizes e técnicas de gerenciamento de projetos.

Como uma ferramenta de gerenciamento de problemas, a decomposição


é feita com base nas funções e, portanto, integra as melhorias do programa.
Para melhor gerenciamento, a garantia de qualidade do software usa algumas
etapas, como:

• Encorajamento de estratégias de desenvolvimento incremental

• Inspeção de código e projeto

• Aplicação de auditorias

• Coleta de métricas

• Uso de padrões

Dentro dessa metodologia existem alguns benefícios também, são elas:

•São organizadas em pequenos blocos entregues ao usuário, assim


deixando-os mais fácil para entendimento e facilitando a revisão do projeto.

• As funcionalidades são agrupadas hierarquicamente, sendo


relacionadas com o negócio. Também são entregues a cada 2 semana.

• Os códigos são mais fáceis de inspecionar

• O planejamento, cronograma e acompanhamento do projeto são


guiadas pela hierarquia de funcionalidade.
TDD

O desenvolvimento baseado em teste é um conjunto de requisitos para


um componente de software com base na criação de uma sequência de casos
de teste que exercita a interface e tenta encontrar erros ou bugs em estruturas
de dados e funções. Programas. Além de focar na criação de testes antes da
criação do código-fonte e consequentemente no controle detalhado do projeto.

Os testes criados antes do estágio de codificação ajudam os


programadores a esclarecer ideias sobre o segmento de código que está sendo
criado. Também reduz o custo do teste de regressão usando testes
automatizados.

Em outras palavras, os testes são executados para encontrar bugs.


Quando encontrados, os segmentos de código são regredidos em pequenas
etapas, evitando possíveis efeitos colaterais no código anterior.

Como cada metodologia segue o seu cronograma, o TDD segue o seguinte


plano:

1. Criação de caso de teste – determinando qual a finalidade do código

2. Escreve um novo segmento de código – criação do segmento pequeno


incremental do código

3. Executa os testes – Etapa que analisa se há ou não erros no código, se


caso haver, o código é refeito e executa novamente a etapa de criação
do novo segmento do código. Caso contrário, os testes são concluídos e
podem ir para outro segmento de código.

Nesta metodologia existem testes como:

•Teste de release: São realizados testes de verificação de satisfação dos


requisitos (sendo realizado um conjunto de testes para cada requisito) e de
sistema, que visa a descoberta de bugs no sistema com entrada de dados pelo
usuário e desempenho do software. Portanto, seriam os testes de liberação do
software para o usuário.

• Teste de usuário: São testes baseados nas entradas do usuário,


podendo haver testes alfa, onde usuários e desenvolvedores testam juntos o
software em um ambiente interno. Teste beta, trata-se da fase experimental
com o usuário, onde tem-se os feedbacks da versão pré-pronta. Por fim, o teste
de aceitação trata-se da etapa onde os clientes testam e dizem se o software
está pronto ou não.

Por fim, essa metodologia acaba sendo bem aceita em empresas de


pequeno e médio porte, porém é ineficaz em sistemas multi-threads, pois
processam o software em diferentes clocks e produzem diferentes resultados.
CONSIDERAÇÕES FINAIS

Neste trabalho, vi vários métodos ágeis que visam entregar produtos em


um menor tempo, e existem algumas ferramentas que focam em um melhor
gerenciamento de projetos e membros da equipe, além de funcionalidades e
desenvolvimento de software baseado em teste.

Crystal é um modelo que foca na gestão de equipes qualificadas em


cada projeto, também permite que cada projeto ou equipe escolha o método
mais adequado, que pode ser ágil ou clássico. Dependendo do número de
pessoas e dos riscos envolvidos no projeto, existem classificações de cores e 4
níveis-chave. Alguém apontou que grupos com um pequeno número de
pessoas tendem a usar métodos ágeis, e se houver muitas pessoas em cada
projeto, eles tendem a usar métodos clássicos.

O desenvolvimento orientado a funções é uma abordagem orientada a


objetos que enfatiza as atividades de garantia de qualidade de software e as
diretrizes e técnicas de gerenciamento de projetos. Para manter uma boa
organização, o planejamento, o andamento e o monitoramento do projeto
devem ser orientados de acordo com a hierarquia funcional do processo
incremental. Com o tempo, passou a ser mais utilizado em grandes e médias
empresas.

Para o desenvolvimento baseado em teste, é o desenvolvimento de


teste antes da criação do código, a finalidade é criar o código-fonte com uma
finalidade definida e, em caso de erro, o custo de reconstrução é menor. Além
de quebrar seu código em várias partes, isso também pode tornar mais fácil
regredir seu código e remover erros de seu código-fonte com mais eficiência e
rapidez. Ao mesmo tempo, você ganha a confiabilidade do usuário ao lançar
versões alfa e beta do software para capturar feedback e melhorar o software.
REFERÊNCIAS

SOMMERVILLE, I. Engenharia de Software. 9.ed. São Paulo: Editora Pearson


Brasil, 2011.
PRESSMAN, Roger S. Engenharia de software. 7.ed. São Paulo: McGraw-
Hill, ArtMed, 2011.
https://www.treinaweb.com.br/blog/metodologia-crystal-o-que-e-e-para-que-
serve/
https://www.devmedia.com.br/metodos-ageis-parte-02/9443

Você também pode gostar