Escolar Documentos
Profissional Documentos
Cultura Documentos
1. Introdução
A definição e evolução de processos não são tarefas triviais. A manutenção eficiente
dos ativos documentados, incluindo a garantia da integridade do processo, pode ser
uma atividade onerosa, complexa e propensa a erros. Por isso, é importante prover
ferramentas automatizadas para apoiá-la. Essa foi a motivação para a concepção da
ferramenta livre Atabaque, cuja premissa é separar o conteúdo do processo da sua
forma de apresentação.
Para empresas que utilizam/ pretendem utilizar processos documentados em formato de
sistemas de hipermídia, Atabaque possibilita uma manutenção, mais ágil e livre de
erros, de todos os processos corporativos.
Para as comunidades de Software Livre, Atabaque pode ser de grande valia. Como uma
ferramenta livre, Atabaque pode ser lida, estudada, modificada ou evoluída por qualquer
interessado. Recentemente, a ferramenta foi aprovada no SourceForge como Open
Source (http://sourceforge.net/projects/atabaque).
Atabaque pode ser muito útil para a comunidade de engenharia de software já que
processos, sua documentação e a disseminação do conhecimento embutido nos
processos, são temas cada vez mais explorados.
Este artigo apresenta Atabaque e sua aplicação em um Estudo de Caso.
Conhecimento requerido:
É preciso ter um conhecimento mais profundo de XML, XSL, DTD.
OBS: Normalmente terá trabalho maior no início, na preparação da primeira versão do processo que,
definido, passará por contínua evolução e, se for o caso, reestruturação. Na organização inicial dos
trabalhos o administrador poderá atuar como um líder para manter desenvolvedores motivados.
Desenvolvedor
a) Criar os Editores Visuais XML para facilitar a edição de conteúdo pelos Usuários.
Conhecimento requerido:
Conhecimento requerido:
Normalmente são os especialistas naquelas áreas de conhecimento das quais são responsáveis. É
desejável conhecimento básico de XML e do uso de um sistema de controle de versão.
OBS: Para que também a modelagem do processo ocorra de forma cooperativa, é esperado que os
usuários de Atabaque também tenham perfil de cooperação, se comuniquem com regularidade e
tenham motivação e interesse na evolução do processo
4.2.2. Preparando a Infra-Estrutura
Definido o processo, é preciso “traduzir” cada área de conhecimento em uma “lei de
formação” do arquivos XML, definindo o conjunto válido de elementos em cada tipo de
arquivo XML. Por exemplo, um artefato é composto de: identificador; nome; descrição; e
link para um arquivo modelo. A leis de formação deve ser definida usando o arquivos
Document Type Definition (DTD). Criados os DTDs que definem os arquivos XML que
comporão o processo, é recomendável que o administrador gere a versão inicial dos
documentos XML, como ponto de partida para os usuários que vão incluir conteúdo no
processo.
A próxima tarefa do administrador é definir a forma de apresentação de cada arquivo
XML. Cada documento XSL gera uma página correspondente HTML para apresentar o
conteúdo de uma forma amigável. É importante manter o HTML gerado de forma mais
“limpa” possível, evitando ao máximo colocar questões de formatação como tamanhos e
tipos de fonte, cores de fonte e de fundo, formatações de tabela (tamanhos e cores de
borda), etc. Todas essas definições serão configuradas em folhas de estilos
(Cascading Style Sheets3), arquivos externos referenciados pelas páginas HTML. O
administrador deverá criar os DTS, XSL e XML inicial para cada uma das áreas de
conhecimento do processo. Para organizar todos esses arquivos, Atabaque necessita
da estrutura de diretórios padrão exibida no Quadro 2. Em main4 são localizados os
arquivos XML e HTML estáticos. Em config, os arquivo necessários para a correta
geração do site do processo.
Quadro2 – Estrutura de Diretórios Padrão
Diretório
Arquivos
Config css arquivos de folhas de estilos, com extensão css
dtd arquivos DTD, definindo os tipos de documento XML possíveis
images arquivos de imagens/ícones utilizadas
js arquivos de código JavaScript que podem ser utilizados nas páginas HTML
xsl arquivos XSL definindo as regras de transformação para HTML
html html - arquivos HTML estáticos
Main xml arquivos XML contendo os dados do processo
Para definir a estrutura geral do site do processo, Atabaque define um arquivo XML
especial, localizado no diretório main. O processo.xml, que também possui um arquivo
XSL associado, responsável por gerar a exibição associada ao processo. Sem a criação
do processo.xml, as páginas HTML seriam geradas de forma “solta”, não existindo uma
página principal, mas apenas um conjunto de arquivos que definem conteúdo e exibição
de cada componente do processo.
3As folhas de estilo são um mecanismo simples de adionar estilos (fontes, cores, espaçamento, etc.) a documentos Web (HTML,
XML ou XHTML). Informações em )http://www.w3.org/Style/CSS.
4 Por ser uma ferramenta livre, alguns termos em inglês são utilizados. O objetivo é permitir colaboração além das fronteiras
brasileiras.
Figura 1 – XML da macroatividade Gestão de Projetos
Para evitar a edição direta dos arquivos XML, o conteúdo pode ser mantido através de
Editores Visuais associados a cada área de conhecimento do processo. Por serem
dependentes da estrutura dos arquivos XML, os editores são criados por
desenvolvedores Java, como foi citado anteriormente, utilizando facilidades fornecidas
por Atabaque.
As telas gráficas para edição do conteúdo do processo são uma grande vantagem de
Atabaque. Verdadeiras aplicações podem ser construídas, agregando funcionalidades
antes praticamente impossíveis (se considerada a edição direta de conteúdo em HTML,
ou mesmo em XML). A gama de opções é vasta: validações de preenchimento,
exclusão/atualização em cascata, uso de máscaras de edição, verificações de
integridade. A Figura 4 ilustra o uso do editor visual para o arquivo XML exibido na
Figura 1.
Figura 2 – Alterando a macroatividade Gestão de Projetos usando o Editor Visual
A geração do site é feita por uma aplicação Java que lê um arquivo processo.xml e
executa todas as trasformações de XML em HTML para cada área de conhecimento e
copia os arquivos para um diretório de saída. Os arquivos “fonte” ficam localizados nos
diretórios config e main. Na pasta de saída (site) ficam os arquivos “compilados”, ou
seja, os HTML gerados e todos os demais necessários para a correta exibição do
conteúdo. A Figura 3 exibe os arquivos do PADS.
Figura 3 – Arquivos “fonte” (pastas main e config) e “compilados” (pasta site) do PADS
Na sua primeira versão, o Atabaque provê integração com o NetBeans 5.0, ambiente de
desenvolvimento integrado (IDE – Integrated Development Environment) escrito em
Java que vem obtendo muito investimento da Sun Microsystems e ganhando novas
features e novos adeptos rapidamente. A grande vantagem é ter tudo o que se precisa
(edição de diferentes tipos de arquivo; integração com sistemas de controle de versão,
execução de aplicações ou plugins, programação em Java) em um único ambiente. As
principais funcionalidades já disponíveis para o NetBeans são:
• Processo Modelo – o usuário pode criar um processo “pré-pronto”, que contém a
estrutura de diretórios padrão e alguns arquivos de exemplo, servindo como ponto
de partida para a criação de um novo processo.
• Plugin para Editor Visual – com o arquivo XML aberto, o usuário pode acionar
diretamente o Editor Visual correspondente.
• Plugin para Gerador de Site – com apenas um clique num novo botão na Barra de
Ferramentas o site é gerado.
Referências
ADLER, Sharon et al. Extensible Stylesheet Languagem (XSL) Version 1.0. World Wide
Web Consortium Recomendation, out. 2001. Disponível em
<http://www.w3.org/TR/xsl> Acesso em: jun. 2006.
BRAY, Tim et al. Extensible Markup Language (XML) 1.0 (Second Edition). World Wide
Web Consortium Recommendation, 4 fev. 2004. Disponível em
<http://www.w3.org/TR/REC-xml> Acesso em: jun. 2006.
BORGES, L. S., FALBO, R. A. Gerência de Conhecimento sobre Processos de
Software In: VIII Workshop de Qualidade de Software - XV SBES, Rio de Janeiro.
Anais do VIII Workshop de Qualidade de Software, 2001.
CLARK, James; DeRose, Steve. XML Path Language (XPath) Version 1.0. World Wide
Web Consortium Recomendation, 16 nov. 1999. Disponível em
<http://www.w3.org/TR/xpath> Acesso em: jul. 2006.
ISO – International Organization for Standarization. ISO/IEC 15504. Software Process
Assessment. 1998.
ISO – International Organization for Standarization. ISO 9000-3. Quality Management
and Quality Assurance Standards. Part 3. Guidelines for the application of ISO 9001
to the development, supply and maintenance of software.1991.
KRUCHTEN, P. (1999). The Rational Unified Process. Addison-Wesley, USA.
MALHEIROS, V., Mendonça Neto, M., Farias, L.“Uma abordagem de Gerência de
Projetos de Software, sob o enfoque da Gestão do Conhecimento”. In:2a Jornada
Ibero-americana de Engenharia de Software e Engenharia de Conhecimento,
Salvador. Anais JIISIC2002.
MALHEIROS, V. Paim, F.R., Guzzo, H., Mendonça Neto, M. “Uma Abordagem para
Melhoria Contínua do Processo de Desenvolvimento de Software”. In: V Simpósio
Brasileiro de Qualidade de Software – SBQS 2006.ISBN 85-7669061-6.
MEGGINSON, David. The Official Web Site for SAX. 05 mai. 2000. Disponível em
<http://www.saxproject.org> Acesso em: jul. 2006.
PMI - Project Management Institute (2004) “A Guide to the Project Management Body
of Knowledge (PMBOK Guide)”. Disponível em http://www.pmi.org/. Acesso em jul.
2005.
RAYMOND, E. S. The Cathedral and the Bazaar. O´Reilly & Associates, 1999.
REFSNES, Jan E. XML DTD - An Introduction to XML Document Type Definitions.
Disponível em <http://www.xmlfiles.com/dtd> Acesso em: jun. 2004.
RUP – IBM Rational Unified Process. “Rational Unified Process”. Disponível em:
http://www-306.ibm.com/software/awdtools/rup/ Acesso em jul. 2005.
SEI – Software Engineering Institute. “Capability Maturity Model Integration versão 1.1”
(2002). Disponível em: http://www.sei.cmu.edu/cmm/. Acesso em jun. 2005.
THOMPSON, Henry S. et al. XML Schema Part 1: Structures. World Wide Web
Consortium Recomendation, 2 mai. 2001. Disponível em:
<http://www.w3.org/TR/xmlschema-1> Acesso em: jun. 2006.