Programa

 

1.  Introdução aos processos de análise e modelação de sistemas

1.1 Conceito de análise e de sistema de informação

1.2 Enquadramento da actividade de análise de sistemas no processo de informatização

Ciclo de vida do software

Caracterização breve das fases do ciclo de vida do software

1.3 Princípios no desenvolvimento de software

1.4 Caracterização e utilidade da actividade de análise

Actividades englobadas

Resultados obtidos

Intervenientes e dificuldades

Objectivos, motivações e importância

1.5 Procedimentos e instrumentos da análise

Metodologias: Aplicação de estratégias para lidar com complexidade e para garantir uma condução sistemática do processo de informatização; Limitações.

Modelos: tipos de modelos, utilidade dos modelos e modelos de sistemas. Técnicas de modelação e sua combinação.

 

2.    Técnicas de modelação de dados

2.1  Conceito e finalidade do modelo de dados

2.2   Níveis de modelação de dados

Modelo conceptual, lógico e físico

Vantagens da individualização de níveis de modelos

2.3  Modelação conceptual de dados

2.3.1  Modelo Entidade-Relacionamento

Conceitos básicos do modelo Entidade-Relacionamento: Entidade, relacionamento, atributo, Diagrama de Entidades-Relacionamentos

Grau de um relacionamento

Condições de participação das entidades num relacionamento: Conceito de participação obrigatória e diagrama de ocorrências

Número de entidades que participam num relacionamento: relacionamento de ordem maior do que dois

Relacionamentos recursivos

Relacionamentos com atributos

Entidades fortes e fracas

Tipos de atributos: simples, composto, derivado e multivalor

Descrição de entidades

 

2.3.2   Extensões ao modelo Entidade-Relacionamento

Justificação da extensão do modelo E-R

Uso e representação de papéis

Hierarquias de especialização/generalização, Superclasses e Subclasses

Tipos de especialização/generalização

Níveis de especialização

Abrangência das subclasses

Malha de especialização/generalização e subclasses partilhadas

Categorias e herança selectiva

 

2.4                Modelação lógica de dados: Modelo Relacional

Origens do modelo relacional

Representação de dados e relacionamentos no modelo relacional

Equivalência da notação na descrição de conceitos

Chaves: primária, candidatas e estrangeira

Integridade: de domínio, de entidade e referencial

Agrupamento de atributos e problemas de redundância, valores nulos, inconsistência e anomalias na manipulação de dados

 

2.5     Dependências entre atributos e normalização

2.5.1 Dependências funcionais e normalização

Dependência funcional

Conceito de normalização

Primeira forma normal

Segunda forma normal

Terceira forma normal

Forma normal de Boyce Codd

Diagramas de dependências funcionais

Estratégia de decomposição através da análise de dependências funcionais

Regras de inferência de dependências funcionais

Cobertura mínima

Propriedades da decomposição: preservação de atributos, preservação de dependências funcionais e junção sem perdas ou junção não aditiva

Algoritmo de verificação da propriedade de junção não aditiva

 

2.5.2 Dependências multivalor e de junção e formas normais avançadas

Dependências multivalor e quarta forma normal

Dependências de junção e quinta forma normal

2.6  Concepção do modelo lógico de dados relacional

2.6.1 Estratégias de derivação do modelo de dados relacional

2.6.2 Regras de derivação do modelo de dados relacional a partir do modelo E-R

Tratamento de relacionamentos binários de grau 1:1, 1:N e N:M, com participações obrigatórias e opcionais

Relacionamentos binários múltiplos

Tratamento de relacionamentos de diversas ordens

Tratamento de atributos multivalor

Tipos de entidades: independente, de agregação, de intersecção, fraca e subordinada

Tratamento de entidades fracas e entidades subordinadas

Tratamento de hierarquias de especialização/generalização

Tratamento de malha de especialização/generalização

Tratamento de categorias

3.     3. Técnicas de modelação funcional e de comportamento e de descrição de componentes

3.1   Diagramas de fluxo de dados

Terminadores ou entidades externas

Fluxos de dados

Depósitos de dados

Processos: primitivos e não primitivos

Representação das várias componentes dos DFD´s

Hierarquia dos vários níveis de detalhe de um DFD

Diagrama de contexto

Principais características de um DFD

Regras e sugestões de estruturação dos DFD´s

Extensões para modelação de sistemas em tempo real: Fluxos e processos de controlo


 

3.2                Diagramas de Transição de Estados

Funcionalidade dos DTE

Estados do sistema, transições de estado, condições de transição e acções

Notação utilizada na elaboração de um DTE

Tipos de estados: inicial, final, outros estados de espera e estados transitórios

Propriedades das condições de transição

Regras associadas a transições de estado

Estratégia de elaboração de um DTE

3.3                Dicionário de dados

Noção e utilidade

Notação utilizada na descrição de elementos de dados

3.4     Especificação de processos

3.4.1  Técnicas de especificação de processos primitivos

Linguagem estruturada

Pré e Pós condições

Tabelas e árvores de decisão

Fluxogramas

Diagramas de Nassi-Shneiderman

Comparação entre as várias técnicas de especificação

3.4.2  Especificação de processos de controlo

4. Análise estruturada

A análise estruturada

Modelos da análise estruturada

Ferramentas de modelação da análise estruturada

Aspectos do sistema focados por cada ferramenta de modelação

4.1 Modelo essencial

4.1.1 Estratégia de elaboração do modelo ambiental

Declaração de propósito do sistema

Diagrama de contexto

Tipos de eventos

Lista de eventos

Dicionário de dados inicial

Diagrama de entidades-relacionamentos dos depósitos de dados externos

4.1.2 Estratégia de elaboração do modelo comportamental

Abordagens top-down (clássica) e suas desvantagens

Abordagem Middle-out

Estratégia de construção de modelo comportamental preliminar

Estratégia de finalização do modelo comportamental

Critérios utilizados no agrupamento de processos

Critérios utilizados na decomposição de processos não primitivos

  Consistência entre as várias ferramentas de modelação

 

Voltar