Buscar

Desenvolvimento de Software

Prévia do material em texto

Módulo 02 - Descrever as etapas essenciais de um processo de desenvolvimento de 
software. 
 
● Abstração em Desenvolvimento de Software: No início temos um modelo com alto 
nível de abstração. Quanto mais próximo a codificação se chega a um nível mais 
baixo de abstração. 
● Atividades típicos que compõem o processo de desenvolvimento de software: 
 
● Levantamento de Requisitos: Primeiro grande desafio, entender o problema. 
Aporte e interação com clientes e equipe. 
● Requisitos: São descrições dos serviços fornecidos pelo sistema e as suas 
restrições operacionais. Refletem a necessidade de um cliente. Etapa muito 
importante, um mau entendimento de um requisito é propagado nas próximas 
etapas. 
● Documento de requisitos: 
○ Categoriza os requisitos em 3 categorias: 
■ Funcionais: Serviços prestados aos clientes 
■ Não funcionais: Restrições operacionais que impactam os funcionais 
■ Domínios: Regras de negócios 
 
● Análise: Tratativa das complexidades relacionadas à abstração. Gerar modelos de 
casos de usos. 
■ Documento de Requisitos são convertidas em modelos de análise 
que incluem artefatos gráficos e textuais. 
■ “O QUE” o sistema deverá implementar, Alto nível de abstração 
■ Validação de modelo com o usuário. 
Projeto: 
● Refinamento dos modelos gerados na análise. 
● Construções de novos modelos. 
● “COMO” implementar 
 Dentre as principais atividades, destacamos: 
○ Refinamento do modelo de classes iniciado na análise. 
○ Construção do modelo de interação, que permite identificar a comunicação 
entre objetos que irão permitir a implementação das funcionalidades 
especificadas pelos casos de uso. 
○ Mapeamento objeto-relacional, permitindo a geração do modelo lógico do 
banco de dados, ou seja, identificação das tabelas necessárias ao sistema 
considerando um requisito não funcional que determine uma tecnologia 
relacional. 
○ Desenho dos componentes do sistema e dos nós computacionais 
necessários para a sua implantação, gerando modelos que determinam a 
arquitetura do sistema. 
○ 
Implementação: 
● Codificação do software de acordo com os requisitos definidos na etapa de Projeto. 
● Melhores práticas de implementação de software 
 
Testes: São aplicados os testes do software: 
● Também chamados de testes de validação 
● Testam os componentes individualmente e também sua integração com outros 
● Plano de teste a partir dos casos de testes 
● Automação de testes, pois irá se repetir muitas vezes. 
Implantação: O software é migrado para o ambiente de produção, mas precisa do aval da 
equipe de qualidade. 
● Geração de manuais de utilização 
● Criação de call center 
● Migração de dados 
 
Fluxo de Processo: A especificação de desenvolvimento de Software. O fluxograma com 
as etapas variam de acordo com o seu tipo. 
 
 
 
Módulo 03 - Relacionar as etapas de um processo de desenvolvimento de software com as 
etapas de Gerenciamento de Projeto 
 
PMI - Project Management Institute: 
● Organização que cuida das boas práticas de Gerenciamento de Projetos em todo o 
mundo. 
● PMP - Certificação Profissional - Certificação para gerentes de projeto - Uma das 
mais importantes do mundo. 
● Guia de Conhecimento em Gerenciamento de Projetos - PMBOK. 
● Projeto: Esforço temporário empreendido para criar um produto, serviço ou 
resultado 
● Todo projeto tem início, meio e fim 
● Gerenciamento de Projetos: Aplicação, conhecimentos, habilidades, ferramentas e 
técnicas às atividades do projeto a fim de cumprir seus requisitos. 
● 
● Como esse ciclo de vida é gerenciado? 
○ Através de uma série de atividades de gerenciamento de projetos, são os 
Processos de Gerenciamento de Projeto. 
○ Conjunto de Processos - Grupo de processos de gerenciamento de 
Projetos. 
 1- Grupo de Processos de Iniciação: 
