Você está na página 1de 75

Departamento de Computao Trabalho de Concluso de Curso

FABIANA HARUMI BABA

Modelagem de Aplicaes Multimdia

Londrina 2005

FABIANA HARUMI BABA

Modelagem de Aplicaes Multimdia

Trabalho de concluso de curso obrigatrio desenvolvido durante o 4o ano do Curso de Graduao em Cincia da Computao como requisito parcial obteno do ttulo de Bacharel. Orientador: Eduardo Cotrin Teixeira

2005

FABIANA HARUMI BABA

Modelagem de Aplicaes Multimdia

COMISSO EXAMINADORA

____________________________________ Prof. Ms. Eduardo Cotrin Teixeira Universidade Estadual de Londrina

____________________________________ Prof. Dr.Alan Salvany Felinto Universidade Estadual de Londrina

____________________________________ Prof. Ms. Rodolfo Miranda de Barros Universidade Estadual de Londrina

Londrina, 16 de Novembro de 2005

II

DEDICATRIA
minha famlia e amigos.

III

AGRADECIMENTO

Ao meu orientador que com apoio, disposio e firmeza conduziu este trabalho. Obrigada pela amizade e confiana. Aos meus pais que desde cedo incutiram em mim a importncia do estudo e aperfeioamento contnuo. A todos os amigos e colegas, pelo apoio, compreenso, descontrao, carinho e amizade.

IV

RESUMO

Este trabalho tem por objetivo apresentar a anlise dos principais mtodos de modelagem de aplicaes multimdia. Um levantamento das principais

caractersticas dos mtodos HDM, RMM, OOHDM, HTM, EORM e HBMS/M sero apresentados. A metodologia HTM foi escolhida e aplicada no projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia. Ao final deste trabalho, um comparativo entre esses mtodos ser apresentado.

ABSTRACT

This work aims to present the analysis of the main methods of modeling of applications multimedia. A survey of the main characteristics of methods HDM, RMM, OOHDM, HTM, EORM and HBMS/M will be presented. Methodology HTM was chosen and applied in the project Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia. In the end of this work, a comparative degree between these methods will be presented.

VI

SUMRIO

INTRODUO...................................................................................................12

2 METODOLOGIAS E MTODOS DE MODELAGEM PARA SISTEMAS HIPERMDIA .............................................................................................................14 2.1 HDM - HYPERMEDIA DESIGN MODEL ..............................................................14 2.1.1 Esquema HDM.....................................................................................14 2.1.2 Definio de Hiperbase, Estruturas de acesso e Outlines ...................16 2.1.3 Semntica de Navegao....................................................................17 2.2 RMM RELATIONSHIP MANAGEMENT METHODOLOGY .....................................17 2.2.1 Projeto de entidade-Relacionamento...................................................21 2.2.2 Projeto de entidade..............................................................................22 2.2.3 Projeto de Navegao .........................................................................22 2.2.4 Projeto de protocolo de converso ......................................................24 2.2.5 Projeto de interface do Usurio............................................................24 2.2.6 Projeto de comportamento de tempo de Execuo .............................24 2.2.7 Construo e Teste..............................................................................24 2.3 OOHDM ......................................................................................................24 2.3.1 Atividade 1: Modelagem Conceitual.....................................................25 2.3.2 Atividade 2: Projeto de Navegao......................................................26 2.3.3 Atividade 3: Projeto da Interface Abstrata............................................29 2.3.4 Atividade 4: Implementao.................................................................30 2.4 HMT HYPERMEDIA MODELING TECHNIQUE ...................................................30 2.4.1 O modelo de objetos............................................................................30 2.4.2 O modelo de Hiperobjetos ...................................................................34 2.4.2.1 Novas Associaes e Classes......................................................34 2.4.2.2 Mdias ...........................................................................................35 2.4.2.3 Classes Abstratas.........................................................................35 2.4.3 O Modelo Navegacional.......................................................................36 2.4.3.1 Cardinalidade................................................................................37 2.4.3.2 Direo e Backtrack ....................................................................37 2.4.3.3 Elos...............................................................................................38 2.4.3.4 Estruturas de Acesso: ndices e Roteiros Guiados.......................38 2.4.4 O Modelo de Interface .........................................................................39 2.5 EORM .........................................................................................................39 2.5.1 Enhanced O-R Model ..........................................................................40 2.5.1.1 Identificao de classes................................................................41 2.5.1.2 Refinamento de classes ...............................................................42 2.5.1.2.1 Adicionando Atributos................................................................42 2.5.1.2.2 Adicionando Operaes ............................................................43 2.5.1.2.3 Introduo de Herana ..............................................................43 2.5.2 A estrutura de composio ..................................................................43 2.5.2.1 Identificao de composio.........................................................43 2.5.2.2 O refinamento das composies ..................................................44 2.5.2.2.1 Definio do domnio e cardinalidade........................................44 2.5.2.2.2 Definio de Invariants ..............................................................44 2.5.2.2.3 Definio da semntica das ligaes ........................................44
VII

2.5.3 A estrutura GUI ....................................................................................45 2.5.3.1 Apresentao e Identificao de janelas ......................................45 2.5.3.2 O mapeamento de classes e composies ..................................45 2.6 HBMS/M......................................................................................................45 2.6.1 Modelagem Conceitual ........................................................................46 2.6.1.1 O modelo de Objetos....................................................................47 2.6.1.2 O modelo de fatias........................................................................48 2.6.2 Modelagem Navegacional ...................................................................48 2.6.2.1 O modelo navegacional de tipos...................................................48 2.6.2.2 O modelo navegacional de instncias ..........................................49 2.6.3 Modelagem da Interface ......................................................................50 2.6.4 Implementao e testes.......................................................................50 3 4 COMPARATIVO ENTRE OS MTODOS ..........................................................51 APLICAO UTILIZANDO A FERRAMENTA HTM.........................................54 4.1 DESCRIO DA APLICAO ............................................................................54 4.2 O MODELO DE OBJETOS .................................................................................54 4.2.1 Classes de Objetos..............................................................................54 4.2.2 Associaes.........................................................................................55 4.2.3 Atributos...............................................................................................56 4.2.4 Simplificao do modelo ......................................................................58 4.3 O MODELO DE HIPEROBJETOS .........................................................................58 4.4 O MODELO DE NAVEGAO .............................................................................61 4.4.1 Contextos de Navegao.....................................................................62 4.4.1.1 Navegao Sensvel ao Contexto.................................................64 4.4.1.2 Navegao Livre de Contexto.......................................................64 4.4.1.3 Tipos de Elos e Estruturas de acesso ..........................................65 4.4.1.4 Pontos de Entrada ........................................................................66 4.4.1.5 Diagrama de navegao...............................................................67 4.5 O MODELO DE INTERFACE...............................................................................68 5 CONCLUSO ....................................................................................................70

REFERNCIAS.........................................................................................................72

VIII

LISTA DE TABELAS
Tabela 2.1 Tabela de Associaes ........................................................................37 Tabela 2.2 Tabela de associaes com tipos de elos e estruturas de acesso.......39 Tabela 3.1 Comparativo entre os mtodos estudados ...........................................51 Tabela 4.1 Tabela de Associaes ........................................................................62 Tabela 4.2 Classes e seus respectivos contextos..................................................64 Tabela 4.3 Tabela de associaes com tipos de elos e estruturas de acesso.......66

IX

LISTA DE FIGURAS
Figura 2.1.1 - Estruturas e links do HDM. .................................................................16 Figura 2.2.1 Projeto da Modelagem RMM (Isakowitz et al., 1995) .........................18 Figura 2.2.2 Primitivas RMDM (Isakowitz et al. 95)................................................20 Figura 2.2.3 Exemplo de diagrama de entidade-relacionamento (Isakowitz et al. 95) ...........................................................................................................................22 Figura 2.2.4 Exemplo de diagrama RMDM (Isakowitz et al. 95).............................23 Figura 2.3.1 Esboo da Metodologia OOHDM (Schwabe & Rossi, 1995)..............25 Figura 2.3.2 Parte do Esquema Conceitual do Projeto Portinari (Schwabe et al., 1996)..................................................................................................................26 Figura 2.3.3 Esquema de classes navegacionais da aplicao Portinari ...............27 Figura 2.3.4 Elementos grficos para a definio do esquema contextual ............28 Figura 2.3.5 Esquema contextual para a aplicao Portinari .................................29 Figura 2.3.6 Composio de ADVs ........................................................................30 Figura 2.4.1 Notao para Classe e Associao....................................................31 Figura 2.4.2 Notao para cardinalidade das associaes ....................................31 Figura 2.4.3 Notao para generalizao ..............................................................32 Figura 2.4.4 - Notao para agregao.....................................................................32 Figura 2.4.5 Notao para atributos de Associao...............................................32 Figura 2.4.6 Notao para associao ternria......................................................33 Figura 2.4.7 Notao para associao com classes ..............................................33 Figura 2.4.8 Classe de Mdia..................................................................................35 Figura 2.4.9 Exemplo de classe abstrata e concreta..............................................36 Figura 2.4.10 Uma pintura em dois contextos ........................................................37 Figura 2.4.11 Diagrama de navegao ..................................................................39 Figura 2.5.1 Uma hierarquia simples de classe de ligao ....................................41 Figura 2.5.2 - Viso geral do mtodo do projeto EORM (Lange, 1994) ....................41 Figura 2.6.1 Fases do Mtodo HBMS/M ................................................................46 Figura 2.6.2 Verso Simplificada do modelo de objetos ........................................47 Figura 2.6.3 Exemplo simplificado do modelo navegacional de tipos (Turine, 1998) ...........................................................................................................................49 Figura 4.2.1 Classes identificadas para a aplicao do projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia. ....................55 Figura 4.2.2 Modelo e Objetos com associaes...................................................56 Figura 4.2.3 Modelo de Objetos com atributos.......................................................57 Figura 4.2.4 Simplificao de uma parte do modelo de objetos.............................58 Figura 4.3.1 Adicionando caminhos de acesso desejados.....................................59 Figura 4.3.2 Adicionando as diferentes mdias.......................................................60 Figura 4.3.3 Definindo as classes abstratas...........................................................61 Figura 4.4.1 Definindo os contextos navegacionais ...............................................63 Figura 4.4.2 Identificando os pontos de entrada ....................................................67 Figura 4.4.3 Diagrama de Navegao....................................................................68 Figura 4.5.1 - Layout do Projeto ...............................................................................68

LISTA DE ABREVIATURAS E SIGLAS

HDM RMM RMDM OOHDM HMT EORM HBMS/M OMT

Hypermedia Design Model Relationship Management Methodology Relationship Management Data Model Object-Oriented Hipermedia Design Method Hypermedia Modeling Technique Enhanced Object-Relationship Model Hypertext Model Based on Statecharts/Method Object Modeling Technique

XI

12

INTRODUO A Internet uma tecnologia que vem se propagando e influenciando

o desenvolvimento de vrias reas como: comrcio, indstria, negcios, bancos, educao, entretenimento, etc. O servio Word Wide Web (WWW), um dos mais utilizados na Internet, utiliza a tecnologia hipermdia, que consiste em documentos organizados por pginas estruturadas por ligaes, com uma rica variedade de associaes entre as informaes. As aplicaes hipermdia envolvem muitos componentes diferentes, como navegao, interface de usurio e armazenamento de dados.

