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

31
Engenharia de Software Orientada a Objetos - OOSE Método de Jacobson

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

Page 1: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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

Page 2: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Alunos:

Amanda Lira GomesLucas Balbino de Melo Ferreira

Mycke Richard GuntijoRenato Gomes Borges Júnior

Page 3: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Sumário

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

○ Análise○ Construção○ Teste

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

Page 4: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 5: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 6: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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

Page 7: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Visão Geral

Page 8: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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;

Page 9: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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;

Page 10: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Processo de Funcionamento: Análise

● Artefatos gerados na fase de Análise.

Page 11: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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;

Page 12: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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;

Page 13: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Processo de Funcionamento:Construção

● Artefatos gerados na fase de Construção.

Page 14: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 15: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Processos de Funcionamento:Teste

● Artefatos gerados na fase de Teste.

Page 16: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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;

Page 17: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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;

Page 18: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 19: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 20: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Pricincipais Diagramas

● Diagramas de análise

Page 21: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 22: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 23: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Principais Diagramas

● Diagramas de sequência

○ Mostra as trocas de mensagens no decorrer do tempo:

Page 24: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Principais Diagramas

● Diagramas de colaboração

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

Page 25: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 26: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Principais Diagramas

● Diagramas de transição de estados

Page 27: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Principais Heurísticas

● Principais caracteristicas:

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

Page 28: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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.

Page 29: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

Estudo de Caso

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

Page 30: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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

Page 31: Engenharia de Software Orientada a Objetos - OOSE · Desenvolvimento da UML e do RUP (Processo Unificado Racional) com Grady Booch e James Rumbaugh Criador da ferramenta Objectory

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