Linguagem NCL versão 2.0 para Autoria Declarativa de Documentos Hipermídia *

Tamanho: px
Começar a partir da página:

Download "Linguagem NCL versão 2.0 para Autoria Declarativa de Documentos Hipermídia *"

Transcrição

1 Linguagem NCL versão 2.0 para Autoria Declarativa de Documentos Hipermídia * Débora C. Muchaluat Saade 1, Heron V. Silva 2, Luiz Fernando G. Soares 2 1 Departamento de Engenharia de Telecomunicações UFF R. Passo da Pátria, 156 São Domingos Niterói RJ Brasil 2 Departamento de Informática PUC-Rio R. Marquês de São Vicente, 225 Gávea Rio de Janeiro RJ Brasil deborams@telecom.uff.br, heron@inf.puc-rio.br, lfgs@inf.puc-rio.br Abstract. This paper presents the Nested Context Language (NCL) version 2.0, a declarative authoring language for hypermedia documents. NCL 2.0 is a modular language, which provides several facilities for authoring a complete hypermedia document with synchronization relationships among its components. Among its main facilities, we can highlight treating hypermedia relations as first-class entities, through the definition of hypermedia connectors, and the possibility of specifying any semantics for a hypermedia composition using the concept of composite templates. NCL 2.0 modules can be added to standard web languages, such as XLink and SMIL. Resumo. Este artigo apresenta a versão 2.0 da linguagem NCL Nested Context Language para autoria declarativa de documentos hipermídia. NCL 2.0 é uma linguagem modular, que fornece diversas facilidades para a autoria de um documento hipermídia, com relacionamentos de sincronização entre seus componentes. Dentre suas facilidades principais, pode-se destacar o tratamento de relações hipermídia como entidades de primeira classe, através da definição de conectores hipermídia, e a possibilidade de especificar qualquer semântica para uma composição hipermídia usando o conceito de template de composição. Os módulos de NCL 2.0 podem ser adicionados a linguagens web padronizadas, tal como XLink e SMIL. 1. Introdução NCL Nested Context Language é uma linguagem declarativa para autoria de documentos hipermídia baseados no modelo conceitual NCM Nested Context Model [SoRM00]. A primeira versão de NCL [AMRS00] foi especificada através de uma única DTD XML. Este artigo apresenta a nova versão de NCL, batizada de NCL 2.0, que foi especificada de forma modular, permitindo a combinação de seus módulos em perfis de linguagem. Cada perfil pode agrupar um subconjunto de módulos, possibilitando a criação de linguagens de acordo com a necessidade dos usuários. * Este trabalho foi realizado com apoio do Fundo Setorial para o Desenvolvimento Tecnológico das Telecomunicações (FUNTTEL), através do contrato 0594/02; e do CNPq

2 Por que mais uma linguagem? A abordagem modular presente em NCL permite não só a criação de linguagens específicas de acordo com a necessidade dos usuários, o que por si só já responderia a questão, como também, e principalmente, permite que módulos de NCL 2.0 possam ser combinados com módulos de outras linguagens. Essa última facilidade não só evitou que NCL duplicasse esforços, permitindo a incorporação de características de linguagens modulares à NCL 2.0 (como se verá, particularmente SMIL 2.0), mas, principalmente, permite a incorporação de novas características presentes em NCL 2.0 a várias linguagens, como as realizadas para as linguagens XLINK [MuRS02], SMIL 2.0 e XHTML [Much03], como será discutido na Seção Comparando NCL 2.0 com a sua versão anterior, além da estrutura modular, NCL 2.0 introduz novas facilidades na linguagem de autoria. Dentre as facilidades, podese ressaltar: o tratamento de relações hipermídia como entidades de primeira classe, através da definição de conectores hipermídia e de bases de conectores [MuCS01], que permite a especificação de relações de sincronização e de referência de forma independente dos relacionamentos contidos nos documentos; o uso de conectores hipermídia para a autoria de elos; a definição de bases de elos e o reuso de elos e bases de elos em diferentes documentos; a definição de portas e mapeamentos para nós de composição, satisfazendo a propriedade de composicionalidade dos documentos; a definição de templates de composição hipermídia [MuSo02], permitindo a especificação de semânticas para composições hipermídia, o reuso da definição de estruturas e a especificação de restrições sobre documentos; a definição de bases de templates de composição e o uso de templates de composição para a autoria de nós de composição; o refinamento da especificação de documentos com alternativas de conteúdo, através do elemento switch, que agrupa um conjunto de nós alternativos; o refinamento da especificação de documentos com alternativas de apresentação, através do elemento descriptorswitch, que agrupa um conjunto de descritores alternativos, como será detalhado mais adiante; o uso de um novo modelo de layout espacial [Mour01], que possibilita especificar informações para posicionamento de objetos em um dispositivo de saída. Este artigo está estruturado como se segue. A Seção 2 realiza um breve resumo sobre modelagem de documentos usando a nova versão do NCM, modelo conceitual no qual NCL 2.0 se baseia. A Seção 3 apresenta os módulos da linguagem NCL 2.0 e comenta alguns perfis de linguagem. A Seção 4 apresenta um exemplo de documento NCL 2.0. A Seção 5 apresenta a comparação com trabalhos relacionados, destacando as comparações com a linguagem SMIL 2.0. Finalmente, a Seção 6 apresenta as conclusões e os trabalhos futuros.

3 2. Documentos Hipermídia no Modelo NCM Um documento hipermídia no modelo NCM é representado por um nó de composição, podendo conter um conjunto de nós, que podem ser objetos de mídia ou outros nós de composição, recursivamente, e ainda elos relacionando esses nós. Uma restrição do modelo impede que um nó contenha, recursivamente, ele próprio. Nós de composição no modelo NCM não têm nenhuma semântica embutida, diferente das composições SMIL 2.0 [SMIL01], por exemplo, que têm semântica temporal. A semântica de um nó de composição é deixada para linguagens de autoria baseadas no modelo. No caso da linguagem NCL, uma semântica específica para um nó de composição pode ser dada por um template de composição [MuSo02]. Para permitir a criação de relacionamentos entre partes internas do conteúdo de um nó, o modelo permite a definição de pontos de interface, que definem âncoras ou atributos, para qualquer tipo de nó, ou ainda portas, no caso de um nó de composição. Uma porta de um nó de composição é sempre mapeada em um ponto de interface de um de seus nós internos. Relacionamentos entre os componentes de um documento NCM são feitos através de elos. Elos NCM são definidos fazendo referência a um conector hipermídia, que pode representar qualquer tipo de relação [MuCS01], entre elas: relações de referência, de sincronização, de derivação, entre tarefas de um trabalho cooperativo etc. Além da referência a um conector, um elo define um conjunto de binds associando papéis do conector a pontos de interface de nós do documento. Cada extremidade de um elo indica, assim, um ponto de interface, modelando relacionamentos multiponto entre vários nós de um documento. Como uma porta de um nó de composição é mapeada em um ponto de interface de um de seus nós componentes, a criação de elos entre nós internos a uma composição e nós que não pertencem à mesma composição é possível. A versão anterior do modelo NCM [SoRM00] especificava uma outra restrição que exigia que todas as extremidades de um elo fossem componentes da composição onde o elo foi definido. Entretanto, na nova versão [SoRM03], essa restrição é deixada para linguagens de autoria baseadas no modelo, permitindo que o NCM também possa ser usado para modelar documentos que não têm esse tipo de restrição, como, por exemplo, documentos web. Vale ressaltar, no entanto, que, se essa restrição não for obedecida, a propriedade de composicionalidade do documento, tão importante na prova formal de propriedades, é perdida. Na nova versão do NCM, elos são sempre agrupados em bases de elos, logo, o conjunto de elos de uma composição pode ser dado pela união de elos de diferentes bases. Além do reuso de nós, permitido em versões anteriores do NCM [SoRM00], a nova versão também permite o reuso de elos e de bases de elos em outras bases, tornando mais flexível a definição de elos no modelo. A especificação de apresentação de um nó no modelo NCM é feita independente da definição do nó, sendo representada por outro objeto do modelo, chamado descritor [SoRM00]. Com isso, pode-se definir diferentes especificações de apresentação para um mesmo nó, pela associação de diferentes descritores a esse nó. Um nó pode ter um descritor definido por seu tipo (áudio, vídeo, texto, imagem, composição etc.), um outro descritor definido pelo próprio nó (normalmente especificado pelo seu autor), um outro

