o processo de desenvolvimento de software projeto

23
O Processo de Desenvolvimento de Software Análise , Projeto e o Componente Humano Prof. Leandro Israel Pinto

Upload: others

Post on 11-Jul-2022

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: O Processo de Desenvolvimento de Software Projeto

O Processo de Desenvolvimento de

Software

Análise , Projeto e o Componente Humano

Prof. Leandro Israel Pinto

Page 2: O Processo de Desenvolvimento de Software Projeto

2/15

• O termo análise corresponde a quebrar um sistema em seus componentes e estudar como eles interagem;

• Estudo detalhado dos requisitos;

• A partir desses estudos constroem-se modelos;

• Essa fase é também chamada de especificação de requisitos;

Análise de Requisitos

Page 3: O Processo de Desenvolvimento de Software Projeto

3/15

• Não leva em conta o ambiente tecnológico;

• O foco é tentar construir uma estratégia de

solução;

– Sem se preocupar com a maneira que será

realizada;

• Obter a melhor solução, sem se preocupar

com detalhes tecnológicos;

Análise de Requisitos

Page 4: O Processo de Desenvolvimento de Software Projeto

4/15

• Assegurar que:

– As necessidades do cliente estão sendo atendidas;

– Que o software está será construído corretamente;

• O resultado da análise são modelos que representam as estruturas das classes de objetos que compõem o sistema;

– E também, modelos que especificam as funcionalidades;

Análise de Requisitos

Page 5: O Processo de Desenvolvimento de Software Projeto

5/15

• Como o sistema funcionará para atender aos requisitos, de acordo com os recursos tecnológicos existentes;

• Aspectos a serem considerados:

– Arquitetura do sistema;

– Padrão de interface gráfica;

– Linguagem de programação;

– Banco de dados;

– Etc.

• Normalmente se mistura com a fase de análise;

Projeto

Page 6: O Processo de Desenvolvimento de Software Projeto

6/15

• O Projeto consiste em duas atividades

principais:

– Projeto da arquitetura;

– Projeto detalhado;

Projeto

Page 7: O Processo de Desenvolvimento de Software Projeto

7/15

• Projeto da arquitetura:

– Consiste em distribuir as classes em subsistemas

e seus componentes;

– Distribuir esses componentes fisicamente pelos

recursos de hardware disponíveis;

– Usa-se os diagramas de implementação da UML;

– Trabalho normalmente realizado pelo arquiteto

de software;

Projeto

Page 8: O Processo de Desenvolvimento de Software Projeto

8/15

• Projeto detalhado:

– São modeladas as colaborações entre os objetos

de cada módulo com o objetivo de realizar as

funcionalidades do módulo;

– Projeto de interface com o usuário;

– Projeto do banco de dados

– Usa-se diagramas de classes, casos de uso, de

interação, de estados e de atividades;

Projeto

Page 9: O Processo de Desenvolvimento de Software Projeto

9/15

• O sistema é codificado;

Implementação

Page 10: O Processo de Desenvolvimento de Software Projeto

10/15

• Testes são realizados levando em conta a especificação feita na fase de projeto;

• Pode-se gastar muito mais tempo do que o esperado nessa fase;

– Principalmente se os requisitos não foram bem feitos. Serão encontrados muitos elementos fora de especificação;

Testes

Page 11: O Processo de Desenvolvimento de Software Projeto

11/15

• O sistema é empacotado, distribuído e

instalado.

• Os manuais são escritos;

• Os usuários são treinados;

• Migração de dados pré-existentes (se

houver);

Implantação

Page 12: O Processo de Desenvolvimento de Software Projeto

12/15

• O desenvolvimento de software é uma tarefa cooperativa; – Tecnologias complexas demandam especialistas em áreas específicas;

– Vários especialistas podem estar envolvidos;

• Uma equipe típica consiste: – Gerente, Analistas, Projetistas, Programadores, Clientes e grupos de

qualidade;

– É uma separação didática. Na prática, a mesma pessoas desempenha várias funções, e uma mesma função é desempenhada por várias pessoas;

O Componente Humano

Page 13: O Processo de Desenvolvimento de Software Projeto

13/15

• Responsável pela gerência! – Coordenação das atividades necessárias;

• Responsável por fazer orçamento; – Estimar tempo;

– Definir o processo de desenvolvimento;

– Cronograma;

– Definir a mão de obra especializada;

– Definir os recursos de hardware e software;

• Acompanhar as atividades;

• Verificar os gastos e tomar medidas necessárias;

• O sistema é fazível? Qual a equipe necessária?

Gerente de Projeto

Page 14: O Processo de Desenvolvimento de Software Projeto

14/15

• Deve obter conhecimento do domínio do negócio; – Para que possa definir os requisitos;

– Não precisa ser especialista no domínio do negócio;

– Mas, deve ter domínio do vocabulário da área de conhecimento;

• Deve ter boa capacidade comunicativa; – Responsável por entender a necessidade;

• São uma ponte entre profissionais do negócio e da computação;

• Deve ter conhecimentos de alto nível da computação; – Mapeia informações entre duas áreas de conhecimento;

• Deve ser ético, pois entra em contato com informaçõe sigilosas da organização;

Analistas

Page 15: O Processo de Desenvolvimento de Software Projeto

15/15

• Avaliar alternativas de solução;

• Gerar especificação de uma solução computacional detalhada;

• Existem diversos tipos de projetistas: – De interface;

– De redes;

– De banco de dados;

– Etc.

• Trabalham com modelos resultantes da análise para adicionar aspectos tecnológicos;

Projetistas

Page 16: O Processo de Desenvolvimento de Software Projeto

16/15

• Encontrado principalmente em grandes

equipes, reunidas para desenvolver sistemas

complexos.

• O objetivo deste é elaborar a arquitetura do

sistema como um todo.

– Toma decisões sobre quais são os subsistemas e

quais as interfaces entre estes;

Arquiteto de Software

Page 17: O Processo de Desenvolvimento de Software Projeto

17/15

• Responsável pela implementação;

– Um programador pode ser proficiente em uma

ou mais linguagens , além de ter conhecimentos

sobre banco de dados;

• A maioria das equipes possuem analistas que

realizam alguma programação;

– E programadores que realizam alguma análise;

Programadores

Page 18: O Processo de Desenvolvimento de Software Projeto

18/15

• Distinguem-se dois tipos de clientes:

– Cliente usuário;

• Normalmente um especialista no domínio do negócio;

– Cliente contratante;

• Encomenda, patrocina, etc.

• Há casos em que o produto não é

encomendado. É desenvolvido para ser

comercializado depois;

– Normalmente direcionados ao mercado de massa;

Clientes

Page 19: O Processo de Desenvolvimento de Software Projeto

19/15

• Modelo de ciclo de vida é um

encadeamento específico das fases de

desenvolvimento;

• Há diversos modelos de Ciclos de Vida;

Modelos de Ciclo de Vida

Page 20: O Processo de Desenvolvimento de Software Projeto

20/15

• Também chamado Modelo Clássico ou

Linear;

Modelo em Cascata

Page 21: O Processo de Desenvolvimento de Software Projeto

21/15

Modelo Iterativo Incremental

Page 22: O Processo de Desenvolvimento de Software Projeto

22/15

• Metodologia Estruturada

• Metodologia Orientada a Objetos

• Metodologias de Desenvolvimento Ágil

Outros Métodos

Page 23: O Processo de Desenvolvimento de Software Projeto

23/15

• Encontre a metodologia mais adequada para

o seu trabalho final;

– Descreva-a brevemente;

Exercício