Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo...

Post on 08-Nov-2018

236 views 0 download

Transcript of Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo...

Engenharia de Software Orientada a Objetos - OOSEMétodo de Jacobson

Alunos:

Amanda Lira GomesLucas Balbino de Melo Ferreira

Mycke Richard GuntijoRenato Gomes Borges Júnior

Sumário

● Introdução● Visão Geral● Processos de funcionamento

○ Análise○ Construção○ Teste

● Principais diagramas● Principais heurísticas● Estudo de caso

Introdução

● Método desenvolvido por Ivar Jacobson em 1992.

● Utiliza casos de uso para descrever o sistema a ser desenvolvido.

● Conhecido como uma abordagem orientada a cenários.

● A primeira a utilizar o conceito de Casos de Uso para definir os paradigmas do projeto de Software.

Ivar Jacobson

● Nasceu em 1939.● PhD no Royal Institute of

Technology de Estocolmo,em 1985.

● Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh

● Criador da ferramenta Objectory da Objectory AB.

Visão Geral

● A metodologia OOSE divide o desenvolvimento em 3 processos:○ Análise

■ Análise de Requisitos■ Análise de Robustez

○ Construção■ Desenho■ Implementação

○ Teste

Visão Geral

Processo de Funcionamento: Análise

● Análise de Requisitos

○ Base: requisitos do cliente e/ou usuário final;○ Conteúdo: modelos de Use Case e dos objetos do

domínio;○ Descrição do sistema como um número de Use

Cases que são executados pelos atores;

Processo de Funcionamento: Análise

● Análise de Robustez

○ Feita após a análise de requisitos;○ É criado um modelo Conceitual sobre a

configuração do sistema;○ Objetivo: encontrar a robustez e a estrutura

necessárias que servirão como base para a construção;

Processo de Funcionamento: Análise

● Artefatos gerados na fase de Análise.

Processo de Funcionamento:Construção

● Desenho

○ Objetivo: definir interfaces, semântica das operações e arquitetura do sistema;

○ É necessário descrever a comunição dos packages e objects;

○ Deve ser feito um diagrama de interação para cada caso de uso;

Processo de Funcionamento:Construção

● Implementação

○ Deve ocorrer quando houver a estabilização da definição da interface dos objetos;

○ Cada objeto corresponde a exatamente um classe que deve ser implementada;

○ Desafio: criar classes consistentes em pouco tempo e mais genéricas possível;

Processo de Funcionamento:Construção

● Artefatos gerados na fase de Construção.

Processos de Funcionamento:Teste

● Teste

○ Objetivo: verificar a corretude do sistema construído até aquele ponto;

○ Atividades de teste são executadas no processo de desenvolvimento;

○ Os testes podem ser feitos bem cedo no processo, juntos com a identificação e especificação dos Use Cases.

Processos de Funcionamento:Teste

● Artefatos gerados na fase de Teste.

Principais Diagramas

● Diagramas de caso de uso.● Diagramas de análise;● Diagramas de interação:

○ diagramas de sequência;○ diagramas de colaboração.

● Diagramas de transição de estado;

Principais Diagramas

● Diagramas de caso de uso

○ Descreve um cenário que mostra as funcionalidades do sistema do ponto de vista do usuário;

○ Facilitam a comunicação entre o analista e o cliente;○ Possibilitam o cliente ter uma visão geral das

principais funcionalidades do sistema;○ Produzidos no modelo de requisitos;

Principais Diagramas

● Diagramas de caso de uso

○ São compostos por:■ atores: representam um usuário do sistema,

podendo ser humano ou outro sistema computacional;

■ casos de uso: representam uma funcionalidade do sistema;

■ relacionamento entre atores e casos de uso.

Principais Diagramas

● Diagramas de análise

○ Também conhecidos como diagramas de classes de análise;

○ Identificam os conceitos do domínio do problema;○ Transforma tais conceitos em classes de análise;○ As classes de análise descrevem abstrações no

