Engenharia de Software A

2011/2


Material de Aula - Cronograma

Aula - Data
Quartas

Conteúdo Previsto

Alterações no Cronograma
Observações - Trabalhos Solicitados

 03 agosto

 Apresentação da disciplina - Bibliografia - Filme "Avião"
 Introdução a Engenharia de Software

 

 10 agosto

 Introdução a Engenharia de Software

 17 agosto

 Processo de Desenvolvimento de Software - Tradicionais

 

 24 agosto

 Processo de Desenvolvimento de Software - Ágeis - XP e outros

 Processo de Desenvolvimento de Software - Tradicionais

 31 agosto

 Projeto de Software - parte 1
 Projeto de Software - parte 2
 Projeto de Software - parte 3

 Processo de Desenvolvimento de Software - Tradicionais

 14 setembro

 Projeto de Software - Padrões de Projeto (Design Patterns)

 Projeto de Software - parte 1
 Projeto de Software - parte 2
 Projeto de Software - parte 3

 + Definição do Seminário 1

 21 setembro

 Projeto de Software - Arquiteturas de Software - (Frameworks)

 

 28 setembro

 Seminário 1

  Artigo 1 - Artigo 2 - Artigo 3 - Artigo 4 - Artigo 5 - Artigo 6 - Artigo 7 - Artigo 8 

 05 outubro

 Avaliação 1 (primeira prova)

 

 19 outubro

 Gerência de Requisitos

 

 26 outubro

 Gerência de Requisitos

 Não haverá aula (devido ao Seminário de TCC) / Utilizem a aula para preparar o Seminário 2
 Seminário 2 = mesmos grupos do Seminário 1!

Assunto = Estado da arte em Teste de Software / Cada grupo deve pesquisar (em profundidade) um   tópico novo/atual (menor que 3 anos) em teste de software e apresentar em aula, usando um PPT.

 

Não serão aceitos trabalhos iguais (sobre mesmo assunto) / vocês devem gerenciar a escolha do assunto para não haver repetições.

 09 novembro

 Teste de Software 

 

 16 novembro

 Teste de Software 

 Evolução de Software

 23 novembro

 Evolução de Software

Aula para preparação Seminário 2 // Revisão

 30 novembro

 Avaliação 2 (segunda prova) 

 

 07 dezembro

 Seminário 2

 Apresentações Seminário A PARTIR 20h  IMPRETERIVELMENTE - 15 MINUTOS POR GRUPO MAX.

 14 dezembro

 Exame

 


Assuntos do Seminário 2 ... pré-aprovados

 

 Número

Componentes

Assunto

1

 Graziela Cerentini, Luiz Klich, Luis Presser e Tiago Stohlirck

 Crowdtesting

2

 André, Fernando, Leonardo Teixeira

 Teste em Redes Neurais

3

 Lucas Marcondes, Jonathan Santos, Moisés Jacobsen

 Teste incremental ágil  / Revista Engenharia de Software edição 34

 4

 Evandro Souza,Bruno Scota, Diego F. Pedro Santos

 Agile Testing.

 5

 Ranieli Fochezatto, Marcelo Rijo, Diogo Silva

 Testes em nuvem

 6

 Rafael Fiss, Filipe Salazar, Yuri

 Usability testing 

 7  Filipe Cifali Stangler, Vitor Leonardi, Felipe Dias Blazckiewicz
 Renato Nunes
 Testing Improvement Models e Testing Maturity Model
 8    
     
     





Ementa

 Introdução a software e Engenharia de Software; Princípios da Engenharia de Software; Qualidades esperadas em Engenharia de Software; Ciclo de vida em desenvolvimento de software; Processos de desenvolvimento de Software – tradicionais e ágeis; Projeto de Software – Padrões de projeto (design patterns) e Arquiteturas (frameworks); Gerência de requisitos; Requisitos funcionais e não-funcionais; Verificação e Validação de Software; Teste de Software; Evolução em Software; Sistemas Legados, Manutenção e Re-engenharia; Engenharia de software baseada em Objetos, Aspectos, Agentes, Componentes, Serviços e Modelos.


Objetivos

 Capacitar o aluno a compreender e implementar a Engenharia de Software através de seus conceitos relacionados ao processo de desenvolvimento de software.

 

Programa

Introdução a Engenharia de Software
- Princípios da Engenharia de Software
- Qualidades Esperadas de um software
Processo de Desenvolvimento de Software
- Processos tradicionais
- Processos Ágeis
Projeto de Desenvolvimento de Software
- Projeto de software
- Gerenciamento de riscos
- Projeto de arquitetura
- Padrões de projeto – Design patterns
- Arquiteturas de software - Frameworks
Gerência de Requisitos
- Requisitos funcionais
- Requisitos não funcionais
Teste de Software – verificação e validação
Evolução em software
- Reengenharia de Software
- Manutenção de Software
- Sistemas legados
Engenharia de software baseada em objetos, aspectos, agentes, componentes, serviços e modelos
Estudos de Caso e Estado da Arte em Engenharia de Software


Estratégias de Ensino

Aulas teóricas – e dependendo do conteúdo, práticas -  através de exposição dialogada utilizando recursos como quadro-negro, transparências e micro/datashow. Realização de trabalhos em grupo de aplicação dos conceitos apresentados. Pesquisas bibliográficas. Utilização de laboratório de informática.


Avaliação

A avaliação semestral é integrada pela nota A1, composta de:

Prova parcial 1 – avaliação escrita individual – 30%
Trabalhos parciais 1 / Seminário 1 – individuais/grupo – 20%
Prova parcial 2 – avaliação escrita individual – 30%
Trabalhos parciais 2 / Seminário 2 – individuais/grupo – 20%

O aluno que obtiver nota A1 igual ou superior a 7,0 (sete) está aprovado. Caso contrário, e desde que tenha freqüência exigida de 75% e nota A1 superior ou igual a 4,0 (quatro), submete-se a exame (A2). A média final então é calculada por (A1+A2)/2 e a aprovação dar-se-á caso a média final seja igual ou superior a 6,0 (seis)


Bibliografia

Básica

SOMMERVILLE, I. Engenharia de Software (8. edição). Editora Pearson/Prentice Hall, 2007.
PRESSMAN, R. S. Engenharia de Software. São Paulo: MCGraw-Hill, 2006.

Complementar

GUSTAFSON, D. Engenharia de Software. Porto Alegre: Bookman, 2003.
PFLEEGER, S. Engenharia de Software: Teoria e Prática. Prentice Hall, 2004.
PETERS, J.F.; PEDYCZ, W. Engenharia de Software. Rio de Janeiro: Campus, 2001.