● Início de projetos: Termo de abertura de Projeto: Alocação de 
recursos ao projeto 
 2- Grupo de Processos de Execução: 
● Executar de acordo com o planejado: Muitas pessoas 
envolvidas 
 3- Grupo de Processos de Monitoramento e Controle: 
● “Não se controla o que não se mede” 
● Grupos de monitoramento e controle de progresso e 
desempenho do projeto 
● Ações corretivas 
 4- Grupo de Encerramento: 
● Grupos que incluem processos de conclusão e encerramento 
do projeto. 
 
 
● 5 grupos de processo. Cada cor uma área de conhecimento 
● Áreas de conhecimentos interdisciplinar 
● PMBOK - 10 áreas de conhecimento. 
 
● Podemos dizer que o gerente de projeto atua como um maestro, pois não precisa ter 
conhecimento específico de cada área de conhecimento. 
● Este combina os resultados em todas as outras áreas de conhecimento e tem a 
visão geral do projeto, pois é o único responsável pelo projeto como um todo. 
 
 
 
Módulo 04- Descrever a importância do Gerenciamento de Risco no projeto de software 
 
● Risco: é um evento ou condição incerta que, se ocorrer, provocará um efeito 
positivo ou negativo em um ou mais objetos do projeto 
○ Pode ser um obstáculo ou uma oportunidade 
● Identificação de riscos: O risco apresenta três componentes: 
○ 1- Um evento 
○ 2- A probabilidade de ocorrência do evento: Grau de incerteza 
○ 3- Impacto decorrente do evento: Grau de perda. 
● Plano de Gerenciamento de Riscos: 
○ EAR (Estrutura Analítica do risco) -> Definição de potenciais fontes de riscos 
para o projeto. Identificação de risco de forma categorizada 
○ Para uma identificação de riscos mais eficientes, se faz necessário uma clara 
compreensão da missão, escopo e objetivos do projeto. 
● Pressman(2016): Com relação ao riscos relacionados ao software temos alguma 
categorias genéricas: 
○ 1- Tamanho do Produto: Riscos associados ao tamanho do software 
○ 2- Impactos no Negócio: Riscos oriundos de restrições impostas pelo 
cliente ou pelo mercado 
○ 3- Características dos Envolvidos: Relacionados a comunicação oportuna 
entre engenheiro e clientes 
○ 4- Definição do Processo: Relacionados a auditoria de processos por parte 
da equipe da qualidade. 
○ 5- Ambiente de Desenvolvimento: Associados às ferramentas disponíveis 
para criar o software, tais como, ferramentas case disponíveis. 
○ 6- Tecnologia a ser criada: Relacionadas às inovações tecnológicas 
aplicadas no desenvolvimento do software. 
○ 7- Quantidade de pessoas e experiências: Associados aos perfis dos 
Engenheiros de software e do resto da equipe de trabalho. 
● Algumas técnicas podem ser utilizadas para identificação de riscos: Brainstorm, 
Check List e Entrevista. 
● Análises qualitativas dos riscos: 
○ Priorização de riscos 
○ Os riscos não possuem mesma prioridade, alguns acabam impactando bem 
mais no projeto 
○ Determinar seu potencial 
■ Probabilidades: 
 
■ Graus de Impacto: 
 
■ Aplicação: 
 
 
● Análise Quantitativa de Riscos: 
○ Analisar numericamente os efeitos dos riscos priorizados pela análise 
quantitativa 
○ Uma técnica é a árvore de decisão: Ex: 1- Contrato uma empresa para 
criação do Software ou crio na própria empresa? 
● Planejamento de respostas aos riscos: 
○ Planejamento de ações para aumento de oportunidades e redução da 
ameaças ao projeto 
○ Gerenciamento de acordo com a sua prioridade 
○ Tratamento a ser aplicado: Mitigação? Exclusão? 
○ Ex: 
 
 
●

Continue navegando