Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Federal de Santa Catarina

Embed Size (px)

Citation preview

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    1/102

    UNIVERSIDADE FEDERAL DE SANTA CATARINA

    Centro Tecnolgico

    Departamento de Informtica e de Estatstica

    ESTUDO DA METODOLOGIA ORIENTADA A OBJETOS

    OOHDM, PARA A MODELAGEM E DESENVOLVIMENTO

    DE WEBSITES

    Orientador: Prof. Vitrio Bruno Mazzola, Dr.

    Aluno: Jean Carlos Hennrichs

    FlorianpolisSanta Catarina - Brasil

    Fevereiro de 2005

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    2/102

    JEAN CARLOS HENNRICHS

    ESTUDO DA METODOLOGIA ORIENTADA A OBJETOS

    OOHDM, PARA A MODELAGEM E DESENVOLVIMENTO DE

    WEBSITES

    Trabalho de Monografia apresentado ao Departamento de

    Informtica e de Estatstica (CTC) rea de Cincia da

    Computao da Universidade Federal de Santa Catarina (UFSC),

    como requisito para obteno do Ttulo de Especialista em

    Cincia da Computao.

    Orientador: Prof. Vitrio Bruno Mazzola, Dr.

    FlorianpolisSanta Catarina - Brasil

    Fevereiro de 2005

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    3/102

    Assim como todos que vivem para ver esses tempos,mas que no cabe a eles decidir,

    temos apenas de decidir o que fazer com o tempo que nos dado

    Gandalf Lord of the Rings.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    4/102

    AGRADECIMENTOS

    Primeiramente gostaria de agradecer a Deus por ter me guiado por mais esse

    caminho em minha vida. Muito agradeo aos meus pais por terem me ensinado a ter

    perseverana e pacincia para aguardar os momentos oportunos que surgem frente para

    serem vencidos. A minha me, Ivete Fontana, o mais respeitoso afeto que um filho podeoferecer. A meu pai, Jos Carlos Hennrichs, que no se faz mais presente em corpo, mas

    sempre presente em minha memria, obrigado. Um agradecimento muito especial a minha

    esposa e companheira Noeli S. Kirschner, que me apoiou e esteve sempre presente. A

    todos meus colegas, os novos e os antigos, em especial: Eduardo Urnau, Elton Minetto,

    Luciano Frosi, Michel Kniphoff e Tiago Zonta. Sem sombra de dvida, os momentos que

    vivenciamos juntos durante este perodo nunca mais sero esquecidos.

    Agradeo ao professor e orientador Sr. Vitrio Bruno Mazzola, pela oportunidadeque me foi concedida, e lembr-lo que realmente foi um prazer t-lo como professor.

    Lembro ainda que muitos professores passam em nossa vida, mas somente aqueles que nos

    marcam com atitudes e parcerias se mantm vivos em nossas lembranas. Agradeo

    tambm ao coordenador da ps o professor Rogrio Hining, ao professor Roque Strieder

    por algumas palavras especiais dirigidas a minha pessoa, e a todos que direta ou

    indiretamente contriburam na elaborao deste trabalho.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    5/102

    RESUMO

    A Internet que originou-se inicialmente de um projeto militar atualmente um dos

    principais meios de divulgao de informao do mundo. Mas nem sempre fora assim. No

    incio da Internet as pginas no passavam de meras descries textuais estticas que

    somente tomaram corpo com o surgimento do hipertexto e posteriormente com a WWW.

    A World Wide Web (WWW), deu vida a Internet, tornando possvel a exibio no

    s de textos, mas tambm de imagens. Com esta modernizao da Internet os sites que

    eram apenas estticos, exibindo informaes, passaram a interagir com o usurio.

    Aplicaes que antes rodavam apenas em ambiente corporativo foram disponibilizadas na

    Web. Contudo no levou-se em considerao como essas informaes e aplicaes

    deveriam ser desenvolvidas. Burlou-se todo o processo de desenvolvimento de software e

    avanou-se direto para a implementao, deixando de lado a mais importante de todas asfases no ciclo de desenvolvimento de software, a engenharia.

    Este trabalho descreve o estudo de um mtodo de engenharia para o

    desenvolvimento de Websites. O mtodo estudado e apresentado nesta monografia o

    OOHDM (Object Oriented Hypermedia Design Method), ou modelo de design hipermdia

    orientado a objetos.

    Inicialmente faz-se uma abordagem de conceitos elementares que so necessrios

    para o entendimento desta monografia. Dando seqncia o mtodo OOHDM descrito,

    tomando como referncia autores chaves que pesquisam o mtodo. Todas as cinco etapas

    do OOHDM (Levantamento de Requisitos, Modelagem Conceitual, Modelagem

    Navegacional, Projeto de Interface Abstrata e Implementao), so apresentadas de forma

    clara e quando possvel atravs de exemplos grficos, esquemas e diagramas.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    6/102

    ABSTRACT

    The Internet that was born initially as a military plan is now one of the main mean

    of distribution of information of the world. But it has not been always like that. In the

    starting of Internet the home pages didn't pass of mere static textual descriptions growing

    with the appearance of the hypertext and later with WWW.

    World Wide Web (WWW) gave life to Internet, turning possible the exhibition not

    only of texts, but also of images. With this modernization Internet sites that just exhibited

    information, started to interact with the user. Applications that before just ran in

    environment corporation were available in the Web. However it was not taken in

    consideration as those information and applications should be developed. It was left behind

    the process of software development that was moved forward straight to the programming,

    forgetting of the most important of all the phases in the cycle of software development: the"engineering".

    This work describes the study of an engineering method for the development of

    Websites. The studied and presented method in this monograph is the OOHDM (Object

    Oriented Hypermedia Design Method).

    It is made an approach of elementary concepts that are necessary for the

    understanding of this monograph. In sequence the method OOHDM is described, taking

    into reference famous authors that research the method. All the five stages of OOHDM

    (Rising of Requirements, Conceptual Modeling, Navigation Modeling, Project of Interface

    Abstract and Implementation), are described in a clear away and when possible through

    graphic examples, schemes and diagrams.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    7/102

    SUMRIO

    LISTA DE FIGURAS ..........................................................................................................9

    LISTA DE ABREVIATURAS ..........................................................................................12

    1 INTRODUO...............................................................................................................13

    1.1 OBJETIVOS .............................................................................................................. 14

    1.1.1 Objetivo Geral...................................................................................................141.1.2 Objetivos Especficos ........................................................................................14

    1.2 ESTRUTURA DO TRABALHO ..............................................................................14

    2 MULTIMDIA X HIPERMDIA ..................................................................................16

    2.1 MULTIMDIA...........................................................................................................16

    2.1.1 Objetos Multimdia...........................................................................................17

    2.1.1.1 Texto............................................................................................................17

    2.1.1.2 udio ........................................................................................................... 17

    2.1.1.3 Imagens........................................................................................................17

    2.2 HIPERTEXTO...........................................................................................................18

    2.3 HIPERMDIA............................................................................................................18

    2.4 HIPERDOCUMENTOS............................................................................................19

    3 WEBSITES E WEB DATABASES ...............................................................................21

    3.1 WEB...........................................................................................................................21

    3.1.1 Website...............................................................................................................22

    3.1.1.1 Sites Estticos .............................................................................................. 23

    3.1.1.2 Sites Dinmicos ........................................................................................... 23

    3.1.2 Web Databases ..................................................................................................24

    3.1.3 WebApp .............................................................................................................24

    4 MODELAGEM DE APLICAES .............................................................................26

    5 OOHDM ..........................................................................................................................28

    5.1 LEVANTAMENTO DE REQUISITOS....................................................................30

    5.1.1 Identificao de atores e tarefas ......................................................................31

    5.1.2 Especificao dos cenrios ...............................................................................325.1.3 Especificao dos Use Cases.............................................................................32

    5.1.4 Especificao dos UIDs.....................................................................................33

    5.1.4.1 Item de Dado................................................................................................33

    5.1.4.2 Estruturas ..................................................................................................... 34

    5.1.4.3 Conjunto.......................................................................................................34

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    8/102

    5.1.4.4 Dado Opcional ............................................................................................. 35

    5.1.4.5 Entrada de Usurio.......................................................................................35

    5.1.4.6 Estado da Interao......................................................................................36

    5.1.4.7 Texto............................................................................................................37

    5.1.4.8 Sada do Sistema..........................................................................................37

    5.1.4.9 Estado Inicial da Interao...........................................................................38

    5.1.4.10 Estados Alternativos da Interao..............................................................38

    5.1.4.11 Sub-Estados de um Estado da Interao....................................................39

    5.1.4.12 Chamada de outro UID..............................................................................39

    5.1.4.13 Chamada a partir de outro UID..................................................................40

    5.1.4.14 Transio....................................................................................................41

    5.1.4.15 Pr-Condies e Ps-Condies................................................................42

    5.1.4.16 Notas textuais.............................................................................................43

    5.1.4.17 UIDs parametrizados .................................................................................435.1.4.18 Exemplos de UIDs.....................................................................................45

    5.1.4.19 Relacionamento entre UIDs.......................................................................46

    5.1.4.19.1Relacionamento Inclui ........................................................................47

    5.1.4.19.2Relacionamento Estende.....................................................................47

    5.1.4.19.3Relacionamento Precede ....................................................................48

    5.1.4.20 Representao do UID Inicial....................................................................49

    5.1.5 Validao dos Use Cases e UIDs ......................................................................49

    5.2 MODELAGEM CONCEITUAL...............................................................................505.2.1 Classes ................................................................................................................50

    5.2.1.1 Atributos de Classe......................................................................................51

    5.2.1.2 Operaes da Classe .................................................................................... 53

    5.2.2 Generalizao ....................................................................................................54

    5.2.3 Relacionamentos ...............................................................................................56

    5.2.3.1 Cardinalidade...............................................................................................57

    5.2.3.2 Classe de relacionamento.............................................................................58

    5.2.4 Agregao ..........................................................................................................59

    5.2.5 Composio........................................................................................................60

    5.2.6 Objeto.................................................................................................................60

    5.2.7 Diagrama de Objetos ........................................................................................62

    5.2.8 Subsistemas........................................................................................................63

    5.2.9 Esquema Conceitual de Classes.......................................................................64

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    9/102

    5.3 MODELAGEM NAVEGACIONAL ........................................................................66

    5.3.1 Esquema de classes navegacionais...................................................................66

    5.3.2 Ns ......................................................................................................................67

    5.3.2.1 Atributos ...................................................................................................... 67

    5.3.2.2 Operaes.....................................................................................................69

    5.3.3 Generalizao ....................................................................................................69

    5.3.4 Elos .....................................................................................................................69

    5.3.5 ncoras e ndices ..............................................................................................70

    5.3.6 Agregao e Composio..................................................................................72

    5.3.7 Diagrama de objetos .........................................................................................72

    5.3.8 Diagrama do esquema de classes navegacionais ............................................73

    5.3.9 Classes em Contexto .........................................................................................74

    5.3.10 Esquema de Contextos de Navegao ...........................................................74

    5.3.10.1 Estruturas de Acesso..................................................................................755.3.10.2 Contextos de navegao.............................................................................76

    5.3.10.2.1 Caracterizao dos elementos de um contexto ...................................78

    5.3.10.2.2 Permanncia dos elementos no contexto ............................................81

    5.3.10.2.3Durao do contexto...........................................................................83

    5.3.10.3 Elos de navegao do esquema de contextos navegacionais.....................83

    5.3.11 Generalizao de Contextos ...........................................................................86

    5.3.12 Cartes de identificao .................................................................................87

    5.3.13 Diagrama do Esquema de Contextos de Navegao....................................885.4 PROJETO DE INTERFACE ABSTRATA...............................................................90

    5.4.1 ADV (Abstract Data View) ..............................................................................90

    5.4.2 Diagramas de Configurao ............................................................................92

    5.4.3 ADVcharts .........................................................................................................93

    5.5 IMPLEMENTAO.................................................................................................95

    5.5.1 Mapeamento dos objetos navegacionais .........................................................95

    5.5.2 Mapeamento dos relacionamentos ..................................................................96

    6. CONCLUSO................................................................................................................97

    6.1 TRABALHOS FUTUROS ........................................................................................ 98

    REFERNCIAS BIBLIOGRFICAS.............................................................................99

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    10/102

    LISTA DE FIGURAS

    Figura 1: Ns, elos e ncoras...............................................................................................20

    Figura 2: Sistema de funcionamento bsico da Web...........................................................22

    Figura 3: Exemplo de dados multimdia..............................................................................27

    Figura 4: Esboo do mtodo OOHDM (SCHWABE, 2003)...............................................29

    Figura 5: Ciclo de desenvolvimento tradicional..................................................................29Figura 6: Ciclo de desenvolvimento usando OOHDM........................................................30

    Figura 7: Exemplo de especificao de cenrios.................................................................32

    Figura 8: Exemplo de especificao de use case. ................................................................33

    Figura 9: Exemplo de Item de Dado....................................................................................34

    Figura 10: Exemplo de Estrutura.........................................................................................34

    Figura 11: Exemplo de Conjunto.........................................................................................35

    Figura 12: Exemplo de Dado Opcional. ..............................................................................35

    Figura 13: Exemplo de Entrada do Usurio.........................................................................36

    Figura 14: Exemplo de Entrada do Usurio Enumerada. .................................................... 36

    Figura 15: Exemplo de Estado da Interao. .......................................................................37

    Figura 16: Exemplo de Texto. ............................................................................................. 37

    Figura 17: Exemplo de Sada do Sistema............................................................................38

    Figura 18: Exemplo de Estado Inicial da Interao.............................................................38

    Figura 19: Exemplo de Estados Alternativos da Interao..................................................39

    Figura 20: Exemplo de Sub-Estados de um Estado da Interao (VILAIN, 2002).............39

    Figura 21: Exemplos de Chamada de outro UID. A Esquerda um UID com transio deentrada, e a direita chamada de um UID sem transio de entrada. ............................ 40

    Figura 22: Exemplos de Chamada a partir de outro UID. ................................................... 41

    Figura 23: Exemplos de Transies.....................................................................................42

    Figura 24: Exemplos de UIDs que podem ser parametrizadas (VILAIN, 2002). ...............43

    Figura 25: Exemplos de UID parametrizado (VILAIN, 2002)............................................44

    Figura 26: Exemplo de UID (VILAIN, 2002). ....................................................................45

    Figura 27: Relacionamento Inclui entre UIDs (VILAIN, 2002). ........................................ 47

    Figura 28: Relacionamento Estende entre UIDs..................................................................48

    Figura 29: Relacionamento Precede entre UIDs (VILAIN, 2002). ..................................... 48

    Figura 30: UID Inicial de uma aplicao.............................................................................49

    Figura 31: Exemplos de Classe em OOHDM......................................................................51

    Figura 32: Exemplo de Atributos com mltiplas perspectivas............................................51

    Figura 33: Exemplo de Atributo com mltiplas perspectivas e com identificador de tipo.52

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    11/102

    Figura 34: Exemplos de Atributo de Classes em OOHDM.................................................53

    Figura 35: Exemplos de Operaes de Classes em OOHDM ............................................. 54

    Figura 36: Exemplo de Generalizao.................................................................................55

    Figura 37: Exemplo de Restries em Generalizao .........................................................55

    Figura 38: Exemplo de Herana com mltiplas perspectivas..............................................56

    Figura 39: Exemplos de Relacionamento entre Classes ...................................................... 57

    Figura 40: Exemplos de Cardinalidade de Relacionamentos .............................................. 58

    Figura 41: Exemplo de Relacionamento com Cardinalidade .............................................. 58

    Figura 42: Exemplo de Classe de relacionamento (VILAIN, 2002). .................................. 59

    Figura 43: Exemplo de Agregao ...................................................................................... 59

    Figura 44: Exemplo de Composio....................................................................................60

    Figura 45: Exemplos de representao de Objetos em OOHDM........................................61

    Figura 46: Exemplo de um Objeto hipermdia (HENNRICHS, 2000)................................61

    Figura 47: Associao da Classes Embarcao com seu objeto (HENNRICHS, 2000). ....62Figura 48: Exemplo de Diagrama de objetos (VILAIN, 2002). .......................................... 63

    Figura 49: Exemplo de classe de outro subsistema .............................................................63

    Figura 50: Esquema Conceitual da aplicao RMS Titanic! A compilao de uma tragdia(HENNRICHS, 2000)..................................................................................................64

    Figura 51: Esquema Conceitual de uma aplicao acadmica (VILAIN, 2002).................65

    Figura 52: Representao de um N em OOHDM..............................................................67

    Figura 53: Mapeamento de uma Classe Conceitual em N.................................................68

    Figura 54: Representao de uma lista em um n (OLIVEIRA, 2003)...............................68

    Figura 55: Exemplo de generalizao/especializao de classes de ns. ............................ 69

    Figura 56: Exemplo de esquema de classes navegacionais (VILAIN, 2002)......................70

    Figura 57: Exemplo da representao de ncora e ndice (VILAIN, 2002).......................71

    Figura 58: esquerda agregao de n e a direita composio de n no esquema declasses navegacionais do OOHDM..............................................................................72

    Figura 59: Diagrama de objetos no esquema de classes navegacionais (VILAIN, 2002)...72

    Figura 60: Diagrama do esquema de classes navegacionais (VILAIN, 2002). ...................73

    Figura 61: Classes em Contexto (VILAIN, 2002)...............................................................74

    Figura 62: Representao de seletor de estrutura de acesso (SCHWABE, 2003)...............75

    Figura 63: Representao dos tipos de estrutura de acesso (SCHWABE, 2003)................76

    Figura 64: Representao de classe navegacional e contexto (OLIVEIRA, 2003).............77

    Figura 65: Representao de contextos de navegao (SCHWABE, 2003)........................78

    Figura 66: Exemplo de contexto arbitrrio de vrias classes (VILAIN, 2002). ..................79

    Figura 67: Exemplo de contexto de objetos (VILAIN, 2002). ............................................ 80

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    12/102

    Figura 68: Exemplo de grupo de contexto (VILAIN, 2002). .............................................. 81

    Figura 69: Exemplo de contexto dinmico (OLIVEIRA, 2003). ........................................ 82

    Figura 70: Exemplo de contexto por consulta (VILAIN, 2002)..........................................82

    Figura 71: Exemplos de elos de navegao (SCHWABE, 2003)........................................84

    Figura 72: Passagem de parmetro em elos de navegao (VILAIN, 2002).......................85

    Figura 73: Generalizao de contextos (VILAIN, 2002). ................................................... 86

    Figura 74: Carto de contexto ou grupo de contexto (VILAIN, 2002). .............................. 87

    Figura 75: Carto de estrutura de acesso (VILAIN, 2002)..................................................87

    Figura 76: Diagrama do esquema de contextos de navegao (VILAIN, 2002).................88

    Figura 77: Diagrama do esquema de contextos com subsistema (PUC-RIO, 2002)..........89

    Figura 78: Diagrama do esquema de contextos do subsistema reas (PUC-RIO, 2002). ..89

    Figura 79: Interface e o ADV Pessoa (SCHWABE, 1998). ................................................ 91

    Figura 80: Diagrama de configurao (ROSSI, 1997). .......................................................92

    Figura 81: ADVchart Pintor (ROSSI, 1997). ......................................................................94

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    13/102

    LISTA DE ABREVIATURAS

    ADO Abstract Data Object Objeto Abstrato de Dados

    ADV Abstract Data View Viso Abstrata de Dados

    CD Compact Disk

    CD-ROM Compact Disk Read Only Memory

    CERN Conselho Europeu de Pesquisa Nuclear

    DVD Digital Vdeo Disk

    FK Foreing Key Chave Estrangeira

    HDM Hypermedia Design Model

    HTML Hyper Text Markup LanguageJ2EE Java 2 Enterprise Edition

    MySQL Banco de Dados Relacional Free

    NCSA National Center for Supercomputing Applications

    OCR Reconhecimento ptico de Caracteres

    OMT Tcnica de Modelagem de Objetos

    OOHDM Object Oriented Hypermedia Design ModelPC Personal Computer

    PHP Linguagem Script Client-Server Free

    PUC-RIO Pontifcia Universidade Catlica do Rio de Janeiro

    RMS Royal Mail Steamship Navio a vapor da marinha real e de correio

    SGBD Sistema Gerenciador de Banco de Dados

    UID User Interface Diagram

    UML Unified Modeling language

    WWW World Wide Web

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    14/102

    13

    1 INTRODUO

    Com a exploso da interface grfica da Internet, conhecida pela sigla WWW

    (World Wide Web), multiplicaram-se os volumes de dados processados e transmitidos na

    Web (AGUIAR, 1997). Essa exploso de difuso deu-se principalmente devido ao

    surgimento do hipertexto (vnculo de um texto a um outro ponto da Web), e posteriormenteda hipermdia (ligao com outros objetos como figuras, animaes, filmes entre outros).

    Os websites que nada mais so do que aplicaes hipermdia na WWW tornaram-se

    muito mais do que apenas pginas estticas, inertes a ao do usurio. Transformaram-se

    em websites dinmicos, que se modificam em funo da ao executada pelo usurio. Esta

    evoluo fez surgir uma outra categoria de aplicaes destinadas exclusivamente para a

    Internet, as webapps (aplicaes que rodam sobre a plataforma da WWW).

    Contudo continuou-se a elaborar os websites dinmicos e as webapps da mesmaforma que se criava sites estticos. O processo de desenvolvimento de aplicaes

    hipermdia, websites e webapps, no deve ser diferente do desenvolvimento de qualquer

    outra espcie de software, ou seja, devemos ter presente durante o processo de

    desenvolvimento as atividades de: planejamento, levantamento de requisitos, anlise,

    projeto, implementao e manuteno. Deve-se levar em considerao que o

    desenvolvimento de websites e/ou webapps demanda de uma grande gama de profissionais

    como: projetistas, webdesigners, webmasters, programadores, pessoas relacionadas aomarketing, tcnicos de segurana na Web, entre outros.

    A fim de suprir essas necessidades no desenvolvimento de aplicaes hipermdia, e

    na interligao dos diversos profissionais existentes durante o desenvolvimento, surgiram

    no mercado diversos modelos para a engenharia desse tipo de aplicao. Dentre elas, o

    OOHDM (Object Oriented Hypermedia Design Method), ou Modelo de Design

    Hipermdia Orientado a Objeto, tem se mostrado muito eficiente.

    A metodologia escolhida para a construo de uma aplicao hipermdia deve tratardos problemas prprios de cada atividade e ao prprio nvel de abstrao, e as solues

    desses problemas devem ser registradas e possveis de serem localizados, tanto para trs ou

    para frente, durante o processo de desenvolvimento (SCHWABE, 1996).

    O mtodo OOHDM preenche os quesitos citados acima, e tem por caracterstica:

    manter a natureza exploratria da aplicao hipermdia; pode ser usado como forma de

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    15/102

    14

    comunicao entre projetistas, programadores, usurios e quaisquer outros profissionais

    envolvidos no processo; orientado a objetos; a metodologia est baseada na UML; pode

    ser utilizado para se modelar aplicaes em CDs, DVDs, WWW, entre outros e;

    implementa todas as atividades necessrias para o desenvolvimento de um software.

    1.1 OBJETIVOS

    1.1.1 Objetivo Geral

    O objetivo tangido para este trabalho de especializao o estudo do mtodo de

    engenharia de desenvolvimento de aplicaes hipermdia OOHDM em sua mais recente

    verso e atualmente baseado na UML.

    1.1.2 Objetivos Especficos

    Contextualizar Hipermdia e Multimdia para o desenvolvimento de aplicaes;

    Contextualizar Web, Websites, Web databases e Webapps;

    Conceituar a importncia de modelagem de aplicaes;

    Estudar e descrever o mtodo OOHDM.

    1.2 ESTRUTURA DO TRABALHO

    Este trabalho est disposto em seis captulos organizados da seguinte forma:

    Captulo 1, Introduo: tem o objetivo de introduzir o assunto e

    contextualizar a escolha do tema.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    16/102

    15

    Captulo 2, Multimdia e Hipermdia: apresenta conceitos relevantes

    multimdia, hipertextos, hipermdia e hiperdocumentos.

    Captulo 3, Websites e Web Databases: demonstra conceitos de web,

    websites, sites estticos e dinmicos, web databases e webapps.

    Captulo 4, Modelagem de Aplicaes: apresenta o por que da modelagem

    de aplicaes.

    Capitulo 5, OOHDM: explica em detalhes e exemplos o mtodo OOHDM e

    cada uma de suas cinco etapas: Levantamento de requisitos; Modelagem

    Conceitual; Modelagem Navegacional; Projeto de Interface e Implementao.

    Captulo 6, Concluses: apresenta as concluses obtidas com o

    desenvolvimento deste, consideraes finais e sugestes de trabalhos futuros.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    17/102

    16

    2 MULTIMDIA X HIPERMDIA

    2.1 MULTIMDIA

    A histria do surgimento da multimdia digital confunde-se com a do

    desenvolvimento das interfaces e interatividades no espectro da informtica, pois nasceu

    praticamente junto com as interfaces grficas, uma vez que consistem do uso de texto,

    imagens, animaes, vdeos e sons.

    O termo multimdia tem sua origem da lngua latina e composta de duas partes:

    multi e mdia. Multi: origina da palavra multus que significa "numeroso, muitos, vrios",

    como por exemplo: multifuno, multitarefa, multiprocessado, entre outros. Mdia: vm do

    plural da palavra latina medium que significa "centro, meio". Atualmente, a palavra mdia

    tambm largamente utilizada, especialmente na mdia televisiva, para definir meio de

    transmitir informaes.

    possvel deduzir-se ento que, quando so utilizados vrios meios para

    apresentar uma determinada informao, a multimdia est sendo utilizada (GERTLER,

    1995). Entretanto, alguns autores preferem designar multimdia como a apresentao

    organizada de sons, imagens, vdeos, textos e animaes como o caso de Crtes (1997).

    J Willrich (2000), prefere descrever multimdia bem mais amplamente, como sendo ocampo interessado na integrao controlada por computador de textos, grficos, imagens,

    animaes, sons, vdeos e quaisquer outros meios onde todo o tipo de informao pode ser

    representado, armazenado, transmitido e processado digitalmente.

    Com a chegada da multimdia digital, o PC rompeu a barreira do mundo da

    esttica rumo ao domnio da dinmica, onde a informao experimentada com os

    sentidos e as emoes, da mesma forma que o intelecto (LINDSTRON, 1996).

    A multimdia facilmente relacionada com computadores, pois estas mquinas

    apresentam condies tecnolgicas de agregar sons, imagens, vdeos, textos e animaes.

    O mais importante desse casamento perfeito a possibilidade do usurio interagir com a

    apresentao.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    18/102

    17

    2.1.1 Objetos Multimdia

    Os principais objetos da multimdia so representados pelo texto, udio e imagens

    (estticas ou em movimento). O texto o objeto multimdia mais bsico que existe no

    momento e sua captura e manipulao muito fcil. Por sua vez, o som uma informao

    de grande importncia e pode ser representado por uma narrativa. Quanto utilizao deimagens argumenta-se que , dentre os objetos multimdia, o mais importante e seu uso

    aumenta a comunicao udio-visual.

    2.1.1.1 Texto

    , dentre os objetos multimdia, o mais comum e, sua aquisio bsica d-se atravs

    do teclado, podendo tambm ser feita atravs de scanner, pelo mtodo de reconhecimento

    tico de caracteres (OCR).

    Alm de ser o mais concreto e confivel meio possvel, quando pretende-se declarar

    algo, o texto ainda representa a base para quase todos os mtodos de comunicao. por

    essa razo que faz-se necessrio entender a extrema importncia de se efetuar uma

    comunicao clara, concisa e precisa.

    2.1.1.2 udio

    O som, sem dvida, constitui-se dentre os objetos multimdia, o mais complexo e

    belo que h. Porm, seu uso deve ser moderado, pois muitas vezes, ao invs de ajudar na

    compreenso de um determinado contedo, pode acabar atrapalhando.

    2.1.1.3 Imagens

    Aplicaes multimdia so inerentemente visuais, tais como as fotografias,

    ilustraes, cores e formas que se combinam em uma tela para criar uma linguagem visual

    que fala com o usurio, de forma sutil e diretamente.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    19/102

    18

    As imagens dividem-se em dois tipos: as estticas (fotografias, grficos e

    ilustraes) e as imagens em movimento (animao e vdeo).

    No cabe a este apresentar mais detalhadamente os objetos multimdia, j que estes

    constituem material de diversas obras j existentes.

    2.2 HIPERTEXTO

    Com base no termo latin hiper, que significa alm, excesso, em meados de 1960

    o filsofo norte-americano Theodor Holm Nelson, conhecido como Ted Nelson, designou

    o termo hipertexto como algo que vai alm que excede, ou seja, uma interconexo de

    informaes relacionadas dentro de um programa de computador (AGUIAR, 1997). J

    Rhaume (1993 apud BUGAY, 2000), cita que hipertexto uma organizao no-linear de

    informaes.

    O hipertexto faz uso da idia de palavras que remetem a outros locais, como por

    exemplo: verbetes de enciclopdias, notas de rodap, entre outros. No entanto, com o

    hipertexto, esse deslocamento ocorre de uma forma mais dinmica e rica. Ao invs de ter

    que virar uma pgina ou deslocar-se at outro ponto da obra basta clicar com o mouse

    sobre a parte do texto que est em destaque (geralmente sublinhada), para ter acesso a

    outro um documento, explicao ou arquivo correlato.

    Atualmente designamos hipertexto como um documento formado por vrias

    pginas independentes, ligadas entre si atravs de referncias denominadas de hiperlinks

    ou links, que em ingls significa elo ou vnculo entre dois elementos em comum.

    Por meio de sua estrutura flexvel, o hipertexto torna a navegao de um texto

    mais lgica (no linear), fazendo com que o usurio crie seu prprio ritmo, nvel e estilo,

    adequando s suas caractersticas e interesses.

    2.3 HIPERMDIA

    A multimdia uma excelente maneira de disponibilizar informaes, mas ela, por

    si prpria, no fornece recursos para que se possa encontrar o que deseja. Com o

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    20/102

    19

    surgimento da multimdia interativa onde possvel ver o que se quer na hora que se

    quiser, nasceu o termo hipermdia.

    A palavra hipermdia veio de encontro necessidade de se designar um sistema

    ou documento interativo/exploratrio, cujo termo originou-se de hipertexto que se constitui

    numa ligao criada entre um texto e um objeto (LINDSTRON, 1996).

    Willrich (2000), hipermdia descrito como um sistema multimdia, no qual as

    informaes so obtidas e apresentadas com o auxlio de mecanismos de navegao

    baseados em ligaes (links). Por sua vez, Bugay (2000), descreve hipermdia como sendo

    a combinao de multimdia e apresentao, ambas computadorizadas, da informao.

    A hipermdia permite aos usurios que estiverem apreciando uma imagem, clicar

    sobre determinada regio e acessar um vdeo explicativo ou dar incio a uma animao.

    Esta animao, por sua vez, poder abrir outra e mais outra explicao, e assim,

    sucessivamente.

    O processo parecido com a forma de pensar do homem (CRTES, 1997). Por

    exemplo, basta experimentar pensar num assunto, que este o levar a outro lugar ou

    assunto e assim por diante. Processo idntico o que a hipermdia se prope a realizar.

    A hipermdia permite que se comece a navegao em qualquer lugar, utilizando

    palavras-chaves ou frases comuns, bem como objetos e elementos de mdia que aparecem

    durante a apresentao. Este nvel de interatividade permite que o usurio salte entre os

    tpicos, subsees e palavras-chaves, possibilitando-o, a elaborao de associaes e

    referncias cruzadas, em enquanto navega.

    Desta forma, o termo hipermdia vai alm de simples conexes de textos, tendo

    em vista que ela permite criar links com objetos, tais como figuras, animaes, filmes,

    entre outros.

    2.4 HIPERDOCUMENTOS

    Aproximadamente em 1989 quando a Web comeou a dar seus primeiros passos,

    o cientista ingls Tim-Berners-Lee props aos pesquisadores do CERN (Conselho Europeu

    de Pesquisa Nuclear), a idia de um novo modelo de distribuir e consultar documentos pela

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    21/102

    20

    comunidade cientfica, atravs do computador, baseado na idia de hipertexto. Nascia

    assim o termo hiperdocumento.

    De acordo com Willrich (2000), um documento hipertexto, ou hiperdocumento,

    uma estrutura de informao organizada de maneira no linear onde os dados so

    armazenados em uma rede de ns conectadas por ligaes, elos ou links que so expressos

    visualmente atravs de ncoras (figura 1).

    Figura 1: Ns, elos e ncoras.

    Diante do exposto possvel concluir que a hipermdia um avano surpreendente

    diante do que a multimdia trouxe consigo. Se a multimdia praticamente deu vida aocomputador pessoal, fazendo este ser capaz de exibir muito mais do que apenas textos, a

    hipermdia nos permite ir onde quiser na hora que se desejar, o que no era possvel com a

    multimdia. No entanto toda essa interatividade da hipermdia somente foi possvel com o

    surgimento do hiperdocumento, que props o surgimento de ncoras (hotwords), que

    faziam a ligao com outros pontos do documento ou para fora dele.

    N A N B

    N C

    Escolha uma das opes abaixo:- Tempo- Cotao do Dlar- Bolsa de Valores (Bovespa)

    elosncoras

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    22/102

    21

    3 WEBSITES E WEB DATABASES

    3.1 WEB

    Com o surgimento das interfaces grficas no comeo da dcada de 1990, houve

    uma exploso de desenvolvimento e disseminao da Internet nos lares e empresas do

    mundo. Esse espantoso crescimento tornou-se possvel graas ao surgimento da WWW

    (World Wide Web), ou ainda Web, fazendo referncia ao ambiente de comunicao mais

    popular e utilizado, atualmente na Internet.

    A WWW foi apresentada oficialmente a Internet em 1991. De acordo com Tim-

    Berners-Lee seu idealizador a Web representa o universo das informaes acessveis por

    redes de computadores, a personificao do conhecimento humano (VENETIANER,

    1996 apud BUGAY, 2000).

    O que atraiu tanto a ateno da Web perante aos outros servios da Internet, foi

    possibilidade de transferncia de informaes na forma de hipermdia: combinao de

    multimdia e hipertexto. (JAMHOUR, 1999). Essa caracterstica permitiu a criao de

    interfaces amigveis e atrativas para os usurios. Essas interfaces utilizadas para se

    visualizar o contedo da Web foram batizadas de browsers ou navegadores.

    O primeiro browser de navegao para interfaces grficas da Internet foi o Mosaic.

    O Mosaic foi desenvolvido pela NCSA (National Center for Supercomputing

    Applications), com base nos documentos e dados fornecidos pelos cientistas do CERN

    para o projeto WWW. Em 1994 aps uma fuso com a Silicon Graphics, o Mosaic deu

    origem ao Netscape Navigator, tornando-se o browser padro da Internet at o surgimento

    e ascenso do Internet Explorer da Microsoft.

    Para Conallen (2003), o termo Web vem da viso do sistema como um conjunto de

    ns com links de interconexo. Muito parecido como a teia de uma aranha. Os links

    fornecem o percurso para se percorrer o sistema. Muitos destes caminhos nos direcionam a

    documentos de texto, mas esses tambm podem nos remeter a informaes mais ricas,

    como udios, animaes e vdeos.

    A Web segue a arquitetura cliente-servidor, ou seja, um cliente (usurio) solicita

    uma determinada informao a um servidor, a informao processada e uma resposta

    remetida de volta ao cliente. Na Web os servidores disponibilizam informaes hipermdia,

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    23/102

    22

    para os clientes conectados a rede. Os clientes obtm acesso a essas informaes atravs

    dos browsers (figura 2).

    Figura 2: Sistema de funcionamento bsico da Web.

    3.1.1 Website

    A termo Website constitudo de duas expresses: Web e site. A expresso Web j

    foi descrita anteriormente e denomino agora o termo site. A expresso site utilizada paradenominar qualquer local na Internet onde seja possvel encontrar algum tipo de

    informao. O conjunto de pginas de uma universidade ou um jornal on-line so

    exemplos de site. No caso de pginas grficas, utiliza-se o termo Website (AGUIAR,

    1997).

    Esta definio de Website oferecida por Aguiar (1997), tornou-se ultrapassada.

    Atualmente, em mais de noventa e cinco por cento (95%), dos sites existentes na Internet,

    so grficos. Desta forma convencionou-se denominar qualquer conjunto de pginas naWeb, sejam elas grfica ou no, de site. Para Jamhour (2000), denomina-se site, um

    conjunto de informaes administradas por uma mesma entidade. Entende-se por entidade

    uma pessoa, uma empresa, uma organizao, um provedor, entre outros.

    ClienteRede

    Servidor

    BrowserServidor

    Web

    Solicita o

    Documento

    Sistema deArquivos

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    24/102

    23

    Na prtica um Website, ou simplesmente site, um conjunto de pginas HTML

    (Hipertext Markup Language) e arquivos multimdia relacionados, armazenados no sistema

    de arquivos de um provedor, e acessveis na Internet.

    Com a evoluo dos sites da Internet, que partiram de simples pginas de textos

    para incrveis pginas com figuras, animaes e som, tornou-se possvel distinguir duas

    categorias de sites: sites estticos e os sites dinmicos.

    3.1.1.1 Sites Estticos

    Denomina-se sites estticos aquelas pginas criadas diretamente pelo usurio

    atravs de editores HTML e publicadas no provedor para que seja possvel seu acesso pela

    Internet. As pginas HTML armazenadas no servidor so denominadas pginas estticas

    (JAMHOUR, 2000).

    3.1.1.2 Sites Dinmicos

    Ao contrrio das pginas estticas, que so elaboradas atravs de editores, as

    pginas dinmicas so geradas dinamicamente. Denomina-se pgina dinmica, as pginas

    HTML construdas por aplicaes externas ao servidor WWW, geradas como respostas a

    uma requisio feita pelo usurio (JAMHOUR, 2000). Aps ter sido construda pela

    aplicao externa, uma pgina dinmica idntica a uma pgina esttica, a diferena est

    no modo em que so construdas.

    Na maioria das vezes, a gerao automtica dessa pgina dinmica possvel

    graas utilizao de uma banco de dados onde ficam armazenadas as informaes que

    so processadas para a criao desta pgina dinmica. Pode-se considerar que um site

    esttico atualmente obsoleto. No necessria a utilizao de um Banco de Dados para

    que o site seja dinmico. O simples uso de um formulrio on-line, sem armazenar nada em

    banco, pelo qual ir ser gerada a resposta, pode ser considerado um site dinmico.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    25/102

    24

    3.1.2 Web Databases

    Atualmente possvel efetuar diversas transaes atravs da Web, seja ela uma

    pesquisa, uma compra, uma conversa entre amigos, entre outros. Toda essa gama de

    possibilidades tornou-se possvel graas utilizao de banco de dados na Web.

    De acordo com Silva (2001), um banco de dados representa algum aspecto do

    mundo real, o qual pode ser considerado de mini-mundo. Qualquer modificao ocorrida

    neste mini-mundo automaticamente refletida sobre o banco de dados. Para Mello,

    2002, banco de dados o apelido aplicado ao SGBD, Sistema de Gerenciamento de Banco

    de Dados, e a sua caracterstica fundamental e a de administrar de forma segura toda a

    qualquer iterao com o dado.

    A arquitetura de funcionamento dos bancos de dados para Web a mesma da Web,

    ou seja, a Client-Server (figura 2). Conclui-se dessa forma que o termo Web Databases aplicado a todo e qualquer banco de dados que funcione sobre a WWW.

    3.1.3 WebApp

    Abreviao do termo ingls Web Application, ou seja, aplicaes na Web. Emengenharia de software, um WebApp uma aplicao cliente-servidor que roda na Web.

    As WebApps so populares devido onipresena do browser como um cliente.

    Outro motivo que torna as WebApps populares a sua capacidade de ser executada em

    milhares de clientes, sem a necessidade de instalao e/ou distribuio de um software

    especifico no micro do cliente. So exemplos de WebApps: webmail, amazon.com,

    submarino.com.br, entre outros.

    Uma WebApp comumente estruturada em trs camadas: O browser a primeiracamada. Um servidor de aplicaes para a criao de sites dinmicos a segunda camada.

    A terceira camada constituda de um Banco de Dados. (figura 2).

    Conclui-se que a evoluo da Internet constante. No comeo tudo da rede mundial

    de computadores flua na forma de texto. Com o surgimento da WWW a Internet deu um

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    26/102

    25

    imenso salto para a sua popularizao, pois j era capaz de exibir imagens. Aps veio a

    possibilidade de se exibir sons, vdeos e animaes. Quando pensava-se que iria parar

    surgiram os sites dinmicos. O usurio da rede podia agora interagir com o site de uma

    maneira mais complexa, e no mais apenas ficar navegando por ele. Os sites dinmicos

    impulsionaram o surgimento dos Web databases, os bancos de dados na web, e estes por

    conseqncias trouxeram consigo as WebApps, ou seja, as aplicaes que rodam sobre a

    Web. Atravs da interatividade proposta pela hipermdia, as WebApps acessam os Web

    databases na procura ou insero de dados e devolvem a resposta ao usurio que interage

    de forma dinmica sobre a aplicao Web.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    27/102

    26

    4 MODELAGEM DE APLICAES

    Modela-se para compreender procedimentos complexos (CONALLEN, 2003). A

    elaborao de aplicaes hipermdia no nada fcil. A principal dificuldade imposta est

    na combinao da navegao que o usurio efetuar com a prpria natureza dos dados

    multimdia (ROSSI, 1997). Essas complexidades vm tona com mais clareza quando se

    mescla a hipermdia com a Internet, no desenvolvimento de Websites.

    Na esperana de evitar esses problemas e de desenvolver uma aplicao que

    transmita clareza e objetividade ao usurio, que se recorre modelagem. Segundo

    Rumbaugh (1994), somente quando os conceitos relativos aplicao so identificados,

    organizados e compreendidos que os detalhes das estruturas e funes podem ser tratados

    eficazmente.

    Os modelos so utilizados em todo o ciclo de vida de desenvolvimento, pois

    proporcionam uma cadeia de responsabilidade e rastreamento. O pesquisador Conallen

    (2003), cita que: a real vantagem da utilizao da modelagem no o que ela contm, mas

    o que est oculto. Um diagrama de classe de UML um exemplo. Ele oculta informaes

    ao no expor todas as operaes, atributos e associaes de uma classe. Essas operaes

    ocultas somente estaro disponveis no final, no cdigo-fonte da aplicao.

    Algumas das reais vantagens na utilizao de um modelo para o desenvolvimento

    de uma aplicao:

    um mecanismo de comunicao entre grupos do desenvolvimento (analista,

    projetista, implementador).

    Estimula a decompor o problema em partes gerenciveis.

    Facilita a compreenso do que se pretende criar.

    Mas qual modelo escolher? Deve-se levar em considerao na escolha de um

    modelo que Websites trabalham com dados de uma natureza muito particular. So

    imagens, textos, vdeos, animaes, entre outros, que se diferem em muito de simples

    dados armazenados em um banco ou em um arquivo (figura 3).

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    28/102

    27

    Figura 3: Exemplo de dados multimdia.

    Os dados multimdia tm suas caractersticas prprias e pode muito bem ser

    definidos como tipos distintos de objetos. De acordo com Rumbaugh (1994), um objeto

    algo com limites ntidos e significados prprios, com duas finalidades bem diferentes:

    facilitar a compreenso do mundo real e possibilitar a sua implementao no computador.

    Para Furlan (1998), um objeto possui tudo o que precisa para conhecer a si prprio, ou

    seja, possui um estado, uma identidade e um comportamento.

    Se o desenvolvimento de qualquer aplicativo (desktop, multiusurio, client x server

    e outros), necessita de uma prvia modelagem, ento que o mtodo escolhido seja

    suficientemente capaz de manipular os dados da aplicao em questo. Os Websites e

    WebApps se utilizam de objetos multimdia e da interatividade da hipermdia. Cada um

    desses objetos tem caractersticas prprias e podem ser agrupados em classes distintas

    umas das outras. Diante do exposto possvel concluir que o modelo de engenharia a ser

    escolhido para o desenvolvimento de aplicaes para a Web deva ser orientado a objetos

    (OO).

    Imagem

    Vdeo

    Texto

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    29/102

    28

    5 OOHDM

    O mtodo de Design Hipermdia Orientado a Objeto (OOHDM, Object Oriented

    Hypermedia Design Method), foi desenvolvido na Pontifcia Universidade Catlica do Rio

    de Janeiro (PUC/RJ), por Daniel Schwabe e Gustavo Rossi, em meados de 1996. Sua

    pesquisa vm sendo aprimorada constantemente e prova disto o Wiki do mtodo

    OOHDM disponvel no endereo www.oohdm.inf.puc-rio.br:8668/.

    Descendente do HDM (Hypermedia Design Method) o OOHDM faz uso de uma

    abordagem mais ampla e voltado ao paradigma de Orientao a Objeto (OO). indicado

    para o auxilio no desenvolvimento de aplicaes hipermdia de pequena, mdia e grande

    escala como: Quiosques de pesquisas, aplicativos em CD-ROM ou DVD, bem como

    tambm de Websites para a Internet ou Intranet.

    O OOHDM prope para o processo de engenharia de uma aplicao hipermdia,

    cinco etapas bem distintas:

    Levantamento de requisitos;

    Modelagem conceitual;

    Modelagem navegacional;

    Projeto de interface abstrata e,

    Implementao.

    Em cada uma dessas etapas, um modelo novo criado ou enriquecido. Entre todasas etapas previstas por este mtodo possvel efetuar o rastreamento para trs ou para

    frente a fim de mapear as modificaes de um modelo para o outro (ROSSI, 1997).

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    30/102

    29Atividade/Processos Produto Mecanismos Interesses do Projeto

    Levantamento deRequisitos

    Use Cases e anotaes

    Anlises de Cenrios e UseCases, Inter-relacionamentos,Mapeamento dos oDiagrama de Interao doUsurio para o modeloConceitual

    Capturar osrequerimentos einformaes deinteresse para aaplicao

    Modelagem ConceitualClasses, subsistemas,relacionamentos,perspectivas deatributos

    Classificao, Composio,generalizao eespecializao

    Modelagem daSemntica do domnioda aplicao.

    Projeto de Navegao

    Ns, elos, estruturasde acesso, contextosde navegao etransformaesnavegacionais

    Mapeamento entre objetosconceituais e de navegao,padres de navegao paraa descrio da estruturageral da aplicao.

    Leva em conta o perfildo usurio e a tarefa,nfase em aspectoscognitivos earquiteturais.

    Interface Abstrata

    Objetos de interfaceabstrata, reaes a

    eventos externos,transformaes deinterface.

    Mapeamento entre objetos

    de navegao e objetos deinterface

    Modelagem de objetosperceptveis,implementao de

    metforas escolhidas,descrio da interfacepara os objetosnavegacionais.

    ImplementaoAplicativo emexecuo

    Aqueles que o ambientealvo fornecer

    Desempenho,completitude

    Figura 4: Esboo do mtodo OOHDM (SCHWABE, 2003).

    De acordo com essa separao, o ciclo de desenvolvimento de aplicaes usando o

    OOHDM tambm se difere do ciclo de desenvolvimento tradicional de softwares (figura

    4 e 5).

    Figura 5: Ciclo de desenvolvimento tradicional.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    31/102

    30

    Figura 6: Ciclo de desenvolvimento usando OOHDM.

    Devido separao do processo de desenvolvimento em diversas etapas de

    modelagem, o OOHDM indicado como forma de comunicao entre as vrias pessoas

    envolvidas no processo de criao da aplicao como: projetistas, designers,

    implementadores e usurios.

    O modelo produzido pelo OOHDM pode ser implementado em qualquer tipo de

    ambiente de desenvolvimento disponvel no mercado, seja este orientado a objeto ou no.

    5.1 LEVANTAMENTO DE REQUISITOS

    O levantamento de requisitos ou ainda a elicitao de requisitos significa obter o

    mximo possvel de informaes sobre o domnio da aplicao em voga. tarefa tambm

    da elicitao, identificar os fatos que compem os requisitos do sistema, de maneira a

    prover o entendimento correto e completo do que o software, a ser desenvolvido, devedemandar.

    Esse levantamento de requisitos realizado atravs da identificao de classes de

    atores e as tarefas que executaro. Em seguida cenrios so criados e esboados para cada

    uma das tarefas e classes de atores. Com os cenrios j construdos, elabora-se os Use

    Cases que sero esboados atravs dos Diagramas de Interao do Usurio (UIDs). Estes

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    32/102

    31

    diagramas tm por objetivo representar exatamente a interao, entre usurio e sistema,

    durante a execuo de uma tarefa.

    Compreendem esta fase da metodologia OOHDM cinco etapas: identificao de

    atores e tarefas, especificao de cenrios, especificao de uses cases, especificao de

    UIDs e a validao de use cases e UIDs.

    5.1.1 Identificao de atores e tarefas

    Esta fase tem por objetivo encontrar as reais necessidades dos usurios. Isto

    possvel atravs da interao do projetista/designer com o domnio da aplicao. O

    projetista consegue essa interao atravs da anlise de documentos e entrevistas com

    usurios, a fim de identificar quais sero os atores e as suas tarefas.

    Para o consultor executivo em TI, Furlan (1998), um ator um agente que interage

    com o sistema, ou seja, um tipo de usurio ou categoria com papel definido. Salienta que

    um ator no representa um usurio individual de um sistema e sim um papel. Desta

    maneira um ator pode representar diversos papis e um papel pode ser representado por

    vrios atores. Com a identificao dos atores, chega-se a classes de atores. Um exemplo de

    ator em uma escola o aluno. ele que procura informaes sobre a sua nota, as suas

    disciplinas, o seu horrio de aula, entre outros.

    Conforme Vilain (2002), a terminologia tarefa significa o objetivo que o usurio

    deseja alcanar utilizando a aplicao. Como exemplo de tarefas a serem realizadas por um

    aluno em uma aplicao de pesquisa de informaes escolar cita-se:

    Pesquisa das suas notas atravs de seu cdigo;

    Pesquisa de seu cdigo atravs de seu nome;

    Pesquisa de suas disciplinas no curso;

    Pesquisa de seu calendrio de aulas.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    33/102

    32

    5.1.2 Especificao dos cenrios

    Vilain (2002), cita cenrio como uma descrio textual que explica em detalhes as

    tarefas que o usurio deseja realizar no domnio em questo. Esta descrio textual

    elaborada pelo usurio ou pelo projetista. A figura 7 demonstra a especificao de um

    cenrio na qual o aluno visualiza suas notas atravs da digitao de seu cdigo.

    Cenrio: C1 Visualizar minhas notas atravs de meu cdigo de aluno

    Contexto: Sendo um aluno do SENAC de Chapec, no curso tcnico em Desenvolvimento de Sistemas,

    gostaria de saber quais as minhas notas nas disciplinas que cursei durante o curso.

    Objetivo: Visualizar as notas por meio do cdigo do aluno

    Aes: Atravs da informao do cdigo do aluno e de minha senha, o sistema me retornar as

    disciplinas do curso, o nome dos professores e o conceito final que obtive em cada uma delas.

    Figura 7: Exemplo de especificao de cenrios.

    5.1.3 Especificao dos Use Cases

    Os Use Cases ou Caso de Uso, uma interao tpica ente um usurio e um

    sistema, em outras palavras, uma maneira de se utilizar o sistema. No aborda o

    funcionamento interno do sistema. De acordo com a UML a definio formal para use case

    : um conjunto de seqncias de aes que um sistema desempenha para produzir um

    resultado observvel de valor a um ator especfico (FURLAN, 1998).

    Os use cases so o conjunto de cenrios que especificam uma mesma tarefa.

    (RUMBAUGH, 1999, apud VILAIN, 2002). Para se especificar os use cases,primeiramente agrupa-se os cenrios que descrevem as mesmas tarefas e depois se mapeia

    esses cenrios, homogneos, e um nico use case.

    A figura 8 mostra o use case Visualizar minhas notas atravs do cdigo do aluno.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    34/102

    33

    Use case: Visualizar minhas notas atravs do cdigo do aluno

    Cenrios: C1/...

    Descrio:

    1. O usurio entra com o seu cdigo de aluno

    2. Se no souber seu cdigo de aluno, pode pesquis-lo (use case Pesquisar cdigo de aluno).

    3. O usurio entra com a sua senha

    4. O sistema faz a verificao do cdigo e senha.

    5. Se a senha ou cdigo for invlido, o sistema informa que os dados so invlidos e retorna a

    pedir o cdigo e senha.

    6. Caso os dados informados sejam vlidos, o sistema retorna a opo de visualizar as suas notas,

    para escolha do usurio.

    7. Usurio escolhe a opo visualiza notas.

    8. O sistema retorna a lista de disciplinas com o nome do professor e o conceito adquirido em cada

    uma delas, e se est em Aprovado ou Reprovado.

    Figura 8: Exemplo de especificao de use case.

    5.1.4 Especificao dos UIDs

    Do termo em ingls User Interaction Diagram, ou Diagrama de Interao do

    Usurio (UID), tem por objetivo mostrar a interao do usurio com o sistema descrito no

    use case, sem entrar em detalhes relativos a interface com o usurio. Um UID

    especificado atravs dos seguintes itens:

    5.1.4.1 Item de Dado

    Representa uma informao nica que aparece durante a interao, e escrito em

    letra minscula. O item de dado pode ser acompanhado do domnio. Neste caso precede-se

    a utilizao de dois pontos e o nome do domnio. Os nomes de domnios so

    identificados com a primeira letra em maisculo e devem ser especificados pelo projetista,

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    35/102

    34

    por exemplo: Nmero, Texto, Som, Imagem, Vdeo. Quanto no especificado o domnio

    de um item de dado, o domnio Texto assumido como default.

    Se for utilizado o domnio Enumerado para se especificar opes fornecidas pelo

    sistema, necessria a especificao dos valores entre chaves e separados por

    vrgula . Quanto houver a ocorrncia dos domnios Som, Vdeo, Imagem, o nome do

    item de dado pode ser suprimido, mas os dois pontos no. Abaixo alguns exemplos:

    nome do aluno ou nome do aluno:Texto

    msica:Som ou :Som

    video clip ou :Vdeo

    Foto do aluno ou :Imagem

    cdigo:Nmero

    Figura 9: Exemplo de Item de Dado.

    5.1.4.2 Estruturas

    Representam uma coleo informaes relacionadas de alguma forma. Essas

    informaes podem ser: itens de dados, estruturas, conjuntos de itens de dados. A

    especificao de uma estrutura feita entre parnteses e a separao de seus elementos

    feita com a utilizao da vrgula . O nome de uma estrutura obrigatrio e escrita

    com a primeira letra em maiscula.

    Aluno (cdigo:Nmero, nome, cidade, estado)

    Professor (cdigo:Nmero, nome,titulao,foto:Imagem, e-mail)

    Figura 10: Exemplo de Estrutura.

    5.1.4.3 Conjunto

    Representa um conjunto de itens de dados ou estruturas. Sua multiplicidade

    representada por um valor mnimo e um valor mximo na seguinte notao: mn..mx. A

    multiplicidade default de 1..N e possui a notao de reticncias < ... >.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    36/102

    35...Aluno (cdigo:Nmero, nome, cidade, estado) Conjunto de estrutura

    ...Professor (cdigo:Nmero, nome,titulao, e-mail) Conjunto de estrutura

    1..2 telefones Conjunto de item de dado

    1..3 fotos:Imagem Conjunto de item de dado

    Figura 11: Exemplo de Conjunto.

    5.1.4.4 Dado Opcional

    Como o prprio nome j define, um dado opcional representa um item de dado ou

    estrutura opcional. Pode possuir a multiplicidade especificada. Sua notao feita atravs

    do ponto de interrogao . Quando se estiver especificando que uma entrada do usurio

    opcional, utiliza-se um retngulo de linha pontilhada.

    ...Aluno (cdigo:Nmero, nome, :Imagem?, cidade, estado)

    ...Professor (cdigo:Nmero, nome, foto:Imagem?, titulao, e-mail)

    1..2 telefones?

    Figura 12: Exemplo de Dado Opcional.

    5.1.4.5 Entrada de Usurio

    Especifica um item de dado ou estrutura que inserida pelo usurio durante a

    execuo da aplicao. A notao um retngulo de linha contnua. Quando houver anecessidade de inserir itens de dados dependentes entre si, faz-se uso dos seguintes

    conectivos:

    E/OU: quanto pelo menos um dos itens de dados deve ser inserido;

    OU: quando somente um dos itens de dados deva ser fornecido.

    telefone comercial

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    37/102

    36

    A figura 13 demonstra exemplos de notao de entradas de usurios.

    Figura 13: Exemplo de Entrada do Usurio.

    Quando o sistema oferece opes que devem ser escolhidas pelo usurio, define-se

    isto como uma Entrada de Usurio Enumerada. A notao dessa entrada feita semelhante

    entrada de usurio, porm as opes de escolha so colocadas entre colchetes < [ ... ] > eseparadas entre si por vrgula . Quando houver a possibilidade de mais de uma escolha

    de opo, deve ser inserida a frente do nome de dado a observao de mn..mx,

    semelhante multiplicidade. Quando nada informado assume-se por default apenas uma

    escolha.

    Figura 14: Exemplo de Entrada do Usurio Enumerada.

    5.1.4.6 Estado da Interao

    Representa um momento da interao entre o sistema e o usurio, ou seja, um

    retorno de informaes do sistema ou o fornecimento de informaes ao sistema. A

    notao de estado de interao feita atravs de uma elipse com linha contnua.

    ...Aluno (cdigo:Nmero, nome, :Imagem?, cidade, estado)

    nome do aluno

    cdi o de acesso E/OU c f

    sexo [M, F]

    1..2 fruta preferida [Maa, Laranja, Banana, Abacaxi]

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    38/102

    37

    Figura 15: Exemplo de Estado da Interao.

    5.1.4.7 Texto

    a representao de um texto explicativo que aparece ao usurio em um

    determinado estado da interao. Muito utilizado por desenvolvedores e projetistas a fim

    de orientar o usurio quanto informao que foi entregue ou que deva ser inserida. A

    notao utilizada a de inserir o texto explicativo entre aspas duplas < ... >.

    Figura 16: Exemplo de Texto.

    5.1.4.8 Sada do Sistema

    Representa uma informao retornada pelo sistema. Pode ser um item de dado ou

    uma estrutura. Em outras palavras, tudo o que aparece fora de retngulos e dentro de um

    ...Aluno (cdigo:Nmero, nome, :Imagem?, cidade, estado)

    cdigo do aluno

    Informe o cdigo do aluno

    cdigo do aluno

    cfp do aluno

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    39/102

    38

    estado da interao e considerado como uma informao retornada pelo sistema, ou seja,

    uma sada do sistema.

    Figura 17: Exemplo de Sada do Sistema.

    5.1.4.9 Estado Inicial da Interao

    Define o estado inicial da interao do sistema com o usurio. representado por

    uma transio sem precedente.

    Figura 18: Exemplo de Estado Inicial da Interao.

    5.1.4.10 Estados Alternativos da Interao

    Ocorre quando um estado da interao produzir mais de uma sada em resposta a

    informao fornecida pelo usurio ou da opo escolhida por ele.

    cdigo do aluno

    Informe o cdigo do aluno

    ...Aluno (nome, fone, Imagem?, email)

    Dados do aluno

    cdigo do aluno

    Informe o cdigo do aluno

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    40/102

    39

    Figura 19: Exemplo de Estados Alternativos da Interao.

    5.1.4.11 Sub-Estados de um Estado da Interao

    Utiliza-se esta notao quanto h a excluso mtua de partes de um estado da

    interao. Quando isso ocorre o usurio dever optar por qual sub-estado da interao ele

    ir prosseguir.

    Figura 20: Exemplo de Sub-Estados de um Estado da Interao (VILAIN, 2002).

    5.1.4.12 Chamada de outro UID

    Utilizado para representar a mudana de foco de um estado da interao para outro

    UID. Se aps a execuo do UID para o qual o foco foi transferido, no houver uma

    cdigo do aluno

    Informe o cdigo do aluno

    ...Aluno (nome, fone, Imagem?, email)

    Dados do aluno

    Aluno inexistente

    (Voltar)

    Aluno Novo cdigo do aluno

    Aluno Antigo

    matricula

    (fazer matricula)(login)

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    41/102

    40

    transio para um novo foco da interao, ocorrer o retorno automtico do foco da

    interao para o estado da interao precedente a chamada da outra UID.

    A notao para se especificar uma chamada de outro UID a de uma elipse com

    linha contnua, sombreamento em seu interior e identificada pelo termo UID seguido do

    nome do UID que ser chamado (figura 21, esquerda). Tambm faz parte da notao a

    seta apontando para a elipse, indicando a transio.

    Os landmarks de navegao, mais conhecidos popularmente como cones de

    navegao do sistema so exemplos de chamada de UID que no possui nenhuma transio

    de entrada. Neste caso essa UID pode ser chamada diretamente a partir de qualquer estado

    de interao da UID corrente. Na notao deste tipo de chamada de outro UID no h a

    indicao da transio (figura 21, direita).

    Figura 21: Exemplos de Chamada de outro UID. A Esquerda um UID com transio deentrada, e a direita chamada de um UID sem transio de entrada.

    5.1.4.13 Chamada a partir de outro UID

    Utilizado para representar que o foco da interao foi transferido de outro UID para

    o UID atual. Ao final da execuo deste UID, o foco da interao retornar para o UID que

    o chamou, a partir do ponto em que ocorreu a chamada. Processo semelhante ao que ocorre

    com uma interrupo de sistema.

    ...Aluno (nome, cdigo:Nmero)

    Alunos cadastrados no sistema

    UID Mostrar cadastro do aluno

    1 (mostrar cadastro do aluno) UID Voltar ao Menu

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    42/102

    41

    Figura 22: Exemplos de Chamada a partir de outro UID.

    5.1.4.14 Transio

    Alm de especificarmos as informaes que o sistema oferece ao usurio e as que o

    usurio oferece ao sistema, devemos especificar as transies. As transies indicam que o

    foco da interao poder ser transferido para o novo destino.

    De acordo com Vilain (2002), para que uma transio ocorra necessrio que, no

    mnimo, um elemento ou opo seja selecionado, ou que uma informao seja fornecida ao

    sistema.

    As notaes de transio dependem da necessidade e da especificao do use case,

    e podem ser:

    Transio normal de um estado para outro

    Transio sem retorno ao estado de origem

    Transio com possibilidade de retorno

    ...Aluno (nome, cdigo:Nmero, endereo, fone?, email,)

    Cadastro do aluno

    UID Mostrar cadastro do aluno

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    43/102

    42

    Indica que para a transio ocorrer ser necessrio

    que o usurio selecione n elementos, onde n

    representa um nmero. Pode ser utilizada tambm

    a notao de multiplicidade.

    Indica que n elementos selecionados pertencem a

    conjuntos diferentes

    Transio com a seleo de uma opo especifica.

    O nome da opo escrito entre parnteses.

    Transio com a seleo de uma opo especifica,

    mas sem a mudana do foco da interao.

    Indica que a transio de estados ir ocorrer

    somente se a condio for preenchida. A condio

    expressa de forma natural e colocada entre

    colchetes.

    Figura 23: Exemplos de Transies

    5.1.4.15 Pr-Condies e Ps-Condies

    Representa a necessidade de se especificar um UID que s poder ser executado se

    for satisfeita uma pr-condio ou ps-condio. As pr-condies indicam as condies

    que devem ser satisfeitas antes da execuo da interao especificada pelo UID. As ps-condies descrevem as condies que devero ser satisfeitas aps a execuo do UID.

    Em ambos os casos a notao, de pr-condio e ps-condio, feita dentro de um

    retngulo de linha contnua, descrevendo-se a(s) condio(es) em linguagem natural,

    antecedido dos termos ou .

    n

    n

    n

    ( opo )

    ( opo )

    [ condio ]

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    44/102

    43

    5.1.4.16 Notas textuais

    Quando no houver a possibilidade de representao grfica de alguma informao

    importante no UID, faz-se uso de nota textuais anexadas no UID.

    5.1.4.17 UIDs parametrizados

    Utilizado para representar UIDs que possuem a mesma seqncia de interao

    porem, com informaes especificas distintas. O UID parametrizado possui a mesma

    seqncia de interao e as mesmas informaes em comum dos UIDs que ele se baseia.

    As informaes distintas so especificadas com a notao de Parmetro dentro dos

    estados/transies. Ao final do UID, o Parmetro descrito no interior de um retngulo de

    linha contnua (figura 23).

    Na figura 22 verificamos um exemplo de duas UIDs que possuem a mesma

    interao, porem com informaes distintas entre si para se atingir um mesmo resultado.

    Em um UID solicitado ao usurio rea de pesquisa para se chegar a um professor

    orientador e no outro UID solicitado o projeto de pesquisa para se chegar ao professor.

    Professor (nome, titulao, descrio,foto?, e-mail,...Projeto de Pesquisa (nome))

    rea de pesquisa

    rea de Pesquisa (nome)

    1

    Professor (nome, titulao, descrio,foto?, e-mail,...Projeto de Pesquisa (nome))

    projeto de pesquisa

    Projeto de Pesquisa (nome)

    1

    Figura 24: Exemplos de UIDs que podem ser parametrizadas (VILAIN, 2002).

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    45/102

    44

    Aps a parametrizao dos dois UIDs acima, chegamos ao resultado exposto na

    figura 23, onde foi mantido a mesma seqncia de interao e as informaes em comum,

    e as informaes que eram distintas entre os dois UIDs foram colocadas em um parmetro

    definido como Parmetro 1.

    Parmetro 1

    Parmetro 1 (nome)

    1

    Parmetro 1: rea de pesqusia ou projeto de pesquisa

    Professor (nome, titulao, descrio,foto?, e-mail,...Projeto de Pesquisa (nome))

    Figura 25: Exemplos de UID parametrizado (VILAIN, 2002).

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    46/102

    45

    5.1.4.18 Exemplos de UIDs

    UID: Comprar um CD a partir do nome do cantor

    Figura 26: Exemplo de UID (VILAIN, 2002).

    Esta UID demonstra a tarefa de um usurio para comprar um CD a partir do nome

    do cantor.

    No estado inicial o usurio deve informar o nome do cantor e o ano se achar

    necessrio. A entrada do ano opcional, pois est em um retngulo de linha pontilhada. Se

    o usurio souber o nome do cantor ele remetido ao estado da interao que exibe o

    conjunto de CDs daquele cantor.

    Caso o usurio no saiba o nome do cantor, o foco da interao deslocado para

    um estado em que o sistema retornar um conjunto de n vezes da estrutura Cantor, a fim de

    que o usurio escolha um. Ao escolher o cantor desejado o foco passar para o estado deexibio dos CDs do cantor escolhido. Observe que a transio do estado de exibio dos

    cantores para o estado de exibio dos cds tem o nmero 1. Isso indica que um elemento,

    no caso um cantor, deve ser selecionado para que a transio ocorra.

    No estado onde os CDs do cantor so exibidos o sistema retorna o nome do cantore

    o conjunto de n vezes a estrutura CD. Para cada CD sero exibidos os seguintes itens de

    nome do cantor

    ano

    nome do cantor

    ...CD (nome, cantor, ano, preo,disponibilidade e capa)

    nome do cantor

    ...Cantor

    nome do CD X

    ...Msica (nome, tempo, cantor,

    compositor, letra)

    gnero, pas, gravadora, etc

    1..N (incluso nalista de compras)

    1 (escutar trecho)

    11 (mostrar CD)

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    47/102

    46

    dados: nome, cantor, ano,preo, disponibilidade e capa. Todos esses itens de dados so do

    domnio Texto, pois no est informado no UID o domnio de cada item de dado,

    assumindo desta maneira o domnio default. De acordo com as transies deste estado

    possvel identificar tambm que h duas opes de escolha para o usurio: Incluso na

    lista de compras eMostrar CD.

    A opoIncluso na lista de compras, uma transio de escolha de opo sem amudana de foco da interao. Observa-se tambm que para escolher essas opo o usurio

    deve selecionar no mnimo 1 elemento e no mximo n elementos, como demonstra a

    multiplicidade 1..Nnesta transio.

    Para ocorrer mudana do foco da interao para o estado onde exibida a

    informao do CD desejado, o usurio deve selecionar um elemento e escolher a opo

    mostra CD.

    Com a modificao da interao para o estado onde so exibidas as informaes doCD, o sistema retorna ao usurio o nome do CD escolhido, bem como seu gnero, pas,

    gravadora e demais informaes. exibido tambm um conjunto de n vezes a estrutura

    Msica que composta dos itens de dados: nome, tempo, cantor, compositore letra. Todos

    com o domnio default. Observa-se que neste estado h uma opo de escutar trecho, que

    denotada pela transio sem mudana do foco indicada neste estado. A partir deste estado

    tambm possvel modificar o foco da interao para o estado anterior, como demonstra a

    transio com a seta de retorno.A transio escutar trecho s acionada se o usurio escolher um elemento no

    estado e escolher a opo escutar trecho. O foco da interao no modificado neste

    exemplo.

    5.1.4.19 Relacionamento entre UIDs

    Aps a especificao de todos os UIDs, chega vez de construirmos o diagrama de

    relacionamento destes UIDs. A elaborao do diagrama de relacionamentos de UIDs tem o

    objetivo de apresentar os relacionamentos mais significativos, bem como de destacar

    alguns relacionamentos descritos nos Use Cases, mas que no foram representados nos

    UIDs.

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    48/102

    47

    Os relacionamentos entre UIDs podem ser de trs tipos: inclui, estende e precede.

    5.1.4.19.1Relacionamento Inclui

    Usado para identificar que um UID est contido em outro UID, assim como a suaseqncia de interaes. Utilizado quando uma parte comum de um ou vrios UIDs,

    especificado em um outro UID (VILAIN, 2002). Identifica-se que um UID deve ser

    includo em outro, quando as interaes definidas no UID includo no fazem sentido se

    forem executadas sozinhas.

    No exemplo a seguir tem-se dois UIDs includos no UID Mostra informaes do

    professor. Isso indica que todas as interaes desses dois UIDs foram inseridas no outro

    UID. Os UIDs que esto includos no fazem sentido algum estarem sozinho no sistema.

    Figura 27: Relacionamento Inclui entre UIDs (VILAIN, 2002).

    5.1.4.19.2Relacionamento Estende

    Indica que um determinado UID pode ser estendido por um outro UID. Utiliza-se o

    relacionamento estende quando um UID demonstra um comportamento alternante ou

    opcional. As interaes que ocorrem no UID que estende o outro podem ser executadas em

    separado (VILAIN, 2002).

    UIDEscolher um professor a

    partir de uma rea depesquisa

    UIDEscolher um professor a

    partir de seu nome

    UIDMostrar informaes do

    professor

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    49/102

    48

    No exemplo abaixo temos o UID Editar informaes do aluno que est estendido

    pelo UID Enviar e-mail a Secretaria. O UID que est estendendo o UID Editar

    informaes do aluno pode ser executado sozinho em outro ponto do sistema, onde venha

    a ser necessrio.

    Figura 28: Relacionamento Estende entre UIDs.

    5.1.4.19.3Relacionamento Precede

    Este relacionamento utilizado para especificar que um determinado UID s

    poder ser executado se o outro UID foi executado com sucesso. Em outras palavras, um

    UID depende do outro (VILAIN, 2002).

    Na figura 29 temos um exemplo de relacionamento de precedncia entre UIDs.

    Neste exemplo o UID Modificar informaes de um artigo somente ser executada se o

    UID Submeter um artigo tiver sido executada com sucesso.

    Figura 29: Relacionamento Precede entre UIDs (VILAIN, 2002).

    UIDEnviar e-mail a Secretaria

    UID

    Editar informaes doaluno

    UIDModificar informaes de

    um artigo

    UIDSubmeter um artigo

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    50/102

    49

    5.1.4.20 Representao do UID Inicial

    Quando houver a necessidade de se especificar um UID inicial da aplicao, que

    representar as tarefas a serem executadas quando o sistema inicializado, faz-se uso do

    relacionamentoInclui para chamar os UIDs das tarefas iniciais.

    possvel incluir no UID inicial tantas, quantas, forem os UIDs necessrias para se

    iniciar a aplicao.

    A figura a seguir exemplifica um UIDInicial de um sistema. Nele a UID Visualizar

    Notas/Calendrio chamada diretamente quando se inicia a aplicao.

    Figura 30: UID Inicial de uma aplicao.

    5.1.5 Validao dos Use Cases e UIDs

    A ltima tarefa da etapa inicial de Levantamento de Requisitos a de validao dos

    Uses Cases e dos UIDs criados at aqui. Essa Validao feita atravs da interao entreprojetistas e designers com os usurios.

    Cada Use Case e UID produzido apresentado para a apreciao dos usurios, a

    fim de efetuarem as simulaes de interaes com o sistema. Cada sugesto, problema e

    inconsistncias devem ser anotadas. Esses testes de interao so necessrios para que os

    usurios cheguem a um consenso.

    UIDVisualizar

    Notas/Calendrio

    UIDInicial

  • 8/6/2019 Tcc - Estudo Da Metodologia Orientada a Objetos Oohdm, Para a Modelagem e to de Websites - Universidade Fede

    51/102

    50

    O nmero de interaes necessrias para tentar-se chegar a um consenso em

    comum ir depender do tempo disponvel, bem como tambm da disponibilidade dos

    usurios.

    5.2 MODELAGEM CONCEITUAL

    Durante esta fase da modelagem da aplicao, constri-se um esquema conceitual

    que represente objetos e relacionamentos existentes no domnio da aplicao. Esta

    construo feita atravs da definio de classes, subsistemas, relacionamentos, da

    construo de hierarquias de agregao e especializao, da determinao dos tipos dos

    atributos das classes e da cardinalidade dos relacionamentos.

    Em OOHDM o esquema conceitual um diagrama constitudo de classes, relaes

    e subsistemas.

    5.2.1 Classes

    As classes so descritas em OOHDM de acordo com os padres da modelagem

    orientada a objetos. Uma classe uma descrio de um ou mais objetos, atravs de um

    conjunto uniforme de atributos e operaes.

    Para se representar graficamente uma classe utiliza-se um retngulo com linha

    contnua, separado em trs partes. A primeira parte recebe o nome da classe, em negrito e

    com a primeira letra em maisculo. A segunda parte reservada para a lista de atributos

    desta classe e a terceira parte utilizada para expor as operaes desta classe. A

    especificao da terc