domínio do problema do mundo real.

Pricincipais Diagramas

● Diagramas de análise

Principais Diagramas

● Diagramas de interação

○ Cada caso de uso recebe um diagrama de interação;

○ Descreve a forma como é realizada a comunicação entre os objetos;

○ Define a forma das mensagens trocadas entre os objetos.

Principais Diagramas

● Diagramas de interação

○ Utilizados no modelo de desenho, durante o processo de construção;

○ Tipos:■ diagramas de sequência;■ diagramas de colaboração.

Principais Diagramas

● Diagramas de sequência

○ Mostra as trocas de mensagens no decorrer do tempo:

Principais Diagramas

● Diagramas de colaboração

○ Semelhante aos diagramas de sequência, porém o tempo é representado por números:

Principais Diagramas

● Diagramas de transição de estados

○ Descrevem quais mensagens os objetos podem receber e o que acontece quando eles as recebem;

○ São utilizados após a descrição dos diagramas de interação.

Principais Diagramas

● Diagramas de transição de estados

Principais Heurísticas

● Principais caracteristicas:

○ UML como linguagem de modelagem;○ Direcionado por casos de uso;○ Centrado na arquitetura;○ Iterativo e incremental.

Principais Heurísticas

● Tais características refletem as seguintes etapas:

○ Concepção: realiza estudos de viabilidade, análise

de riscos e elicitação dos requisitos;○ Elaboração: determina a arquitetura, os principais

componentes e protótipos iniciais.○ Construção: completa o desenvolvimento com base

na arquitetura inicial.

Estudo de Caso

● O estudo de caso apresentado é um Sistema para Controle de Bibliotecas.

Referências[1] YAMAGUTI, Silvio Yochio. Orientação a Objetos no Desenvolvimento de Sistemas: Conceitos e Características. Engenharia de Sistemas PósGraduação Lato Sensu da Escola Superior Aberta do Brasil - ESAB. www.esab.edu.br/arquivos/monografias/monografia_9850_v1.pdf [2] GNHOATO, André Ricardo; JUNIOR, Antônio Carlos Gimenez; KAZUOMATSUMOTO, Henrique. Linguagem de Modelagem Orientada a Objetos. Histórico e Aplicabilidade da UML(Unified Modeling Language). Instituto de Informática, Universidade Tecnológica Federal do Paraná.http://pt.scribd.com/andregnhoato/d/33369212-Linguagem-de-Modelagem-Orientada-a-Objetos-Historico-e-Aplicabilidade-da-UML-Unified-Modeling-Language [3] SAMPAIO, Marcus Costa; NETO, Eloi Rocha. Material sobre UML. Universidade Federal de Campina Grande. http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/uml/diagramas/interacao/interacao.htm [4] Diagrama de Transição de Estados. http://pt.wikipedia.org/wiki/Diagrama_de_transi%C3%A7%C3%A3o_de_estados

Referências[5] CARVALHO, Ariadne. Modelagem Estática. Engenharia de Software, UNICAMP. http://www.ic.unicamp.br/~ariadne/mc436/1s2012/cap03.pdf [6] BORGES, Gilene do Espírito Santo; NASCIMENTO, Maria Elenita Menezes. Uma avaliação de Métodos Orientados a Objetos e Modelos de Processo. Universidade de Brasilia. http://pt.scribd.com/doc/82863321/52/Metodo-OOSE [7] BRETERNITZ, Vivaldo José. Uma introdução ao software baseado em objetos. http://br.monografias.com/trabalhos/uma/uma.shtml [8] Carlos; Jardel; Ricardo; Sandro. Modelo OOSE. Faculdade de Informática de Taquara. http://fit.faccat.br/~franzen/analise2/oose/ [9] ASTIAZARA, Mauricio Volkweis; SOUZA, Marcelo Waihrich. Objectory. Universidade Luterana do Brasil. http://pt.scribd.com/doc/31791340/Objectory