Modelação de Dados em UML – Uma Abordagem por Problemas

Capa do livro Modelação de Dados em UML – Uma Abordagem por Problemas
Título
Modelação de Dados em UML – Uma Abordagem por Problemas
Autor(es)
Editora
FCA – Editora de Informática, Lda.
Páginas
192
ISBN
978-972-722-812-6

A utilização de linguagens formais para representação de aspectos de sistemas informáticos tem vários anos, tendo o UML – Unified Modeling Language – sido adoptado como um standard pelo Object Management Group (OMG) em 1997. No entanto, creio poder dizer que essa formalização, nos últimos anos, tem caído algo em desuso, em detrimento de modelos menos formais mas mais perceptíveis: ou seja, os developers têm-se preocupado mais em desenhar, quando o fazem, diagramas que sejam perceptíveis por outros, sem se preocuparem excessivamente no grau de adequação desses diagramas a standards existentes, dos quais o UML sobressai.

E, no entanto, esses standards existem, e é precisamente do standard UML – ou, mais precisamente, de uma parte dele – que os autores nos vêm falar neste Modelação de Dados em UML, editado pela FCA. Sendo académicos, é normal que assim seja, e é, talvez até, necessário: quantas vezes não vimos já, diagramas feitos por diferentes pessoas, pretendendo ser UML, apresentarem diferenças substanciais na abordagem e na simbologia usada? No caso em apreço, o livro foca-se nos diagramas de classes, um dos diagramas estruturais mais comummente utilizado, e que se presta igualmente bem quer à representação de classes de linguagens orientadas a objectos, quer à representação de entidades ou tabelas de um modelo de dados.

O livro é de fácil leitura, com cerca de 160 páginas, e encontra-se dividido em duas partes: na primeira é-nos apresentado um problema concreto – a gestão de uma empresa de produção de vinhos –, e, na segunda, um conjunto de problemas também realistas, mas já não relacionados com o exemplo da primeira parte – recrutamento, agências de modelos, gestão de cirurgias, entre outros. A discussão é muito centrada no problema em apreciação, sem grandes divagações teóricas. Ainda assim, é desejável que o leitor possua algum conhecimento de modelação de dados.

Na primeira parte, após uma descrição do cenário, a tal empresa vitivinícola, passamos ao enumerar dos requisitos do sistema que pretendemos construir. Com base nestes requisitos, passamos então às entidades do sistema, extraídas a partir destes, as quais deverão permitir a adequada representação dos conceitos do negócio. Para tal, são enumerados os vários tipos de relacionamento possíveis entre as entidades, e é explicado o que usar em cada caso, entre as várias entidades. São dados alguns conselhos práticos, tais como, quando promover um atributo a uma classe. Vamos progredindo nos vários aspectos do sistema, incluindo a apresentação de esboços da interface de utilizador que este poderia ter, e terminamos com as técnicas para conversão do modelo de classes nas tabelas “físicas” correspondentes numa qualquer base de dados. Aqui, creio que teria sido útil abordar o conceito de normalização, embora, é verdade, os exemplos apresentados estejam já num nível adequado de normalização, e também alguns conceitos algo mais avançados, como a herança e a composição.

Na segunda parte do livro, são-nos apresentados vários problemas, não relacionados com o exemplo da primeira. Para cada um, existe uma descrição do problema, e também uma resolução possível, comentada. Sendo certo que os exemplos apresentados excedem em muito o âmbito do problema original, fornecendo mais matéria para pensar, penso que teria sido útil a manutenção do mesmo cenário, ainda que, claro está, complementado com novos problemas, conducentes a novos desenvolvimentos, e novas necessidades de especificação.

Em resumo, creio que o livro faz uma apresentação interessante de uma pequena parte do standard UML, mas penso que poderia ter feito um bocado mais. Certos tópicos ou não foram de todo abordados – caso da normalização – ou foram-no de forma ligeira – chaves e geração do modelo físico. Para uma introdução ligeira, poderá ser útil, mas quem procure algo mais abrangente, deverá consultar outras referências.