Modelagem Orientada a Objetos

Documentos relacionados
15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos

Tópicos da Aula. Diretrizes Gerais. Trabalho Prático (TP) Pontuação do TP. Tema do Trabalho. Projeto de Software Diagrama de Classes

Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Componentes do Diagrama

Técnicas de Elicitação de Requisitos

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso.

Eng. de Requisitos: Atividades. Engenharia de Requisitos. Eng. de Requisitos: Processo. O Documento de Requisitos. Stakeholders

Eng. de Requisitos: Atividades. Engenharia de Requisitos. Eng. de Requisitos: Processo. O Documento de Requisitos. Stakeholders. Estudo de Viabilidade

A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. História da UML. O que é modelagem?

Atividades de Desenvolvimento. Desenvolvimento de Software. Especificação de Requisitos. Atividades de Desenvolvimento. Especificação de Requisitos

Reutilização de Software

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro

Modelagem Estática e Dinâmica: Estudo de Caso - Sistema de Caixa Automático

Diagrama de Casos de Uso

Diagrama de Sequência. Diagrama de Sequência. Atores. O que representam? Linha de Vida. Objetos

Especificação de Sistemas de Software e a UML

Processos de Software

Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software

Model Driven Development (MDD)

Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Componentes do Diagrama.

CBSE. Independência e Padronização. Características da CBSE. Fundamentos da CBSE. Middleware e Processo 22/05/2013

UML (Unified Modelling Language)

POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos

Estimativa de Esforço. Estimativas de Software. Subjetividade da Estimativa. Incerteza de Estimativa. Técnicas de Estimativas

Projeto orientado a objetos

Tópicos da Aula. Alguns Diagramas UML. Diagramas Principais. Diagramas de Interação: Sequência e Colaboração. Tipos de Diagramas de Interação

Bibliografia Principal. Apresentação da Disciplina. Site da Disciplina. Estagiário da Disciplina. Método de Avaliação. Prova Substitutiva

Técnicas para Reutilização de Software

PROJETO DE ARQUITETURA

Apresentação da Disciplina

Análise e Projeto Orientados a Objetos

Revisão Diagrama de Caso de Uso. Rodolfo Adamshuk Silva 30/08/2013

Reuso de Software Aula Maio 2012

ARCHITECTURAL DESIGN. Ian Sommerville, 8º edição Capítulo 11 Aula de Luiz Eduardo Guarino de Vasconcelos

Introdução a UML (Unified Modeling Language)

Técnicas de Reutilização. Reutilização em Programação Orientada a Objetos. Considere três classes... Reuso de Classes.

Curso de Sistemas de Informação. Karla Donato Fook DESU / DComp. Modelagem de Dados UML

Tópicos da Aula. Conceitos de programação orientada a objetos. Projeto orientado a objetos com UML

DCC / ICEx / UFMG. O Modelo CMMI. Eduardo Figueiredo.

UML Diagrama de Atividades Diagrama de Caso de Uso. ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas

Análise de Sistemas. Aula 5

Falha de Comunicação no Desenvolvimento de Software

Engenharia de Software 2012/3 Aula 5 Modelagem de Sistemas

Engenharia de Software. Herbert Rausch Fernandes

Processos de Software. O que é modelo de processo? Vantagens. Modelos de Processo Gerais. O que é um processo de software?

Notas de Aula 03: Introdução a Orientação a Objetos e a UML

RUP Unified Process. Profª Jocelma Rios

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks

Análise e projeto de sistemas

Análise de Sistemas 3º Bimestre (material 2)

Rational Unified Process (RUP)

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo

Apresentação da Disciplina

UML. Modelando um sistema

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA RATIONAL UNIFIED PROCESS - RUP

Aula 1: Apresentação. Revisão para Prova 1. Aula 2: Motivação. O que é software? Eng. de Software em Camadas. O que é Engenharia de Software?

Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Componentes do Diagrama

Apresentação da Disciplina

Engenharia de Software II

Introdução à Análise e Projeto de Sistemas

Engenharia de Software Aula 21. Revisão da Prova 2. Eduardo Figueiredo.

Use Cases e Fluxo de Eventos. Use Case e Ator. Objetivos. Algumas Definições. Algumas Definições

Desenvolvimento Dirigido por Modelos: Ferramentas

Tópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.

A modelagem de Negócio com UML

RUP RATIONAL UNIFIED PROCESS

UML 2.0 Método, Linguagem e Ferramenta. Prof. Cesar Augusto Tacla

Tópicos da Aula. O que é anunciado. Falha de Comunicação no Desenvolvimento de Software. Engenharia de Software: Conceitos Fundamentais

Análise e projeto de sistemas

01/03/2015. Bibliografia Principal. Apresentação da Disciplina. Site da Disciplina. Método de Avaliação. As datas podem mudar. Prova Substitutiva

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Visão Geral do RUP.

Introdução ao POO (Projeto Orientado a Objetos)

Modelagem de Sistemas. Análise de Requisitos. Modelagem

Prof. Esp. Fabiano Taguchi

Conceito de Caso de Uso, Diagramas e Documentação.

TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS. Aula 7. Agenda

Apresentação da Disciplina

INTRODUÇÃO À ENGENHARIA DE SOFTWARE. Prof.: Tiago Alves

Interações entre objetos

Aula 1.7 Introdução a APOO e UML

UML Unified Modeling Language Linguagem de Modelagem Unificada

ENGENHARIA DE SOFTWARE

