Um guia para instanciação de um processo de software

Um dos princípios básicos da engenharia de software é possuir um processo de produção claro, conciso e consistente que prime, principalmente, pelas questões ligadas a qualidade e produtividade.

Um processo (de software) é caracterizado por meio de um conjunto de atividades bem definidas e documentadas que quando aplicadas, sistematicamente, garantem certo grau de qualidade na confecção do produto. Além do conjunto de atividades, o processo possui outros atributos como: matéria prima, mão de obra e recursos. Tais atributos são considerados os insumos do processo de produção. Salienta-se também que o processo deve possuir o conceito de retro-alimentação com o objetivo de garantir o caráter evolutivo do mesmo.

A partir da formalização do conceito sobre processo de software é possível estabelecer um guia para a sua instanciação. Lembre-se que o processo será aplicado sobre um determinado projeto.

O guia:

Todo processo é fracionado em sub-processos. Neste texto um sub-processo será caracterizado como atividade. Uma atividade também pode ser fracionada em sub-atividades. Uma sub-atividade será caracterizada como tarefa. Ao executar uma tarefa você irá gerar artefatos (documentos, diagramas, código fonte, etc.). As tarefas são automatizadas por meio das ferramentas (IDE, editor de texto, planilha eletrônica, ferramenta para gestão de projetos, etc.). Por fim, é necessário um conjunto de habilidades para que o processo possa ser executado de forma produtiva.

A descrição apresentada no parágrafo anterior pode ser vista por meio de um simples diagrama de entidade e relacionamento.

De posse da figura, estabeleça as atividades que compõem o seu processo de software, você pode utilizar atividades distintas para projetos distintos, exemplo: projeto mais complexo exigem um conjunto maior de atividades. Leve em consideração também a natureza de sua empresa, i. e. empresas especializadas em outsorcing devem contemplar as atividades de equalização, codificação da O.S., teste e, principalmente, gestão do projeto.

Fracione suas atividades em tarefas, considerando a regra 2 | 20, ou seja, uma atividade não pode levar menos que 2 horas e mais 20 para ser desenvolvida.

Defina e estrutura dos artefatos, padronização e aspectos que facilitam o preenchimento e a leitura são importantes dentro deste contexto.

O conjunto de ferramentas utilizado para a automação do processo deve aderir plenamente à execução das atividades e tarefas, as ferramentas devem maximizar a qualidade dos artefatos gerados pelo processo. Não utilize ferramentas extremamente complexas para execução de tarefas simples.

Maximize as habilidades dos colaboradores, focando sempre os aspectos relacionados ao processo, produtividade e qualidade. Sistematize treinamentos e crie um grupo de pessoas que irá melhorar o processo de produção constantemente.

Enfim, lembrem-se, nós analistas de sistemas somos especialistas em organizar o processo de produção das outras empresas, porém somos medíocres quando se trata da organização do processo de produção de software de nossa empresa.

José Augusto Fabri – Universidade Tecnológica Federal do Paraná – Cornéilo Procópio

fabri@utfpr.edu.br

One Response to “Um guia para instanciação de um processo de software”

  1. muito bom, sempre leio os posts para melhorar, sou formado em licenciatura em informatica, mas trabalho com software, e gosto muito de tudo isso.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: