Por: Adolfo Brandão
Os treinamentos da série Arquitetura e Modelagem oferecidos pela Rumo Soluções foram formatados para oferecer um caminho de capacitação que permita ao aluno visualizar sua evolução futura e vislumbrar objetivos relacionados ao aperfeiçoamento profissional. Além disso, os treinamentos oferecem conteúdo suficiente para a obtenção de certificações profissionais reconhecidas pelo mercado, emitidas por entidades respeitadas como IBM e OMG.
A iniciar pela Tecnologia OO, ou Tecnologia de Objetos, o participante assimila os principais conceitos, fundamentos e princípios da tecnologia de Orientação por Objetos que é o principal paradigma de programação existente. Criando classes, objetos, responsabilidades e colaborações, o aluno formaliza conceitos que representam o mundo real e que formam a base de modelos intuitivos, tecnicamente corretos, que apresentam robustez, coerência e facilidade de manutenção.
Em Introdução à Modelagem Visual com UML 2, o participante realiza especificamente seu primeiro contato com a modelagem relacionando conceitos OO a construções UML e organizando os elementos de forma ordenada em diagramas específicos para cada tipo de modelagem. Além disso, o aluno verifica seu aprendizado através da modelagem de sistemas simples utilizando OO e UML e absorve os conceitos e ensinamentos fundamentais necessários para avançar em Arquitetura e Modelagem.
Após a introdução, o aluno está apto a assimilar conceitos mais avançados e aplicar mecanismos OO e UML na modelagem de soluções mais complexas. Diferentemente do primeiro treinamento, cujo foco é introduzir as tecnologias OO e UML, o treinamento de OOAD – Análise e Desenho Orientados por Objetos com UML2 – põe o aluno em contato com atividades mais realistas, desenvolvendo modelos de casos de uso, modelos de análise, modelos de desenho e, até mesmo, modelos arquiteturais. São abordados aspectos estáticos e dinâmicos da UML 2 e seus diagramas, através de um processo dirigido por casos de uso e centrado na arquitetura. Este treinamento também prepara o participante para a certificação IBM Certified Solution Designer – Object Oriented Analysis and Design, vUML 2.
O próximo treinamento, Especificação da UML 2, apresenta a UML com maior nível de detalhe. A aplicação usual da UML na modelagem de software e sistemas, em geral, se dá através das construções mais comuns e simples da linguagem. Isso ocorre, em parte, devido à grande flexibilidade e robustez das construções da linguagem e, em parte, devido à falta de conhecimento da especificação oficial. Este apresenta mecanismos e construções avançadas, porém pouco conhecidas, que possibilitam novo olhar sobre a modelagem UML, convidando analistas, desenvolvedores, engenheiros e arquitetos a criarem modelos ricos, coerentes e tecnicamente corretos e completos. Este treinamento prepara o participante para a certificação UML oficial da OMG: OCUP – OMG Certified UML Professional – Fundamental & Intermediate.
O treinamento Arquitetura Dirigida por Modelos com UML 2 complementa esta série Arquitetura e Modelagem apresentando a UML como integrante fundamental da pilha de ferramentas, linguagens e padrões componentes de uma arquitetura orientada por modelos, ou MDA – Model Driven Architecture.
A MDA é um framework conceitual que prescreve a criação de modelos em diferentes níveis de abstração, separando, por exemplo, modelos de negócio de modelos técnicos, que são transformados em outros modelos, documentação e componentes concretos de software. Na MDA, modelos e metamodelos são manipulados visual e programaticamente, permitindo a automação de diversas tarefas repetitivas no ambiente de desenvolvimento e trazendo diversos benefícios como ganhos de comunicação, integração, qualidade e produtivade.
A análise, desenho e construção de software são disciplinas que enfrentam problemas cada vez mais complexos e que produzem aplicações cada vez mais difíceis de se manter, evoluir e gerenciar. Por isso, as soluções de software precisam ser tão facilmente modificáveis quanto possível, permitindo que as aplicações sejam adaptadas de forma controlada e gerenciável, do ponto de vista técnico, acomodando a natureza mutável dos requisitos de software. O próximo treinamento, Patterns, oferece capacitação técnica para a implementação de mecanismos padronizados para compor arquiteturas baseadas em soluções comprovadas, atuando diretamente na solução de problemas complexos e mutáveis.
O termo “arquitetura de software” não possui definição oficial na indústria de software. Entretanto, possui papel fundamental na mesma. Os arquitetos de software são profissionais que devem idealizar, definir, especificar, possibilitar, comunicar, treinar, acompanhar, monitorar e garantir a conclusão técnica harmoniosa de projetos de software. Não obstante, a formação técnica ou, pelo menos, o consenso comum sobre esta disciplina não está amplamente presente no mercado. O curso Introdução à Arquitetura de Software apresenta diversos conceitos, definições e visões sobre a disciplina e o profissional, trazendo o entendimento necessário para tangibilizar a importância deste assunto e, até mesmo, permitir que os participantes aspirem a utilizar o chapéu do arquiteto de software.
Frameworks, técnicas, práticas, bibliotecas, modelos, templates, engines e padrões são alguns dos termos facilmente encontráveis na literatura impressa, na Web, em prática nas empresas e assim por diante. Dessa forma, fica evidente a variedade e a grande quantidade de ferramentas e recursos disponíveis na indústria de software. Porém, nos falta alguma coisa para termos condição de acompanhar toda essa diversidade tecnológica e ferramental. Para atuar nesse aspecto, a Rumo oferece uma linha de Mini-cursos em Arquitetura e Modelagem que oferecem um leque de treinamentos rápidos e práticos sobre ferramentas que podem ser utilizadas imediatamente e efetivamente no dia-a-dia do desenvolvimento de software em qualquer empresa. Modelagem, aplicação de patterns, geração de código, transformação de modelos e rastreabilidade são alguns temas atendidos pelos mini-cursos.
Concluimos que os paradigmas aqui apresentados ou já atingiram os principais mercados, como a Orientação por Objetos e a modelagem visual, ou estão em processo de popularização, estabilização e evolução, como a metamodelagem e a MDA.
Independentemente do paradigma, o profissional que absorver este pacote de ensinamentos teóricos e práticos nas disciplinas de arquitetura e modelagem estará pronto para mostrar seu diferencial no mercado, utilizando práticas comprovadas e, ao mesmo tempo, inovadoras e mostrando uma visão diferenciada e contemporânea sobre alguns dos problemas atuais relacionados à indústria do desenvolvimento de software.
