Upload
hoangtu
View
217
Download
0
Embed Size (px)
Citation preview
Aula 1 - Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas
Análise de Sistemas
Prof. Filipe Arantes [email protected]
• Nome da disciplina: Análise de Sistemas
• Natureza (optativa ou obrigatória): obrigatória
• Número de aulas: 100
2
Objetivo Geral
• Capacitar o aluno a desenvolver habilidades para a solução de problemas de software e projeto de sistemas utilizando a metodologia orientada a objeto por meio da construção de modelos computacionais e de sua implementação.
3
Objetivos Específicos
• Contextualizar sobre processos de desenvolvimento de software.
• Apresentar conceitos de análise e projeto de sistemas
• Apresentar conceitos de análise de requisitos
• Realizar atividades práticas de análise, projeto e modelagem conceitual de software utilizando UML
4
Bibliografia básica
• SOMMERVILLE. Engenharia de Software, São Paulo: Addison-Wesley, 9 ed., 2011. ISBN-10: 8579361087 ISBN-13: 9788579361081
• FOWLER, M. UML essencial: um breve guia para a linguagem-padrão de modelagem de objetos. 3.ed., Porto Alegre: Bookman, 2006. ISBN: 8536304545
• WAZLAWICK, R. S. Análise e Design Orientados a Objetos para Sistemas de Informação. 3 ed. Rio de Janeiro, Elsevier, 2014. ISBN: 9788535279849.
• BEZERRA, E., 2015. Princípios de Análise e Projeto de Sistema com UML (Vol. 3). Elsevier Brasil.
5
Cronograma definitivo
6
Mês Dia Aula Ementa
Julho25
Aula 1Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas
31 Aula 2 Modelos de Processo - cascata, iterativo e incremental e ágil
Agosto
1 Aula 3 Modelos de Processo - cascata, iterativo e incremental e ágil7 Aula 4 Modelos de Processo - cascata, iterativo e incremental e ágil8 Aula 5 Introdução à Análise de Requisitos e seus tipos de requisitos
14 Aula 6 Análise de Requisitos: especificação de requisitos15 Aula 7 Análise de Requisitos: descrição de casos de uso
21 Aula 8 Análise de Requisitos: descrição de casos de uso22 Aula 9 Revisão
28 Aula 10 AV1 - 2 pts29 Aula 11 O paradigma da orientação a objetos, Introdução à UML
Setembro
4 Aula 12 Ferramentas de Modelagem e Modelagem de casos de uso5 Aula 13 Modelagem de casos de uso
11 Aula 14 Modelagem de casos de uso
12 Aula 15 Projeto de Arquitetura18 Aula 16 Modelagem de classes de análise
19 Aula 17 Modelagem de classes de análise25 Aula 18 Modelagem de classes de análise26 Aula 19 Revisão
Outubro 2 Aula 20 AV2 - 2 pts
Cronograma definitivo
7
Mês Dia Aula Ementa
Outubro
3 Aula 21 Modelagem de classes de projeto9 Aula 22 Modelagem de classes de projeto
10 Aula 23 Modelagem de classes de projeto16 Aula 24 Modelagem de classes de projeto
17 Aula 25 Diagramas UML: componentes, sequência, atividades e máquina de estados
23 Aula 26 Diagramas UML: componentes, sequência, atividades e máquina de estados
24 Aula 27 Diagramas UML: componentes, sequência, atividades e máquina de estados
30 Aula 28 Diagramas UML: componentes, sequência, atividades e máquina de estados31 Aula 29 Revisão
Novembro
6 Aula 30 AV3 - 2 pts7 Aula 31 Projeto Interdisciplinar
13 Aula 32 Projeto Interdisciplinar14 Aula 33 Projeto Interdisciplinar20 Aula 34 Projeto Interdisciplinar21 Aula 35 Projeto Interdisciplinar27 Aula 36 Projeto Interdisciplinar28 Aula 37 Projeto Interdisciplinar
Dezembro
4 Aula 38 Projeto Interdisciplinar5 Aula 39 Projeto Interdisciplinar
11 Aula 40 Projeto Interdisciplinar12 Aula 41 Entrega do Projeto Interdisciplinar - 4 pts
Avaliações
1. 28/08/17 – AV1 – 2 pts
2. 02/10/17 – AV2 – 2 pts
3. 06/11/17 – AV3 – 2 pts
4. 12/12/17 – Projeto Interdisciplinar – 4 pts
8
Processos de desenvolvimento de software e suas atividades básicas
Outline
• Definição de processos
• Definição de processos de desenvolvimento de software
• Atividades básicas do processo de desenvolvimento de software
10
Processo
• “Processo é uma ordenação específica de atividades de trabalho através do tempo e do espaço, com um início, fim e um conjunto claramente definido de entradas e saídas”(DAVENPORT, 1993)
• “Processo nada mais é que uma série de ações, ou passos, que são realizados para se alcançar determinados objetivos”Willian Edwards Deming
11
Processo de Software
• “Um processo de software pode ser definido como um conjunto coerente de políticas, estruturas organizacionais, tecnologias, procedimentos e artefatos necessários para conceber, desenvolver, implantar e manter um produto de software.”(FUGGETTA, 2000)
• “Um processo de software é um conjunto de atividades relacionadas que levam à produção de um produto de software.”(PRESSMAN, 2011)
12
Alguns objetivos
• Definir quais atividades a serem executadas ao longo do projeto;
• Quando, como e por quem tais atividades serão executadas;
• Prover pontos de controle para verificar o andamento do desenvolvimento;
• Padronizar a forma de desenvolver software em uma organização;
13
No Silver Bullet
• Há vários processos de desenvolvimento de software propostos, porém, não existe o processo que melhor se aplica a todas as situações de desenvolvimento.
• Não existe uma bala de prata!
• Alguns atividades são triviais durante o desenvolvimento de software.
14
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
15
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
16
1. Levantamento de requisitos
• Também conhecida como Elicitação de Requisitos, 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;
• Um requisito é uma condição ou capacidade que deve ser alcançada ou possuída por um sistema ou componente deste para satisfazer um contrato, padrão, especificação ou outros documentos formalmente impostos.
• Os requisitos de um sistema são identificados a partir de um domínio.
• Domínio é a área de conhecimento ou de atividade específica caracterizada por um conjunto de conceitos e de terminologia compreendidos por especialista nessa área.
• Domínio também é conhecido como domínio do problema ou domínio do negócio.
• O produto final do levantamento é o Documento de Requisitos.
17
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
18
2. Análise
• Também conhecida como Análise de Requisitos;
• A fase de análise de requisitos corresponde na “quebra” de um sistema em componentes e no estudo de como tais componentes interagem com o objetivo de entender como esse sistema funciona;
• A partir de um estudo detalhado dos requisitos pelos analistas, são construídos modelos para representar o sistema que será construído.
• Assim como no levantamento, a análise de requisitos não considera o ambiente tecnológico a ser utilizado.
• “é necessário saber o que o sistema deve fazer, para, então, definir como fazê-lo”
19
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
20
3. Projeto (design)
• Determina-se como o sistema funcionará para atender aos requisitos, de acordo com os recursos tecnológicos existentes;
• É produzido uma descrição computacional do que o software deve fazer e deve ser coerente com a descrição feita na análise;
• Aos modelos construídos na fase de análise são adicionadas as denominadas “restrições de tecnologia”.
21
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
22
4. Implementação
• Nesta fase o sistema é codificado, ou seja, ocorre a tradução da descrição computacional obtida na fase de projeto em código executável mediante o uso de uma ou mais linguagens de programação.
23
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
24
5. Testes
• Verificar se o sistema foi desenvolvido de acordo com os requisitos elicitados e se atende ao usuário.
25
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
26
6. Implantação
• O sistema é empacotado, distribuído e instalado no ambiente do usuário;
• Os manuais do sistema são escritos, os arquivos são carregados, os dados são importados e os usuários são treinados para utilizar o sistema corretamente;
27
Principais atividades
1. Levantamento de requisitos;
2. Análise;
3. Projeto (design);
4. Implementação;
5. Testes;
6. Implantação;
7. Evolução.
28
7. Evolução
• O sistema construído deve evoluir para atender às necessidades de mudança dos clientes.
29
Referências
• BEZERRA, E., 2015. Princípios de Análise e Projeto de Sistema com UML (Vol. 3). Elsevier Brasil.
• FOWLER, M. UML essencial: um breve guia para a linguagem-padrão de modelagem de objetos. 3.ed., Porto Alegre: Bookman, 2006. ISBN: 8536304545
• PRESSMAN, R. S. Engenharia de Software, Rio de Janeiro: McGraw Hill, 7 ed., 2011. ISBN-10: 8563308335 ISBN-13: 978-8563308337
• WAZLAWICK, R. S. Análise e Design Orientados a Objetos para Sistemas de Informação. 3 ed. Rio de Janeiro, Elsevier, 2014. ISBN: 9788535279849.
30