- 31
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
- 17
Prof. Mauro Lopes
Modelagem de Sistemas
1
Processo de Desenvolvimento de Software
(Parte 1)
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Objetivos
• Nesta aula iremos apresentar o Processo de
Desenvolvimento de Software através da sua definição e
dos elementos comuns a cada processo. Boa aula a
todos.
2 Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Plano de Aula
• Processo de Desenvolvimento de Software
– Introdução;
– Definição;
– Atividades Típicas:
• Levantamento de Requisitos;
3 Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Introdução
4
• O desenvolvimento de software é uma atividade
complexa;
Modelagem de Sistemas – Prof. Mauro Lopes
16% de todos os projetos foram concluídos com sucesso (entregue dentro do tempo proposto e com todas as suas funcionalidades.
53% foram deficientes (projetos entregues fora do prazo, com um alto custo e sem todas as funcionalidades).
31% foram cancelados (nada foi entregue).
Standish Group emite Chaos Report 2014 sobre a estatística de Projetos de TI
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Definição
5
• Tentativas de lidar com essa complexidade e de
minimizar os problemas envolvidos no
desenvolvimento de software envolvem a definição
de processos de desenvolvimento de software;
• Um processo de desenvolvimento de software (ou
simplesmente processo de desenvolvimento)
compreende todas as atividades necessárias para
definir, desenvolver, testar e manter um produto
de software.
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Atividades Típicas
6
• Um Processo de Desenvolvimento classifica em
atividades as tarefas realizadas durante a construção
de um software;
• Existem vários Processos;
• Não existe “o melhor”;
• Cada processo tem suas particularidades (a forma de
encadeamento das atividades, por exemplo);
• Porém podemos destacar um conjunto de atividades
que de certa forma são comuns a todos eles;
• São elas: Levantamento de Requisitos, Análise de
Requisitos, Projeto, Implementação, Testes e Implantação.
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
7
• Esta etapa corresponde à etapa de compreensão do
problema aplicada ao desenvolvimento de software;
• O principal objetivo é que usuários e desenvolvedores
tenham a mesma visão do problema a ser resolvido;
• Levanta-se e defini-se as necessidades dos futuros
usuários. Estas necessidades chamamos de requisitos;
• Um requisito é uma condição ou capacidade que deve
ser alcançada ou possuída por um sistema ou
componentes deste para satisfazer um contrato,
padrão, especificação ou outros documentos
formalmente impostos.
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
8 Modelagem de Sistemas – Prof. Mauro Lopes
Desenvolvedores e Clientes conversam continuamente nesta etapa!!!
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
9
• Os requisitos de um sistema são identificados a partir
do domínio do negócio (também chamado de domínio
do problema ou domínio da aplicação);
• Um domínio de negócio é a área de conhecimento
específica na qual um determinado sistema de
software será desenvolvido. Por exemplo: • Desenvolver um Sistema de Controle Jurídico para um escritório de
advocacia;
• Qual o domínio do negócio?
• Você considera importante os desenvolvedores conhecerem este
domínio? Por quê?
• Surge o Especialista do Domínio, uma pessoa que tem familiaridade
com o domínio do negócio, mas não necessariamente com o
desenvolvimento de sistemas de software.
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
10
• Há várias técnicas para levantar requisitos:
Leitura de Obras de referência e livros-texto;
Observação do ambiente do usuário;
Entrevistas com os usuários;
Entrevistas com Especialistas de Domínio;
Reutilização de análises anteriores;
Comparação com sistemas preexistentes do mesmo
domínio;
• O produto do levantamento de requisitos é o
documento de requisitos;
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
11 Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
12
• As principais seções de um documento de requisitos
são listados a seguir:
Requisitos funcionais: definem as funcionalidades do
sistema.
Requisitos não-funcionais: declaram as características
de qualidade que o sistema deve possuir e que estão
relacionados às suas funcionalidades;
Restrições: declaração de restrições impostas sobre o
desenvolvimento do sistema. Restrições definem, por
exemplo, a adequação a custos e prazos, a plataforma
tecnológica, aspectos legais, limitações sobre interfaces
com o usuário;
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
13
• Exemplos de Requisitos Funcionais e Não Funcionais:
Requisitos funcionais:
“O sistema deve permitir que cada professor realize o
lançamento de notas das turmas nas quais lecionou”;
“Os coordenadores devem obter o número de alunos aprovados
e reprovados organizados por turma”.
Requisitos não-funcionais:
Confiabilidade do Sistema: tempo médio entre as falhas, tempo
de recuperação das falhas ou quantidade de erros por linhas de
código;
Desempenho: requisitos que definem o tempo de resposta
esperados pelas funcionalidades do sistema;
Portabilidade: restrições sobre plataformas de hardware e
softwares nas quais o sistema será implantado;
Usabilidade: facilidade de uso e a necessidade de treinamento.
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Levantamento de Requisitos
14
• Características de um documento de requisitos:
Os requisitos devem ser expressos de tal forma que eles
possam ser entendidos por leitores técnicos e não técnicos;
Não deve conter informações sobre as soluções técnicas que
serão adotadas no desenvolvimento do software;
O levantamento de requisitos é a etapa mais importante em
termos de retorno em investimentos feitos para o projeto;
Uma característica desejável ao documento de requisitos é
ter seus requisitos ordenados pelo usuário em função do seu
grau de prioridade;
• Há diferença entre o conceito de “Clientes”. Temos o
Cliente Contratante (contrata e investe no
desenvolvimento) e Cliente Usuário (usuário operacional do
software);
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Perguntas
15
Página do Professor Mauro: http://www.dai.ifma.edu.br/~mlcsilva
Modelagem de Sistemas – Prof. Mauro Lopes
17
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA DO MARANHÃO – IFMA
-
Próxima Aula...
• Processo de Desenvolvimento de Software (Parte 2).
16 Modelagem de Sistemas – Prof. Mauro Lopes