4 descritor definido por cada composição a que pertence, um outro descritor definido por cada elo que o toca e ainda, um descritor definido pelo usuário final (leitor). No caso de um nó possuir todos esses descritores especificados, o descritor resultante a ser associado a esse nó, para especificar sua apresentação final, será a combinação das especificações de todos esses descritores, de acordo como seguinte cascateamento: atributos do descritor definido pelo usuário sobrescrevem atributos do descritor definido pelo elo, que, por sua vez, sobrescrevem atributos do descritor definido pela composição, que, por sua vez, sobrescrevem atributos do descritor definido pelo próprio nó, que, por último, sobrescrevem atributos do descritor da classe do nó. Além disso, visando a especificação de apresentações multimídia adaptativas, cada especificação de apresentação pode, na verdade, ao invés de especificar um único descritor, especificar um conjunto de descritores alternativos, apresentando opções de apresentação para o mesmo nó. Dentre as opções especificadas, uma delas deverá ser escolhida, dependendo de características da plataforma de exibição e do usuário final. Uma outra entidade introduzida pela nova versão do modelo NCM é um nó que agrupa um conjunto de nós alternativos, denominado nó switch, tal como em SMIL, que também pode ser usado para a especificação de documentos hipermídia adaptáveis a uma plataforma de exibição ou a um perfil de usuário específico. Além disso, um nó switch pode especificar alternativas de apresentação para cada um de seus componentes, através de conjuntos de descritores alternativos, de forma análoga ao que um nó de composição qualquer pode realizar. Um nó switch simplifica a idéia de utilizar entidades virtuais, mais gerais, como comentado em versões anteriores do modelo [SoRM00]. Um nó switch pode definir tipos especiais de pontos de interface, que permitem ser mapeados em um conjunto de pontos de interface alternativos de seus nós componentes, onde a escolha pode ser feita em tempo de execução. Esse tipo especial de ponto de interface permite a ancoragem de elos no componente que será escolhido pela execução de um nó switch. Utilizando as entidades básicas do modelo NCM, a linguagem NCL 2.0 foi desenvolvida, introduzindo ainda outros recursos para facilitar a autoria de documentos NCM, como por exemplo, o conceito de template de composição hipermídia, apresentado em detalhes em [MuSo02, Much03]. A próxima seção apresenta a estrutura modular de NCL 2.0 e comenta alguns perfis de linguagem. 3. Modularização da linguagem NCL 2.0 Seguindo a mesma abordagem de modularização da linguagem SMIL 2.0, a funcionalidade de NCL 2.0 está dividida em onze áreas funcionais, que, por sua vez, estão particionadas em módulos. Como NCL 2.0 tem algumas facilidades idênticas às de SMIL 2.0, alguns módulos de SMIL 2.0 são usados por NCL 2.0. As próximas subseções descrevem, de maneira sucinta, as principais definições feitas por cada área funcional da linguagem e seus módulos correspondentes. A definição completa, em XML Schema, dos módulos de NCL 2.0 está disponível em [Much03]. 3.1 Área Funcional Structure: Módulo Structure O módulo Structure define a estrutura básica de um documento NCL. São definidos o elemento raiz, chamado ncl, o cabeçalho e o corpo do documento, chamados

5 respectivamente de head e body. O corpo de um documento NCL pode ser tratado como um nó de composição, contendo outros nós e/ou bases de elos. 3.2 Área Funcional Components: Módulos BasicMedia e BasicComposite O módulo BasicMedia define os tipos básicos de objetos de mídia que um documento NCL pode conter. Esse módulo é idêntico ao módulo BasicMedia do SMIL, definindo os seguintes elementos animation, audio, img, text, textstream, video e ref. O elemento ref permite definir uma referência a um outro objeto, permitindo o reuso de objetos em diferentes documentos. Cada objeto de mídia possui dois atributos principais: o atributo src que define uma URI com o conteúdo do objeto e o atributo type, que define o tipo MIME do objeto, além do atributo id. O módulo BasicComposite é responsável pela definição de nós de composição (vide Seção 2) em documentos NCL. Assim sendo, o elemento composite, que representa o nó de composição, pode conter elementos definidos pelo módulo BasicMedia, outros elementos composite e ainda elementos linkbase, que agrupam a definição dos elos da composição. O conteúdo de elementos linkbase será definido na Seção 3.5, que aborda o módulo Linking. 3.3 Área Funcional Interfaces: Módulos MediaInterface, CompositeInterface, AttributeInterface e SwitchInterface O módulo MediaInterface permite a definição de âncoras para objetos de mídia. Esse módulo define o elemento area, que estende a sintaxe e semântica do elemento homônimo definido por SMIL e XHTML. Além de permitir a definição de âncoras representando porções espaciais, através do atributo coords (como em XHTML [XHTM01]), e a definição de âncoras representando porções temporais, através dos atributos begin, end e dur, como em SMIL, o elemento area permite a definição de âncoras textuais, através dos atributos text, que define a cadeia de caracteres, e position, que define a posição inicial da cadeia no texto. Além das âncoras textuais, o módulo MediaInterface permite a definição de âncoras baseadas em número de amostras, para mídia áudio, ou número de quadros, para mídia vídeo, através dos atributos first e last, que devem indicar o número da amostra/quadro inicial e final. Um perfil de linguagem que usa esse módulo deve acrescentar o elemento area como elemento-filho dos elementos que definem objetos de mídia, especificados pelo módulo BasicMedia. O módulo CompositeInterface permite a definição de âncoras e portas para nós de composição. Esse módulo define um elemento chamado areacomposite, usado para a criação de âncoras, através de seu atributo componentlist, que contém uma lista de identificadores de nós componentes do nó de composição. Além do elemento areacomposite, o módulo CompositeInterface também especifica o elemento port, que define uma porta com seu respectivo mapeamento para um ponto de interface (atributo port) de um de seus nós componentes (atributo component). Um perfil de linguagem que usa esse módulo deve acrescentar os elementos areacomposite e port como elementosfilho do elemento composite, especificado pelo módulo BasicComposite. O módulo AttributeInterface permite a definição de atributos de nós como pontos de interface. Esse módulo define um elemento chamado attribute, cujo atributo name indica o nome do atributo em questão. Um perfil de linguagem que usa esse

6 módulo deve acrescentar o elemento attribute como elemento-filho dos elementos que definem objetos de mídia, especificados pelo módulo BasicMedia, ou do elemento composite, especificado pelo módulo BasicComposite. O módulo SwitchInterface permite a definição de pontos de interface especiais para elementos switch, que serão comentados na Seção Esses pontos de interface podem ser mapeados em um conjunto de alternativas de pontos de interface de seus nós internos, permitindo a ancoragem de elos no componente escolhido durante a exibição de um nó switch (veja Seção 2). Esse módulo introduz o elemento portswitch, que contém um conjunto de elementos port, de acordo com a definição feita pelo módulo CompositeInterface, mencionada anteriormente. Um perfil de linguagem que usa esse módulo deve acrescentar os elementos portswitch e port como elementos-filho de um elemento switch, especificado pelo módulo ContentControl, descrito na Seção A definição de elementos port e portswitch introduzidos pelos módulos CompositeInterface e SwitchInterface são novas facilidades que NCL 2.0 oferece. 3.4 Área Funcional Connectors: Módulos XConnector e CompositeConnector A área funcional Connectors traz novas facilidades, não encontradas em nenhuma outra linguagem hipermídia. O módulo XConnector permite a definição de conectores hipermídia, através do elemento xconnector, e de bases de conectores, através do elemento connectorbase. Um conector hipermídia representa uma relação que será usada para criar elos entre nós de um documento. Ele especifica a semântica da relação, mas não especifica quais nós participarão do relacionamento. Os nós serão especificados pelos elos hipermídia que usarão o conector, como será comentado na Seção 3.5. Um conector é definido por um conjunto de pontos de interface, chamados roles (papéis), e outro elemento filho chamado glue. Cada papel de um conector especifica a função de um participante da interação, e o glue do conector descreve como os participantes interagem, completando a definição da semântica da relação. XConnector permite a definição de conectores representando relações de sincronização e de referência. O módulo XConnector é apresentado em detalhes em [MuRS02]. O módulo CompositeConnector permite a definição de conectores compostos, tal como discutido em [MuCS01]. Um conector composto é definido pelo elemento compositeconnector, que contém elementos role e um elemento glue, tal como um conector simples. Entretanto, cada elemento role de um conector composto é mapeado em um ponto de interface de uma ocorrência de um conector interno (mapeamento chamado de elo parcialmente definido, de acordo com [MuCS01]). Além disso, o glue de um conector composto é definido como um nó de composição, que contém o mesmo conteúdo que um elemento composite e ainda o conjunto de elos parcialmente definidos, chamado de partiallinkbase. 3.5 Área Funcional Linking: Módulo Linking O módulo Linking é responsável pela definição de elementos para a criação de elos usando conectores. Um elo é definido pelo elemento link, que possui, além do atributo id, um atributo chamado xconnector, que faz referência à URI de um conector

