Modelagem UML
Devido ao aumento da complexidade dos projetos de software realizar um planejamento profundo do projeto é crucial. O cliente precisa entender o que o desenvolvedor esta fazendo e precisa ter condições de indicar alterações nas funcionalidades do projeto. Para isso é necessário um canal de comunicação onde a linguagem usada seja compreensível pela equipe de desenvolvimento e pelo cliente.
A Unified Modeling Language (UML) tem sido adotada como esta linguagem padrão utilizada para melhor compreensão do sistema em desenvolvimento, tanto pelo cliente como pela equipe de desenvolvedores, visualizando de maneira geral antecipadamente as características e possíveis falhas ou modificações a serem implementadas, a fim de documentar decisões tomadas, especificar comportamentos ou a estrutura de um sistema. É uma linguagem visual utilizada para modelar sistemas computacionais por meio do paradigma de Orientação a Objetos. Essa linguagem se tornou, nos últimos anos, a linguagem-padrão de modelagem de software adotada internacionalmente pela indústria de Engenharia de Software.
Deve ficar bem claro, no entanto, que a UML não é uma linguagem de programação, mas uma linguagem de modelagem, cujo objetivo é auxiliar os engenheiros de software a definir as características do software, tais como seus requisitos, seu comportamento, sua estrutura lógica, a dinâmica de seus processos e até mesmo suas necessidades físicas em relação ao equipamento sobre o qual o sistema deverá ser implantado. Todas essas características são definidas por meio da UML antes de o software começar a ser realmente desenvolvido.
No livro Modelagem de Objeto Através da UML, FURLAN (1998) nos diz que a UML vai além de uma simples padronização para um notação unificada, ela pode ser usada para mostrar as fronteiras de um sistema e suas funções, atores, usando diagramas ela pode dar uma visão de casos de uso, estrutura estática de um sistema através dos diagramas de classe, demonstrar o comportamento dos