• Nenhum resultado encontrado

4 MODELAGEM DO SISTEMA PROPOSTO

4.1 METODOLOGIAS E TÉCNICAS

4.1.1 UML Linguagem de Modelagem Unificada

O UML (do inglês Unified Modeling Language) é uma linguagem para especificação, construção, visualização e documentação de artefatos de um sistema de software. Silva et al (2001) menciona que o UML é independente das linguagens de programação, das ferramentas CASE14. (do inglês Computer-Aided Software Engineering), bem como dos processos de desenvolvimento.

Silva et al (2001) também relata que o objetivo do UML é que, dependendo do tipo de projeto, da ferramenta de suporte, ou da organização envolvida, devem ser adotados diferentes processos/metodologias, mantendo-se contudo a utilização da mesma linguagem de modelação.

O UML é independente das ferramentas de modelação. Silva et al (2001) ressalta que apesar da especificação do UML incluir sugestões para os fabricantes de ferramentas adotarem na apresentação dessas notações (e.g., tópicos como o desenho de diagramas, cor, navegação entre esquemas, etc.), não aborda todos os requisitos necessários por não ser esse, propositadamente, o seu objetivo.

4.1.1.1 Evolução da UML

Na primeira metade da década de 1990 assistiu-se a uma proliferação de métodos e notações para modelagem segundo a abordagem orientado por objetos. De acordo com Silva et al (2001), por essa altura percebeu-se a necessidade da

14 Uma classificação que abrange todas as ferramentas baseadas em computadores que auxiliam atividades de engenharia de software.

existência de uma linguagem que viesse a tornar-se uma norma, que fosse aceite e utilizada quer pela indústria, quer pelos ambientes acadêmicos ou pelos pesquisadores.

De acordo com Silva et al (2001) o UML apareceu em 1996 melhor posicionado como uma linguagem unificadora de notações, diagramas e formas de representação existentes em diferentes métodos, em particular nos métodos Booch, OMT e OOSE (fase da unificação).

A figura 10 traz uma visão do enquadramento histórico relativo ao UML:

Figura 10 - Visão histórica do UML

Fonte: Rodrigues da Silva (2001)

“Seguiu-se um esforço significativo nessa unificação com contributos de vários parceiros com vista à normalização no âmbito da OMG, o que aconteceu em 1997”. (SILVA, 2001, p.120).

Atualmente tem-se a adoção generalizada do UML como ”a” linguagem de modelação de software segundo a abordagem orientada por objetos. Silva et al (2001) cita sobre o início das publicações específicas sobre UML, teses, relatórios e artigos técnico-científicos que usam o UML por volta dessa mesma época.

A versão mais recente da UML é a 2.5 e foi lançada em 2013. De acordo com o site uml-diagrams.org a nova edição trouxe novos padrões de modelagem tanto para diagramas estruturais, quanto para diagramas de comportamento.

A figura 11 apresenta os tipos de diagramas que existem atualmente na versão 2.5 da UML.

Figura 11 - Tipos de diagramas UML

Fonte: UML Diagrams

De acordo com Silva et al (2001) a UML é usada no desenvolvimento dos mais diversos tipos de sistemas. Ela abrange sempre qualquer característica de um sistema em um de seus diagramas e é também aplicada em diferentes fases do desenvolvimento de um sistema, desde a especificação da análise de requisitos até a finalização com a fase de testes.

4.1.1.2 Diagramas da UML

A UML possui muitos diagramas e o objetivo disso é fornecer múltiplas visões do sistema a ser modelado, analisando-o e modelando-o sob diversos aspectos, procurando-se, assim, atingir a completitude da modelagem, permitindo que cada diagrama complemente os outros. Guedes (2009) compara esse processo como se o sistema fosse modelado em camadas, sendo que alguns diagramas enfocam o

sistema de forma mais geral, apresentando uma visão externa do sistema, como é o objetivo do Diagrama de Casos de Uso, enquanto outros oferecem uma visão de uma camada mais profunda do software, apresentando um enfoque mais técnico ou ainda visualizando apenas uma característica específica do sistema ou um determinado processo.

“A utilização de diversos diagramas permite que falhas sejam descobertas, diminuindo a possibilidade da ocorrência de erros futuros.“ (GUEDES, 2009, p.120).

Os diagramas UML conhecidos são: Classe, Componentes, Objetos, Estrutura Composta, Instalação, Pacote, Atividade, Interação, Casos de uso, Estados, Sequência, Visão de Interação, Comunicação e Tempos.

Como este trabalho diz respeito a uma arquitetura serverless, opta-se por dar enfoque maior nos diagramas de componente e implantação.

Esta escolha foi feita com base na melhor representação gráfica da comunicação entre as requisições HTTP do client, feito em React.js, para o Api Gateway, que através de eventos se comunica com o Lambda, que por sua vez salva no banco de dados.

4.1.1.2.1 Diagrama de Componentes

De acordo com Guedes (2009) o diagrama de componentes está amplamente associado à linguagem de programação que será utilizada para desenvolver o sistema modelado.

Figura 12 - Exemplo Diagrama de Componentes

Fonte: GUEDES (2009, p. 39)

O diagrama representa os componentes do sistema quando o mesmo for ser implementado em termos de módulos e determina como tais componentes estarão estruturados e irão interagir para que o sistema funcione de maneira adequada. 4.1.1.2.2 Diagrama de Casos de Uso

De acordo com Guedes (2009) o diagrama de casos de uso é o diagrama mais geral e informal da UML, utilizado normalmente nas fases de levantamento e análise de requisitos do sistema. O diagrama apresenta uma linguagem simples e de fácil compreensão para que os usuários possam ter uma ideia geral de como o sistema irá se comportar.

Figura 13 - Exemplo Diagrama de Casos de Uso

Fonte: GUEDES (2009, p. 31)

Guedes (2009) menciona que este modelo procura identificar os atores (usuários, outros sistemas ou até mesmo algum hardware especial) que utilizaram de alguma forma o software, bem como os serviços, ou seja, as funcionalidades que o sistema disponibilizará aos atores, conhecidas neste diagrama como casos de uso.

Documentos relacionados