7 hipermídia. Se o conector referenciado definir parâmetros, o elo deve associar valores para esses parâmetros [Much03]. O elemento link contém ainda elementos-filho chamados bind, que permitem associar os nós relacionados pelo elo a papéis do conector usado. Para realizar tal associação, um elemento bind possui três atributos básicos. O primeiro é chamado role, sendo usado para fazer referência a um papel do conector usado. O segundo é chamado component, que deve fazer referência ao identificador único de um nó, e o terceiro é chamado port 1, usado para fazer referência a um ponto de interface do nó associado. Além do elemento link, o módulo Linking define um outro elemento chamado linkbase, que permite a definição de bases de elos. Além disso, esse módulo ainda especifica o elemento lref, que pode ser usado para fazer referência a um elo ou uma base de elos já definidos, permitindo o reuso de elos e bases de elos em diferentes documentos. O elemento lref, análogo ao elemento ref, definido pelo módulo BasicMedia, tem um atributo src que identifica o elemento sendo reusado. Um elemento linkbase pode conter elementos link ou lref. A definição de bases de elos e o reuso de elos introduzidos pelo módulo Linking são duas novas facilidades que NCL 2.0 oferece. 3.6 Área Funcional Composite Templates: Módulos XTemplate e XTemplateUse A área funcional CompositeTemplates também traz novas facilidades não encontradas em nenhuma outra linguagem hipermídia. O módulo XTemplate permite a definição de templates de composição hipermídia, através do elemento xtemplate e de bases de templates, através do elemento templatebase. Um template de composição pode ser utilizado para embutir semântica, por exemplo temporal, em um nó de composição. A definição de um template de composição é feita através de um vocabulário, que define tipos de componentes, tipos de relações (modeladas por conectores) e pontos de interface; e de um conjunto de restrições sobre elementos do vocabulário e inclusão de instâncias de componentes e relacionamentos entre eles (modelados por elos). O módulo XTemplate é apresentado em detalhes em [MuSo02]. O uso do módulo XTemplate, por um determinado perfil de linguagem, exige que um módulo que define conectores, tal como XConnector, seja também utilizado, pois a semântica de elos definidos em um template de composição é dada pela definição de conectores hipermídia. O módulo XTemplateUse permite a utilização de templates por nós de composição em documentos NCL. Para isso, esse módulo define o atributo xtemplate, que faz referência à URI de um template de composição e define o atributo label, que especifica um rótulo. Um perfil de linguagem que use esse módulo deve acrescentar o atributo xtemplate à definição do elemento composite e o atributo label à definição de objetos de mídia, de elementos composite e de pontos de interface de nós. 1 Note que o atributo port, em um elemento bind, pode fazer referência a qualquer ponto de interface de um nó, ou seja, uma âncora, um atributo ou uma porta, no caso de um nó de composição.

8 3.7 Área Funcional Timing: Módulo BasicTiming O módulo BasicTiming permite a definição de especificações temporais para componentes de um documento. Basicamente, esse módulo define atributos para especificação da duração ideal (dur), duração mínima (min) e duração máxima (max) de um objeto qualquer, que serão utilizados por descritores, que, por sua vez, agrupam toda a especificação de apresentação de componentes do documento, como será definido na Seção 3.9. Essa área funcional pode incluir um outro módulo que permite a especificação de funções de custo para informar a melhor forma de realizar ajustes nas durações do objetos, caso seja necessário realizar esse tipo de adaptação durante a apresentação [Rodr03]. Um função de custo poderia ser associada à especificação temporal de cada objeto. Entretanto, a definição desse outro módulo foi deixada para trabalho futuro. 3.8 Área Funcional Layout: Módulo BasicLayout O módulo BasicLayout especifica elementos e atributos que definem como os objetos serão apresentados em regiões na tela de um dispositivo de exibição. O modelo de layout usado por NCL 2.0 é apresentado em detalhes em [Mour01]. Em resumo, um elemento layout, que deve ser declarado no cabeçalho de um documento, define um conjunto de janelas (toplayout), que contêm um conjunto de regiões (region), que, por sua vez, podem conter outro conjunto de regiões aninhadas. Tanto janelas quanto regiões podem definir os seguintes atributos: id, title, left, top, height, width, backgroundcolor, zindex, scroll, open, close. Além disso, regiões também podem definir o atributo fit, indicando como um objeto deve ser apresentado na região indicada. Todos esses atributos têm o mesmo significado e os mesmos valores possíveis dos atributos homônimos definidos nos módulos de layout da linguagem SMIL 2.0, exceto o atributo scroll, que permite ao usuário especificar como deseja configurar o scroll de uma região [Rodr03]. Apesar de NCL definir seu modelo de layout, nada impede que um documento NCL possa utilizar outros modelos de layout, desde que eles definam regiões onde objetos devam ser exibidos, como por exemplo os modelos de layout definidos por SMIL 2.0. Sendo assim, o elemento layout pode especificar um atributo src, que indica a URI do documento contendo a especificação de layout, e não precisa conter, nesse caso, conteúdo algum. 3.9 Área Funcional Presentation Specification: Módulo BasicDescriptor e CompositeDescriptor O objetivo dessa área funcional é especificar as informações temporais e espaciais necessárias para apresentar cada componente de um documento, modeladas no NCM, por objetos chamados descritores. O módulo BasicDescriptor permite a definição do elemento descriptor, que contém um conjunto de atributos opcionais, agrupando todas as definições temporais e espaciais, que devem ser utilizados de acordo com o tipo do objeto a ser apresentado. A definição de elementos descriptor deve ser feita no cabeçalho de um documento (head), dentro do elemento descriptorbase, que especifica o conjunto de descritores do documento. Um elemento descriptor possui os atributos temporais dur, min e max definidos pelo módulo BasicTiming (veja Seção 3.7); um atributo chamado player, que

9 identifica a ferramenta de exibição a ser utilizada; um atributo chamado region, que faz referência a uma região definida por elementos do módulo BasicLayout (veja Seção 3.8); e ainda um atributo chamado enabletimebar, usado para habilitar uma barra de rolagem de tempo, caso se aplique. Além desses atributos, um elemento descriptor também pode definir o atributo style, que faz referência a uma folha de estilo, com informações para apresentação de textos, por exemplo; e ainda atributos específicos para objetos com áudio, definindo soundlevel, balancelevel, treblelevel e basslevel. O módulo BasicDescriptor, além do elemento descriptor, define um atributo homônimo, que faz referência a um elemento do conjunto de descritores do documento. Um perfil de linguagem, que use o módulo BasicDescriptor, pode determinar como é feita a associação do atributo descriptor a um componente do documento. No caso do perfil NCL 2.0 Language Profile, seguindo o modelo NCM, o atributo descriptor é associado a um objeto de mídia qualquer, um nó de composição, ou ainda a uma extremidade de um elo (veja Seção 2). O módulo CompositeDescriptor define o elemento componentpresentation, que associa um nó componente de uma composição, identificado pelo atributo component, a um elemento do conjunto de descritores do documento, identificado pelo atributo descriptor. Qualquer elemento composite passa, então, a poder conter elementos componentpresentation. Vale ressaltar que o conjunto de descritores de um documento pode conter elementos descriptor ou ainda elementos descriptorswitch, que permitem especificar descritores alternativos, como será apresentado na próxima seção Área Funcional Presentation Control: Módulos TestAttributes, ContentControl e DescriptorControl Os objetivos da área funcional Presentation Control são similares e estende aqueles da área funcional Content Control da linguagem SMIL 2.0. Resumidamente, os objetivos são especificar alternativas de conteúdo e, ainda, de exibição para um documento. O módulo TestAttributes permite a definição de atributos de teste usados para especificar alternativas para a apresentação de um documento. Os atributos de teste são exatamente os mesmos pré-definidos pelo módulo BasicContentControl de SMIL 2.0. A especificação dos atributos de teste foi feita em um módulo separado de NCL, pois será útil tanto para definir componentes alternativos, como para definir descritores alternativos em documentos NCL, como apresentado a seguir. O módulo ContentControl especifica o elemento switch, tal como em SMIL, permitindo a definição de nós componentes alternativos do documento, a serem escolhidos em tempo de execução. Entretanto, o elemento switch de NCL não tem conteúdo idêntico ao elemento homônimo de SMIL (definido pelo seu módulo BasicContentControl), pois pode conter, além de objetos de mídia, elementos composite, definidos pelo módulo BasicComposite de NCL 2.0. O módulo DescriptorControl especifica o elemento descriptorswitch, que contém um conjunto de descritores alternativos a serem associados a um objeto. De forma análoga ao elemento switch, a escolha do descritor a ser usado é feita em tempo de execução, usando os mesmo atributos de teste, definidos pelo módulo TestAttributes.

