análise orientada a objetos

50
Análise Orientada a Objetos Prof. Eliseu Castelo Branco Jr.,PMP,MSc. [email protected]

Upload: jair-alarcon

Post on 06-Sep-2015

30 views

Category:

Documents


1 download

DESCRIPTION

Apresentação que ensina como fazer análise orientada a objetos

TRANSCRIPT

Anlise e Projeto de Sistemas

Anlise Orientada a ObjetosProf. Eliseu Castelo Branco Jr.,PMP,[email protected]

1Conceitos de Orientao a ObjetosViso Geral da UMLDiagrama de Caso de UsoDiagrama de ClassesDiagrama de ObjetosDiagramas de InteraoDiagrama de EstadoDiagrama de AtividadesDiagramas de ImplementaoEmenta da Disciplina2Cronograma de AulasFEVEREIROMAROABRILMAIOJUNHO2264199AV1 - 13 11823162018AV2-152327252230AV3 - 2935445TOTAL21FREQ MIN173Provas sobre contedo terico da disciplina (Av1, Av2, Av3)Trabalhos de pesquisa publicados na InternetDocumentos de Anlise e Projeto de software entreguesExerccios realizados em sala de aulaOBS: mnimo de 75% de presena em sala de aula necessrio para aprovao na disciplina.Avaliaes4Sistemas de software so complexos.O uso de modelos auxilia na compreenso de conceitos complexos.

Introduo

5O desenvolvimento de um sistema envolve grande quantidade de atividades e pessoasErros so inevitveis e se identificados nos modelos sua correo mais fcil e barata.Introduo

6O uso de modelos reduz o custo do desenvolvimento de sistemas.O modelo permite prever o comportamento do sistema no futuro.Introduo

7A modelagem de sistemas de software consiste na utilizao de notaes grficas e textuais com o objetivo de construir modelos que representam as partes essenciais de um sistema, considerando-se diversas perspectivas diferentes e complementares.O que modelagem de software?8Paradigma a forma de abordar um problemaPrincpios:Qualquer coisa um objetoObjetos realizam tarefas atravs da requisio de servios a outros objetosCada objeto pertence a uma classeA classe um repositrio para comportamento associado ao objetoClasses so organizadas em hierarquiasParadigma da Orientao a Objetos9O paradigma da orientao a objetos visualiza um sistema de software como uma coleo de agentes interconectados chamados OBJETOS. Cada objeto realiza tarefas especficas. atravs da interao entre objetos que uma tarefa computacional realizada.Paradigma da Orientao a Objetos10Tipos de Sistemas

11

O Sistema contem subsistemas12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27Subsistemas de um Sistema de Informao

28Mdulos do Sistema (subsistemas)

29Classe Movimentao FinanceiraClasse BancosClasse Rendas Diversas Classe Contas a PagarClasse Receitas DiversasSubsistema Contas a Pagar

30Classe Banco

AtributosMtodos31O que Anlise e Projeto?Anlise o qu

Investigao do problema e dos requisitos

Requisitos

Casos de uso

Restries

VocabulrioProjeto como

Descrio de uma soluo lgica

Objetos

Arquitetura

Instalao & Operao

Interface do usurio32Representao de um Conceito na APOOEx.: O conceito Livro em um sistema de bibliotecaConceitode domniopublic class Livro{public void imprimir();

private String titulo;}Representaono cdigoLivrottulo Representaona anliseLivrottulo Representaono projetoimprimir()33Uma Analogia Organizando os Negcios de uma Empresa DocumentosAssociadosAPOOAnalogiaCasos de usoAnlise de requisitosQuais so os processos de negcio?Modelo conceitualAnlise do domnioQuais so os papeis dos empregados?Diagramas de classes de projeto, diagramas de colaboraoAtribuio de responsabilidades, projeto das interaesQuem responsvel por o qu? Como eles interagem?34Um Exemplo Jogo de DadosObjetivo: ganha o jogo o jogador que rolar dois dados e tirar seteModelagem na APOOCasos de usoDescries narrativas de processos do domnio no formato de prosa estruturadaEx.: Caso de uso:Atores:Descrio:JogarJogadorEste caso de uso comea quandoo jogador rola os dados. Se o totaldos dados for sete, o jogador ganha;do contrrio, ele perde.

35Um Exemplo Jogo de DadosModelagem na APOO (cont.)Modelo conceitualConceitos, atributos, e associaes que so considerados importantes no domnio da aplicaoEx.:

Um modelo conceitual descreve conceitos do mundo real, no componentes de software!JogadornomeJogoDeDadosDadovalorRolaJogaInclui22111136Um Exemplo Jogo de DadosModelagem na APOO (cont.) Diagramas de colaboraoAlocao de responsabilidades para objetos ilustrando como eles interagem via mensagensMostram o fluxo de mensagens entre instncias e a invocao de mtodosEx.::Jogadord1 : Dadod2 : Dadojoga()1: r1 := rola()2: r2 := rola()37Um Exemplo Jogo de DadosModelagem na APOO (cont.) Diagramas de classes de projetoComo os objetos (de software) se conectam? Quais so os mtodos de uma classe?Ex.:RolaJogaInclui22Jogadornomejoga()Dadovalorrola()JogoDeDadosinicializa()111138APOO X APEMetodologias mais antigas, como Anlise e Projeto Estruturados, baseiam-se em outras dimenses de decomposioSistema deBibliotecaSistemaA&P Orientados a ObjetoDecomposio por objetos ou conceitosA&P EstruturadosDecomposio por funes ou processosRegistraEmprstimosAdicionaRecursosReportaMultasCatlogoLivroBibliotecrioBiblioteca39A Linguagem de Modelagem Unificada UMLA UML a linguagem padro de diagramao para visualizar os resultados da anlise e projetoA notao (a prpria UML) relativamente trivialMuito mais importante: habilidade para modelar com objetosS aprender a notao UML no ajudaA UML no um processo ou metodologiaAPOOregras de projeto

40Origem e Evoluo da UMLUnified Method 0.8Unificao I(Out95)Booch93OMT-2Outros mtodosBooch91OMT-1OOSEFragmentaoUML 1.0Parceirosda UMLPadronizao(Jan97)UML 1.1Industrializao(Set97)UML 0.9 & 0.91Unificao II(Out96)41

42Processo de DesenvolvimentoOrganizao das atividades relacionadas produo e manuteno de sistemas de software

til, mas um fator de segunda ordemO principal: equipe qualificada

Boa equipe + bom processo = menor risco

O processo racional unificado (RUP), baseado no modelo iterativo, o processo padro na indstria43Sol, Mar e UML

44Vises da UML

45Uma srie de pesquisas (www.embeddded-forecast.com) tem mostrado que muitos projetos de software embarcados so entregues com atraso ou cancelados. Em mdia, observou-se que mais de 50% dos projetos tm seus cronogramas atrasados em pelo menos quatro meses e cerca de 11% so cancelados.46O custo dos atrasos pode ser significativo. Por exemplo, no setor de avinicos o custo dos atrasos estimado de 50.000 a 300.000 dlares por ms.Outro problema apontado o nvel de conformidade do produto final com as especificaes. Identificou-se que pelo menos 30% dos projetos no alcanavam 50% das especificaes propostas de performance ou funcionalidade.

47 medida que os sistemas embarcados aumentam em complexidade, esta situao tende a piorar. A pesquisa mostrou tambm que adoo de UML (Unified Modeling Language) ainda no uma prtica comum.

48Aes (*) : unidade bsica de especificao de comportamento. Aes esto contidas em atividadesArtefatos (*) : Pedao fsico da informao usado ou produzido durante o desenvolvimento do sistemaAtividadesCasos de UsoClassesClasses ativasColaboraoComponenteEstadoInteraoInterfaceElementos bsicos do modelo UML49NoNotaPacotePartes (*)Portas (*)Esteretipos (*)Valores de etiqueta (*)Restries (*)

Elementos bsicos do modelo UML50