Sistemas de Informação 1

(Projeto de Software Orientado a Objeto)

Período: 2004.2

As Pessoas

A Disciplina

A Avaliação

Outros

Professor

Objetivos

Forma de avaliação

Datas Importantes

Monitor

Programa

Notas dos Alunos

Lista de Discussão

 

Plano de Aulas

Avaliação da disciplina

Recursos

 

Bibliografia

Projeto

 
 

Material da disciplina (html on-line)

Auto Avaliação

 
 

Material da disciplina (html zipado)

Comentários sobre os projetos

 
 

Material da disciplina (pdf)

Gabaritos

 
   

Gabarito do projeto

 

Professor: Jacques Philippe Sauvé

Horários das Aulas e de Atendimento a Alunos pelo Professor

Na realidade, podem aparecer na minha sala a qualquer momento.

Monitores: A determinar

Horário de atendimento: a determinar

Plano de Aulas

Aula - Dia

Assunto

1
01/02/2005

Anunciar URL da disciplina: http://jacques.dsc.ufcg.edu.br/cursos/2004.2/si1/index.htm
Pegar lista de alunos com e-mail
Falar da auto-avaliação
Pedir para não imprimir nas impressoras da Universidade
Avisar para todos olharem as datas importantes
Objetivos da disciplina
Programa da disciplina
Trabalhos e critérios de avaliação
Apresentação do projeto

Faremos uma aula de Test-Driven Development

2
3/2

1. Introdução

1.1. Análise e Projeto OO

3
15/2

1.2. O Processo de Desenvolvimento de Software
1.3. Artefatos

4
17/2

2. Conceitos Básicos de Padrões de Projeto (Revisão de conceitos de Projeto)

2.1 Padrões para atribuir responsabilidades: Expert
2.2 Padrões para atribuir responsabilidades: Creator

5
22/2

[Buffer de contingência para as aulas]

6
24/2

2.3 Padrões para atribuir responsabilidades: Baixo Acoplamento
2.4 Padrões para atribuir responsabilidades: Alta Coesão

7
1/3

2.5 Design Pattern básico: Interfaces e polimorfismo
2.6 Design Pattern básico: Herança versus composição

8
3/3

3. Padrões de Projeto Arquitetural

3.1 Projeto de uma Arquitetura de Software

9
9/3

3.2 Padrão Layers (Camadas)

10
11/3

[Buffer de contingência para as aulas]

11
15/3

3.3 Estruturas de Controle
3.4 Padrão Observer

12
17/3

3.5 Padrão Model-View-Controller (MVC)

13
22/3

3.6 Opções de Persistência
3.7 Finalmentes
3.8 Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

14
31/3

4. Padrões de Projeto Detalhado

4.1 Facetas da reusabilidade de software (opcional)
4.2 Elementos essenciais de um Design Pattern
4.3 Design Pattern: Factory Method

15
5/4

[Buffer de contingência para as aulas]

16
7/4

4.4 Design Pattern: Singleton
4.5 Design Pattern: Abstract Factory

17
12/4

4.6 Design Pattern: Iterator

18
14/4

4.7 Design Pattern: Composite

19
19/4

4.8 Design Pattern: Strategy
4.9 Design Pattern: Command

20
26/4

[Buffer de contingência para as aulas]

21
28/4

4.10 Design Pattern: Decorator
4.11 Design Pattern: Template Method

4.12 Comentários finais sobre Design Patterns

22
3/5

5. Software Baseado em Componentes

5.1 O que são componentes?

23
5/5

5.2 Aspectos técnicos do desenvolvimento baseado em componentes

24
10/5

5.3 Construção de componentes: JavaBeans

25
12/5

[Buffer de contingência para as aulas]

26
17/5

5.3 Construção de componentes: JavaBeans

27
19/5

6. Frameworks

6.1 O que é um framework?
6.2 Vantagens e desvantagens no uso de frameworks
6.3 Tipos de frameworks
6.4
Uma lista de frameworks

28
24/5

6.5 Detalhamento de um framework horizontal: JUNIT

29
31/5

6.7 Construção de frameworks: Um processo evolutivo

30
2/6

[Buffer de contingência para as aulas]

31
7/6

Prova Final

Avaliação

A avaliação será feita através de:

O curso é baseado em grande parte num projeto de desenvolvimento envolvendo os assuntos do curso. Poderá formar equipe com uma (e apenas uma) pessoa. O projeto é importante e você deverá trabalhar duro para completá-lo. É assim que vai aprender algo.

O projeto será avaliado através de 4 milestones distintos. Os detalhes do que deve ser entregue para o professor estão aqui. O projeto é obrigatório. Quem não fizer os 4 milestones do projeto não poderá passar na disciplina. Os pesos atribuídos aos vários eventos de avaliação são indicados abaixo. Perde-se 5% do valor da nota dada a um milestone do projeto para cada dia de atraso na entrega. Observe que o professor estará usando um programa que detecta similaridades entre projetos de alunos; qualquer trecho de código copiado constitui ofensa séria.

Evento de avaliação

Peso

Minitestes

60%

Milestone 1

10%

Milestone 2

10%

Milestone 3

10%

Milestone 4

10%

Datas Importantes

·         Aulas: terça-feira/10:00-13:00, quinta-feira/12:00-13:00, sala RE-08

·         Calendário da Universidade

Milestones entregues via e-mail para jacques@dsc.ufcg.edu.br, até a meia-noite do dia indicado abaixo.

Milestone 1

Domingo, 06/03/2005

Milestone 2

Domingo, 27/03/2005

Milestone 3

Domingo, 24/04/2005

Milestone 4

Domingo, 29/05/2005