Resumo Metodologia De Projeto De Software - Unisul
Casos: Resumo Metodologia De Projeto De Software - Unisul. Pesquise 862.000+ trabalhos acadêmicosPor: danielrsj • 13/10/2014 • 1.135 Palavras (5 Páginas) • 783 Visualizações
UNIDADE 1 – CICLOS DE VIDA DE UM PROCESSO DE DESENVOLVIMENTO DE SOFTWARE
1 – Características do software
O software não se desgasta, mas se deteriora. (pág. 19)
Software são ferramentas pelas quais se explora os recursos do hardware, executa-se determinadas tarefas, resolve-se problemas ao interagir com a máquina e tornam o computador operacional.
2 – Quais são as etapas do processo de desenvolvimento de software
EGS = Engenharia de Software.
• Métodos – Como fazer para construir o software. Envolvem planejamento e estimativa do projeto, a análise de requisitos de software, o projeto da estrutura de dados, o algoritmo de processamento, a codificação, o teste e a manutenção.
• Ferramentas – Suporte automatizado para os métodos. Ferramentas CASE. (pág. 22)
• Procedimentos – Elo entre métodos e ferramentas. Estabelecem a sequência em que os métodos serão aplicados, os produtos que devem ser entregues, os controles que ajudam a assegurar a qualidade e coordenar as alterações e os marcos de referência que possibilitam administrar o progresso do software.
O software, como produto industrial:
• Deve ser concebido a partir da percepção de uma necessidade;
• É desenvolvido transformando-se em um conjunto de itens entregue ao cliente;
• Entra em operação utilizado dentro de um processo de negócio e sujeito à manutenção quando necessário;
• é retirado de operação ao final de sua vida útil.
Processo de software:
Um conjunto de passos ordenados, constituídos por atividades, métodos, práticas e transformações, usado para atingir uma meta.
Presman (2002) sugere a divisão do desenvolvimento em três processos:
• Definição – identificar quais informações de vem ser processadas, função e desempenho desejados, restrições, critérios de avaliação.
o Planejamento do projeto – avalia-se se o projeto é viável e como será conduzido.
o Levantamento de requisitos – Compreender o problema, necessidades, expectativas e restrições.
o Análise (ou especificação) de requisitos – Análise dos dados da etapa anterior. Estratégia para solucionar problemas e necessidades do cliente. Não preocupar-se com questões tecnológicas. Utilizar modelos para mostrar para o cliente.
• Desenvolvimento – definir a estrutura de dados e a arquitetura do software
o Projeto de software – definir como o sistema vai funcionar. O resultado será uma descrição computacional do que o software tem que fazer.
o Implementação – codificação propriamente dita
o Teste de software – verificação do que foi implementado. Técnicas: corretivas, validação com grupos de usuários, entre outras.
• Manutenção – correções e adaptações em função da evolução do hardware e necessidades do cliente.
o Corretiva - defeitos
o Adaptativa – mudanças relacionadas à evolução do hardware
o Funcional – funções adicionais não previstas anteriormente.
o Atividades complementares fundamentais:
Revisões – Garantir que a qualidade seja mantida à medida que cada etapa é concluída
Documentação – garantir disponibilidade das informações completas sobre o software.
Controle de mudanças – Garantir que as mudanças possam ser aprovadas e acompanhadas.
3 – Modelo de desenvolvimento de software.
Representação abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software serão conduzidas.
OBS: o processo apresentado na sessão anterior é um modelo genérico aplicável a qualquer modelo independentemente do paradigma de desenvolvimento utilizado.
• Modelo cascata – sequência rígida. Não existe retorno a etapas anteriores. Modelo inflexível. Só pode modificar o projeto na fase de manutenção. Após as fases iniciais o cliente interage muito pouco.
• Modelo espiral – Experimentação e avaliação. Muita interação com o cliente.
• Modelo prototipação – Produção de versões iniciais para verificações e experimentações. Quando o grau de aceitação do protótipo for aceitável inicia-se a construção do produto, em que se pode utilizar qualquer outro modelo: cascata, incremental, etc.
o Prototipação horizontal – uma camada específica do sistema é contruída.
o Prototipação vertical – parte da funcionalidade do sistema é escolhida para ser implementada completamente.
• Modelo incremental – combinação do modelo linear e prototipação. O desenvolvimento é dividido em etapas que são produzidas de forma incremental até se chegar a um sistema finalizado. Em cada etapa é realizada um ciclo completo e novas funcionalidades são adicionadas. Evolui em versões. Possui módulos. FORTE participação do cliente. Fundamental a visão global do sistema.
METODOLOGIAS ÁGEIS.
• Metodologia voltada a pessoas e não a processos.
• Foco maior na codificação e não na documentação.
• Adaptativas.
• Não existe a preocupação de conhecer o todo a partir de uma avaliação preditiva.
• Interativa, incremental.
• Boa participação do usuário.
Extreme Programming (XP)
• Criado por Kent Beck na década de 90
• Para equipes pequenas e medias que desenvolvem baseado em requisitos vagos e se modificam repidamente.
• Burocracia
...