Introdução à Modelação com UML/Editora: Difference between revisions

From Wiki**3

< Introdução à Modelação com UML
 
Line 1: Line 1:
Este exercício saiu no teste de 2012/01/07.
#REDIRECT [[ist:Introdução à Modelação com UML/Editora]]
 
== Problema ==
 
Considere o seguinte domínio:
 
Uma editora gere vários tipos de publicação (livros, revistas e tablóides), cada um composto por várias peças (artigos, fotografias e publicidade). Podem ser criados mais tipos, tanto de publicação, como de peça. Nem todos os tipos de peça se podem incluir todas em todas as publicações: nos livros, apenas são incluídos artigos; nas revistas, podem ser inseridos artigos e fotografias; nos tablóides, todas as peças podem aparecer. Todas as publicações e peças são identificadas por um número inteiro. As publicações e peças têm ainda a indicação de qual é o título e de quem é o autor. A editora mantém sobre os seus autores um registo, no qual inclui (sobre cada um) o nome e o número de telefone.
 
A forma de disponibilização de publicações, i.e., papel, web, meios móveis, etc., permite oferecer variedade ao consumidor, mas complica a definição de uma arquitectura flexível para a aplicação. Inicialmente, estão definidos dois formatos: textual e estruturado. No formato textual, os atributos das publicações são apresentados sucessivamente e as peças e seus atributos são também simplesmente apresentados de forma textual simples (as fotografias são representadas pelo seu título). No formato estruturado, em XML, cada publicação é iniciada e terminada por uma “tag” que a caracteriza (respectivamente, '''<book>''', '''<magazine>''', etc. e '''</book>''', etc.), o mesmo se passando com as peças. Os atributos são apresentados como atributos XML (e.g., para o autor de um livro: '''<book author="anónimo">'''). Os elementos internos são ancorados dentro dos externos, como é habitual em XML. A solução de apresentação deve permitir flexibilidade na definição de novas formas de apresentação sem impacto no código existente.
 
Desenhe o diagrama de classes UML correspondente ao domínio apresentado. Represente todas as classes (seus nomes, métodos e atributos). Indique também as relações de herança, associação e agregação.
 
== Solução ==
Esboço do diagrama de classes para o problema apresentado.
 
[[Image:PO-20120107-class.png|900px|PO-20120107-class.png]]
 
[[category:Ensino]]
[[category:PO]]
[[category:UML]]

Latest revision as of 16:59, 7 November 2018