Conseqentemente, os modelos de dados como os diagramas de entidaderelacionamento (E-R) e as hierarquias orientadas a objetos no conseguem representar os detalhes das aplicaes hipermdia (Bieber & Isakowitz, 1995). Alm disso, vrias dimenses diferem os projetos de hipermdia dos projetos de desenvolvimento de software tradicionais (Isakowitz et al., 1995). O projeto de aplicaes hipermdia envolve capturar e organizar a estrutura de um domnio complexo e torn-la clara e acessvel aos usurios (Garzotto et al., 1993). Os aspectos de multimdia das aplicaes hipermdia criam numerosas dificuldades (Hardman et al., 1994). Vrios mtodos e metodologias vm sendo desenvolvidos com o intuito de auxiliar o desenvolvimento de sistemas hipermdia. Pode-se citar HDM (Hypertext Design Model) (Garzotto, 1993), RMM (Relationship Management Methodology) (Isakowitz, 1995), OOHDM (Object-Oriented Hipermedia Design Method) (Schwabe, 1995), EORM (Enhanced Object-Relationship Model) (Lange, 1994) e HMBS/M (Hypertext Model Based on Statecharts/Method) (Turine, 1997). Este trabalho tem por objetivo analisar os principais mtodos de modelagem de aplicaes multimdia ou hipermdia. Um levantamento das principais caractersticas dos mtodos HDM (Hypertext Design Model), RMM (Relationship Management Methodology), OOHDM (Object-Oriented Hipermedia Design Method), EORM (Enhanced Object-Relationship Model) e HMBS/M (Hypertext Model Based on Statecharts/Method) ser apresentado, assim como um comparativo entre esse mtodos. A metodologia HTM (Hypermedia Modeling Technique), foi escolhida e aplicada no projeto Modelagem De Estruturas Orgnicas Para Manipulao Em

13

Produto Multimdia, que pretende modelar estruturas orgnicas em modelos 3D. Com essa modelagem, foi criado um prottipo do software educacional multimdia composto de peas anatmicas do sistema sseo do aparelho locomotor humano, baseado em peas reais que foi implementado no estgio curricular. A apresentao dos principais mtodos e metodologias de modelagem para sistemas hipermdia ser realizada na seo a seguir. A seo 3 apresentar o comparativo entre os mtodos analisados na seo 2. E na seo 4 ser mostrada uma aplicao, utilizando o mtodo HTM (Hypermedia Modeling Technique), ao projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia.

14

METODOLOGIAS E MTODOS DE MODELAGEM PARA SISTEMAS HIPERMDIA HDM - HYPERMEDIA DESIGN MODEL O HDM (Garzotto, Paolini e Shwabe, 1993) um dos primeiros

2.1

mtodos que surgiram para descrever aplicaes hipermdia.

O modelo visa a

construo da estrutura conceitual da aplicao. um mtodo authoring-in-the-large, que permite a descrio do domnio da aplicao sem levar em conta detalhes de implementao. Segundo seus autores:

HDM prescreve a definio de um esquema de aplicao, que


descreve classes globais de elementos de informao em termos de suas caractersticas de apresentao comuns, suas estruturas de organizao interna, e os tipos de interconexes mtuas.(Garzotto, Paolini e Shwabe, 1993).

Uma aplicao HDM consiste de estruturas de grandes pores de informao chamadas entidades. Entidades so agrupadas em tipos de entidades, e cada entidade denota um objeto fsico ou conceitual do domnio. Uma entidade uma hierarquia de componentes, que so compostos por unidades. E cada unidade mostra o contedo de um componente segundo uma perspectiva. As estruturas de informao HDM podem ser ligadas por trs tipos de elos (links): estruturais, de perspectiva e de aplicao. 2.1.1 Esquema HDM A definio do esquema HDM especifica os tipos de entidade e os tipos de elos (links). Entidades e Tipos de entidades Uma entidade uma estrutura de informao que representa um objeto real do domnio de aplicao. Uma entidade deve ser autnoma, a nica estrutura que pode ser introduzida ou retirada de uma aplicao sem depender da existncia de outros objetos ou estruturas de informao. Os tipos de entidades agrupam as entidades que possuem caractersticas em comum.

15

Componentes Uma entidade uma coleo de componentes menores, o que

forma uma hierarquia ordenada. Um componente composto por unidades que armazenam informaes. Os componentes herdam caractersticas de sua entidade e podem somente existir como parte de uma entidade, ou seja, no so autnomas. Perspectivas comum, em aplicaes hipertexto e hipermdia, que um tpico seja apresentado de diversas maneiras. Por exemplo, a utilizao de texto, grficos, vdeo, som e imagens para apresentar uma mesma informao. No HDM, a apresentao para um mesmo ndice de diferentes formas denominada perspectiva. Componentes podem ser descritos em uma ou mais perspectivas. Uma perspectiva compartilhada por todas as entidades pertencentes a um mesmo tipo de entidade. As entidades podem ser classificadas de acordo com as

perspectivas de seus componentes. Uma entidade caracteriza-se como homognea quando todos os seus componentes apresentam as mesmas perspectivas. Uma entidade caracteriza-se como agregada quando seus componentes apresentam perspectivas diferentes. Uma entidade caracteriza-se como derivada quando agrupa partes de outros tipos de entidades. Unidades Uma unidade corresponde a um componente associado a uma perspectiva especifica. Cada unidade possui um nome e um corpo. Os corpos das unidades armazenam o contedo de uma componente. O preenchimento dos corpos faz parte do mtodo authoring-in-the-small (autoria em ponto pequeno), ou seja, o preenchimento das unidades est fora do contexto do HDM. Elos (Links) As estruturas de informaes (entidades, componentes e unidades) so conectadas por elos. Os elos podem ser classificados em elos estruturais, de perspectivas, ou aplicao. Os elos estruturais conectam todos os componentes de uma mesma entidade. Os elos de perspectiva conectam as unidades de um mesmo componente. E os elos de aplicao conectam componentes e entidades, representando um relacionamento arbitrrio definido pelo autor.

16

Os elos de aplicao so organizados em tipos. Um elo de aplicao especificado no HDM por um nome, um grupo das entidades origem e destino e um atributo simtrico que pode assumir dois valores (simtrico ou assimtrico) e ainda define se o tipo tem um elo inverso. As entidades de origem e destino definem o que pode ser ligado ou conectado. Por exemplo, uma entidade A definida como origem e uma entidade B como destino, ento permitida a conexo de entidades ou componentes do tipo A, com entidades ou componentes do tipo B.
Entidade Entidade Link de Aplicao

Links Estruturais

Links Estruturais Links de Perspectiva

A1
Componente

A2

B1

B2

B3

Link de Aplicao

Foto Texto Mapa

Figura 2.1.1 - Estruturas e links do HDM.

As categorias de elos e os tipos de elos de aplicao so utilizados para simplificar o trabalho do projeto, induzir o uso consistente de elos e ainda criar padres de navegao. O modelo HDM classifica uma aplicao hipermdia em uma definio de um esquema ou uma definio de instncias do esquema. A definio de um esquema especifica um conjunto de tipos de entidade e de elos. A definio de instncias do esquema especifica uma coleo de entidades, componentes, unidades e elos de forma que todos satisfaam as definies do esquema. Dessa forma possvel reutilizar o mesmo esquema para diferentes aplicaes do mesmo domnio. 2.1.2 Definio de Hiperbase, Estruturas de acesso e Outlines De acordo com a terminologia HDM, uma aplicao hipermdia pode ser dividida em duas partes: uma hiperbase e um conjunto de estruturas de acesso. A hiperbase representada por todos elementos definidos anteriormente, entidades, componentes, unidades, e os elos de aplicao. O leitor pode explorar a hiperbase atravs dos elos definidos em cada aplicao. Porm, antes de comear a

17

navegao, a aplicao deve apresentar ao leitor /usurio um conjunto de pontos de entrada que apresentem uma viso da base e a capacidade de este pode escolher o ponto de entrada mais conveniente. As estruturas de acesso permitem ao usurio, a escolha dos pontos de entrada para novas navegaes. A tcnica de modelagem HDM d grande nfase a hiperbase. Para as estruturas de acesso fornecida a estrutura outline. Essa estrutura muito parecida com as entidades e a nica de entrada e sada de um esquema. Outlines no so especificados no esquema e podem ser adicionados ou modificados em uma aplicao livremente. 2.1.3 Semntica de Navegao A semntica de navegao determina como as estruturas de informao sero apresentadas ao usurio, quais elos os usurios podero acessar e qual ser o comportamento dos elos quando forem ativados. O HDM no exige nenhuma semntica de navegao especifica. E fornece uma semntica de navegao default simples. Porm diferentes semnticas de navegao podem ser definidas, permitindo que a mesma aplicao tenha comportamentos dinmicos diferentes. 2.2 RMM RELATIONSHIP MANAGEMENT METHODOLOGY O Relationship Management Methodology (RMM) (Isakowitz, 1995) caracteriza-se por um mtodo de desenvolvimento de aplicaes hipermdia indicado para aplicaes que possuem uma estrutura regular de domnio, porm necessitam de freqentes atualizaes. Por exemplo, um catlogo de produtos. O RMM coloca em foco as fases do projeto, desenvolvimento e construo. O mtodo possui sete etapas de desenvolvimento: Projeto de entidade-relacionamento (E-R design) Projeto de entidade (entity design) Projeto de navegao (navigational design) Projeto de protocolo de converso (conversion protocol design) Projeto de interface do usurio (user-interface design) Projeto de comportamento de tempo de execuo (run-time behavior design)

18

Construo e teste (construction and testing). Essas etapas podem ser visualizadas dentro de um ciclo de

desenvolvimento completo na figura 2.2.1.

Figura 2.2.1 Projeto da Modelagem RMM (Isakowitz et al., 1995)

19

A modelagem RMM possui um modelo de dados chamado Relationship Management Data Model (RMDM) utilizado na construo de modelos que descrevem os objetos de informao e mecanismos de navegao em aplicaes hipermdia, um conjunto de objetos lgicos usados pra proporcionar uma abstrao de uma poro do mundo real, necessria para expressar o projeto de uma aplicao. O modelo de dados RMDM baseado nos modelos HDM e seu sucessor HDM2. HDM e o HDM2 descrevem esquemas de representao, porm fornecem poucas informaes nos procedimentos para usar as representaes do projeto. A figura 2.2.2 abaixo apresenta as primitivas de modelagem RMDM que so classificadas em 3 grupos.

20

Figura 2.2.2 Primitivas RMDM (Isakowitz et al. 95)

As primitivas do domnio modelam as informaes de acordo com o domnio da aplicao. Entidades e seus atributos representam objetos fsicos ou abstratos definidos na aplicao. Os Relacionamentos associativos podem ser umpara-um ou um-para-muitos, e descrevem as associaes entre diferentes tipos de entidades. Uma entidade pode ser constituda por um grande nmero de atributos. E apresent-los de uma s vez pode se tornar invivel, por isso o RMDM props o conceito de slices, onde os atributos de uma entidade so agrupados por associaes a um determinado tpico, definindo uma viso da entidade para os usurios da aplicao.

21

