The document discusses modeling in software development. It notes that both traditional and agile teams benefit from modeling as it improves communication, reduces technical risk, and increases productivity. Specifically for agile teams, the document recommends determining your modeling strategy and types of models to use before beginning modeling efforts. It also promotes IBM Rational Software Design Management as a modeling tool.
A palavra-chave é complexidade, o software tem uma complexidade inerente, algumas vezes somos nós que adicionamos uma complexidade (arbitrariamente), mas ele realmente tem uma complexidade inerente, por vários motivos, por exemplo: - O Domínio do problea normalmente criamos um sw para resolver um problema complexo que pode ser por exemplo softwares para controlar carros, aviões, ou mesmo aplicações de negócio, como um sistema de pagamento, um sistema de gerencia do relacionamento com o cliente, que pode ter centenas de regras e dependências. Flexibilidade possível com o software: com sw é possível fazer coisas que nenhum outro segmento permite, fazendo uma analogia com a construção civil, imagine uma construtora de arranha-céus construindo um predio e no 10 andar decidem remover o terceiro ou trocar o quinto pelo terceiro, isso para quem trabalha com desenvolvimento de software é o dia-a-dia. Complexidade do processo de desenvolvimento de software.
Modelagem não está for a de moda, mesmo para aqueles que usam métodos ágeis.
Para quem tem interesse em uma abordagem de modelagem com um foco ágil, vale a pena dar uma olhada no Agile Modeling, que é uma abordagem baseada em práticas, em que é feita uma modelagem de alto nível no início do projeto, just enough, ou seja, o suficiente para entender o escopo e arquittura inicial do sistema. Durante as iteracoes, como parte das aticidades de planejamento da iteracao é feta uma modelagem para ajudar nas estimativas e planejamento. Durante a execucao da sprint é utilizada a pratica model storming em que o time investe um pequeno tempo em modelagem antes de comecar a codificar.
Três poerguntas que devemos sempre saber a resposta quando estamos fazendo um trabalho de modelagem, e cada resposta deve ter um porque que deixe bem claro o valor/beneficio obtido com a modelagem.
A IBM tem uma solucao de design mangement que vai além de uma ferramenta de modelagem, integrando esta ativiade no ciclo de vida de desenvolvimento para permitir rastreabilidade e fornecer um ambiente que promove a colaboração em torno do modelo.
Author Note: Mandatory Rational closing slide (includes appropriate legal disclaimer). Graphic is available in English only.