10 3.11 Área Funcional Metainformation: Módulo Metainformation A área funcional Metainformation é idêntica à área funcional de mesmo nome da linguagem SMIL 2.0 permitindo a definição de metadados sobre um documento ou sobre elementos de um documento. Toda informação sobre metadados de um documento deve ser incluída em seu cabeçalho (elemento head) Perfis NCL 2.0 O perfil de linguagem chamado NCL 2.0 Language Profile, é o perfil completo da linguagem NCL 2.0, ou seja, que inclui todos os seus módulos e oferece todas as facilidades para a autoria declarativa de documentos NCL. A Tabela 1 indica os elementos e atributos, considerando seus modelos de conteúdo especificados no perfil completo de NCL 2.0, separados por área funcional. Na especificação do conteúdo, os símbolos indicam o seguinte: (?) opcional, ( ) ou, (*) zero ou mais ocorrências, (+) uma ou mais ocorrências. Além do perfil NCL 2.0 Language Profile, outros perfis podem ser construídos, como, por exemplo: Simple NCL Language Profile permite a criação de documentos NCL sem contemplar conectores compostos, controle de conteúdo (elemento switch), descritores alternativos, atributos como pontos de interface e definição de metadados. Esse perfil inclui os módulos Structure, BasicMedia, MediaInterface, BasicComposite, CompositeInterface, XConnector, Linking, BasicDescriptor, XTemplate e XTemplateUse. Basic Media Profile permite a criação de documentos hipermídia sem nós de composição e sem conectores compostos. Esse perfil precisa incluir os módulos Structure, BasicMedia, MediaInterface, XConnector, Linking e BasicDescriptor. Basic NCM Profile permite a criação de documentos NCM sem templates de composição hipermídia e sem conectores compostos. Esse perfil precisa incluir os módulos Structure, BasicMedia, MediaInterface, AttributeInterface, BasicComposite, CompositeInterface, XConnector, Linking, BasicDescriptor, CompositeDescriptor, TestAttributes, ContentControl, SwitchInterface e DescriptorControl. Basic Linking Profile permite a criação de elos e bases de elos sem conectores compostos. Esse perfil precisa incluir os módulos Structure, XConnector e Linking. XConnector Profile permite a criação de conectores hipermídia sem composição. Esse perfil precisa incluir apenas o módulo XConnector, que é independente dos demais módulos de NCL 2.0. XTemplate Profile permite a criação de templates de composição hipermídia e conectores sem composição. Precisa incluir os módulos XConnector e XTemplate.

11 Área Funcional Structure Components Interfaces Tabela 1. Modelo de Conteúdo do Perfil Completo de NCL Elementos Atributos Conteúdo ncl id (head?, body) head (Metainformation*, layout?, descriptorbase?) body (BasicMedia composite switch linkbase)* animation, audio, img, id, src, type, descriptor, area*, attribute* text, textstream, vídeo, label, TestAttributes ref composite Area id, descriptor, xtemplate, label, TestAttributes id, coords, begin, end, dur, text, position, first, last, label (areacomposite*, port*, attribute*, componentpresentation*, (BasicMedia composite linkbase switch)*) Vazio areacomposite id, componentlist, label Vazio port id, component, port, Vazio label attribute id, name Vazio portswitch id, label port+ Linking bind role, component, port Vazio param name, value Vazio link id, xconnector (param*, bind+) lref id, src Vazio linkbase id (link lref)+ Connectors xconnector id (param*, role+, glue) param name, type Vazio connectorbase id xconnector+ compositeconnector id (role+, glue) Composite xtemplate id (vocabulary, constraints?) Templates templatebase id xtemplate+ Layout layout src, type toplayout* toplayout id, title, left, top, height, region* width, backgroundcolor, zindex, scroll, open, close, movable, resizable, visible region id, title, left, top, height, region* width, backgroundcolor, zindex, scroll, open, close, fit, visible Presentation descriptor id, player, dur, min, Vazio Specification max, region, enabletimebar, style, soundlevel, balancelevel, treblelevel, basslevel, TestAttributes descriptorbase (descriptor descriptorswitch)* Presentation Control componentpresentation component, descriptor Vazio switch id, TestAttributes (portswitch*, componentpresentation*, (BasicMedia composite switch)+) descriptorswitch id descriptor+ 2 A definição completa dos elementos e atributos especificados nos módulos XConnector e XTemplate foram omitidas propositalmente, e podem ser encontradas nas referências [MuRS02, MuSo02].

12 3.13 Incorporando Facilidades de NCL 2.0 em Outras Linguagens Um dos objetivos do projeto de NCL 2.0 foi oferecer facilidades que pudessem ser incorporadas a outras linguagens de autoria, visando principalmente a autoria de documentos web. As referências [MuRS02] e [MuSo02] discutiram, respectivamente, como os módulos XConnector e XTemplate podem ser utilizados para incorporar novas facilidades ao padrão XLink [XLIN01]. Considerando extensões ao padrão SMIL 2.0, um perfil de linguagem, chamado SMIL+XTemplate, poderia ser criado. Esse perfil permitiria a criação de outros tipos de contêineres temporais, além dos conhecidos par, seq e excl. Para dar suporte à definição de templates, os módulos BasicComposite, XConnector e XTemplate deveriam ser adicionados ao perfil. O módulo BasicComposite introduz o elemento composite que pode adquirir a semântica definida por um template qualquer. O módulo XConnector é necessário para permitir a definição de conectores, que são usados para a criação de elos em um template. Além de adicionar esses três módulos de NCL 2.0, dois novos módulos teriam que ser criados. O primeiro módulo novo deveria permitir a definição de elos SMIL através do uso de conectores, similar ao que foi feito no módulo Linking de NCL 2.0. O outro módulo novo forneceria o uso de templates de composição. Esse último módulo adicionaria o atributo xtemplate a elementos composite e o atributo label a objetos de mídia, âncoras e composições SMIL, com objetivos similares aos do módulo XTemplateUse de NCL Exemplo de Documento NCL 2.0 Para ilustrar a autoria de documentos usando a linguagem NCL 2.0, considere um documento contendo uma composição (elemento composite) identificada por sambadocument, que contém um nó de áudio e ainda uma série de nós de texto HTML, cada um deles representando partes da letra do áudio. O nó de áudio define uma série de âncoras, uma para cada trecho cantado do áudio. Para sincronizar a apresentação da letra com cada trecho correspondente do áudio, a composição samba-document utiliza um template de composição, chamado audio-with-subtitles, que embute toda a semântica temporal. A Figura 1 exibe a definição do documento NCL, realçando os atributos mais importantes para a utilização do template de composição. Para simplificar o exemplo, apenas os três primeiros trechos da letra da música foram utilizados. Note que cada nó componente do documento NCL faz referência a um descritor, definido em seu cabeçalho, que especifica suas características de exibição. <?xml version="1.0"?> <ncl id="ncl_example" xmlns=" xmlns:xsi=" xsi:schemalocation=" <head> <layout> <toplayout id="window1" title="music Lyrics" width="600" height="200"> <region id="textregion1" width="65%" height="100%"/> <region id="imageregion1" width="35%" height="100%" left="65%"/> </toplayout> <toplayout id="audiowindow" title="audio Control" top="200" width="600" height="50"> <region id="audioregion1" width="100%" height="100%"/>

13 </toplayout> </layout> <descriptorbase> <descriptor id="audio_d1" region="audioregion1" enabletimebar="on" /> <descriptor id="text_d1" region="textregion1" /> <descriptor id="img_d1" region="imageregion1" /> </descriptorbase> </head> <body> <composite id="samba-document" xtemplate=" <audio id="samba" label="audio" src=" descriptor="audio_d1"> <area id="part1" begin="8.4s" end ="18s" label="track"/> <area id="part2" begin="18.5s" end ="28s" label="track"/> <area id="part3" begin="29s" end ="39s" label="track"/> </audio> <text id="lyrics-part1" label="subtitle" src=" descriptor="text_d1"/> <text id="lyrics-part2" label="subtitle" src=" descriptor="text_d1"/> <text id="lyrics-part3" label="subtitle" src=" descriptor="text_d1"/> </composite> </body> </ncl> Figura 1. Exemplo de documento NCL 2.0 Um template de composição define uma semântica para um nó de composição. No exemplo, o template audio-with-subtitles define a sincronização temporal entre um nó de áudio qualquer (tipo de componente com rótulo audio) e as legendas correspondentes a parte cantada/falada do áudio (tipo de componente com rótulo subtitle). Ao utilizar um template, o nó de composição deve indicar sua URI e associar rótulos definidos pelo template aos seus componentes específicos, tal como realçado na Figura 1. A Figura 2 ilustra a representação gráfica desse template mostrando suas visões estrutural e temporal. Os elos L i e P i utilizam, respectivamente, conectores que representam as relações de sincronização starts e finishes de Allen [Alle83]. Além disso, o template especifica que uma imagem seja apresentada em paralelo com o áudio (tipo de componente com rótulo logo). A definição completa desse template em XML pode ser encontrada em [Much03]. subtitle 1 logo L 2 L 3 P L 1 P1 2 L 4 P 3 audio P n+1 P L 4 n+1... subtitle n Visão Estrutural subtitle 2 subtitle 3 logo L 1 audio P 1 track1 track2 track3 trackn L 2 P 2 L 3 P 3 L 4 P 4 L n+1... subt. 1 subt. 2 subt. 3 subt. n Visão Temporal P n+1 Figura 2. Representação gráfica do template audio-with-subtitles

14 Como o uso de templates de composição é uma facilidade da linguagem de autoria NCL 2.0, e não do modelo NCM, um documento NCL que usa um template de composição precisa ser processado antes de ser entregue para ser exibido. O processamento de documentos usando templates é realizado por um processador de templates, que gera um novo documento NCL a partir da definição do documento original e do template, como ilustrado na Figura 3. O documento NCL final contém as definições de componentes e relacionamentos especificadas no template, além das definições do documento original. O documento final do exemplo dado pode ser encontrado em [Much03]. Documento NCL usando um template template de composição processador de templates de composição Valida restrições e gera componentes e elos automaticamente Documento NCL ou Relatório de erros Documento final Figura 3. Processamento de documentos NCL com templates de composição Ao executar o documento final samba-document usando o formatador NCM [Rodr03], cada trecho do áudio é sincronizado com a parte da letra correspondente. As Figuras 4 e 5 exibem o documento apresentado ao usuário final, mostrando as duas primeiras partes da letra do samba sincronizadas com o áudio (note o progresso na barra de rolagem de tempo que controla a exibição do áudio). Figura 4. Primeira tela da apresentação do documento samba-document Figura 5. Segunda tela da apresentação do documento samba-document 5. Trabalhos Relacionados Sabe-se que, atualmente, a linguagem SMIL 2.0 é o padrão consagrado pelo W3C para autoria de documentos multimídia interativos. A pergunta da Seção 1, Por que então uma nova linguagem, sendo que já existe um padrão com objetivos similares? pode agora ser considerada com mais profundidade. A representação de relacionamentos através de composições com semântica embutida, que é a abordagem usada por SMIL em seus contêineres temporais, facilita bastante o trabalho do autor por evitar que ele tenha que criar vários elos entre um grupo de nós para obter uma semântica idêntica à da composição. Por outro lado, nesse tipo de abordagem, relacionamentos mais complexos entre um conjunto de componentes têm que ser descritos por uma hierarquia de composições usando os tipos básicos. Isso nem sempre é desejável, pois obriga a estrutura lógica do documento a ser igual a sua estrutura de apresentação temporal.

15 A especificação de relacionamentos de sincronização através de elos, que é a abordagem de NCL desde sua primeira versão [AMRS00], permite que o uso de composições possa ser dedicado à criação de relações de estruturação entre componentes de um documento. Além disso, o uso de elos para definir o sincronismo temporal permite que um autor defina qualquer tipo de relação de sincronização entre um grupo de componentes. Essa abordagem dá mais flexibilidade, já que o autor não precisa ficar limitado a alguns tipos de composição pré-definidos pela linguagem e pode estruturar seu documento de forma independente de suas relações de sincronização. Dadas vantagens e desvantagens do uso de composições e elos para representar relações, o ideal é oferecer ao autor todas as possibilidades: o uso de composições para estruturação lógica e o uso de elos para especificar sincronização; e o uso de composições com semântica, por exemplo temporal, fazendo a estrutura lógica casar com a estrutura de apresentação. Melhor ainda se a linguagem de autoria permitir a criação de tipos de composição com a semântica desejada pelo autor e que possam ser utilizados de acordo com a necessidade. Assim, a estrutura de apresentação de um documento pode se adaptar à sua estrutura lógica, e não o contrário. A linguagem NCL 2.0 oferece ao autor essas várias possibilidades, através do conceito de template de composição. A vantagem principal do uso de templates de composição, além da reutilização da estrutura, é a possibilidade de definição de uma semântica para uma composição. Dessa forma, tipos pré-definidos de composições, como os oferecidos pela linguagem SMIL, podem ser vistos como templates. Através do módulo XTemplate, novos templates de composição podem ser criados, generalizando os tipos de composição que a linguagem de autoria oferece. Essas mudanças de paradigma justificaram a especificação de uma nova linguagem modular, cujos módulos podem ser utilizados para estender os padrões existentes, incorporando novas facilidades. Com isso, a implementação do perfil SMIL+XTemplate é considerada o próximo trabalho futuro. Além da diferença principal sobre o uso de composições, outros comentários podem ser destacados na comparação entre NCL e SMIL 2.0. Além da possibilidade de especificar alternativas de conteúdo, através do elemento switch, idêntico ao que é oferecido por SMIL, NCL 2.0 permite a especificação de alternativas de exibição para um mesmo nó. Alternativas de exibição podem ser especificadas através do elemento descriptorswitch, que pode ser associado a um nó através de um elo, de uma composição ou pelo próprio nó, seguindo o cascateamento determinado na Seção 2. Na linguagem SMIL, as características de apresentação de um nó estão especificadas junto ao nó, exceto informações de layout espacial, que são definidas em separado. Para especificar alternativas de exibição para um mesmo nó em um documento SMIL, é necessário definir um elemento switch contendo repetições de um elemento com o mesmo conteúdo, associado a diferentes informações de exibição. Em NCL, basta especificar um único nó com o conteúdo desejado e associar um conjunto de descritores alternativos, representado por um elemento descriptorswitch. NCL oferece elos multiponto, representando relações com semântica causal ou de restrição, de acordo com o conector usado pelo elo. Além disso, uma mesma relação causal, por exemplo, pode relacionar eventos de diversos tipos, além dos tradicionais eventos de seleção e apresentação, normalmente contemplados. SMIL 2.0 só oferece

16 elos ponto-a-ponto, que podem ser disparados por eventos temporais. A possibilidade de usar eventos na especificação temporal de um documento SMIL 2.0 deu bastante flexibilidade à linguagem, comparada com sua versão anterior. Entretanto, para especificar relacionamentos complexos, o autor deve mesclar o uso dos contêineres temporais par, seq e excl com o uso de eventos, e ainda com o uso de elos, se for o caso, para especificar relacionamentos que envolvem a ocorrência de vários tipos de evento. Em NCL 2.0, uma relação, por mais complexa que seja, pode ser abstraída por um único conector e utilizada da mesma forma que uma relação bem simples. Outro comentário que merece destaque é sobre a especificação do comportamento temporal de objetos de forma flexível. Desde a versão 1.0 de NCL, que as durações de objetos na especificação de um documento podem ser definidas com valores ótimo, mínimo e máximo. Essa facilidade só foi incluída na linguagem SMIL em sua segunda versão. Além disso, NCL prevê a especificação de funções de custo [Rodr03] para guiar o formatador em possíveis ajustes temporais durante a apresentação do documento, visando minimizar a perda de qualidade. 6. Considerações Finais Esse artigo apresentou a versão 2.0 da linguagem declarativa NCL para autoria de documentos hipermídia. Sem dúvida, os módulos mais importantes de NCL 2.0 são os que tratam da definição de conectores e templates de composição. Esses dois módulos apresentam novas contribuições para linguagens de autoria hipermídia, considerando relações como entidades de primeira classe e permitindo a definição de uma semântica qualquer para um nó de composição. Para validação dos novos conceitos introduzidos, um parser NCL foi implementado de forma genérica, sendo o compilador NCL-NCM (objetos Java) uma instância desse parser. Esse compilador possibilitou a integração de NCL ao sistema hipermídia HyperProp [Much03], validando os novos conceitos. O próximo passo é o desenvolvimento de novas instâncias do parser, promovendo a integração de NCL a outros modelos, como diretamente ao modelo de execução do formatador HyperProp [Rodr03] e a modelos de players SMIL (obviamente com algumas restrições a funcionalidades oferecidas por NCL, devido às limitações de SMIL). Outro trabalho futuro é levar as facilidades introduzidas por NCL a padrões existentes, como já realizado para a linguagem XLINK [MuRS02]. Um trabalho já iniciado prevê a utilização de XConnector e XTemplate para estender funcionalidades no padrão SMIL, através da implementação do perfil SMIL+XTemplate. O módulo XConnector contempla a definição de relações de sincronização e referência, entretanto, o conceito de conector pode ser aplicado para definir qualquer tipo de relação. Por exemplo, pode-se definir um conector de versão para representar a relação ancestral/descendente usada em mecanismos para controle de versões de objetos, ou então um conector canal para representar o paradigma publish-subscribe usado em mecanismos de notificação de mensagens. Baseando-se em novos tipos de conectores, o módulo XTemplate pode ser usado para definir outras semânticas para composições, diferentes da semântica de sincronização temporal e espacial já disponível. Por exemplo, pode-se criar templates de composição para agrupar versões de um mesmo objeto e seu

17 grafo de derivação. O desenvolvimento de outros módulos para criação de outros tipos de relação é outro trabalho futuro. Apesar de NCL 2.0 ter acrescentado muitas novas facilidades em relação à versão 1.0, refinamentos sempre serão necessários. A especificação de novos módulos para permitir a definição de funções de custo para durações de componentes de um documento, possibilitando a realização de ajustes finos pelo formatador, também é prevista como trabalho futuro. Além disso, o suporte para computação automática de extremidades de elos, contemplando os antigos elos virtuais do modelo NCM [SoRM00], precisa ser construído. Referências [Alle83] Allen J.F. Maintaining Knowledge about Temporal Intervals, Communications of the ACM, 26(11), 1983, [AMRS00] Antonacci M.J., Muchaluat-Saade D.C., Rodrigues R.F., Soares L.F.G. NCL: Uma Linguagem Declarativa para Especificação de Documentos Hipermídia na Web, SBMídia2000, Natal, RN, Junho [Mour01] Moura, M.S.A. Relações Espaciais em Documentos Hipermídia. Dissertação de Mestrado, Depto. de Informática, PUC-Rio, RJ, Agosto [Much03] Muchaluat-Saade D.C. Relações em Linguagens de Autoria Hipermídia: Aumentando Reuso e Expressividade, Tese de Doutorado, Departamento de Informática, PUC-Rio, Rio de Janeiro, Março [MuCS01] Muchaluat-Saade D.C., Colcher S., Soares L.F.G. Relações de Sincronização Espaço-Temporal Hipermídia Também Merecem Status de Primeira Classe, SBMídia2001, Florianópolis, SC, Outubro [MuRS02] Muchaluat-Saade D.C., Rodrigues R.F., Soares L.F.G. XConnector: Extending XLink to Provide Multimedia Synchronization, ACM DocEng'02, Virginia, USA, Novembro [MuSo02] Muchaluat-Saade D., Soares L.F.G. XConnector e XTemplate: Estendendo XLink para Aumentar Expressividade e Reuso, SBMídia2002, CE, Outubro [Rodr03] Rodrigues R.F. Formatação e Controle de Apresentações Hipermídia com Mecanismos de Adaptabilidade, Tese de Doutorado, Departamento de Informática, PUC-Rio, Rio de Janeiro, Março [SMIL01] Synchronized Multimedia Integration Language (SMIL 2.0), W3C Recommendation, Agosto [SoRM00] Soares L.F.G., Rodrigues R.F., Muchaluat-Saade D.C. Modeling, Authoring and Formatting Hypermedia Documents in the HyperProp System, ACM Multimedia Systems Journal, 8(2): , Março [SoRM03] Soares L.F.G., Rodrigues R.F., Muchaluat-Saade D.C. Modelo de Contextos Aninhados versão 3.0. Relatório Técnico, Lab. TeleMídia, PUC-Rio, [XHTM01] XHTML Module-based XHTML, W3C Rec., Maio [XLIN01] XML Linking Language (XLink) Version 1.0, W3C Rec., Junho 2001.

3 Linguagem NCL versão 2.0

3 Linguagem NCL versão 2.0 3 Linguagem NCL versão 2.0 A linguagem NCL Nested Context Language é uma linguagem declarativa para autoria de documentos hipermídia baseados no modelo conceitual NCM Nested Context Model. A primeira versão

Leia mais

5.1. Análise Comparativa

5.1. Análise Comparativa 5 Conclusões O objetivo desta dissertação foi apresentar o ambiente de autoria Composer, o qual é voltado para a criação de programas NCL, versão 3.0, para TV digital interativa. Da mesma forma que no

Leia mais

SMIL + XTemplate * 1. Introdução

SMIL + XTemplate * 1. Introdução SMIL + XTemplate * Heron V. O. Silva, Rogério Ferreira Rodrigues, Luiz Fernando Gomes Soares Detamento de Informática PUC-Rio heron@telemidia.puc-rio.br, rogerio@telemidia.puc-rio.br, lfgs@inf.puc-rio.br

Leia mais

1 Introdução. 1.1. Motivação

1 Introdução. 1.1. Motivação 1 Introdução A adoção do Ginga-NCL como middleware declarativo do SBTVD (Sistema Brasileiro de Televisão Digital) estabeleceu um marco no desenvolvimento de aplicações interativas para TV Digital terrestre

Leia mais

2 Geração Dinâmica de Conteúdo e Templates de Composição

2 Geração Dinâmica de Conteúdo e Templates de Composição 2 Geração Dinâmica de Conteúdo e Templates de Composição Alguns dos aspectos mais importantes na arquitetura proposta nesta dissertação são: a geração dinâmica de conteúdo e a utilização de templates de

Leia mais

1.1. Aplicações de TVD dinâmicas

1.1. Aplicações de TVD dinâmicas 1 Introdução Uma aplicação de TV Digital (TVD) comumente é composta por um vídeo principal associado a outros objetos (aplicações, imagens, vídeos, textos etc.), que são transmitidos em conjunto possibilitando

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando

Leia mais

Guia de utilização da notação BPMN

Guia de utilização da notação BPMN 1 Guia de utilização da notação BPMN Agosto 2011 2 Sumário de Informações do Documento Documento: Guia_de_utilização_da_notação_BPMN.odt Número de páginas: 31 Versão Data Mudanças Autor 1.0 15/09/11 Criação

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Aplicações Tv Digital

Aplicações Tv Digital Iniciando e terminando dois nós simultaneamente

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 Eduardo Laguna Rubai, Tiago Piperno Bonetti Universidade Paranaense (Unipar) Paranavaí PR- Brasil eduardorubay@gmail.com, bonetti@unipar.br Resumo.

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

Web Design. Prof. Felippe

Web Design. Prof. Felippe Web Design Prof. Felippe 2015 Sobre a disciplina Fornecer ao aluno subsídios para o projeto e desenvolvimento de interfaces de sistemas Web eficientes, amigáveis e intuitivas. Conceitos fundamentais sobre

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

Leia mais

4 Arquitetura para aplicações NCL dinâmicas

4 Arquitetura para aplicações NCL dinâmicas 4 Arquitetura para aplicações NCL dinâmicas Além de ser composta por objetos de mídia com conteúdo audiovisual, uma aplicação NCL dinâmica precisa ter objetos NCLua geradores de conteúdo em sua composição.

Leia mais

Manual do Usuário - ProJuris Web - Fila de E-mails Página 1 de 8

Manual do Usuário - ProJuris Web - Fila de E-mails Página 1 de 8 As informações contidas neste documento estão sujeitas a alterações sem o prévio aviso, o que não representa um compromisso da Virtuem Informática. As pessoas, organizações ou empresas e eventos de exemplos

Leia mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui.

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3 Tecnologia FPGA Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3.1. FPGA: Histórico, linguagens e blocos Muitos dos

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

Aplicação Prática de Lua para Web

Aplicação Prática de Lua para Web Aplicação Prática de Lua para Web Aluno: Diego Malone Orientador: Sérgio Lifschitz Introdução A linguagem Lua vem sendo desenvolvida desde 1993 por pesquisadores do Departamento de Informática da PUC-Rio

Leia mais

TÉCNICAS DE ESTRUTURAÇÃO PARA DESIGN RESPONSIVO: AMPLIANDO A USABILIDADE NO AMBIENTE WEB

TÉCNICAS DE ESTRUTURAÇÃO PARA DESIGN RESPONSIVO: AMPLIANDO A USABILIDADE NO AMBIENTE WEB TÉCNICAS DE ESTRUTURAÇÃO PARA DESIGN RESPONSIVO: AMPLIANDO A USABILIDADE NO AMBIENTE WEB Tiago Volpato 1, Claudete Werner 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil tiagovolpatobr@gmail.com,

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

4 Plano de Recuperação

4 Plano de Recuperação 4 Plano de Recuperação Como pode ser observado na Seção 3.2, um projeto de um middleware para TVD deve considerar o fato que ele será embarcado em plataformas diversas e, portanto, que fará uso de diversas

Leia mais

Análise de Dados do Financeiro

Análise de Dados do Financeiro Análise de Dados do Financeiro Introdução Para reunir em um só local as informações de contas a pagar e receber cadastradas e/ou geradas no sistema TTransp existe a interface de análise de dados do financeiro.

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

Análise da Nova Linguagem HTML5 para o Desenvolvimento Web

Análise da Nova Linguagem HTML5 para o Desenvolvimento Web Análise da Nova Linguagem HTML5 para o Desenvolvimento Web Sergio N. Ikeno¹, Késsia Rita da Costa Marchi¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil sergioikn@gmail.com, kessia@unipar.br Resumo.

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO

Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO da Despesa Pública 1 Sumário O Banco de Preços... 3 Acessando o Banco de Preços... 4 Funções do Banco de Preços... 5 Gerar Preço de Referência...

Leia mais

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela Aula 01 - Formatações prontas e Sumário Formatar como Tabela Formatar como Tabela (cont.) Alterando as formatações aplicadas e adicionando novos itens Removendo a formatação de tabela aplicada Formatação

Leia mais

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MANUAL

Leia mais

MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA

MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA SACI LIVRE SISTEMA DE ADMINISTRAÇÃO DE CONTEÚDO INSTITUCIONAL

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

4 Segmentação. 4.1. Algoritmo proposto

4 Segmentação. 4.1. Algoritmo proposto 4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS

ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o

Leia mais

Modelagemde Software Orientadaa Objetos com UML

Modelagemde Software Orientadaa Objetos com UML Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

Sistemas Multimídia. ð Linguagens de autoria. Sistemas Multimídia. ð Principal vantagem do HTML é simplicidade => SUCESSO. Sistemas Multimídia

Sistemas Multimídia. ð Linguagens de autoria. Sistemas Multimídia. ð Principal vantagem do HTML é simplicidade => SUCESSO. Sistemas Multimídia Departamento de Ciência da Computação - UFF Hipermídia na Web Hipermídia na Web ð Linguagens de autoria Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br 1 2 ð HyperText Markup Language ð

Leia mais

MC536 Bancos de Dados: Teoria e Prática

MC536 Bancos de Dados: Teoria e Prática Universidade Estadual de Campinas - UNICAMP Instituto de Computação - IC MC536 Bancos de Dados: Teoria e Prática Aula #3 : MER e MER Estendido Profs. Anderson Rocha e André Santanchè Campinas, 1 de Agosto

Leia mais

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade

Leia mais

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado O NetPublisher é um sistema de gerenciamento de portais e websites corporativos (intranets ou extranets), apropriado para pequenas, médias e grandes empresas. O conteúdo do website pode ser atualizado

Leia mais

Eduardo Bezerra. Editora Campus/Elsevier

Eduardo Bezerra. Editora Campus/Elsevier Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier Capítulo 11 Arquitetura do sistema Nada que é visto, é visto de uma vez e por completo. --EUCLIDES

Leia mais

GUIA BÁSICO DA SALA VIRTUAL

GUIA BÁSICO DA SALA VIRTUAL Ambiente Virtual de Aprendizagem - MOODLE GUIA BÁSICO DA SALA VIRTUAL http://salavirtual.faculdadesaoluiz.edu.br SUMÁRIO 1. Acessando Turmas 4 2. Inserindo Material 4 3. Enviando Mensagem aos Alunos 6

Leia mais

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

Leia mais

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Manual do Publicador Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Sumário Painel de Administração... 3 1 - Inserção de post... 5 2 Publicação de post com notícia na área headline (galeria de

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

Personalizações do mysuite

Personalizações do mysuite Personalizações do mysuite 1. mysuite... 2 2. Customização de campos... 3 3. Importação de dados... 3 4. Integração de sistemas... 3 5. Personalização do Atendimento Online... 4 5.1. Imagens de online

Leia mais

Módulo 4: Gerenciamento de Dados

Módulo 4: Gerenciamento de Dados Módulo 4: Gerenciamento de Dados 1 1. CONCEITOS Os dados são um recurso organizacional decisivo que precisa ser administrado como outros importantes ativos das empresas. A maioria das organizações não

Leia mais

Manual do Visualizador NF e KEY BEST

Manual do Visualizador NF e KEY BEST Manual do Visualizador NF e KEY BEST Versão 1.0 Maio/2011 INDICE SOBRE O VISUALIZADOR...................................................... 02 RISCOS POSSÍVEIS PARA O EMITENTE DA NOTA FISCAL ELETRÔNICA.................

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

Sistemas para internet e software livre

Sistemas para internet e software livre Sistemas para internet e software livre Metodologia de modelagem de aplicações WEB Image: FreeDigitalPhotos.net Domínio: Elementos de aplicação WEB Páginas Web Scripts Formulários Applets e ActiveX Motivação

Leia mais

VPAT (Voluntary Product Accessibility Template, Modelo de Acessibilidade de Produto) do eportfolio da Desire2Learn Maio de 2013 Conteúdo

VPAT (Voluntary Product Accessibility Template, Modelo de Acessibilidade de Produto) do eportfolio da Desire2Learn Maio de 2013 Conteúdo VPAT (Voluntary Product Accessibility Template, Modelo de Acessibilidade de Produto) do eportfolio da Desire2Learn Maio de 2013 Conteúdo Introdução Recursos de acessibilidade principais Navegação usando

Leia mais

Astra LX Pré-impressão de etiquetas Guia para o processo de pré-impressão de etiquetas no Programa AstraLX.

Astra LX Pré-impressão de etiquetas Guia para o processo de pré-impressão de etiquetas no Programa AstraLX. 2011 www.astralab.com.br Astra LX Pré-impressão de etiquetas Guia para o processo de pré-impressão de etiquetas no Programa AstraLX. Equipe Documentação Astra AstraLab 30/08/2011 1 Sumário Pré-impressão

Leia mais

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2. 1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2. Editando um Artigo 4.3. Excluindo um Artigo 4.4. Publicar

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1132 Processo e qualidade de software II Prof. Me. Elias Ferreira Sala: 402 E Quarta-Feira:

Leia mais

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Engenharia de Software Parte I Introdução Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Mitos do Desenvolvimento de Software A declaração de objetivos é suficiente para se construir um software.

Leia mais

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO AGOSTO DE 2013 SUMÁRIO STI/UFF - Sistema de Gerenciamento de Projetos do PDI SUMÁRIO... 2 1 Introdução... 3 1.1 O que é e qual a finalidade

Leia mais

3 OOHDM e SHDM 3.1. OOHDM

3 OOHDM e SHDM 3.1. OOHDM 32 3 OOHDM e SHDM Com a disseminação em massa, desde a década de 80, de ambientes hipertexto e hipermídia, principalmente a Web, foi identificada a necessidade de elaborar métodos que estruturassem de

Leia mais

EDITEC: Editor Gráfico de Templates de Composição para Facilitar a Autoria de Programas para TV Digital Interativa *

EDITEC: Editor Gráfico de Templates de Composição para Facilitar a Autoria de Programas para TV Digital Interativa * EDITEC: Editor Gráfico de Templates de Composição para Facilitar a Autoria de Programas para TV Digital Interativa * Jean Ribeiro Damasceno 1 Joel A. Ferreira dos Santos 2 Débora C. Muchaluat Saade 2 Laboratório

Leia mais

Mais sobre uso de formulários Site sem Ajax

Mais sobre uso de formulários Site sem Ajax Mais sobre uso de formulários Site sem Ajax Página com busca padrão 1 Página com o resultado da busca carregada no local da anterior (o formulário está vazio) Site com Ajax 2 Site usando Ajax para preencher

Leia mais

Informática Básica. Microsoft Word XP, 2003 e 2007

Informática Básica. Microsoft Word XP, 2003 e 2007 Informática Básica Microsoft Word XP, 2003 e 2007 Introdução O editor de textos Microsoft Word oferece um conjunto de recursos bastante completo, cobrindo todas as etapas de preparação, formatação e impressão

Leia mais

02/10/2012. Padronização de interfaces. Referências

02/10/2012. Padronização de interfaces. Referências Referências Engenharia de Usabilidade Prof.: Clarindo Isaías Pereira da Silva e Pádua Contribuição: Cláudio Márcio de Souza Vicente Gestus Hix, D.; Hartson, H. R. Developing User Interfaces: ensuring usability

Leia mais

SISTEMA GERENCIADOR DE BANCO DE DADOS

SISTEMA GERENCIADOR DE BANCO DE DADOS BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SISTEMA GERENCIADOR

Leia mais

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação. ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa Minicurso introdutório de desenvolvimento para dispositivos Android Cristiano Costa Desenvolvimento da interface estática Sobre mim Graduando em Engenharia Eletrônica - UNIFEI Trabalhou em desenvolvimento

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Construtor de sites SoftPixel GUIA RÁPIDO - 1 - GUIA RÁPIDO - 1 - Sumário Introdução...3 Por que utilizar o Construtor de Sites?...3 Vantagens do Construtor de Sites...3 Conceitos básicos...3 Configuração básica do site...5 Definindo o layout/template

Leia mais

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,

Leia mais

Desenvolvimento de um CMS 1 para a criação e publicação de web sites acessíveis por deficientes visuais.

Desenvolvimento de um CMS 1 para a criação e publicação de web sites acessíveis por deficientes visuais. Desenvolvimento de um CMS 1 para a criação e publicação de web sites acessíveis por deficientes visuais. Tales Henrique José MOREIRA 1 ; Gabriel da SILVA 2 ; 1 Estudante de Tecnologia em Sistemas para

Leia mais

Engenharia de Software I: Análise e Projeto de Software Usando UML

Engenharia de Software I: Análise e Projeto de Software Usando UML Engenharia de Software I: Análise e Projeto de Software Usando UML Capítulo 1 Processo de Desenvolvimento de Software Metodologia de Desenvolvimento de Software Uma metodologia é um conjunto de métodos,

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

Criação de Formulários

Criação de Formulários iq2 Criação de Formulários Formulários são os questionários formatados no software Sphinx para coleta de dados, que contêm opções avançadas de edição, organização e personalização. Ao utilizarmos o formulário

Leia mais

PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 1. Conceitos de Orientação a Objetos Introdução O paradigma da POO Classes

Leia mais

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores Primeiro Teste 21 de Outubro de 2006, 9:00H 10:30H Nome: Número:

Leia mais

Tema UFPel 2.0 WP Institucional Guia de Opções de Personalização

Tema UFPel 2.0 WP Institucional Guia de Opções de Personalização Tema UFPel 2.0 WP Institucional Guia de Opções de Personalização Sumário 1. Configurações Iniciais...2 1.1. Configurando o Menu Personalizado...2 1.2. Configurando os Widgets...3 2. Localize o nome de

Leia mais

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE Fabiana Gomes Marinho Faculdade Lourenço Filho Resumo: Na UML, a modelagem conceitual dos dados é descrita pelo diagrama de classes, que através

Leia mais

Introdução ao HTML 5 e Implementação de Documentos

Introdução ao HTML 5 e Implementação de Documentos Linguagem de Programação para Web Introdução ao HTML 5 e Implementação de Documentos Prof. Mauro Lopes 1-31 20 Objetivo Iremos aqui apresentar a estrutura básica de um documento HTML e iremos também apresentar

Leia mais

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER Objetivo dessa aula é descrever as características e a simbologia dos diagramas UML e MER na modelagem de sistemas de informação de uma forma a permitir a comunicação entre técnicos e gestores. Modelagem

Leia mais

Um documento XML possui Unidade lógica - os elementos Usuário "inventa" as marcas através de DTDs

Um documento XML possui Unidade lógica - os elementos Usuário inventa as marcas através de DTDs XML Um documento XML possui Unidade lógica - os elementos Usuário "inventa" as marcas através de DTDs Unidade física - as entidades Armazenamento separado dos dados Como toda linguagem de marcação: XML

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

Wilson Moraes Góes. Novatec

Wilson Moraes Góes. Novatec Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,

Leia mais

CSS é a abreviatura para Cascading Style Sheets Folhas de Estilo em Cascata

CSS é a abreviatura para Cascading Style Sheets Folhas de Estilo em Cascata CSS CSS é a abreviatura para Cascading Style Sheets Folhas de Estilo em Cascata CSS é uma linguagem para estilos (formatação) que define o layout de documentos HTML. CSS controla fontes, cores, margens,

Leia mais

Universidade da Beira Interior

Universidade da Beira Interior Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação

Leia mais

Relações em Linguagens de Autoria Hipermídia: Aumentando Reuso e Expressividade

Relações em Linguagens de Autoria Hipermídia: Aumentando Reuso e Expressividade Débora Christina Muchaluat Saade Relações em Linguagens de Autoria Hipermídia: Aumentando Reuso e Expressividade Tese de Doutorado DEPARTAMENTO DE INFORMÁTICA Programa de Pós-Graduação em Informática Rio

Leia mais

PRINCÍPIOS DE INFORMÁTICA PRÁTICA 08 1. OBJETIVO 2. BASE TEÓRICA. 2.1 Criando Mapas no Excel. 2.2 Utilizando o Mapa

PRINCÍPIOS DE INFORMÁTICA PRÁTICA 08 1. OBJETIVO 2. BASE TEÓRICA. 2.1 Criando Mapas no Excel. 2.2 Utilizando o Mapa PRINCÍPIOS DE INFORMÁTICA PRÁTICA 08 1. OBJETIVO Aprender a utilizar mapas, colocar filtros em tabelas e a criar tabelas e gráficos dinâmicos no MS-Excel. Esse roteiro foi escrito inicialmente para o Excel

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial 1 of 14 27/01/2014 17:33 Sistema de Paginação de Esportes Universitários Documento de Arquitetura de Software Versão 1.0 Histórico da Revisão Data 30 de novembro de 1999 Versão Descrição Autor 1.0 Versão

Leia mais