O RMDM d suporte ao projeto de navegao fornecendo seis primitivas de acesso mostrados na figura 2.2.2. Os elos unidirecionais e bidirecionais so utilizados para especificar acesso entre slices de uma mesma entidade e esses elos so usados para navegar dentro dos limites de uma entidade. A navegao entre diferentes entidades feita atravs do Index, guided tours e groupings.O index atua como uma tabela que contem uma lista de entidades, fornecendo acesso direto a cada item listado. Guided tour implementa um caminho linear por uma coleo de itens e permite ao usurio se movimentar tanto pra frente quanto pra trs no caminho. Groupings constri um mecanismo semelhante a um menu, que permite o acesso a outras partes de uma aplicao hipermdia.Um diagrama RMDM descreve como os usurios navegaro na aplicao hipermdia. A seguir, uma descrio das etapas que compem o mtodo ser apresentada. 2.2.1 Projeto de entidade-Relacionamento A primeira etapa representa o domnio da informao de uma aplicao atravs de um diagrama baseado no modelo Entidade-Relacionamento. Esse estgio do projeto representa o estudo das entidades e relacionamentos

importantes do domnio de aplicao. Essas entidades e relacionamentos formam a base da aplicao hipermdia, e muitos deles correspondem a ns e elos na aplicao final. A Figura 2.2.3 mostra um exemplo de um diagrama E-R, onde as entidades Faculty e Courses so representadas por retngulos, enquanto que os relacionamentos Teach, Taught by, Hs Co-Requisite e Hs Pr-Requisite so indicados por linhas tracejadas. A notao grfica tambm mostra a aridade de cada relacionamento, sendo que, quando uma linha abre trs linhas, a aridade muitos naquele lado do relacionamento. As aridades possveis nos relacionamentos so: um-para-um, uma-para-muitos, e muitos-para-muitos (representada por dois relacionamentos um-para-muitos, como Teach e Taught by).

22

Figura 2.2.3 -Exemplo de diagrama de entidade-relacionamento (Isakowitz et al. 95)

2.2.2 Projeto de entidade A segunda etapa determina como as informaes, nas entidades escolhidas, sero apresentadas e como essas podero ser acessadas pelos usurios. As informaes podem ser apresentadas em uma nica janela com barras de rolagem. Porm as entidades podem ter um grande nmero de atributos, tornando invivel a apresentao dessa maneira. Alm disso, o desdobramento de longas janelas pode deixar o usurio desorientado. Dessa maneira, pode-se dividir uma entidade em fatias ou unidades que possuam significado para o usurio. E essas unidades podem ser apresentadas separadamente, mas devem estar interrelacionadas. Cada entidade possui uma fatia distinta, chamada cabea (head), que usada para receber os elos (links) que chegam entidade. A navegao entre fatias modelada atravs de elos (links) unidirecionais e bidirecionais. Os elos que representam as conexes entre as fatias e so chamados de elos estruturais. Esses elos tm a mesma definio do modelo HDM. O resultado da etapa de entidade um diagrama E-R+, que anexa ao diagrama E-R a descrio das fatias. 2.2.3 Projeto de Navegao Nessa etapa so projetadas as estruturas que permitiro a navegao em uma aplicao hipermdia. Cada relacionamento do diagrama E-R+ analisado. E aps a anlise de requisitos, decide-se qual relacionamento ser acessvel para navegao, sendo substitudo por uma ou mais estruturas de acesso

23

presentes no Relationship Management Data Model (RMDM) (Isakowitz, 1995). H 3 tipos de estruturas de acesso no RMDM: ndice Condicional (Conditional Index), Roteiro Condicional (Conditional Guided tour) e Roteiro Indexado Condicional (Conditional Indexed Guided Tour). O RMM tambm possui estruturas de acesso de alto nvel que so especificadas atravs do agrupamento de itens de interesse. Como o mtodo RMM aplicado em domnios que so atualizados com freqncia, os trajetos de navegao so especificados genericamente. Ou seja, no h nenhuma ligao codificada, elas apenas se referem s propriedades das entidades e relacionamento. No final da etapa do projeto de navegao, o diagrama E-R+ ser transformado em um diagrama RMDM, que descreve todas as estruturas de acesso que devero ser implementadas. A Figura 2.2.4 mostra um exemplo de diagrama RMDM, onde o relacionamento Teach entre Faculty e Courses pode ser navegado atravs do ndice condicional Course Index; o mesmo para os demais relacionamentos. No topo da Figura est especificado um agrupamento (menu) com opes de acesso a Faculty e Courses atravs de roteiros condicionais.

Figura 2.2.4 Exemplo de diagrama RMDM (Isakowitz et al. 95)

24

2.2.4 Projeto de protocolo de converso A etapa de projeto de protocolo de converso utiliza um conjunto de regras para transformar cada elemento do diagrama RMDM em um objeto da plataforma final. Por exemplo, um form do HTML pode ser usado para implementar um ndice. 2.2.5 Projeto de interface do Usurio Nessa etapa so projetadas as layouts das telas para cada objeto pertencente ao diagrama RMDM obtidos na etapa de projeto de navegao. Incluindo o layout dos botes, aparncia dos ns e dos ndices e a localizao do auxilio a navegao. 2.2.6 Projeto de comportamento de tempo de Execuo Na sexta etapa h a determinao de como os elos transversais, histrico, o backtracking, e os mecanismos navegacionais devem ser implementados. Durante essa fase, os projetistas decidem se os contedos dos ns e os elos devem ser construdos durante o desenvolvimento da aplicao ou dinamicamente sob demanda em tempo real, de acordo com a volatilidade e o tamanho do domnio. 2.2.7 Construo e Teste A ltima etapa composta pela implementao e aplicao de testes, como na engenharia de software tradicional. Em aplicaes hipermdia, devese tomar um cuidado especial e testar todos os caminhos possveis de navegao. 2.3 OOHDM O mtodo OOHDM (Rossi, 1996; Schwabe et al., 1996) utilizado no desenvolvimento de aplicaes hipermdia e o processo compreende quatro atividades que executam uma mistura de estilos iterativos e incrementais de desenvolvimento. Em cada etapa um modelo construdo ou enriquecido. A figura 2.3.1 mostra as quatro atividades: modelagem de domnio ou conceitual, projeto navegacional, projeto da interface abstrata e implementao, assim como os produtos, os mecanismos e os interesses do projeto OOHDM.

25

Atividades

Produtos

Mecanismos

Interesses do Projeto
Modelagem da semntica do domnio de aplicao

Modelagem Conceitual

Classes, sub-sistemas, relacionamentos, perspectivas de atributos

Classificao, composio, generalizao e especializao

Projeto da Navegao

Ns, elos, estruturas de acesso, contextos de navegao, transformaes navegacionais

Mapeamento entre objetos conceituais e de navegao.Padres de navegao para a descrio da estrutura geral da aplicao.

Leva em conta o perfil do usurio e a tarefa; nfase em aspetos cognitivos e arquiteturais.

Projeto da Interfase Abstrata

Objetos de interface abstrata, reaes a eventos externos, transformaes de interface

Mapeamento entre objetos de navegao e objetos de interface.

Modelagem de objetos perceptveis,implementa metforas escolhidas. Descrio de interface para objetos navegacionais

Impl em ent ao

Aplicao em execuo

Aqueles fornecidos pelo ambiente alvo

Desempenho, completitude

Figura 2.3.1 Esboo da Metodologia OOHDM (Schwabe & Rossi, 1995)

2.3.1 Atividade 1: Modelagem Conceitual Nessa atividade, um modelo conceitual construdo para representar os objetos e os relacionamentos existentes no domnio. O esquema conceitual constitudo sobre classes que utilizam os princpios da modelagem orientada a objetos, relaes que possuem atributos multi-valorados (similar s perspectivas do HDM [Garzotto et al 93]), representando diferentes perspectivas de uma mesma entidade e os subsistemas (abstraes de um sistema conceitual completo). O OOHDM oferece dois mecanismos de abstrao: agregao e generalizao / especializao e os subsistemas como um conceito de empacotamento. A agregao utilizada na descrio de classes complexas como agregadas de classes mais simples. A generalizao / especializao utilizada na construo de hierarquias de classes e no uso de herana como um mecanismo de

26

compartilhamento. E os subsistemas so um mecanismo de empacotamento para a abstrao de modelos de domnio complexos. A figura 2.3.2 mostra uma verso simplificada do esquema conceitual de uma aplicao que apresenta informaes sobre o pintor Cndido Portinari. Nesse exemplo, a classe Obra possui o atributo Description que tem duas perspectivas, Text e Image, correspondendo s representaes textual e grfica da obra. A seta entre Referncia e a caixa trace jada indica que Referncia est relacionada com todas as outras classes dentro da caixa tracejada atravs da relao referencia; o mesmo para Comentrios histricos.

Referencia

code: Integer date-Place: String description: [Text, Picture]

referencia

Pessoa name: String code: Integer date-place: String description: Text biography: Text

possui

Obra title: String code: Integer date-place: String theme: String description: [Image, Text] technique: String comments: Text date-of-visit: Date photographer: String

descreve

Comentarios histricos

description:Text
Evento

exibido en

menciona

name: String code: Integer date-place: String description: [Picture, Text]

Figura 2.3.2 Parte do Esquema Conceitual do Projeto Portinari (Schwabe et al., 1996)

2.3.2 Atividade 2: Projeto de Navegao No OOHDM as aplicaes hipermdia so definidas como vises navegacionais do esquema conceitual. E as vises permitem a construo de diferentes modelos navegacionais com perspectivas diferentes. Cada viso define um conjunto de contextos e classes navegacionais. Os contextos navegacionais representam a estrutura navegacional geral de uma aplicao, enquanto as classes navegacionais, como os ns e os elos, especificam os objetos que sero vistos pelo usurio.

27

O projeto navegacional descrito em dois esquemas: o esquema de classe navegacional e o esquema de contexto navegacional. O esquema de classe navegacional O esquema navegacional define os objetos navegveis (objetos que sero visualizados) de uma aplicao hipermdia, cujas classes refletem a viso escolhida sobre o domnio da aplicao. Existe um conjunto pr-definido de tipos de classes navegacionais: ns, elos e estruturas de acesso (ndices e guided tours). Os ns so definidos como vises orientadas a objetos das classes conceituais definidas durante o projeto conceitual e os elos refletem os relacionamentos a serem explorados pelo usurio final, tambm definidos como vises sobre os

relacionamentos do esquema conceitual. Na Figura 2.3.3 abaixo apresentamos o Esquema de Classes Navegacionais da aplicao Portinari.
Documento referncia

Carta

Fotografia

Entrevista

envolvidaEm retratadaEm Obra Pessoa

menciona

exibidaEm Evento

Item Roteiro

descreve

Figura 2.3.3 Esquema de classes navegacionais da aplicao Portinari

O esquema de contexto navegacional O esquema de contexto navegacional especifica as vrias maneiras

que as informaes de uma aplicao hipermdia podem ser exploradas pelo usurio. Por exemplo, por tema ou por ordem cronolgica. Um contexto navegacional um conjunto de ns, elos, classes de contexto e outros contextos navegacionais (aninhados), que auxiliam na organizao dos objetos navegacionais, fornecendo espaos de navegao consistentes,

28