Engenharia de Requisitos

Conceito de Caso de Uso, Diagramas e Documentação.

Como Modelar com UML 2

Análise e Projeto em SOA (Service Oriented Architecture)

Reengenharia, Refatoração e Bad Smell

Análise e Projeto de Software

Hélio Engholm Jr. Novatec

Processo de Desenvolvimento. Edjandir Corrêa Costa

Aula 7 - Análise de Requisitos: descrição de casos de uso. Análise de Sistemas Prof. Filipe Arantes Fernandes

Aula 13 Modelagem da Arquitetura

CONCEITOS BÁSICOS E MODELO DE PROJETO

Tópicos da Aula. Desenvolvimento Dirigido por Modelos (MDD) Reusar cada vez mais... Reusar cada vez mais... O que é modelagem? Reuso: Código x Modelos

Curso SISTEMAS DE INFORMAÇÃO Série 3 Disciplina Análise e Projeto Orientados a Objetos

Perguntas da Aula 2. Respostas da Pergunta 2. Respostas da Pergunta 1. Respostas da Pergunta 4. Respostas da Pergunta 3. Processos de Software

Análise e Projeto de Software Parte II. Marcos Dósea

Transcrição:

DCC / ICEx / UFMG Modelagem Orientada a Objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo

Atividades de Modelagem OO 1. Definir o contexto do sistema 2. Projetar a arquitetura 3. Identificar os objetos principais 4. Desenvolver os modelos de projeto 5. Especificar interfaces entre objetos

Paralelo e Iterativo As atividades não necessariamente são sequenciais Geralmente é feito de forma iterativa Define-se parte do contexto do sistema Projeta-se parte da arquitetura Identifica-se alguns objetos Modela-se estes objetos Define-se suas interfaces

1 Definir o Contexto do Sistema Objetivo: compreensão do software que está sendo desenvolvido e de seu ambiente externo Técnicas adotadas Diagramas de Casos de Uso Descrição de Cenários, etc. Ao definir o contexto, pode-se identificar alguns objetos do domínio

2 Projetar Arquitetura Primeiro passo do projeto de sistema O projeto arquitetural envolve Identificação dos componentes principais do sistema (sub-sistemas) Definição das interfaces de comunicação entre os componentes Regra geral: modelar de 5 a 9 subsistemas

3 Identificar os Objetos Principais Identificação de objeto é um processo iterativo É improvável que você faça certo na primeira vez Na verdade, identifica-se as classes de objetos Não há fórmula mágica para a identificação de objetos

Uma Abordagem para Identificação Análise gramatical baseada em Descrição em linguagem natural do sistema Descrição dos cenários de uso Como proceder Substantivos: objetos ou atributos Verbos: métodos Refinar e definir novos objetos usando o conhecimento do domínio do sistema

Diagrama de Casos de Uso

Exemplo de Cenário Nome do Cenário: Sacar Ator: Cliente Pré-condição: Conta e senha validadas Fluxo normal 1. Entrar com valor do saque 2. Confirmar dados e operação 3. Debitar valor da conta do cliente Fluxos alternativo: Saldo insuficiente 3.1 Apresentar aviso ao cliente Pós-condição: Valor sacado é debitado do saldo do cliente

Exemplo de Cenário Nome do Cenário: Sacar Ator: Cliente Pré-condição: Conta e senha validadas Fluxo normal 1. Entrar com valor do saque 2. Confirmar dados e operação 3. Debitar valor da conta do cliente Fluxos alternativo: Saldo insuficiente 3.1 Apresentar aviso ao cliente Potenciais objetos do sistema Pós-condição: Valor sacado é debitado do saldo do cliente

Exemplo de Cenário Nome do Cenário: Sacar Ator: Cliente Pré-condição: Conta e senha validadas Fluxo normal 1. Entrar com valor do saque 2. Confirmar dados e operação 3. Debitar valor da conta do cliente Fluxos alternativo: Saldo insuficiente 3.1 Apresentar aviso ao cliente Potenciais atributos dos objetos Pós-condição: Valor sacado é debitado do saldo do cliente

Exemplo de Cenário Nome do Cenário: Sacar Ator: Cliente Pré-condição: Conta e senha validadas Fluxo normal 1. Entrar com valor do saque 2. Confirmar dados e operação 3. Debitar valor da conta do cliente Fluxos alternativo: Saldo insuficiente 3.1 Apresentar aviso ao cliente Potenciais métodos dos objetos Pós-condição: Valor sacado é debitado do saldo do cliente

4 Modelos de Projeto Fazem a ligação entre requisitos (problema) e implementação (solução) Mostram os objetos ou as classes de objetos e os relacionamentos entre essas entidades Devem incluir detalhes suficientes para facilitar a programação

Várias Visões Para evitar modelos complexos, eles são quebrados em diversas visões Modelos estáticos descrevem a estrutura estática das classes Modelos dinâmicos descrevem as interações dinâmicas entre os objetos O modelo estático mais utilizado é o Diagrama de Classes

5 Especificar Interfaces entre Objetos Especificação de interfaces permite que objetos e componentes sejam projetados em paralelo Objetos podem ter várias interfaces Cada interface é um ponto de vista dos métodos fornecidos O Diagramas de Classes pode ser usado para especificação de interfaces (semelhante a classes)

Bibliografia Ian Sommerville. Engenharia de Software, 9a. Edição. 2011. Cap. 7: Seção 7.1