Desenvolvimento de software orientado a objetos com UML (Linguagem de Modelagem Unificada)

1 - Objetivo

Capacitar o aluno a desenvolver soluções de análise, projeto e implementação de sistemas de Software através da UML - Linguagem de Modelagem Unificada, observando as boas práticas da Engenharia de software, ciclo de vida e gestão de projetos, gestão da configuração e gestão da qualidade.

2 - Ementa

Engenharia de software, Definição de Projetos; Identificação de um projeto; Ciclo de vida de um projeto de software; Fases de um projeto de software: Definição de requisitos, Análise, Projeto, Implementação, Testes, homologação; Processo unificado x UML; Gestão de Projetos de software e do Desenvolvimento de software: Gestão da Qualidade e da configuração de software, Principio de Métricas de software.
Histórico do desenvolvimento de software, A orientação a Objetos, a UML. Diagramas de Atividades, Diagrama de Casos de Uso, Diagramas de Colaboração, Diagrama de Seqüência, Diagrama de Classes, Diagramas de Estado, Diagramas de Componentes, Diagrama de Implantação

3 - Conteúdo Programático

Unidade 1 - Introdução

Sistemas de Software modernos, problemas do desenvolvimento de software, a Motivação para a engenharia de software, Bibliografia.

Unidade 2 - A Engenharia de Software

Engenharia de software, Definição de Projetos; Identificação de um projeto; Ciclo de vida de um projeto de software; Fases de um projeto de software: Definição de requisitos, Análise, Projeto, Implementação, Testes, homologação; Processo unificado x UML; Gestão de Projetos de software e do Desenvolvimento de software: Gestão da Qualidade e da Configuração de software, Principio de Métricas de software.

Unidade 3 - Visão do Negócio

Casos de Uso e Diagrama de Casos de Uso: Introdução aos casos de uso; Definição de casos de uso; Definição de atores; Notações; Identificação de casos de uso e atores a partir da definição de requisitos; Identificação das descrições de casos de uso; Modelo de descritivo de casos de uso. Introdução ao diagrama de casos de uso; Aplicação dos diagramas de casos de uso no ciclo de vida de desenvolvimento de um software; Interações envolvendo casos de uso e atores ; Notação; Construção do diagrama de casos de uso.

Diagrama de Atividades: Introdução ao diagrama de atividades; Aplicação do diagrama de atividades no ciclo de vida de desenvolvimento de software; Construção do diagrama de atividades; Acompanhamento do progresso do entendimento dos requisitos;

Unidade 4 - Visão da Análise

Diagrama de Colaborações: Introdução ao diagrama de colaboração ; Aplicação do diagrama de colaboração no ciclo de vida de desenvolvimento de um software; Notação; Construção de diagramas de colaboração.
Diagrama de Seqüência: Introdução ao diagrama de seqüência; Aplicação do diagrama de seqüência no ciclo de vida de desenvolvimento de um software; Notação; Construção de diagramas de seqüência; Construção do diagrama de seqüência de negócio; Construção do diagrama de seqüência de implementação.
Diagrama de Estados: Introdução aos diagramas de estados: Estados, Evento, Transição; Aplicação do diagrama de estados no ciclo de vida de desenvolvimento de um software; Notação; Estado; Subestado x Superestado, Subestado; Transição; Estado Inicial; Estado Final; Estado Escolha; Ponto de Junção; Separação (fork); Junção (join); Construção do diagrama de estados.

Unidade 5 - Projeto: Classes e Arquitetura

Teoria das Classes e diagramas de classes: Introdução a classes; Notação; Classe; Visibilidade: Vibilidade de classes,Visibilidade de atributos, Visibilidade de métodos; Identificação de classes a partir do diagrama de casos de uso. Introdução ao diagrama de classes; Aplicação do diagrama de classes no ciclo de vida de desenvolvimento de um software; Interações entre classes; Composição; Agregação; Herança; Dependência; Construção de diagramas de classes ; Abstração de classes e atributos; Construção do diagrama de classes de negócio; Construção do diagrama de classes de implementação;
Diagrama de Pacotes: Introdução aos diagramas de pacotes; Pacotes; Tipos de pacotes; Relacionamento de dependência; Visibilidade; Aplicação do diagrama de pacotes no ciclo de vida de desenvolvimento de um software; Notação; Pacote; Relacionamento de dependência; Generalização; Exportação; Importação; Visibilidade ; Construção do diagrama de pacotes

Unidade 6 - Projeto: Componentes e Implantação

Diagrama de componentes: Introdução ao diagrama de componentes; Componentes; Tipos de componentes; Interfaces; Relacionamentos; Aplicação do diagrama de componentes no ciclo de vida de desenvolvimento de um software; Notação; Componentes; Estereótipos; Interfaces; Relacionamentos; Construção do diagrama de componentes.
Diagrama de Implantação: Introdução ao diagrama de implantação; Nós; Relacionamentos; Aplicação do diagrama de implantação no Ciclo de vida de desenvolvimento de um software; Notação; Nós; Estereótipos; Relacionamentos; Construção do diagrama de implantação.

Unidade 7 - Tópico especial: Desenvolvimento com SGBDs

Introdução à banco de dados; Aplicação do Modelo de Entidade e Relacionamento no ciclo de vida de desenvolvimento de um Software, SGBD - sistemas gerenciadores de Bancos de dados. Implantação com SGBDs.

4 - Carga horária

Carga Horária: 40 horas / aula
Realização: 20 a 24 de março de 2006

5 - Instrutor

Dr. Nilson Sant'Anna
Msc. Moacyr Gonçalves Cereja Junior




© 2000-2007 Sesis Software LTDA - Todos os Direitos Reservados