diminuindo as chances de um usurio perder-se na aplicao. Os ns so enriquecidos com um conjunto de classes especiais (chamadas classes Em Contexto), permitindo que um n tenha uma aparncia diferente e apresente ncoras distintas quando navegado em um contexto especfico. Por exemplo, se estivermos percorrendo os quadros de um certo pintor, podemos no querer que seu nome aparea como um atributo do quadro, pois sabemos que estamos explorando seu trabalho; no entanto, se chegarmos ao mesmo quadro no contexto de pinturas sobre um determinado tema, podemos ter no apenas uma referncia escrita ao pintor, como tambm um modo de navegar at ele. A definio das transformaes navegacionais que ocorrem quando um usurio percorre os elos (por exemplo, os ns fonte e destino permanecem ativos) completa a especificao da dinmica da estrutura navegacional. As primitivas visuais para definir o esquema do contexto

navegacional so apresentadas na Figura 2.3.4. Na Figura 2.3.5 o esquema contextual para Portinari apresentado.

C1 (C)

Famlia de Contextos C

Contexto C1 (famlia C)

A C1 C2 C3

Ind

Navegao ou mudana de contexto

Indice Ind Elos de contexto

Ns da classe A so percorridos em contextos C1, C2, C3

Agrupamento de contextos

C1 C2

i C

O Contexto C inclui C1 e C2

O contexto C accesado por um ndice

Figura 2.3.4 Elementos grficos para a definio do esquema contextual

29
Obra
i

Temas Tnicas Datas

Indice de Temas

por Tema
i

Indice de Tcnicas Linha de Tempo

por Tcnica
i

Contextos de Navegao para Obra

por Data

por Evento por Documento

Pessoa Pessoas Pessoas por Nome Documento por Data Documentos Indice de Assuntos por Assunto Contextos de Navegao para Documento

Evento por Data Item de Roteiro Roteiro Guiado Roteiros

Roteiros

Figura 2.3.5 Esquema contextual para a aplicao Portinari

2.3.3 Atividade 3: Projeto da Interface Abstrata O projeto da interface abstrata define a estrutura navegacional que pode ser vista pelo usurio atravs da definio de um modelo de interface abstrata. Isso significa definir quais objetos que podem ser vistos (perceptveis) pelo usurio. No OOHDM, utilizada a abordagem de projeto Abstract Data View (ADV) para descrever a interface de uma aplicao hipermdia. ADVs so modelos formais, orientados a objetos, de objetos de interface (menus, campos de texto, botes etc.) que permitem especificar as metforas de interface e descrever suas propriedades estticas (relacionamentos com os objetos navegacionais) e dinmicas (comportamento frente a eventos externos), de uma forma independente de implementao.

30

A Figura 2.3.6 mostra como um ADV descrevendo uma pintura pode ser constitudo por trs ADVs, contendo uma imagem, um texto e um boto.
ADV P i n tu r a ADV I m agem

ADV Tex to

ADV B ot o

Figura 2.3.6 Composio de ADVs

2.3.4 Atividade 4: Implementao A implementao realiza um mapeamento dos modelos de interface abstrata e navegacional para objetos concretos disponveis no ambiente de implementao escolhido, de maneira a obter uma aplicao pronta para ser executada. 2.4 HMT HYPERMEDIA MODELING TECHNIQUE O Hypermedia Modeling Technique (HMT) um mtodo orientado a objetos, desenvolvido com uma grande base de pesquisas envolvendo modelagem de dados e projetos de aplicaes multimdia. Segundo seu autor Nemetz (1995, pg 59), o mtodo HMT possui quatro fases para a descrio de uma aplicao: Modelo de Objetos: descreve os objetos do domnio da aplicao e seus relacionamentos; Modelo de Hiperobjetos: refina o modelo de abjetos, adicionando maior semntica aos relacionamentos; Modelo de Navegao: descreve os elos e as estruturas de acesso; Modelo de Interface: descreve como o usurio percebera os objetos hipermdia. 2.4.1 O modelo de objetos O modelo de objetos do HMT utiliza os conceitos e a notao do modelo de objetos do Object Modeling Technique (OMT) (Rumbaugh, 1991). O

31

modelo

OMT

descreve

estrutura

dos

objetos,

suas

entidades,

seus

relacionamentos, seus atributos e operaes em um domnio de aplicao. Uma classe de objetos descreve um grupo de objetos com propriedades similares, comportamento comum, relacionamentos comuns com outros objetos, e semntica comum. A classificao de objetos depende do propsito de cada aplicao. Na modelagem de objetos procura-se descrever os objetos atravs de diagramas de objetos. As figuras abaixo apresentam as principais notaes do modelo de objetos.

Figura 2.4.1 Notao para Classe e Associao

Cardinalidade

(Multiplicidade

de

Associaes)

Figura 2.4.2 Notao para cardinalidade das associaes

Uma classe representada por um retngulo que possui trs partes: nome da classe, atributos e operaes. um grupo de objetos com propriedades similares (atributos), comportamento comum (operaes), relacionamentos comuns com outros objetos e uma semntica comum. Os atributos representam os tipos de dados de uma classe, podendo ser de qualquer tipo (texto, vdeo, som, numero, etc.)

32

e podendo ter mais de uma representao (perspectiva). As associaes constituem o nico elemento do diagrama que estabelece um relacionamento entre as classes. O rtulo, que descreve o significado da associao e a cardinalidade so inseridas s associaes.

Figura 2.4.3 Notao para generalizao

Figura 2.4.4 - Notao para agregao

A generalizao ou herana diferencia superclasses das subclasses. Onde cada subclasse herda os atributos das superclasses.

Figura 2.4.5 Notao para atributos de Associao

33

Figura 2.4.6 Notao para associao ternria

Figura 2.4.7 Notao para associao com classes

O modelo de objetos do OMT combina conceitos de orientao a objeto, como classe e herana, com conceitos de modelagem de informaes, como entidades e associaes. No podemos afirmar que o modelo seja completo, porm fornece as primitivas necessrias para modelar uma classe abrangente de problemas da realidade. E o modelo de objetos particularmente interessante para a hipermdia, pois: Define relacionamentos entre objetos permitindo relaes nrias com restries de cardinalidade simples definidas sobre os objetos; Trata os relacionamentos como construes explicitas, e no como atributos em cada classe.

A semntica do domnio da aplicao capturada no modelo de objetos. Em aplicaes hipermdia, cada classe do modelo de objetos candidata a ser mapeada em um ou mais tipos de ns, porm tambm pode ocorrer de vrias

34

classes darem origem a apenas um tipo de n. As associaes so candidatas a serem elos ou estruturas de acesso, dependendo da cardinalidade e do tipo de acesso desejado. Este tipo de deciso no realizado no modelo de objetos, porm com as operaes previstas no OMT, pode-se ter uma idia de sua utilizao mais adiante.

2.4.2 O modelo de Hiperobjetos Durante a etapa de modelagem de hiperobjetos um refinamento do modelo de objetos realizada. A separao desses modelos necessria, pois muitas aplicaes possuem um modelo conceitual pronto, neste caso, pode-se reutilizar o modelo de objetos para definir os demais modelos. no modelo de objetos que algumas decises do projeto devem ser includas. A nfase do modelo de hiperobjetos est em: Definir novas associaes e novas classes que estabelecem caminhos desejados (e no capturados no modelo conceitual de objetos); Identificar as diferentes mdias que sero utilizadas; Identificar as classes abstratas

2.4.2.1 Novas Associaes e Classes Segundo o autor Nemetz (1995, pg 58), na modelagem de objetos captura somente os objetos e as associaes do domnio da aplicao. Porm em aplicaes hipermdia, deseja-se freqentemente adicionar novas associaes para a navegao. Da mesma forma, pode ser interessante a incluso de classes de objetos que no foram identificadas no modelo conceitual, mas que enriquecem a aplicao. A organizao hierrquica muitas vezes necessria, pois a tendncia de se estruturar as informaes de modo hierrquico muito freqente. Como afirma Conklin (1987): ... a abstrao um importante processo cognitivo, e as estruturas hierrquicas so as estruturas mais naturais para organizar nveis de abstrao As hierarquias so apresentadas no modelo conceitual na forma de generalizaes e agregaes. As agregaes devem ser definidas cuidadosamente,

35

pois sua especificao importante quando a definio do modelo de navegao for realizada, dessa forma, pode-se construir boas estruturas navegacionais. Porm a real importncia de um hipertexto est na possibilidade de se construir associaes no hierrquicas. O modelo de hiperobjetos permite ao projetista estabelecer novas associaes no hierrquicas, que muitas vezes no aparecem no modelo conceitual. 2.4.2.2 Mdias Uma das diferenas entre as aplicaes tradicionais e aplicaes multimdia o uso de diferentes mdias, como udio, vdeo, imagem e animao. no modelo de hiperobjetos que o projetista decidi sobre onde utiliz-las, definindo classes especificas para objetos multimdia. Cada classe pode ser especificada em termos de comportamento, atravs de operaes. Por exemplo, um vdeo pode possuir operaes tradicionais, familiares ao usurio, como play, stop, pause. Caso o udio no puder ser interrompido, as operaes stop e pause no seriam definidas.

Figura 2.4.8 Classe de Mdia

2.4.2.3 Classes Abstratas Uma classe concreta uma classe que pode possuir instncias diretas. Classes que no possuem instncias diretas so classificadas como classes abstratas. Porm suas descendentes possuem instncias diretas. A diferenciao entre classes concretas e abstratas feita atravs de uma marcao no diagrama de classes, onde as classes abstratas so marcadas com uma linha dupla. Na figura 2.4.9, a classe Artista Plstico uma classe abstrata. No exemplo abaixo, todos os artistas plsticos so Pintores, Escultores ou Desenhistas. Estas trs classes so concretas

36

Figura 2.4.9 Exemplo de classe abstrata e concreta

As classes abstratas devem ser identificadas pelo projetista, para que elas sejam utilizadas no modelo de interface. 2.4.3 O Modelo Navegacional As associaes so entidades conceituais teis para a modelagem conceitual. E no modelo de objetos, uma associao uma abstrao que indica os relacionamentos entre as classes. Durante o projeto de navegao, estratgias so criadas para guiar a implementao dessas associaes. A forma de representao de uma associao muito importante, pois esta pode ser um elo, um conjunto de elos ou uma estrutura de acesso. Por isso, cada associao deve ser bem analisada, levando em conta a utilizao destas na aplicao. Os contextos de navegao tambm so definidos no modelo de navegao. Estes contextos enriquecem a semntica dos elos, e servem como entrada para o modelo de interface. A idia de contextos de navegao, segundo o autor Nemetz (1995), inspirada na aplicao Art Gallery e em Schwabe (1994) e Garzotto (1994). Todo objeto faz parte de um contexto pr-definido (default) e pode estar associado a outros contextos. Por exemplo, uma pintura pode ser vista no contexto pintores ou no tipo de pintura. Na figura, a pintura Uma Alegoria faz parte de dois contextos. No contexto pintores, a pintura Uma Alegoria faz parte das obras de Botticceli. No contexto tipo de pinturas, a pintura do tipo Alegorias. Nos dois

37

casos, a pintura a mesma, porm a navegao leva em considerao o contesto pelo qual foi acessada.

Figura 2.4.10 Uma pintura em dois contextos

H dois tipos de navegao, a navegao sensvel ao contexto ou independente de contexto. A navegao sensvel ao contexto leva em considerao o contexto corrente. E na navegao independente de contexto, ao percorrer um elo, assume o contexto default do objeto alcanado. Os pontos de entrada, de cada contexto, devem ser definidos. Indicando assim, os pontos de onde se pode iniciar a navegao. 2.4.3.1 Cardinalidade A cardinalidade de uma associao pode ser classificada como: umpara-um, um-para-muitos, e muitos-para-muitos. Uma tabela 2.1 contm todas as associaes com as classes participantes e as cardinalidades so construdas para facilitar a definio dos elos e as estruturas de acesso.

