04 July 2000 - previous July updates: 02 04 ; ; previous updates
1 - Cinemania 96 - Reverse Engineering (parte 1)
|
Biography - uma das classes mais interessantes. Que atributos deverá ter? Porquê atributos e não classes autónomas? Que critérios para a identificação de classes? O PDF responde a estas questões. People ao centro do diagrama de classes. Uma observação cuidada de Cinemania 96, mostra que uma abordagem puramente orientada a objectos vai descobrir relações insuspeitas.
Use Cases NÃO SÃO um produto previsto em nenhuma actividade OOHDM, mas ajudam qualquer projecto. |
Cinemania 96 - reverse
enginnering - Parte 1 Está finalmente disponível a primeira parte do projecto de reverse engineering da produto Microsoft Cinemania 96, utilizando a metodologia OOHDM. Na última semana de Julho, serão publicados os últimos documentos deste projecto. Estão disponíveis quatro ficheiros para download: - um documento PDF de 50 páginas, que corresponde à modelação conceptual da aplicação, conforme observada de «trás para a frente»; - o correspondente ZIP, para quando a velocidade de download é relevante; - diagrama de classes em UML; - esquemas de use cases. Download cin96_fase1_end.pdf [2282 KB] Download cin96_fase1_end.zip [1866 KB] Download c96_classd.wmf [81 KB] - Class Diagram. Download c96_used.wmf [45 KB] - Use cases identificados. Este projecto está [também] disponível a partir da página de Computer Science Projects. Eis parte da introdução: [...] É comum falar-se numa fase de pré-análise, para todos os projectos de alguma dimensão. Em pré-análise, procuram-se respostas a questões de natureza incipiente, dependentes do domínio. Aquilo que se procura obter nesta etapa introdutória é um retrato muito geral da realidade que tem que ser enfrentada, de forma a tomar consciência de alguns dos obstáculos que terão que ser transpostos, em função daquilo que os utilizadores gostarem de ter como produto final, e das implicações que as suas expectativas geram. Em alguns processos, esta etapa introdutória terá outros nomes. Por exemplo, Martin Fowler chama-lhe inception (incepção), assumidamente inspirado no processo Objectory sugerido para utilização em UML , uma linguagem essencialmente gráfica que procura oferecer "território neutral", no qual pessoas de domínios distintos, poderão discutir, ao mesmo nível, questões de projecto. Mas uma linguagem para notação, como o UML, não implica um processo. Muitos autores são da opinião que utilizar um só processo não será, aliás, a melhor estratégia para diversos problemas. Uma metodologia (processo + linguagem) orientada ao paradigma dos objectos, estudada para a construção de aplicações hypermedia, é o OOHDM (Object Oriented Hypermedia Design Model), de Gustavo Rossi e Daniel Schwabe. Apesar de propôr uma notação (muito semelhante a UML), OOHDM não faz imposições - a ênfase está mesmo no caminho que se sugere, para a construção de aplicações hypermedia. Para o (re)projecto de Cinemania 96 [CIN96, de agora em diante], optou-se por utilizar OOHDM, muitas vezes com diagramas UML. Porquê? Em OOHDM, o processo de desenvolvimento de uma aplicação, está organizado em quatro actividades. Não se escreve "organizado em quatro etapas", porque a palavra "etapa" sugere algo que começa e acaba, mas que depois não tem continuidade. As actividades OOHDM não são estanque, sendo possível (re)iterá-las, se necessário, sem comprometer um desenvolvimento incremental. [...] |
Hierarquias são naturais e capturam situações de generalização e especialização.
UML identifica dois papéis / roles por relação, mas a linguagem gráfica de OOHDM para modelação conceptual não prevê isso, pelo que o UML que se utilizou no diagrama de classes, expressa relações em sentidos diferentes, quando a aridade muda e mecanismo de roles não está disponível. UML também prevê situações de composição, como agregações em exclusivo, mas isso não existe em OOHDM, pelo que não se utilizou.
Use Cases - mais uma porção do que se identificou. Faça download dos ficheiros integrais. |