• Nenhum resultado encontrado

Considerando o objetivo específico apresentado no Capítulo 1 na Seção 1.3: Definir um conjunto de orientações para a realização do mapeamento entre as perspectivas no contexto de projetos de software; está seção apresenta a visão

geral da solução proposta, bem como um fluxo para sua aplicação. A Figura 5 ilustra a visão geral da solução alinhada às perspectivas de processo e projeto de software.

Figura 5 – Visão geral da solução de mapeamento entre as perspectivas. Fonte: A Autora.

Consideram-se como pré-requisitos da solução (i) a definição do modelo do processo de software, composto pela definição das atividades, sequência, papéis e artefatos, e (ii) o planejamento do projeto realizado pelo gerente que envolve a seleção do processo, definição da equipe, cadastro das iterações e instâncias.

Para dar início ao mapeamento o modelo de processo de software deve ser obtido, para que os elementos do processo, tais como atividade, papel e artefato, sejam identificados; e posteriormente serem usados para realizar o mapeamento entre

as perspectivas. O ponto central da solução são as operações de instanciação, que são aplicadas na criação de tarefas, estabelecendo o mapeamento entre representações de processo e projeto de software. Na Figura 5 está representado o mapeamentyo entre atividades do processo (Ax) e tarefas do projeto (Tx). Uma vez criadas as tarefas, as mesmas são executadas, gerando os registros de execução. Por meio das operações de instanciação, é realizada a representação de elementos do processo de software no plano do projeto; e em consequência nos registros de execução. Esta representação é feita durante a instanciação do processo de software definido no projeto de software. A partir desta representação é possibilitado realizar mais facilmente análises da execução dos processos.

A solução proposta se aplica ao contexto de organizações de desenvolvimento de software que possuem um processo de software, o qual é utilizado como referência ao longo dos projetos de desenvolvimento de software. A cada projeto é feito o planejamento das tarefas, sendo criado um plano de projeto. Este plano gerado é carregado para uma ferramenta de gerenciamento de tarefas, onde as tarefas são criadas. A partir desta etapa de criação do plano de projeto, que na área de processos de software é chamada de Instanciação, dar-se-á início à Execução. Ao longo da execução do processo, as tarefas criadas são efetivamente realizadas por ferramentas ou por desenvolvedores. A base de dados de processo, gerada pelo uso de ferramentas de gerenciamento de tarefas, armazenam uma rica fonte de dados.

Quando se aplica à solução para o mapeamento, nesta fonte rica de dados, a mesma pode ser utilizada para a identificação do processo de software efetivamente executado, bem como para a verificação de sua conformidade com o processo de software de referência. Estas aplicações serão discutidas no Capítulo 6.

Algumas questões que podem ser mais facilmente respondidas quando as perspectivas de processos e projetos estão mapeadas são:

I. Qual o modelo de processo de software efetivamente seguido ao longo do projeto de software?

II. Quais atividades previstas no processo de software de referência do projeto foram executadas?

III. Quais atividades previstas no processo de software de referência do projeto não foram executadas?

IV. Atividades não previstas no processo de software de referência do projeto foram executadas?

Estas questões são pertinentes porque ao longo da execução dos projetos desvios podem ocorrer em relação ao processo de referência, e a obtenção destas respostas podem ser úteis para algumas partes interessadas (ex.: gerentes de

projeto), para facilitar a avaliação do processo e subsidiar tomadas de decisão mais eficientes. Essas decisões, tais como implantação e/ou melhorias nos modelos de processo de software, utilizado como referência nas organizações, podem contribuir para a maturidade do mesmo.

A Figura 6 apresenta o processo de aplicação da solução proposta nesta tese.

Figura 6 - Processo de Aplicação da Solução. Fonte: A Autora.

O processo de aplicação da solução está dividido em três etapas: Definição, Instanciação e Execução. A etapa de Definição envolve as atividades de obtenção do modelo de processo de software definido para o projeto, bem como das diretrizes do processo padrão, quando houver. O modelo do processo de software obtido deve ser usado como guia ao longo do projeto de desenvolvimento de software. A definição do processo, bem como das diretrizes, estão fora do escopo desta solução. As etapas de Instanciação e Execução compreendem a criação e finalização de tarefas,

respectivamente. Após a obtenção do modelo de processo, pode ser realizada a criação das tarefas, bem como, a finalização das mesmas. A etapa de Instanciação compreende as seguintes atividades: Selecionar a atividade a ser instanciada, Selecionar a Operação de Instanciação e Criar Tarefa (Selecionar Iteração, Selecionar Instância, Definir as datas de Início e Fim previsto; Alocar recursos e Definir Artefatos a serem gerados). Ao final o plano de projeto é criado. A etapa de Execução compreende as atividades: Finalizar Tarefa (Informar as datas de Início e Fim efetivo e Anexar Artefatos Gerados). Uma vez finalizadas as tarefas, as mesmas podem ser consideradas como registros de execução.

A Tabela 5 apresenta a descrição das atividades da etapa de Definição para obtenção dos modelos de processo de software.

Tabela 5 - Atividades da etapa de Definição

Definição

Obter o Modelo de Processo de Software

Envolve a obtenção do processo de software da Organização no formato de um modelo de processo.

Obter as Diretrizes do Processo de Software

Envolve a obtenção das diretrizes de adaptação do processo de software.

A Tabela 6 apresenta a descrição da etapa de Instanciação visando o mapeamento entre as perspectivas, compreendendo suas atividades e tarefas.

Tabela 6 - Atividades da etapa de Instanciação

Instanciação

Criar o Plano do Projeto

Envolve a criação do plano de projeto que é composto das tarefas do projeto de desenvolvimento de software

Selecionar a Atividade a ser Instanciada

Envolve a seleção da atividade do processo que será instanciada.

Selecionar a Operação de Instanciação

Envolve a seleção da Operação de Instanciação, que apoia a criação de tarefas para a equipe, realizando o vínculo entre um elemento do plano de projeto e um elemento do processo de software.

Criar Tarefa

Envolve a criação de tarefas onde são realizadas as seguintes tarefas:

Selecionar a Iteração; Selecionar a Instância; Definir as datas de Inicio e Fim previsto; Alocar recursos e Definir Artefatos a serem gerados. Esta atividade

gera o Plano de Projeto.

A Tabela 7 apresenta a descrição da etapa de Execução visando o mapeamento entre as perspectivas, compreendendo suas atividades e tarefas.

Tabela 7 - Atividades da etapa de Execução

Execução Finalizar Tarefa

Envolve a finalização de tarefas onde são realizadas as seguintes tarefas: Informar

as Datas de Início e Fim efetivo e Anexar Artefatos Gerados. Esta atividade

gera os Registros de Execução.

Na próxima seção o conjunto de Operações de Instanciação proposto é apresentado em detalhes.