Associao

Participantes

Cardinalidade

Direo

Tabela 2.1 Tabela de Associaes

2.4.3.2 Direo e Backtrack As associaes podem ser unidirecionais ou bidirecionais. O conceito de associao bidirecional e o mecanismo de backtrack podem ser confundidos, importante que isso no acontea. O mecanismo Backtrack volta ao ltimo n alcanado. No significa que exista uma relao semntica ou de

38

navegao entre estes ns. Portanto, o backtrack sempre possui a mesma semntica, independente da direo da associao. 2.4.3.3 Elos Cada tipo de elo originado por uma associao. O HMT no trabalha com o conceito de elos com mltiplos destinos e elos bidirecionais. O tipo bsico de um elo no HMT possui uma origem e um destino, alm de informaes sobre contexto e de backtrack. Os elos com mltiplos destinos, que seriam a implementao das associaes 1: N, so preteridos por estruturas de acesso. Estas so mais genricas e possuem uma semntica bem definida. Uma opo seria o conjunto de elos, que poderia ser tratado como vrios elos e um mesmo tipo. Os elos bidirecionais podem causar conflitos semnticos, pois estes contm decises de projeto que so implcitas. Se a associao for bidirecional, cada direo devera ter um tipo de elo ou estrutura de acesso especificado. O tipo de elo representado por uma classe que captura suas propriedades e o seu comportamento. O comportamento bsico de um elo simples o de seguir para o seu destino. Porm, a flexibilidade do modelo de objetos permite a adio de objetos que podem, por exemplo, restringir o acesso a determinados usurios ou at mesmo disparar outros programas. O comportamento do elo deve ser especificado ainda em termos de quais transformaes ocorrem com o contexto de navegao corrente quando o elo percorrido.

2.4.3.4 Estruturas de Acesso: ndices e Roteiros Guiados Segundo o autor Nemetz (1995, pg 66), a escolha das estruturas de acesso depende da cardinalidade, da direo e do tipo de navegao que se quer implementar. No HMT as estruturas de acesso so as estruturas do RMD

(Relationship Management Design): ndices, roteiros guiados e roteiros guiados indexados. A notao utilizada tambm a mesma. As estruturas de acesso, assim como os elos, podem ser livres ou sensveis ao contexto de navegao. A definio de estruturas de acesso feita em conjunto com a definio dos tipos de elos, com base na tabela de associaes.

39

Classe 1 Associao

Classe 2

Cardinalidade

Tipo de Elo/ Estrutura de acesso

Tabela 2.2 Tabela de associaes com tipos de elos e estruturas de acesso

O diagrama de navegao contm as estruturas de acesso e os pontos de entrada. A figura 2.4.11 apresenta um diagrama de navegao parcial para a aplicao Art Gallery. Os pontos de acesso so definidos para o Pintor e Tema. Entre Pintor a Pintura definido um Roteiro Guiado Indexado e entre Tema e Pintura um Roteiro guiado.

Figura 2.4.11 Diagrama de navegao

2.4.4 O Modelo de Interface no modelo de interface que os projetistas descrevem a forma em que as informaes sero apresentadas ao usurio. O projeto de interface envolve a definio dos layouts de tela, a definio da aparncia dos objetos e as identidades visuais. Esta definio baseada nos modelos de hiperobjetos e de navegao. 2.5 EORM O Enhanced Object-Relationship Model (EORM) (Lange, 1994) um mtodo orientado a objetos para aplicaes hipermdia baseado na metodologia Object Modeling Technique (OMT) (Rumbaugh, 1991). O EORM um mtodo de uso geral e se mostrou particularmente til no projeto de aplicaes hipermdia devido a algumas caractersticas:

40

Fornece a captura da semntica dos objetos do domnio, o que caracteriza as aplicaes hipermdia; Traz algumas vantagens de abstraes orientadas a objetos em aplicaes hipermdia; Pode simplificar a integrao de aplicaes hipermdia com sistemas de informao desenvolvidos sob o paradigma orientado a objetos;

Um instrumento de apoio e um construtor de interface, aliados a uma base de dados orientada a objetos, fornece uma plataforma eficiente para o desenvolvimento;

2.5.1 Enhanced O-R Model O modelo orientado a objetos representa uma relao bidirecional entre dois objetos com a criao de um atributo onde cada objeto aponta no outro objeto. Porm a informao sobre a relao dividida entre duas classes, dificultando a compreenso e a captura da semntica da relao. Para um melhor entendimento e pra facilitar a modelagem, os relacionamentos so definidos como classes que possuem estrutura e comportamento prprios. Dessa forma, possvel capturar a estrutura bsica e as propriedades complexas destes relacionamentos, como a semntica de ligaes hipermdia. A semntica hipermdia de um relacionamento modelada definindo-se classes e hierarquias de ligaes e associando as semnticas dessas ligaes aos relacionamentos. Essas semnticas podem conter funes bsicas para criao e remoo das ligaes. Se houver necessidade de estender a semntica em qualquer sentido, pode-se utilizar o mecanismo de herana. Figura 2.5.1 pode-se observar esses relacionamentos: Na

41
simpleLink date create(d) traverse()

numberedLink number setNumber(n) getNumber()

previewLink traverse() continue()

Figura 2.5.1 Uma hierarquia simples de classe de ligao

A Figura 2.5.2 mostra as trs fases do mtodo de projeto EORM: a estrutura de classes, a estrutura de composio e a estrutura de interface grfica do usurio (GUI).
Identify Identify compositions

Classes

Identify - atributes - operations - inheritance

Class Framework

Composition Framework

Identify - domain - cardinality - invariants - attributes - operations - inheritance

GUI Framework
Identify windows e presentations

Map - attributes -> fields/presentations - operations -> events/menues


Figura 2.5.2 - Viso geral do mtodo do projeto EORM (Lange, 1994)

A estrutura da classe composta por uma biblioteca reusvel de definies de classes. Duas atividades esto relacionadas a essa estrutura: Identificao e refinamento de classes. 2.5.1.1 Identificao de classes Na etapa de identificao de classes procura-se

identificar as

classes relevantes a partir do domnio da aplicao. Deve -se identificar todas as classes possveis no domnio. Porm a lista de classes pode conter classes

42

desnecessrias ou incorretas. Dessa maneira, deve-se seguir alguns critrios, citados logo a seguir, para a identificao das classes: Classes Irrelevantes: as classes que no tem nada em comum com o problema devem ser eliminadas; Classes no especficas: as classes que no foram bem definidas e no sero muito teis; Classes redundantes: so classes que contem a mesma informao de uma classe j definida; Relacionamentos: os relacionamentos sero tratados mais adiante como classes, porm nesse momento devem ser eliminados da lista de classes; Atributos: as classes que no possuem existncia

independente, devem ser consideradas atributos de outras classes; Operaes: um nome pode representar uma operao ao invs de uma classe. 2.5.1.2 Refinamento de classes Na etapa de refinamento das classes ser feito o detalhamento das informaes de cada classe atravs da definio de seus atributos, operaes e relacionamentos de herana. 2.5.1.2.1 Adicionando Atributos Os atributos so considerados propriedades de uma classe. Porm alguns atributos so desnecessrios e devem ser evitados, como os mostrados a seguir: Derivados: os atributos que podem ser calculados a partir de outros atributos devem ser eliminados; Identificadores: identificao atribudo Todas a as todos os objetos de se uma criar

nica.

tentativas

identificadores explcitos para um objeto deve ser eliminada; Objetos: caso um atributo possua um ciclo de vida independente, transforma-se em um objeto;

43

Detalhes: deve-se omitir atributos que existem somente para afetar uma operao.

2.5.1.2.2 Adicionando Operaes As operaes definem o comportamento de uma classe. importante compreender que as operaes de uma classe abrangem somente os aspectos funcionais dessa classe, ou seja, o comportamento local da classe, excluindo a interao do comportamento que capturada pela composio, que ser abordada logo a seguir.

2.5.1.2.3 Introduo de Herana A introduo de herana descreve situaes onde diferentes classes so combinadas para formar uma nova classe virtual. A herana pode ser

considerada uma generalizao de classes existentes em novas super-classes ou como uma especializao de classes existentes em novas sub-classes. 2.5.2 A estrutura de composio A estrutura de composio composta por uma biblioteca reusvel de definies de classes de ligaes (links). Duas atividades esto relacionadas a essa estrutura: a identificao de composio e o refinamento de composio. 2.5.2.1 Identificao de composio A primeira etapa identifica as composies das classes do domnio da aplicao. Uma composio definida com um participantes do relacionamento relacionamento, as classes

e sua cardinalidade, e a semntica do

relacionamento. Para executar a identificao das composies necessrio procurar por classes que se relacionem entre si. Porm, devem-se tomar alguns cuidados para a eliminao de relacionamentos desnecessrios: Relacionamentos irrelevantes: os relacionamentos que no pertencem ao domnio e os relacionamentos com somente uma classe participando do domnio devem ser eliminados; Relacionamentos derivados: os relacionamentos que podem ser expressos em termos de outro relacionamento tambm devem ser omitidos.

44

2.5.2.2 O refinamento das composies Na etapa de refinamento das composies so definidos os domnios e a cardinalidade dos participantes, e atribui-se semntica s classes de ligao para cada composio. 2.5.2.2.1 Definio do domnio e cardinalidade Na definio do domnio e da cardinalidade o domnio dado, porm preciso considerar se o domnio deve ser generalizado em superclasses. A cardinalidade das classes participantes deve ser definida como um-para-um, umpara-muitos ou muitos-para-muitos. 2.5.2.2.2 Definio de Invariants Para assegurar a integridade dos dados as invariantes so definidas para as composies. As invariants podem ser categorizadas como: invariants relacionadas com as ligaes (links) e invariants relacionadas com a composio. 2.5.2.2.3 Definio da semntica das ligaes A definio da semntica das ligaes resulta em uma hierarquia de classes de ligaes definidas com base em critrios como: Tipo de relacionamento: caracteriza o relacionamento como uma estrutura representacional para dados simples (link) ou como uma ligao hipermdia (link hipermdia); Direo: definido se um relacionamento (link) ser atravessado em somente uma direo. Freqncia: os relacionamentos sero comparados de acordo com a freqncia em que esses so utilizados; Propriedades Estticas/ Dinmicas: uma anlise ser

realizada para classificar os relacionamentos como estticos ou dinmicos; Densidade populacional: uma avaliao dir se os objetos pertencentes ao relacionamento so muito grandes. Pois uma quantidade grande de objetos no relacionamento implica em uma quantidade grande de ligaes consumindo muito espao;

45

Comportamento: Se existires relacionamentos que possuam um comportamento particular, esse deve ser descrito.

Com respeito ao uso de classes de ligaes (links) podemos considerar: Compartilhamento: caso alguma semntica seja

