Projeto de Sistemas - Aula002

13

Click here to load reader

description

Projeto de Sistemas - Aula 2

Transcript of Projeto de Sistemas - Aula002

Page 1: Projeto de Sistemas - Aula002

Aula 002

Projeto de Sistemas

PRONATECPrograma Nacional de Acesso ao

Ensino Técnico e Emprego

Page 2: Projeto de Sistemas - Aula002

PRONATECPrograma Nacional de Acesso ao

Ensino Técnico e Emprego

Page 3: Projeto de Sistemas - Aula002

1. Paradigmas do Projeto de Software• Paradigma são modelos de desenvolvimento de

sistemas que seguimos para criar um novo software

• Cada paradigma tem suas especificidades, suas qualidades e problemas

• Os paradigmas mais usados no projeto de software são: Modelo em Cascata, Prototipação, Modelo Espiral, Modelo 4G – Quarta Geração, Modelo Incremental

• Ainda podemos ter uma combinação de paradigmas para adequar às necessidades

Page 4: Projeto de Sistemas - Aula002

2. Modelo em Cascata• Esse é o modelo clássico de

desenvolvimento de sistemas.

• Prevê atividades de: verificação, validação e controle de qualidade

• Verificação: “estamos fazendo de forma correta?”

• Validação: “estamos fazendo o produto certo?”

• Chamado em “Cascata” por que uma atividade depende do término total ou parcial da ação anterior

• É um método sistemático e sequencial

Page 5: Projeto de Sistemas - Aula002

3. Etapas do Modelo em Cascata• Engenharia de Software: é a etapa do estudo das viabilidades onde

se definem os pré-requisitos iniciais para a construção do sistema• Análise: parte de estudo feita pelo Analista de Sistemas que tem

por objetivo elaborar a Especificação dos Requisitos do Software. Deve ser feita usando ferramentas de entrevistas e modelagem lógica de sistemas

• Projeto: definir quatro coisas: estrutura de dados, arquitetura do software, detalhes procedimentais e caracterização da interface

• Codificação: etapa da programação e construção dos scripts para o banco de dados

• Teste: cada programa, cada módulo, cada banco de dados deverá ser testado sozinho e em conjunto uns com os outros

• Implantação, Manutenção e Operação: parte que implanta na organização o software incluindo as correçõe, manutenções e treinamentos operacionais aos usuários.

Page 6: Projeto de Sistemas - Aula002

4. Vantagem/Desvantagem: modelo clássico• Vantagens:• Bem estruturada trazendo uma grande organização

para o gerente de projeto• Facilita descobrir onde os erros ocorreram• Desvantagens:• A realidade raramente segue o fluxo sequente que o

modelo propõe• O cliente pode não saber de início todas as

necessidades do sistema• Um problema nas fases mais avançadas pode ser

desastroso para todo o projeto• Demora no resultado final completo

Page 7: Projeto de Sistemas - Aula002

5. Modelo em Prototipação• Esse modelo propõe se

fazer um software protótipo que vai crescendo na medida em que os detalhes vão sendo conhecidos

• Idealmente, o protótipo serve como um mecanismo para identificar os requisitos de software.

• Muitas vezes, é preciso descartar um protótipo todo para evitar perda de tempo com muitas correções.

Page 8: Projeto de Sistemas - Aula002

6. Vantagem/Desvantagem: Prototipação• Vantagens:• Torna o processo de Análise mais próximo do usuário• Facilita na descoberta dos requisitos iniciais do sistema• O Usuário tende a se comprometer mais ao ver já o

resultado tão instantâneo• Desvantagens:• O usuário se frustrar ao descobrir que o protótipo esta

longe do resultado final• Etapas de projeto e codificação podem ser prejudicadas

pela “pressa” de terminar o protótipo• Exigência de alta capacidade gerencial dos projetistas• Mais dispendioso se demorar muito para o final

Page 9: Projeto de Sistemas - Aula002

7. Modelo Espiral• Concebido para abranger as

melhores características do ciclo de vida clássico e da prototipação, ao mesmo tempo que adiciona um novo elemento, que é a análise de risco.

• Este modelo de ciclo de vida se utiliza de protótipos por se adequar muito bem com esta filosofia de desenvolvimento.

• Cada passo através do ciclo inclui: planejamento, análise e projeto, prototipação e avaliação.

• Os passos vão sendo repetidos até que um produto seja obtidoEtapas desse Ciclo:

•Planejamento, determinação de objetivos, alternativas e restrições do ciclo, considerando os resultados do ciclo anterior ou da análise dos requisitos.• Análise dos riscos, análise das alternativas e identificação (resolução) dos riscos.• Engenharia, Desenvolvimento e verificação da solução escolhida.• Avaliação do Cliente, avaliação dos resultados e planejamento do ciclo seguinte

Page 10: Projeto de Sistemas - Aula002

8. Técnicas de 4ª Geração (4G)• Abrange um amplo conjunto de

ferramentas para o desenvolvimento de software que tem uma coisa em comum: cada uma delas possibilita que o desenvolvedor especifique alguma característica do software num nível elevado.

• O código fonte é gerado quase todo automaticamente, tendo por base a especificação do desenvolvedor

• A parte de codificação, geração de telas, relatórios, consultas, em fim a programação propriamente dita, se torna automatizada.

Page 11: Projeto de Sistemas - Aula002

9. Prós e Contras das Ferramentas 4G• Prós:• Redução no tempo de Análise, Projeto e

Codificação para pequenas aplicações• Desvantagens:• Se limitam mais a aplicações de sistemas de

informação comercial• Para grandes aplicações aumento no tempo de

Análise, Projeto e Codificação• Dificulta a manutenção do sistema devido a falta

de documentação em alguns casos

Page 12: Projeto de Sistemas - Aula002

10. Modelo Incremental• Nos modelos por incremento, também chamado de modelo

evolutivo, um único conjunto de componentes é desenvolvido simultaneamente, num primeiro tempo o núcleo do software e depois os incrementos vão sendo agregados.

• As atividades de desenvolvimento e validação são desempenhadas paralelamente, com um rápido feedback entre elas.

• O processo de desenvolvimento de cada incremento é realizado usando um processo clássico dos já estudados anteriormente.

Page 13: Projeto de Sistemas - Aula002

11. Vantagem/Desvantagem: Incremental• Vantagens:• Cada desenvolvimento é menos complexo• As integrações são progressivas• A cada interação, uma nova versão do produto pode ser

distribuída• Usados em grandes projetos e softwares para distribuição

em grande escala, por permitir evolução e melhorias sem descaracterizar o software

• Desvantagens:• Os problemas no núcleo do software, inviabilizando novos

incrementos, e determinando o fim do ciclo de vida do software

• Incapacidade de integrar novos incrementos