sexta-feira, agosto 10, 2007

EBAi 2007, estamos tentando

No post do dia 03 do mes passado, eu comentei sobre o primeiro congresso de arquitetura de software que vai acontecer em São Paulo, agora em Outubro e a expectativa que eu tinha de escrever um artigo para esse evento.

Bom, escrevi. Mas não ficou como eu queria...

Não ficou como eu queria porque o texto ficou muito grande. O limite era 15 páginas (um bom limite) e mesmo assim, eu enchi todas elas falando dos Elementos do Desenvolvimento Multicamadas e não consegui falar sobre os Processos do Desenvolvimento Multicamadas e, por isso, acho que vou ter que gastar mais 30 horas para escrever um segundo texto.

Nas 15 páginas do artigo, eu falei sobre os Perfis, os Artefatos e as Ferramentas existentes em um ambiente de desenvolvimento Multicamadas, com foco, é claro na Java EE. Complementando o artigo, apresentei uma arquitetura-base que é padrão nos sistemas que desenvolvemos e conclui algumas coisas. Em suma, o artigo falou do seguinte:

Os Perfis
Foram comentados os três grandes grupos de perfis que existem no processo: o cliente, os gestores e a equipe de desenvolvimento. No âmbito do cliente, foram elencados os responsáveis gestão do projeto nessa parte, os usuários responsáveis pela homologação do sistema, e os usuários do chão-de-fábrica que, embora não sejam constantes no processo, têm cunho decisivo em detalhamentos operacionais. Na gestão, comentei sobre os atores que fazem o projeto acontecer na empresa, como os diretores, a gerência e as figuras, digamos, adimensionais, como a equipe de qualidade. Na equipe de desenvolvimento, foram aboradodos o restante da trupe, como arquitetos, projetistas, analistas, programadores e testadores. Estagiários, deixei fora. Mas dentro, ou melhor, externos (hic) foram elencados os designers e mesmo outros testadores. Entendam esses externos como perfis que a empresa pode contratar, por não ter mão-de-obra ou know how próprio.
Em suma, esses esses foram os Elementos Humanos.

Os Artefatos
Foram abordados os nada menos que 15 tipos de artefatos usados por nós para construir sistemas. Constaram, de forma categorizada desde os elementos de base, como o Documento de Visão e a (famosa) Planilha de Enquadramento, até coisas bem técnicas, como Diagramas de Componentes e Físico. Também entraram na lista os Esboços de Tela e claro, os Casos de Uso. De interesse para os menos avisados, descrevi o Diagrama de Requisitos, esse sim um elemento muito interessante. Para cada artefato, dei um Norte para contextualizá-lo no processo como um todo, os perfis envolvidos em sua criação e os comentários sobre cada um deles.
Esses foram então, os Elementos de Documentação.

As Ferramentas
Por ferramentas, podemos entender tanto software de base, como os editores visuais, as IDEs, os plugins, os geradores de PDF, a ferramenta CASE, servidor de aplicação, etc. Enfim, toda a panacéia que forma um ambiente de desenvolvimento profissional. No total, foi feita uma lista com nada menos que 53 ferramentas (uhu!), das quais 51 estão sob o conceito de Software Livre. As duas pagas são justamente a ótima ferramenta CASE Enterprise Architect e o famigerado Windows, que eu não consigo deixar de usar (agrhhh). Tentei colocar uma pequena análise de custos, para mostrar que sim, é possível desenvolver sistemas robustos com um custo abaixo de U$450, por máquina ou zero, no caso de máquinas de desenvolvedores que usam Linux.
Mas não é só de software que vive uma equipe de desenvolvimento e, portanto, coloquei coisas clássicas para nós aqui, como o (outro famoso) Quadro Branco, o Diário de Bordo, a máquina fotográfica e o gravador de áudio (que na prática, para nós, resumem-se nos "magavilhosos" W8xx da Sony-Ericson :).
Saliento que, no nosso processo, o uso de ferramentas da Gigante Branca, como Google Docs, Gmail, GTalk, Groups e Calendar são essenciais. E no artigo eu justifiquei o porquê.
Enfim, esses foram os Elementos do Arsenal.

E claro, a Arquitetura
Na segunda parte do artigo, tentei falar sobre o resultado final da condensação dos itens acima: a arquietura. Para tanto, separei os estratos da aplicação nas 5 camadas: Apresentação, Controle, Negócio, Persistência e Armazenamento. Comentei cada elemento dessas camadas, passando desde coisas como ignóbil sexteto da web (HTML+CSS+JavaScript+Ajax+JSF+Tiles) até o elegante JBoss Seam e os clássicos EJBs e seus patterns, como o Facade, Delegate, Action, Proxy e por aí vai. Mostrei um diagrama com as principais classes envolvidas e os pontos de extensão da arquitetura. Comentei sobre o controle de acesso que é feito pelo Magoo e maravilhas intrínsecas dessa ferramenta.

Ao final, rolaram dois ou três parágrafos de conclusão (que ao meu ver são as eternas, enfadonhas mas necessárias linhas decisivas de todo e qualquer texto) e pronto.

O envio
Ahah. Até me lembro desse subtítulo - o Envio - no post do artigo do Merlin para o FISL2007.... Enfim, não sei se foi um envio propriamente dito. Isso porque, eu já estava com o prazo estourado e, mesmo com o sinal verde (e até amável) da Carol, acabei "furando" o tempo extra que ela me deu.
Era para essa Quinta pela manhã e eu tentei submeter só agora, às 23:57h. Ou seja, nada de cerveja. Mandei um mail direto pra ela e estou aguardando o retorno pra ver no que deu.

Sinceramente, o artigo não ficou como eu queria. Mas dificilmente ficaria, pois acho que sou muito como o Mano Roger e o Didigo: extremamente perfeccionisa. E sendo assim, se a submissão for aceita, eu acredito (mesmo, sério) que o artigo seja aprovado.

Se não for, paciência e, aí sim, cerveja!

0 comentários: