Este documento fornece uma introdução concisa aos diagramas de sequência no UML. Explica que estes diagramas modelam a ordem de interações entre partes de um sistema, identificando participantes, mensagens trocadas e barras de ativação. Também descreve elementos como fragmentos de sequência para modelar alternativas e repetições.
O documento descreve os conceitos fundamentais de modelagem de dados, incluindo: 1) Entidades representadas por retângulos e seus atributos representados por círculos; 2) Relacionamentos entre entidades representados por losangos; 3) Cardinalidades indicadas por "pés de galinha" para mostrar quantas ocorrências de cada entidade estão envolvidas.
O documento discute os conceitos básicos de modelagem de dados para implementação em um banco de dados, incluindo entidades, atributos, relacionamentos e chaves. Ele fornece exemplos de como modelar entidades como clientes, produtos e notas fiscais e seus relacionamentos.
[1] A modelagem de dados é o processo de construção de um modelo conceitual, lógico e físico dos dados de um sistema antes da implementação do banco de dados, [2] incluindo três etapas principais: modelagem conceitual, lógica e física, [3] sendo essencial para evitar problemas no banco de dados e sistema final.
A quick introduction on code standards, documentation and testing for first year grading students. Very incomplete and opinionated. Still fun and interesting, I hope!
Language Identification: A neural network approachAlberto Simões
This document describes a neural network approach for language identification. It discusses extracting features from text such as alphabet characters and character sequences (unigrams, bigrams, trigrams) that are common in different languages. Training data is prepared from texts of over 105 languages on the TED website, with out-of-vocabulary words removed. The neural network architecture has an input layer for features, hidden layers, and an output layer for language predictions. Alphabet features count Unicode character classes and are binarized. Trigrams are used as sequence features to aid comparisons between languages.
This document provides information on using the Google Maps JavaScript API, including:
- The API is available free with usage limits or as a paid service. An API key is required.
- Basic HTML is shown to load the Google Maps script and initialize a map on a page.
- Default user interface elements like zoom controls can be configured or disabled. Custom buttons can be added.
- Markers can be placed on the map and configured with info windows, animations, and custom icons.
- Shapes like polylines and circles can be drawn on the map.
- Services provide capabilities like geocoding addresses and locations, directions, and accessing Fusion Tables data.
Making the most of a 100-year-old dictionaryAlberto Simões
O documento descreve o projeto de criar um dicionário português livre e de código aberto, digitalizando e transformando o dicionário de 1913 de Cândido de Figueiredo. Voluntários transcreveram e estruturaram o dicionário em formato XML e modernizaram a ortografia. O dicionário agora está disponível online e em vários formatos, com funcionalidades como pesquisa simples, avançada e ontologica.
Dictionary Alignment by Rewrite-based Entry TranslationAlberto Simões
This document describes research on aligning entries between a Portuguese dictionary (Dicionário-Aberto) and a Galician synonyms dictionary. It proposes using a translation function that applies rewrite rules, mainly substitutions, to translate Portuguese words into Galician. It evaluates the approach on a small validation dictionary, achieving over 73% accuracy. The goal is to integrate the Galician dictionary into the Portuguese one to allow consultation of both.
O documento descreve os conceitos fundamentais de modelagem de dados, incluindo: 1) Entidades representadas por retângulos e seus atributos representados por círculos; 2) Relacionamentos entre entidades representados por losangos; 3) Cardinalidades indicadas por "pés de galinha" para mostrar quantas ocorrências de cada entidade estão envolvidas.
O documento discute os conceitos básicos de modelagem de dados para implementação em um banco de dados, incluindo entidades, atributos, relacionamentos e chaves. Ele fornece exemplos de como modelar entidades como clientes, produtos e notas fiscais e seus relacionamentos.
[1] A modelagem de dados é o processo de construção de um modelo conceitual, lógico e físico dos dados de um sistema antes da implementação do banco de dados, [2] incluindo três etapas principais: modelagem conceitual, lógica e física, [3] sendo essencial para evitar problemas no banco de dados e sistema final.
A quick introduction on code standards, documentation and testing for first year grading students. Very incomplete and opinionated. Still fun and interesting, I hope!
Language Identification: A neural network approachAlberto Simões
This document describes a neural network approach for language identification. It discusses extracting features from text such as alphabet characters and character sequences (unigrams, bigrams, trigrams) that are common in different languages. Training data is prepared from texts of over 105 languages on the TED website, with out-of-vocabulary words removed. The neural network architecture has an input layer for features, hidden layers, and an output layer for language predictions. Alphabet features count Unicode character classes and are binarized. Trigrams are used as sequence features to aid comparisons between languages.
This document provides information on using the Google Maps JavaScript API, including:
- The API is available free with usage limits or as a paid service. An API key is required.
- Basic HTML is shown to load the Google Maps script and initialize a map on a page.
- Default user interface elements like zoom controls can be configured or disabled. Custom buttons can be added.
- Markers can be placed on the map and configured with info windows, animations, and custom icons.
- Shapes like polylines and circles can be drawn on the map.
- Services provide capabilities like geocoding addresses and locations, directions, and accessing Fusion Tables data.
Making the most of a 100-year-old dictionaryAlberto Simões
O documento descreve o projeto de criar um dicionário português livre e de código aberto, digitalizando e transformando o dicionário de 1913 de Cândido de Figueiredo. Voluntários transcreveram e estruturaram o dicionário em formato XML e modernizaram a ortografia. O dicionário agora está disponível online e em vários formatos, com funcionalidades como pesquisa simples, avançada e ontologica.
Dictionary Alignment by Rewrite-based Entry TranslationAlberto Simões
This document describes research on aligning entries between a Portuguese dictionary (Dicionário-Aberto) and a Galician synonyms dictionary. It proposes using a translation function that applies rewrite rules, mainly substitutions, to translate Portuguese words into Galician. It evaluates the approach on a small validation dictionary, achieving over 73% accuracy. The goal is to integrate the Galician dictionary into the Portuguese one to allow consultation of both.
Aula 03 - Introdução aos Diagramas de AtividadeAlberto Simões
Introdução aos Diagramas de Atividade (UML) para a disciplina de Planeamento de Sistemas de Informação do Mestrado em Informação Empresarial da Escola Superior de Estudos Industriais e de Gestão do Instituto Politécnico do Porto.
O documento apresenta uma introdução à engenharia de requisitos, discutindo o que é este processo, quanto custa e os problemas que pode enfrentar. É descrito o processo típico de engenharia de requisitos, incluindo atividades como estudo de viabilidade, levantamento e seleção de requisitos e especificação de requisitos.
Aula 01 - Planeamento de Sistemas de InformaçãoAlberto Simões
Este documento fornece um resumo sobre sistemas de informação e modelos de desenvolvimento de software. Discute o que é informação, sistemas de informação e suas características. Também explica os principais modelos de desenvolvimento de software e como eles definem processos e interações para o desenvolvimento de software.
Este documento descreve vários módulos Perl para processamento de linguagem natural em português, incluindo identificação de idioma, segmentação de texto, análise morfológica e outras funcionalidades. Módulos como Lingua::Identify, Lingua::PT::PLNbase e Lingua::FreeLing3 fornecem ferramentas para identificar idiomas, segmentar texto em frases e palavras e analisar morfologicamente palavras em português e outros idiomas.
Uma introdução ligeira às redes de PERT e gráficos de GANTT. Aula de Planeamento de Sistemas de Informação do Mestrado em Informação Empresarial da Escola Superior de Estudos Industriais e de Gestão, do Instituto Politécnico do Cávado e do Ave.
The document provides a tutorial on using the Dancer web framework in Perl. It describes what Dancer is, how to install it and generate a basic application scaffolding. It then explains the directory structure and key files that are generated, including configuration files, templates, static assets, and the main application module. It also demonstrates how to start the development server and test that the basic application is working.
Processing XML: a rewriting system approachAlberto Simões
The document discusses using a rewriting system approach to process XML. It describes how XML is usually generated from structured data but may also come from unstructured text documents. It then explains that rewriting rules can be used to transform a textual document into XML by defining patterns to match text, restrictions on when rules apply, and actions to replace or modify the matched text. The document outlines two rewriting approaches - fixed-point and sliding cursor - and provides examples of how the Text::RewriteRules Perl module implements rewriting to perform tasks like anonymizing emails and machine translation.
O documento descreve os sistemas de numeração decimal e binário. Explica que no sistema decimal usamos 10 algarismos e realizamos combinações destes para contar números cada vez maiores. No sistema binário, usamos apenas os dígitos 0 e 1 e também realizamos combinações para representar e contar números maiores.
A apresentação introduz a álgebra de Boole, definindo-a como um conjunto de valores lógicos (verdadeiro e falso), operações (negação, conjunção e disjunção) e propriedades. Discute as operações básicas da álgebra de Boole e suas representações matemáticas.
Apresentação sobre arquitecturas de tradução automática, realizada na Escola de Verão em PLN realizada em 2009 na Faculdade de Letras da Universidade do Porto, Portugal.
Extracção de Recursos para Tradução AutomáticaAlberto Simões
O documento discute recursos para tradução automática, incluindo corpora paralelos, dicionários bilingues e unidades de tradução. Exemplos de corpora paralelos incluem o COMPARA, Europarl e JRC-Acquis. Dicionários de tradução podem ser extraídos desses recursos paralelos.
O documento descreve o processo de criação de um dicionário aberto e gratuito em português através da digitalização e transcrição de um dicionário existente no domínio público - o "Novo Dicionário da Língua Portuguesa" de 1913 por Candido de Figueiredo. O dicionário escolhido será digitalizado e transcrito por voluntários usando ferramentas como o Projecto Gutenberg e o Distributed Proofreaders para torná-lo acessível online de forma gratuita.
O documento descreve o GLOBS, um sistema de gerenciamento de terminologia online. Em 3 frases:
1) O GLOBS foi desenvolvido para permitir a construção colaborativa de terminologias online de forma gratuita e aberta.
2) Ele começou como um projeto de graduação e foi melhorado em projetos subsequentes para ser mais genérico e interoperável.
3) O GLOBS está disponível online para profissionais e a comunidade construírem e compartilharem terminologias.
O documento discute o projeto GLOBS, um gestor de terminologia online. O objetivo do GLOBS é permitir a criação e gestão de terminologias personalizadas e multilingues de forma cooperativa, com funcionalidades como importação/exportação de terminologias e pesquisa livre. O GLOBS também inova ao permitir explicitar relacionamentos entre conceitos, aproximando-se de um thesaurus.
Sistemas de controle de versão permitem armazenar diferentes versões de arquivos e diretórios, gerir históricos de alterações e servir indiretamente como backup. Podem ser locais, centralizados ou distribuídos.
Corpora para Processamento de Linguagem NaturalAlberto Simões
O documento discute corpora para processamento de linguagem natural. Define corpus como uma coleção finita de textos sobre um determinado assunto. Apresenta exemplos de corpora monolingues, comparáveis e paralelos, incluindo o tamanho em palavras. Descreve corpora paralelos alinhados ao nível da frase e exemplos como Hansards e EuroParl.
Bilingual Terminology Extraction based on Translation PatternsAlberto Simões
The document discusses bilingual terminology extraction based on translation patterns. It presents the motivation and algorithm for this approach to terminology extraction. It also explores how translation works by using the example of translating the English term "red tree" and showing the Portuguese translation and part-of-speech patterns between the two languages.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
Aula 03 - Introdução aos Diagramas de AtividadeAlberto Simões
Introdução aos Diagramas de Atividade (UML) para a disciplina de Planeamento de Sistemas de Informação do Mestrado em Informação Empresarial da Escola Superior de Estudos Industriais e de Gestão do Instituto Politécnico do Porto.
O documento apresenta uma introdução à engenharia de requisitos, discutindo o que é este processo, quanto custa e os problemas que pode enfrentar. É descrito o processo típico de engenharia de requisitos, incluindo atividades como estudo de viabilidade, levantamento e seleção de requisitos e especificação de requisitos.
Aula 01 - Planeamento de Sistemas de InformaçãoAlberto Simões
Este documento fornece um resumo sobre sistemas de informação e modelos de desenvolvimento de software. Discute o que é informação, sistemas de informação e suas características. Também explica os principais modelos de desenvolvimento de software e como eles definem processos e interações para o desenvolvimento de software.
Este documento descreve vários módulos Perl para processamento de linguagem natural em português, incluindo identificação de idioma, segmentação de texto, análise morfológica e outras funcionalidades. Módulos como Lingua::Identify, Lingua::PT::PLNbase e Lingua::FreeLing3 fornecem ferramentas para identificar idiomas, segmentar texto em frases e palavras e analisar morfologicamente palavras em português e outros idiomas.
Uma introdução ligeira às redes de PERT e gráficos de GANTT. Aula de Planeamento de Sistemas de Informação do Mestrado em Informação Empresarial da Escola Superior de Estudos Industriais e de Gestão, do Instituto Politécnico do Cávado e do Ave.
The document provides a tutorial on using the Dancer web framework in Perl. It describes what Dancer is, how to install it and generate a basic application scaffolding. It then explains the directory structure and key files that are generated, including configuration files, templates, static assets, and the main application module. It also demonstrates how to start the development server and test that the basic application is working.
Processing XML: a rewriting system approachAlberto Simões
The document discusses using a rewriting system approach to process XML. It describes how XML is usually generated from structured data but may also come from unstructured text documents. It then explains that rewriting rules can be used to transform a textual document into XML by defining patterns to match text, restrictions on when rules apply, and actions to replace or modify the matched text. The document outlines two rewriting approaches - fixed-point and sliding cursor - and provides examples of how the Text::RewriteRules Perl module implements rewriting to perform tasks like anonymizing emails and machine translation.
O documento descreve os sistemas de numeração decimal e binário. Explica que no sistema decimal usamos 10 algarismos e realizamos combinações destes para contar números cada vez maiores. No sistema binário, usamos apenas os dígitos 0 e 1 e também realizamos combinações para representar e contar números maiores.
A apresentação introduz a álgebra de Boole, definindo-a como um conjunto de valores lógicos (verdadeiro e falso), operações (negação, conjunção e disjunção) e propriedades. Discute as operações básicas da álgebra de Boole e suas representações matemáticas.
Apresentação sobre arquitecturas de tradução automática, realizada na Escola de Verão em PLN realizada em 2009 na Faculdade de Letras da Universidade do Porto, Portugal.
Extracção de Recursos para Tradução AutomáticaAlberto Simões
O documento discute recursos para tradução automática, incluindo corpora paralelos, dicionários bilingues e unidades de tradução. Exemplos de corpora paralelos incluem o COMPARA, Europarl e JRC-Acquis. Dicionários de tradução podem ser extraídos desses recursos paralelos.
O documento descreve o processo de criação de um dicionário aberto e gratuito em português através da digitalização e transcrição de um dicionário existente no domínio público - o "Novo Dicionário da Língua Portuguesa" de 1913 por Candido de Figueiredo. O dicionário escolhido será digitalizado e transcrito por voluntários usando ferramentas como o Projecto Gutenberg e o Distributed Proofreaders para torná-lo acessível online de forma gratuita.
O documento descreve o GLOBS, um sistema de gerenciamento de terminologia online. Em 3 frases:
1) O GLOBS foi desenvolvido para permitir a construção colaborativa de terminologias online de forma gratuita e aberta.
2) Ele começou como um projeto de graduação e foi melhorado em projetos subsequentes para ser mais genérico e interoperável.
3) O GLOBS está disponível online para profissionais e a comunidade construírem e compartilharem terminologias.
O documento discute o projeto GLOBS, um gestor de terminologia online. O objetivo do GLOBS é permitir a criação e gestão de terminologias personalizadas e multilingues de forma cooperativa, com funcionalidades como importação/exportação de terminologias e pesquisa livre. O GLOBS também inova ao permitir explicitar relacionamentos entre conceitos, aproximando-se de um thesaurus.
Sistemas de controle de versão permitem armazenar diferentes versões de arquivos e diretórios, gerir históricos de alterações e servir indiretamente como backup. Podem ser locais, centralizados ou distribuídos.
Corpora para Processamento de Linguagem NaturalAlberto Simões
O documento discute corpora para processamento de linguagem natural. Define corpus como uma coleção finita de textos sobre um determinado assunto. Apresenta exemplos de corpora monolingues, comparáveis e paralelos, incluindo o tamanho em palavras. Descreve corpora paralelos alinhados ao nível da frase e exemplos como Hansards e EuroParl.
Bilingual Terminology Extraction based on Translation PatternsAlberto Simões
The document discusses bilingual terminology extraction based on translation patterns. It presents the motivation and algorithm for this approach to terminology extraction. It also explores how translation works by using the example of translating the English term "red tree" and showing the Portuguese translation and part-of-speech patterns between the two languages.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
Este certificado confirma que Gabriel de Mattos Faustino concluiu com sucesso um curso de 42 horas de Gestão Estratégica de TI - ITIL na Escola Virtual entre 19 de fevereiro de 2014 a 20 de fevereiro de 2014.
1. Diagramas de Sequˆncia
e
Ultra-Light version
Alberto Sim˜es
o
alberto.simoes@eu.ipp.pt
Planeamento de Sistemas de Informa¸˜o
ca
Mestrado em Informa¸˜o Empresarial
ca
2012/2013
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 1/18
2. Diagramas de Sequˆncia
e
Os diagramas de sequˆncia s˜o um membro importante do
e a
grupo dos diagramas de intera¸˜o;
ca
Os diagramas de intera¸˜o modelam as intera¸˜es entre as
ca co
partes intervenientes no sistema;
Neste grupo de diagramas, incluem-se tamb´m:
e
diagramas de comunica¸˜o;
ca
diagramas de temporiza¸˜o;
ca
Os diagramas de sequˆncia s˜o os mais populares,
e a
possivelmente porque s˜o os mais f´ceis de entender por
a a
pessoas externas ao UML.
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 2/18
3. Diagramas de Sequˆncia
e
Tˆm como objetivo capturar a ordem de intera¸˜es entre
e co
partes do sistema;
´
E poss´ descrever que itera¸˜es ser˜o despoletadas quando
ıvel co a
determinado case de uso ´ executado, e qual a ordem pela
e
qual essas itera¸˜es ir˜o ocorrer;
co a
Podem incluir muita mais informa¸˜o sobre esta intera¸˜o,
ca ca
mas a sua relevˆncia ´ a simplicidade e efetividade com que
a e
comunicam a ordem de eventos ao longo de uma intera¸˜o. ca
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 3/18
4. Diagramas de Sequˆncia
e
Participantes
Participante 1 Participante 2
participantes
identificação
do participante
linha do tempo
S˜o compostos por uma cole¸˜o de participantes:
a ca
partes do sistema que interagem durante a sequˆncia.
e
A posi¸˜o de um participante numa sequˆncia ´ importante.
ca e e
Ao contr´rio de outros diagramas, os de sequˆncia s˜o sempre
a e a
organizados verticalmente.
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 4/18
5. Diagramas de Sequˆncia
e
Participantes
Participante 1 Participante 2
participantes
identificação
do participante
linha do tempo
A cada participante est´ associada uma linha do tempo;
a
A linha do tempo serve para indicar, a cada momento, se esse
participante existe nesse ponto da sequˆncia;
e
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 5/18
6. Diagramas de Sequˆncia
e
Participantes
Existem dois tipos de diagramas, que podem ser de alto n´
ıvel, ou
baixo n´
ıvel
num diagrama de baixo n´ os participantes s˜o,
ıvel a
habitualmente, classes, objetos, ou m´dulos do sistema, e as
o
mensagens trocadas s˜o invoca¸˜es a m´todos dispon´
a co e ıveis
nesses mesmos objetos;
num diagrama de alto n´ os participantes podem ser
ıvel
simplesmente atores, o sistema, uma base de dados ou em
alguns casos, a interface com o utilizador;
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 6/18
7. Diagramas de Sequˆncia
e
Tempo
O tempo, num diagrama de sequˆncia, come¸a no topo da
e c
p´gina, abaixo do participante mais acima, e progride pela
a
p´gina abaixo;
a
A ordem pela qual as intera¸˜es s˜o colocadas pela p´gina
co a a
abaixo indica a ordem pela qual estas intera¸˜es se realizam
co
ao longo do tempo;
O tempo num diagrama de sequˆncia ´ apenas relevante em
e e
termos de ordem, e n˜o em termos de dura¸˜o;
a ca
Embora a altura em que uma intera¸˜o ocorre seja indicada,
ca
essa posi¸˜o n˜o ´ proporcional ` altura em que outras
ca a e a
intera¸˜es ocorrem;
co
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 7/18
8. Diagramas de Sequˆncia
e
Eventos, Sinais e Mensagens
Participante 1 Participante 2
Mensagem
Evento de Evento de
"envio de "receção de
mensagem" mensagem"
A parte mais pequena de uma intera¸˜o ´ um evento;
ca e
Um evento ´ qualquer ponto onde algo ocorre.
e
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 8/18
9. Diagramas de Sequˆncia
e
Eventos, Sinais e Mensagens
Participante 1 Participante 2
Mensagem
Evento de Evento de
"envio de "receção de
mensagem" mensagem"
Eventos s˜o os blocos construtores para sinais e mensagens;
a
Sinais e mensagens s˜o nomes diferentes para o mesmo
a
conceito:
sinal ´ a terminologia usada por analistas de sistemas;
e
mensagem ´ a terminologia usada por engenheiros de software;
e
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 9/18
10. Diagramas de Sequˆncia
e
Eventos, Sinais e Mensagens
Invocador Recetor
da da
Mensagem Mensagem
Participante 1 Participante 2
Mensagem (argumentos)
Barra de Barra de
ativação do ativação do
Invocador Recetor
Seta de Mensagem
retorno e assinatura
(opcional) (opcional)
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 10/18
11. Diagramas de Sequˆncia
e
Eventos, Sinais e Mensagens
A intera¸˜o num diagrama de sequˆncia ocorre quando um
ca e
participante decide enviar uma mensagem a outro participante;
As mensagens num diagrama de sequˆncia s˜o especificadas
e a
usando usa seta, do participante que deseja enviar a
mensagem (o invocador) para o participante que deve receber
essa mensagem (o recetor);
As mensagens podem fluir em qualquer dire¸˜o que fa¸a
ca c
sentido para a intera¸˜o requerida:
ca
da esquerda para a direita, da direita para a esquerda, ou
mesmo para si pr´prio.
o
Uma mensagem pode ser vista como um evento que ´ passado
e
do invocador para o recetor para que este realize alguma
opera¸˜o.
ca
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 11/18
12. Diagramas de Sequˆncia
e
Barras de Ativa¸˜o
ca
Invocador Recetor
da da
Mensagem Mensagem
Participante 1 Participante 2
Mensagem (argumentos)
Barra de Barra de
ativação do ativação do
Invocador Recetor
Seta de Mensagem
retorno e assinatura
(opcional) (opcional)
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 12/18
13. Diagramas de Sequˆncia
e
Barras de Ativa¸˜o
ca
Quando uma mensagem ´ enviada a um participante, ela
e
despoleta o participante recetor para realizar algo: neste
momento o recetor ´ dito como ativo!
e
Para mostrar que um participante est´ ativo, ou seja, a realizar
a
uma qualquer opera¸˜o, ´ usada uma barra de ativa¸˜o;
ca e ca
Tamb´m ´ habitual desenhar a barra de ativa¸˜o no
e e ca
invocador, demonstrando que est´ ocupado a enviar a
a
mensagem, e que estar´ ocupado depois de receber a resposta;
a
As barras de ativa¸˜o s˜o opcionais, j´ que podem gerar ru´
ca a a ıdo
num diagrama de grandes dimens˜es.
o
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 13/18
14. Diagramas de Sequˆncia
e
Mensagens Aninhadas
Participante 1 Participante 2 Participante 3
Mensagem Inicial
Mensagem aninhada 1
Mensagem aninhada 2
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 14/18
15. Diagramas de Sequˆncia
e
Mensagens de Retorno
A mensagem de retorno ´ opcional, e serve para mostrar, no
e
final de uma barra de ativa¸˜o, retornar ao participante que
ca
enviou a mensagem original.
Por vezes o uso das mensagens de retorno podem tornar os
diagramas confusos.
No entanto, estas mensagens de retorno s˜o impl´
a ıcitas sempre
que uma barra de ativa¸˜o termina1 .
ca
Embora as mensagens sejam habitualmente enviadas entre
dois participantes diferentes, ´ normal que um participante
e
envie uma mensagem a si mesmo.
1
Para mensagens s´
ıncronas. . .
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 15/18
16. Diagramas de Sequˆncia
e
Fragmentos de Sequˆncia
e
Participante 1 Participante 2 Participante 3
Mensagem Inicial
alt Mensagem opcional 1
[condição]
[else] Mensagem opcional 2
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 16/18
17. Diagramas de Sequˆncia
e
Fragmentos de Sequˆncia
e
Um fragmento de sequˆncia ´ uma caixa que engloba uma
e e
por¸˜o de intera¸˜es;
ca co
Uma caixa de fragmento de sequˆncia sobrep˜e-se na posi¸˜o
e o ca
do diagrama onde essa por¸˜o de intera¸˜es se realiza;
ca co
Pode conter qualquer n´mero de intera¸˜es e, em diagramas
u co
complexos, at´ outros fragmentos;
e
No canto superior esquerdo da caixa de fragmento ´ indicado
e
o tipo de fragmento.
No diagrama anterior, o operador ´ o alt, que indica que cada
e
um dos grupos de intera¸˜es s˜o alternativas.
co a
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 17/18
18. Diagramas de Sequˆncia
e
Fragmentos de Sequˆncia
e
Alguns tipos de fragmentos:
alt dado um conjunto de guardas, e dependendo de qual ´ e
verdadeiro, a correspondente sub-cole¸˜o de intera¸˜es ser´
ca co a
executada;
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 18/18
19. Diagramas de Sequˆncia
e
Fragmentos de Sequˆncia
e
Alguns tipos de fragmentos:
alt dado um conjunto de guardas, e dependendo de qual ´ e
verdadeiro, a correspondente sub-cole¸˜o de intera¸˜es ser´
ca co a
executada;
loop dado um n´mero m´
u ınimo ou m´ximo de vezes (ou um guarda),
a
a correspondente sub-cole¸˜o ser´ executada o n´mero de
ca a u
vezes indicado (ou enquanto o guarda for verdadeiro);
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 18/18
20. Diagramas de Sequˆncia
e
Fragmentos de Sequˆncia
e
Alguns tipos de fragmentos:
alt dado um conjunto de guardas, e dependendo de qual ´ e
verdadeiro, a correspondente sub-cole¸˜o de intera¸˜es ser´
ca co a
executada;
loop dado um n´mero m´
u ınimo ou m´ximo de vezes (ou um guarda),
a
a correspondente sub-cole¸˜o ser´ executada o n´mero de
ca a u
vezes indicado (ou enquanto o guarda for verdadeiro);
opt dado um guarda, a correspondente sub-cole¸˜o s´ ser´
ca o a
executada se o guarda for verdadeiro;
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 18/18
21. Diagramas de Sequˆncia
e
Fragmentos de Sequˆncia
e
Alguns tipos de fragmentos:
alt dado um conjunto de guardas, e dependendo de qual ´ e
verdadeiro, a correspondente sub-cole¸˜o de intera¸˜es ser´
ca co a
executada;
loop dado um n´mero m´
u ınimo ou m´ximo de vezes (ou um guarda),
a
a correspondente sub-cole¸˜o ser´ executada o n´mero de
ca a u
vezes indicado (ou enquanto o guarda for verdadeiro);
opt dado um guarda, a correspondente sub-cole¸˜o s´ ser´
ca o a
executada se o guarda for verdadeiro;
par indica que as sub-cole¸˜es indicadas poder˜o ser executadas
co a
em paralelo, e que n˜o dependem entre si.
a
Alberto Sim˜es
o Diagramas de Sequˆncia Ultra-Light version
e 18/18