Como interpretar Diagramas de Classes da UML – Parte 1

Pondo em prática os conceitos de orientação a objetos a partir da interpretação de um diagrama de classes.

Artigo no estilo: Curso

Fique por dentro

Independentemente da área de atuação no desenvolvimento de software, o diagrama de classes possui muitas informações que podem estar ocultas sob seus elementos para pessoas que não estão treinadas em observá-las, sejam elas desenvolvedores ou analistas de negócio, estes que muitas vezes são responsáveis pela diagramação mesmo sem conhecimentos aprofundados de como fazer isso.

Vale ressaltar que é muito importante a correta interpretação deste para gerar classes e atributos corretos e, principalmente, para a utilização dos construtores das classes na construção das regras de negócio de um software a partir das obrigatoriedades existentes nas associações entre as classes.

Com base nisso, este artigo visa explorar a apresentação desses aspectos para solidificar o conhecimento na interpretação e produção de diagramas de classes da UML.

A linguagem Java segue, em grande parte de sua concepção, o paradigma da Orientação a Objetos. Dessa forma, quanto melhor for o seu conhecimento sobre esse paradigma, melhor será o reuso do seu código e a resolução de alguns problemas triviais a partir de conceitos como herança, polimorfismo e encapsulamento.

Outro aspecto, muito relacionado à orientação a objetos, está na produção e interpretação de diagramas UML (Unified Modeling Language), sendo um dos diagramas mais básicos o Diagrama de Classes, o qual às vezes não é estudado profundamente pelos desenvolvedores de uma equipe e, devido a isso, muitas regras implícitas acabam passando despercebidas.

A partir do diagrama de classes é possível estabelecer algumas regras de negócio nas associações entre as classes e essas regras podem vir a alterar a criação de métodos básicos como construtores e métodos setters de atributos, dependendo da obrigatoriedade da associação.

Dito isso e com o objetivo de explorar esse tipo de diagrama, neste artigo vamos apresentar e analisar detalhadamente um exemplo de diagrama de classes projetado para um sistema que realizará o cadastro e a venda de bilhetes aéreos.

Para isso, retrataremos apenas a parte mais básica de um software, a camada model, que contém todas as abstrações do mundo real essenciais para o estabelecimento das regras de negócio.

Requisitos do sistema de bilhetes aéreos

O sistema de bilhetes aéreos possui como premissa básica a reserva, compra e check-in de bilhetes aéreos de diversas companhias por um passageiro.

Para cumprir essa premissa, a primeira funcionalidade do sistema deverá ser o cadastro de aeroportos por um administrador. Este cadastro deve ser composto pelas seguintes informações: nome, código e endereço completo (Logradouro, CEP, Cidade, Estado, País).

Para continuar o cumprimento da premissa básica, o sistema deve permitir o cadastro de companhias aéreas (nome e código) e, a partir da conclusão deste, possibilitar o cadastro de informações relacionadas a aviões, rotas de voos, funcionários e cargos que pertencem à companhia.

Para cadastrar um avião, deve ser informado a qual companhia aérea ele pertence, o código do avião, a carga máxima suportada e a quantidade de assentos para as três modalidades (classes) de bilhetes existentes: primeira, executiva e econômica. Além disso, vale destacar que ao cadastrar um avião este deverá pertencer somente a uma companhia aérea, mas esta poderá ter vários aviões.

O sistema deve permitir também o cadastro de cargos de trabalho que uma companhia aérea possui. Um cargo dentro de uma companhia aérea representa um oficio de trabalho; por exemplo, um piloto. Para realizar esse cadastro, deve ser mencionada a qual companhia aérea este pertence, além do nome do cargo e sua descrição.

Outro cadastro necessário e relacionado a uma companhia é o de funcionários. No sistema, todo funcionário deve possuir somente um cargo. Por outro lado, um cargo pode ser associado a diversos funcionários.

Além do cargo, o cadastro de um funcionário exige as informações de nome, e-mail, telefone, data de nascimento, login e senha no sistema, código de matrícula dentro da companhia, uma conta corrente para o depósito do salário e o endereço completo.

Por fim, o sistema deve permitir que uma companhia aérea cadastre rotas de voo. Uma rota de voo é composta por dois aeroportos, sendo um de origem e um de destino. Além disso, a rota obriga o cadastro de um nome e descrição.

Após a criação das rotas de voo, a companhia aérea deve disponibilizar os horários em que atua para cada uma das rotas existentes. Esses horários são compostos basicamente pela data, o horário de partida e uma estimativa da data e horário de chegada.

Ademais, cada horário deve ter um código, uma quantidade de bilhetes disponíveis para cada classe (primeira, executiva e econômica) e a reserva de um avião para a sua realização.

Por fim, um último aspecto relacionado ao horário é que ao criar um, este deverá gerar os bilhetes correspondentes para cada classe, a partir da quantidade informada no momento do cadastro do bilhete."

[...] continue lendo...

Artigos relacionados