compartilhada entre duas ou mais composies, essas devem compartilhar classes de ligaes; Herana: Se uma classe de ligao consiste em uma especializao de uma outra classe de ligao, deve-se usar herana. 2.5.3 A estrutura GUI A estrutura GUI consiste na especificao de uma biblioteca reusvel de definies de apresentaes. Duas atividades esto relacionadas a essa estrutura: apresentao e identificao de janelas, e o mapeamento de classes e composies para apresentao. 2.5.3.1 Apresentao e Identificao de janelas Nessa etapa, a interface com o usurio analisada em todo o sistema. De inicio realizada a definio das janelas (as aplicaes e o navegador) do domnio. Aps essa definio, so determinadas as apresentaes que aparecero na tela. 2.5.3.2 O mapeamento de classes e composies A etapa de mapeamento considera como os atributos e as operaes de classes so mapeados para a apresentao, como os eventos so conectados as operaes e como a funcionalidade a atribuda aos menus. 2.6 HBMS/M O hypertext based on statecharts/ Method (HBMS/M) (Carvalho, 1998) um mtodo que d suporte a projetos de aplicao multimdia grandes e complexos. O mtodo possui quatro fases: modelagem conceitual, modelagem navegacional, modelagem da interface, implementao e teste. Os produtos gerados em cada fase so incrementados ou melhorados na fase posterior, logo, o produto

46

gerado na fase de Modelagem Conceitual incrementado na fase de Modelagem Navegacional e assim sucessivamente at a ltima fase do modelo. As melhorias acrescentadas nos modelos de uma das fases devem ser especificadas nos modelos das fases anteriores, permitindo assim um desenvolvimento iterativo. A figura 2.6.1 apresenta as quatro fases do mtodo:
Especificao dos Requisitos Documentos de Requisitos

Modelo de Objetos

Modelo de Fatias

Especificao dos Contextos de Navegao Modelo Navegacional de Tipos Modelo Navegacional de Instncias

Modelagem da Interface Canais Implementao e Teste

Aplicao Final

Figura 2.6.1 Fases do Mtodo HBMS/M

2.6.1 Modelagem Conceitual Na primeira etapa, modelagem conceitual, realizada a anlise do domnio e procura-se representar a semntica em modelos que possam ajudar a identificar informaes relevantes da aplicao hipermdia. O modelo conceitual composto por dois modelos: o modelo de objetos e o modelo de fatias.

47

2.6.1.1 O modelo de Objetos O modelo de objetos baseado no mtodo de desenvolvimento de software orientado a objetos Fusion (Coleman et al., 1994). O modelo visa identificao das informaes relevantes ao domnio da aplicao e dos seus

relacionamentos. Classes, relacionamentos e atributos so classificados como tipos primitivos. As classes so utilizadas para representar os objetos do domnio, os atributos representam as propriedades do objeto, e os relacionamentos associativos representam as ligaes entre eles. O conceito atributo foi estendido para fornecer suporte a atributos multitipados, ou seja, um mesmo atributo pode ser representado por vrios tipos e dados associados, como por exemplo, som, texto, imagem, vdeo. Especificando diferentes formas de apresentao. As aparncias de um atributo so denominadas perspectivas, adotando a mesma nomenclatura utilizada no HDM e no OOHDM. A figura 2.6.2 mostra uma verso simplificada do modelo de objetos para o Parque Ecolgico de So Carlos. So apresentadas as classes Parque Ecolgico e Animal e o relacionamento abriga/ abrigado.

Parque_Ecolgico Nome: [String+,Video] logotipo:imagem endereo:[Texto+,Imagem,udio] dicas_para_visitantes:Texto informaes_gerais:Texto curiosidades:Texto

Abriga/_abrigado

Animal nome_cientfico:String nome_popular:String famlia:String peso:Nmero tamanho:Nmero perodo_de_vida:Nmero perodo_de_incubao:Nmer o hbito_alimentar:Texto foto:[Imagem+,Vdeo] distribuio_geogrfica:Texto informaes_gerais:Texto Extino:Booleano

Figura 2.6.2 Verso Simplificada do modelo de objetos

O atributo endereo da classe Parque Ecolgico representado por endereo: [Texto+, Imagem, udio], indicando que a informao associada ao atributo pode ser apresentada de trs formas: a perspectiva Texto, que pode conter descrio textual da localizao do parque; a perspectiva Imagem, que pode conter um mapa de sua localizao; e a perspectiva udio, que pode ser uma narrao

48

sonora da descrio textual. O sinal + indica que a perspectiva Texto a default, ou seja, a perspectiva sob a qual o atributo ser inicialmente mostrado. 2.6.1.2 O modelo de fatias O modelo de

fatias

agrupa

somente

as

informaes

relacionamentos que sero implementados como parte da aplicao, ou seja, determina como a informao de uma classe escolhida agrupada para ser apresentado ao usurio. Uma fatia agrupa um ou mais atributos de uma dada classe. Existem dois tipos fundamentais de fatias: a fatia principal e a fatia de ligaes. A fatia principal a primeira a ser apresentada quando uma determinada classe for acessada. E a fatia de ligaes agrupa os relacionamentos de cada classe. Outras fatias podem ser criadas conforme os atributos que cada classe possui. Por exemplo, os atributos da classe Animal podem ser agrupados em trs fatias: a fatia Principal Descrio contendo os atributos que descrevem o animal textualmente; a fatia Foto_Imagem com os atributos que identificam o animal atravs de imagem; e a fatia Foto_Vdeo com os atributos que identificam o animal atravs de um vdeo. 2.6.2 Modelagem Navegacional Na etapa da modelagem navegacional, os modelos produzidos na etapa anterior so reorganizados de acordo com o perfil dos usurios e as tarefas que sero suportadas pela aplicao. Durante esta fase, os contextos de navegao (conceito introduzido pelo OOHDM) so especificados, permitindo reunir

informaes do domnio de aplicao que esto relacionados segundo alguns critrios, por exemplo, todos os animais da famlia Rptil. As estruturas de acesso so utilizadas para especificar os contextos de navegao no modelo navegacional de tipos. Dois tipos de modelos navegacionais so criados: o modelo navegacional de tipos e o modelo navegacional de instncias. 2.6.2.1 O modelo navegacional de tipos O modelo navegacional de tipos caracteriza-se por representar uma viso navegacional dos modelos conceituais da etapa anterior, incluindo a especificao dos contextos de navegao e das estruturas de acesso. Os relacionamentos existentes no modelo de fatias so substitudos por uma ou mais estruturas de acesso, que especificam os diferentes caminhos de navegao

49

disponveis para acessar as informaes do hiperdocumento. As estruturas de acesso (definidas no RMM) utilizadas so: ligao, ndice, roteiro guiado, roteiro guiado indexado e agrupamento.

abriga Parque_Ecolgico Menu_Animal Fatia: Principal nome: String logotipo:Imagem Fatia: Endereo nome: String endereo: Texto endereo: Imagem endereo: udio

Fatia: Geral nome: String informaes_gerais: Texto

Por Nome ______________ ______________ ______________ ndice_Nome

Por Famlia ______________ ______________ ______________ ndice_Famlia

Geral

Extino

Roteiro 1

Roteiro 2

Fatia: Dica nome: String dicas_para_visitantes: Texto

Fatia: Curiosidade nome: String curiosidades: Texto _abrigado

Animal Fatia: Descrio nome_cientfico: String nome_popular: String famlia: String peso: Nmero tamanho: Nmero perodo_de_vida: Nmero perodo_de_incubao: Nmero hbito_alimentar: Texto informaes_gerais: Texto Fatia: Foto_Imagem nome_cientfico: String nome_popular: String foto: Imagem

Fatia: Foto_Vdeo nome_cientfico: String nome_popular: String foto: Vdeo

Figura 2.6.3 Exemplo simplificado do modelo navegacional de tipos (Turine, 1998)

A Figura 2.6.3 apresenta uma verso simplificada do modelo navegacional de tipos para o Parque Ecolgico de So Carlos. Neste exemplo, existem quatro contextos para obter informaes sobre os animais: duas estruturas ndice que apresentam os animais em ordem alfabtica de nome (ndice_Nome) e de famlia (ndice_Famlia), e dois roteiros guiados, o Roteiro 1 especifica um caminho linear por todos os animais em uma ordem arbitrria e o Roteiro 2 especifica um caminho por todos os animais em extino. 2.6.2.2 O modelo navegacional de instncias O modelo navegacional de instncias adota o Hyperdocument Model Based on Statecharts (HBMS) (Turine, 1998) para especificar a estrutura organizacional e a semntica de navegao identificados no modelo navegacional de tipos. Esse modelo pode ser derivado do modelo navegacional de tipos, eventualmente adicionado de contextos navegacionais. Um conjunto de regras foi estabelecido para a derivao do modelo navegacional de tipos para o modelo

50

navegacional de instancias, onde as instncias das classes e dos relacionamentos do modelo navegacional de tipos so modeladas em termos de estados e transies. 2.6.3 Modelagem da Interface Na Modelagem da Interface so especificados os objetos navegacionais (pginas, ncora, ligao) e os objetos de apresentao (canais) que definem a aparncia dos mesmos. 2.6.4 Implementao e testes Durante a Implementao e Teste, o modelo navegacional e o modelo de interface so mapeados em objetos concretos de um determinado ambiente, cujo resultado a aplicao final.

51

COMPARATIVO ENTRE OS MTODOS Os mtodos analisados neste trabalho possuem diversas diferenas.

A Tabela 1 apresenta uma anlise comparativa entre eles, sob um ponto de vista genrico. Os critrios utilizados so os seguintes: a) Metodologia: o mtodo oferece um roteiro lgico de etapas dentro de um processo de desenvolvimento? b) Modelagem do domnio: qual a abordagem utilizada para analisar e descrever os dados do domnio? c) Modelagem de navegao: quais os mecanismos utilizados para representar os aspectos navegacionais?

Metodologia HDM RMM OOHDM EORM HMBS/S HTM NO (nfase na fase de modelagem do domnio) SIM SIM NO (Orientao a Objetos Estendida) SIM SIM

Modelagem do domnio Modelo entidade relacionamento Modelo entidade relacionamento Modelo Orientado a objetos Modelo Orientado a objetos Modelo Orientado a objetos Modelo Orientado a objetos

Modelagem de Navegao Navegao padro e estruturas de acesso comuns Estruturas de acesso mais ricas Estruturas de acesso e contextos navegacionais Composies Estruturas de acesso e contextos navegacionais Estruturas de acesso e contextos navegacionais

Tabela 3.1 Comparativo entre os mtodos estudados

Quanto metodologia(a), os mtodos RMM, OOHDM, HTM, HMBS/S oferecem uma abordagem mais refinada, sistemtica e abrangente; como o HDM se concentra apenas na modelagem dos dados do domnio, no possvel afirmar que possui um roteiro de etapas; o EORM estende uma metodologia orientada a objetos com uma fase de associao da semntica de ligaes hipermdia aos relacionamentos, o que no implica em uma ordem lgica de etapas.

52

