Ontem e hoje decorreu o Architects Forum 2006, em Lisboa. (Muito) infelizmente apenas consegui ir ao primeiro dia, mas posso dizer que gostei muito e saí de lá menos céptico do que quando entrei. Antes de mais, deixem-me dizer que gostei bastante do orador, Beat Schwegler. Claro, conciso, objectivo, esclarecedor, informal e humorista q.b. (gostava que fosse ainda mais, mas é questão de gosto...). Não vou entrar em muitos detalhes sobre a apresentação, estou a contar que outros o façam... hint, hint!
O tema foram as Software Factories (o nome não é brilhante, como já várias pessoas o disseram), um temo que conheço ainda muito pela rama. Confesso que não lhe dei a atenção devida porque cheirou-me muito a nova tentativa de algo requentado e com falhas de base: tentar eliminar a necessidade de escrever código, podendo fazer tudo visualmente... a ideia do arquitecto génio e os programadores meros operários... nah! Se pensarmos que sou um grande apologista das metodologias ágeis, julgo que podem compreender melhor o meu cepticismo. Por outro lado, a questão das Domain Specific Languages (DSL) é algo que me interessa e provavelmente vai interessar ainda mais num futuro mais ou menos próximo.
O início da apresentação estava a confirmar os meus piores receios. O Beat começou com uma analogia com o fabrico dos aviões, como eles pensam tudo muito bem antes de avançar com a construção... como nós ainda somos artesãos (o que é verdade e é mau)... E no entanto... E no entanto, à medida que a apresentação foi avançando foi sempre a subir. As ideias subjacentes - Software Product Lines, Architectures Frameworks, Model-driven development e Guidance In Context - às Software Factories parecem-me muito válidas e perfeitamente compatíveis com as metodologias ágeis.
Um ponto fulcral das software factories é não se pretender que elas sejam uma solução para todos os problemas. Não, a ideia é criar um conjunto de artefactos orientados a um determinado domínio do problema, standardizando tudo o que é comum, mas deixando em aberto a possibilidade de configurar e costumizar de forma simples. Ok, a ideia não é nova, mas a solução parece-me ter pernas para andar.
Outros pontos muito interessantes são a correspondência directa entre código e linguagem visual - algo a que se dá muita importância e que se pode contrastar com a geração de código via UML - e o ênfase que eles parecem mostrar no campo dos deployments e das operações, algo sempre muito negligenciado.
Em resumo, para já estou convencido. Lá vou ter de ler o "Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools". Bom, depois de ler o "Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions", que já comecei a ler... e o "Working Effectively with Legacy Code" e o "Agile Database Techniques", que já encomendei... Ai, ai... pq é que o dia não tem mais horas (mas só para mim, pq se não não servia de nada....)
Posted
10-2-2006 22:55
por
João Hugo Miranda