Quanto modelagem do domnio(b) o HDM e o RMM so baseados no modelo entidade-relacionamento; o OOHDM, o HTM, o EORM e o HMBS/M utilizam abstraes orientadas a objetos. Para a modelagem de navegao(c), o HDM e o RMM utilizam estruturas de acesso (ndices e roteiros), mas o RMM fornece primitivas mais ricas; o EORM utiliza composies para a modelagem da navegao; o OOHDM, alm das estruturas de acesso comuns, tambm utiliza primitivas de alto nvel chamadas de contextos navegacionais. O HMBS/M utiliza estruturas de acesso (baseadas nas do RMM) e contextos de navegao (conceito introduzido pelo OOHDM). O HDM foi o primeiro modelo amplamente conhecido para o projeto de hipermdia. Concentra-se na construo do modelo conceitual da aplicao, sem levar em considerao detalhes de implementao. Este mtodo no detalha outras etapas do ciclo de desenvolvimento da aplicao hipermdia, como o projeto de interface e a construo dos ns. O modelo RMM se destina classe de aplicaes que exibem uma estrutura regular no domnio de interesse e que necessitam de freqentes atualizaes. Define vrias etapas onde so produzidos modelos que detalham os aspectos conceituais, navegacionais e de interface. O mtodo OODM um precursor do modelo HDM. Este mtodo utiliza mecanismos de abstrao e composio numa arquitetura orientada a objetos, que permite uma descrio concisa de informaes complexas e uma especificao de padres de navegao e interface. Fornece mecanismos para a descrio de relaes conceituais entre objetos do domnio, alem de definir suas estruturas e comportamentos. Suas principais caractersticas so: facilidade de manuteno e reutilizao. O EORM uma abordagem orientada a objetos e assim como o modelo HDM preocupa-se basicamente com a produo de um modelo conceitual da aplicao. Utiliza como base a metodologia OMT, e estende esta metodologia com construes para capturar a semntica das interaes entre os objetos. O Hypertext Model Based on Statecharts / Method (HMBS/M) um mtodo que foi desenvolvido para dar suporte a projetos de aplicao hipermdia grandes e complexos. Possui vrias etapas que geram os modelos conceituais, navegacionais, interface e de implementao.

53

O modelo HMT foi escolhido para auxiliar o desenvolvimento do prottipo do projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia pois foi considerado o mtodo mais adequado para essa aplicao. Os mtodos HDM e RMM so baseados no modelo entidaderelacionamento, por isso foram descartados. O modelo HDM d nfase ao modelo conceitual, e no detalha algumas fases importantes pra o desenvolvimento de

aplicao hipermdia. O OOHDM uma extenso orientada a objetos do modelo HDM, o mtodo possui a etapa da modelagem navegacional, descrevendo elos, estruturas de aceso e contextos navegacionais, porm visa construo do modelo conceitual de uma aplicao. O mtodo EORM procura capturar as classes e os relacionamentos do domnio, dando pouca importncia ao modelo navegacional que muito importante em uma aplicao. J o HBMS/M baseado no modelo orientado a objetos, porm indicado para aplicaes grandes e complexas. O mtodo HMT baseado no modelo orientado a objetos, possui o modelo de objetos que descreve os objetos do domnio da aplicao e seus relacionamentos, e a modelagem de navegao consegue fazer uma boa descrio dos elos, das estruturas de acesso e dos contextos de navegao, por isso foi selecionado para assistir o

desenvolvimento da aplicao implementada no estgio curricular.

54

4 4.1

APLICAO UTILIZANDO A FERRAMENTA HTM DESCRIO DA APLICAO O mtodo Hypermedia Modeling Technique (HTM) ser aplicado em

um projeto multimdia de anatomia humana que especifica o aparelho locomotor humano. O projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia pretende modelar as estruturas anatmicas em modelos 3D. Nesse software ser possvel a consulta sobre o Sistema sseo dividido nas seguintes regies: Cabea/ Pescoo, Membros Superiores, Tronco e Membros Inferiores. O usurio do sistema (acadmicos da rea de sade, mdicos relacionados a medicina desportiva, ortopedia e fisiatria, paramdicos da rea desportiva e fisioteraputica) poder navegar pelo sistema sseo e explorar o contedo do software, que apresentara as estruturas orgnicas em trs dimenses com animaes interativas. Todas as peas anatmicas sero acompanhadas de suas respectivas nomenclatura e um texto descritivo quando necessrio. Haver duas formas de pesquisa, uma ser pelas regies e a outra ser a possibilidade de fazer uma consulta pelo nome das peas anatmicas. 4.2 O MODELO DE OBJETOS O modelo de objetos construdo da mesma forma como recomenda Rumbaugh (1991): Identificar a Classes de Objetos; Identificar as associaes; Identificar atributos dos objetos e das associaes; Organizar e simplificar as classes utilizando a herana.

4.2.1 Classes de Objetos Segundo Nemetz (1995, pg 77), as classes relevantes so identificadas a partir do domnio do problema. Podem incluir entidades fsicas ou conceitos, contanto que faam sentido no domnio de aplicao. As classes irrelevantes, redundantes e vagas devem ser eliminadas.

55

A figura 4.2.1 apresenta as classes identificadas para a aplicao do projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia.

Figura 4.2.1 Classes identificadas para a aplicao do projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia.

4.2.2 Associaes As associaes so identificadas entre as classes. Qualquer dependncia entre as classes representa uma associao. Os atributos de uma classe no devem fazer referencias a classe, pois poderiam esconder um relacionamento importante. As associaes podem ser implementadas de diversas maneiras, mas este tipo de deciso tomado no modelo de navegao. A figura 4.2.2 mostra um esboo do digrama de objetos com suas associaes.

56

Figura 4.2.2 Modelo e Objetos com associaes

4.2.3 Atributos Cada classe possui um conjunto de propriedades de seus objetos chamados de atributos. Os atributos so descobertos de acordo com conhecimento que se adquire do domnio do problema. As associaes tambm podem possuir atributos, porm no foram identificados nesta aplicao. A figura 4.2.3 mostrar as classes com seus respectivos atributos.

57

Figura 4.2.3 Modelo de Objetos com atributos

58

4.2.4 Simplificao do modelo Verifica-se no modelo anterior, que as classes Cabea/ Pescoo, Membros Superiores, Tronco e Membros Inferiores possuem os mesmos atributos e as mesmas associaes. Neste caso, utiliza-se a herana como mecanismo de compartilhamento. A figura 4.2.4 contm a simplificao efetuada.

Figura 4.2.4 Simplificao de uma parte do modelo de objetos

4.3

O MODELO DE HIPEROBJETOS Para se construir o modelo de hiperobjetos, deve-se analisar cada

classe definida no modelo de objetos, verificando se todos os caminhos de acesso desejados fazem parte do modelo conceitual. Se a resposta for no, deve-se ento adicionar novas associaes e/ ou classes (Nemetz, 1995). O usurio ir procurar as peas anatmicas por regio. Onde a partir de uma regio se chegar a pea anatmica que se deseja visualizar. Por essa razo uma nova associao foi criada entre as classes Aparelho locomotor humano e Regio. Alm dessa associao, o relacionamento entre uma pea anatmica e outras peas anatmicas foi identificado. A hipermdia permite a organizao dos assuntos em diversos nveis de interesse. Para o projeto Modelagem De Estruturas Orgnicas Para Manipulao Em Produto Multimdia ser interessante a procura das peas anatmicas por seu nome. Por isso, foi criada uma nova classe, denominada ndice.

59

A figura 4.3.1 mostrar as novas classes e associaes em negrito.

Figura 4.3.1 Adicionando caminhos de acesso desejados

Os aspectos de multimdia so tratados no modelo de hiperobjetos. Atravs deste modelo, o projetista toma as decises sobre quais mdias faro parte da aplicao final. Deve-se analisar as classes que possuiro dados multimdia. Neste projeto, trs classes tero mdias: Aparelho Locomotor: ser representado por uma imagem; Pea Anatmica: representadas por imagens tridimensionais; Regio: apresentada por desenhos ou fotos.

60

As

decises

foram

representadas

atravs

de

um

artifcio

proporcionado pelo modelo de objetos. Onde cada classe ser representada por uma agregao da classe atual com a classe de mdia utilizada. A figura 4.3.2 apresenta as classes ApLocomotor_Imagem,

PAnatomica_3D e Regio_Desenho. Para exemplificar o uso deste recurso, foi inserida a operao da classe PAnatomica_3D. Os objetos dessas classes so zoom in e zoom out para visualizao das peas.

Figura 4.3.2 Adicionando as diferentes mdias

No modelo de hiperobjetos nada descrito sobre a aparncia das classes. H a indicao da existncia das informaes que sero apresentadas em mdias diferentes e o comportamento das classes. As classes abstratas devem ser diferenciadas das classes concretas. As classes abstratas da aplicao Locomoshow 3D so: Aparelho Locomotor, Pea

61

Anatmica e Regio. Essas classes devem ser marcadas um trao duplo, como mostra a figura 4.3.3.

Figura 4.3.3 Definindo as classes abstratas

4.4

O MODELO DE NAVEGAO A anlise das associaes pode ser feita facilmente caso essas

sejam listadas em uma tabela, juntamente com as classes participantes, a cardinalidade e a direo.

62

Associaes

Participantes

Consiste de Possui Possui Procura por Referencia Divide-se

Regio Pea Anatmica Pea Anatmica Nomenclatura Pea AnatmicaDescrio ndice Peca Anatmica Pea Anatmica Pea Anatmica Aparelho Locomotor Regio

Cardinalidade 1:1 1: N N: M ou N: 1 X X X X X X

Direo Uni Bi

X X X X X X

Tabela 4.1 Tabela de Associaes

A cardinalidade apresentada na tabela de associaes extrada do modelo de hiperobjetos. A escolha da direo da associao se unidirecional ou bidirecional uma deciso de projeto. Uma associao unidirecional se for possvel percorr-la em um nico sentido e, em uma associao bidirecional podese percorrer nos dois sentidos. A tabela apresenta associaes com ambas direes. A associao Pea Anatmica Descrio um exemplo de uma associao unidirecional, pois a partir de uma pea anatmica pode se buscar sua descrio, porm a partir de sua descrio no se pode chegar pea anatmica. J a associao Pea Anatmica Peca Anatmica representa uma associao bidirecional. Nesta associao uma pea anatmica referencia outra pea anatmica e essas outra pea anatmica tambm referencia a pea anatmica anterior. Atravs da tabela de associaes, pode-se definir os elos da aplicao hipermdia. Mas antes os contextos de navegao da aplicao devem ser definidos. 4.4.1 Contextos de Navegao A definio dos contextos de navegao realizada para evitar a desorientao do usurio. Por isso, deve-se dar uma ateno especial a este passo. Um contexto pode ser definido por uma classe ou por um conjunto de classes, pois no existe uma relao direta entre as classes do modelo de

63

hiperobjetos e os contextos. Em alguns casos, uma classe pode dar origem a mais de um contexto. Para a aplicao Locomoshow 3D oram identificados trs contextos navegacionais: Regies Pecas Anatmicas Nomes

A figura 4.4.1 mostra cada contexto de navegao delimitado por linhas coloridas.

Figura 4.4.1 Definindo os contextos navegacionais

64

Aps a definio dos contextos de navegao, a cada classe do modelo deve se assinalar um contexto default.No modelo apresentado, o contexto default da classe Pea Anatmica Peas Anatmicas. Mas esta classe pode estar associada a outros contextos, como Regies, caso queira examinar peas anatmicas de determinada regio, o contexto Regies tambm deve permanecer, e as pecas anatmicas acessadas sero somente dessa regio. A tabela 4.2 relaciona as classes do modelo com seus respectivos contextos default e outros contextos associados. Classe Contexto default Contextos Associados Aparelho Locomotor ndice Regio Pea Anatmica Regies Nomes Regies Peas Anatmicas Peas Anatmicas Peas Anatmicas Regies Nomes Nomenclatura Descrio Peas Anatmicas Peas Anatmicas
Tabela 4.2 Classes e seus respectivos contextos

4.4.1.1 Navegao Sensvel ao Contexto A navegao sensvel ao contexto leva em considerao o contexto corrente na hiperbase. 4.4.1.2 Navegao Livre de Contexto A navegao livre de contexto no considera o contexto corrente na hiperbase. O novo contexto assumido passa a ser o contexto default da classe a que pertencer o n. Na aplicao Lomoshow 3D, uma pea anatmica pode fazer referencia a outra pea anatmica. A navegao entre estas peas anatmicas livre de contexto.

65

4.4.1.3 Tipos de Elos e Estruturas de acesso Uma associao pode gerar um elo, um conjunto de elos ou uma estrutura de acesso. A navegao pode ser sensvel ou livre de contexto. Os elos podem ser uni ou bidirecionais. As estruturas de acesso podem ser ndices, roteiros guiados ou roteiros indexados. (como no RMD). Um elo simples estabelece um vnculo e um sentido, guardando informaes de contexto e de backtrack. Pode ser representado por uma classe, que permite a criao uma hierarquia de elos como no EORM (Nemetz, 1995). A tabela de associaes foi utilizada para gerar a tabela que ser apresentada a seguir. As associaes bidirecionais foram rescritas, pois cada sentido da associao possui uma interpretao diferente. Onde no houver indicao contrria, a navegao pelo elo sempre livre de contexto.

66

Classe 1

Associao

Classe 2

Cardinalidade

Tipo de Elo/ Estrutura de Acesso

Regio

Consiste de

Pea Anatmica

1: N

Roteiro Indexado ao contexto

guiado sensvel

Pea Anatmica Pea Anatmica ndice

Possui

Nomenclatura

1: 1

1 elo simples

Possui

Descrio

1: 1

1 elo simples

Procura por

Pea Anatmica

1: 1

1 elo simples

Pea Anatmica Aparelho Locomotor Regio

Referencia

Pea Anatmica

1: N

N elo simples

Divide-se

Regio

1: 4

ndice Sensvel ao contexto

Pertence

Aparelho Locomotor

1: 1

1 elo simples

Pea Anatmica

Pertence

Regio

1: 1

1 elo simples

Tabela 4.3 Tabela de associaes com tipos de elos e estruturas de acesso

4.4.1.4 Pontos de Entrada Os pontos de entrada so definidos a partir do modelo de objetos com os contextos de navegao estabelecidos. Estes pontos de entrada so os pontos de acesso inicial, que devem estar disponveis ao usurio. A figura 4.2.2 mostra uma simplificao do modelo de hiperobjetos, com as classes que servem como ponto de entrada marcadas com uma seta dupla.

67

Figura 4.4.2 Identificando os pontos de entrada

Geralmente os pontos de entrada so definidos por contextos. Mas um contexto pode no possuir um ponto de entrada. Na aplicao Locomoshow 3D, o acesso por pea anatmica desnecessrio, pois para esse software foi determinado que antes de acessar qualquer pea anatmica ter que entrar por um outro contexto. As classes que no possuem pontos de entrada, por exemplo, a classe Descrio, significa que no poder conhecer a descrio de uma pea anatmica sem antes passar pela pea anatmica propriamente dita, j que para se acessar a classe Descrio preciso entrar por um dos pontos de entrada, passar pela classe Pela Anatmica, e assim acessar a classe Descrio.

4.4.1.5 Diagrama de navegao O diagrama de navegao proporciona uma viso geral da navegao pelas estruturas de acesso e dos pontos de entrada. A figura 4.4.3 apresenta o diagrama de navegao.

68

Figura 4.4.3 Diagrama de Navegao

4.5

O MODELO DE INTERFACE Os projetistas descrevem de que forma as informaes sero

apresentadas ao usurio atravs do modelo de interface. A tela ser dividida em reas. Cada uma com um propsito definido. A figura 4.5.1 mostra o layout da tela do projeto Locomoshow 3D.

1- Contedos 2- Controle de Navegao entre contextos


Figura 4.5.1 - Layout do Projeto

69

O desenvolvimento de aplicaes que envolvem a interao com objetos 3D deve prever um cuidadoso estudo quanto utilizao de tcnicas de interao que provem usabilidade e ergonomia adequadas, pois a meta que os usurios se concentrem mais no objetivo de suas tarefas do que nas atividades motoras necessrias para realizar a interao. Este estudo envolve o usurio e a natureza de suas aes. necessrio que se entenda o usurio para poder desenvolver ferramentas com as quais os usurios trabalhem de forma natural e objetiva. O trabalho de GUSKUMA (2005) procura entender as variveis que tornam um sistema ergonmico e com alta usabilidade e aplicar as tcnicas disponveis no software Locomoshow 3D.

70

CONCLUSO Os sistemas de aplicaes hipermdia compem importantes

ferramentas para tratar informaes no estruturadas atravs de uma interface amigvel, e tm sido utilizados em diversas reas de aplicao. Os mtodos de modelagem para sistemas hipermdia so baseados nos mtodos de aplicaes tradicionais, porm os conceitos da engenharia de software convencionais no conseguem realizar todas as etapas para criao de projetos baseados em hiperdocumentos, como a navegao e a interatividade. Neste trabalho foram apresentados os principais mtodos de modelagem de aplicaes multimdia, levantando as caractersticas mais

importantes de cada mtodo. Os modelos HDM e o RMM so baseados no modelo entidade-relacionamento, onde o mtodo HDM visa construo da estrutura conceitual da aplicao, mas tende a ignorar o projeto de navegao e da interface do usurio. J o modelo RMM indicado para aplicaes que possuem uma estrutura regular de domnio, porm necessitam de freqentes atualizaes. J os modelos OOHDM, HTM, EORM e o HMBS/M utilizam abstraes orientadas a objetos. O modelo OOHDM descendente do mtodo HDM, difere-se por ser orientada a objeto e nisso inclui o propsito especial que modela a navegao e a interface. O HMT aborda aspectos importantes para a interao do usurio com a aplicao. O EORM uma modelagem orientada a objetos que utiliza mecanismos de abstrao conhecidos para a construo de modelos de relacionamentos entre os objetos do domnio. E o modelo HMBS/M um mtodo que foi desenvolvido para dar suporte a projetos de aplicao hipermdia grandes e complexos. Os mtodos de modelagem para aplicaes multimdia estudados e apresentados iro auxiliar no processo de desenvolvimento de sistemas. O comparativo entre os mtodos ser til para projetistas de aplicaes hipermdia e multimdia para que possam analisar e escolher um mtodo adequado para seu projeto. O mtodo HMT foi escolhido para auxiliar o desenvolvimento do prottipo implementado durante o estgio curricular. O HMT foi selecionado por ser uma tcnica mista. Utiliza como modelo de dados o modelo orientado a objetos, que oferece uma abstrao maior dos dados. E ainda envolve outros conceitos como:

71

estruturas de acesso e idias de contextos navegacionais. O estudo de caso pode ainda auxiliar o desenvolvimento e a implementao final do projeto.

72

REFERNCIAS

BIEBER, M., ISAKOWITZ, T. Introduction to the special Communication ACM issue on Designing Hypermedia Applications. Communications of the ACM, v.38, n.8, p.26-29, 1995. CARVALHO, M.R. HMBS/M Um mtodo orientado a objetos para o projeto e o desenvolvimento de aplicaes hipermdia. So Carlos, 1998. 133p. Dissertao (Mestrado) Instituto de Cincias Matemticas e de Computao, Universidade de So Paulo. COLEMAN, D. et al. Object-oriented development: The Fusion Method. Prentice Hall, 1994. GARZOTTO, F., MAINETTI, L., PAOLINI, P. Hypermedia Design, Analysis, and Evaluation Issues. Comunications of the ACM, v.38, n.8, p.74-86, 1995. GARZOTTO, Franca; PAOLINI, Paolo. HDM A Model-Based Approach to Hipertext Application Design. ACM Transaction on Information Systems, vol. 11, n 1, January 1993, pages 1-26. GUSKUMA, J.A. Ergonomia e Usabilidade na Manipulao de Objetos 3D. Londrina, 2005. Dissertao Cincia da Computao, Universidade Estadual de Londrina. HARDMAN, L., BULTERMAN, D.C.A., ROSSUM, G.V. The Amsterdam Hypermedia Model: Adding Time and Context to the Dexter Model. Communications of the ACM, v.37, n.2, p.50-62, 1994. ISAKOWITZ T.; STOHR E.; BALASUBRAMANIAN P. RMM: A Methodology for Structured Hypermedia Design. Communications of the ACM, v. 38, n. 8, p. 34-44, 1995. LANGE, D.B. An object-oriented design method for hypermedia information systems. In: International Conference on System Sciences, 27., Maui, Hawaii. Proceedings, New York, IEEE Press, p.366-375, 1994.

73

LOCATELLI, M. H. Engenharia de Software para o Desenvolvimentp de Webapps e as metodologias OOHDM e WEBML. Florianpolis, 2003. Monografia (Ps Graduao) Faculdade de Cincia da Computao, Universidade Federal de Santa Catarina. NEMETZ, F. HTM: Modelagem e Projeto de Aplicaes Hipermdia. Porto Alegre, 1995. Dissertao (Mestrado) Instituto de Informtica, Universidade Federal do Rio Grande do Sul. OMOTO, M. H. H. Metodologias de Sistemas Hipermdia para Visualizao anatomica. Londrina, 1998. Dissertao Cincia da Computao, Universidade Estadual de Londrina. PANSANATO, Luciano Esteves. EHDM: Um mtodo para Projeto de Aplicaes Hipermdia para Ensino. So Carlos, 1999. Dissertao (Mestrado) - Instituto de Cincias Matemticas e de Computao, Universidade de So Paulo.
ROSSI, G. Um mtodo Orientado a Objetos para o Projeto de Aplicaes Hipermdia. Rio de Janeiro, 1996. 205p. Tese (Doutorado) Departamento de Informtica, Pontifcia Universidade Catlica do Rio de Janeiro.

RUMBAUGH, J. et al. Object Oriented Modeling & Design. Prentice Hall, 1991. SCHWABE D.; ROSSI G. The Object-Oriented Hypermedia Design Model. Communications of the ACM, v. 38, n. 8, p. 45-46, 1995. SCHWABE, D., ROSSI, G., BARBOSA, S.D.J. Systematic Hypermedia Application Design with OOHDM. In: Hypertext96, Washington. Proceedings, p.116-128, 1996. TURINE, M.A.S; OLIVEIRA M.C.F.; MASIERO. P.C. Designing structured hypertext with HMBS. In: VIII International ACM Hypertext Conference, Southampton. Proceedings, p. 241-256, 1997. TURINE, M.A.S. HMBS: Um Modelo Baseado em Statecharts para a Especificao Formal de Hiperdocumentos. So Carlos, 1998. 192p. Tese (Doutorado) Instituto de Fsica de So Carlos, Universidade de So Paulo.

74

TRINDADE, C.C. Minimal Hyperlinking HyTime Documents: especificao e apresentao de estruturas clssicas de hipertexto. So Carlos, 1997. 110f. Dissertao (Mestrado) Instituto de Cincias Matemticas e de Computao, Universidade de So Paulo.