A metodologia de desenvolvimento de
software utilizada pela ArchITettura, tem sua essência baseada no MSF
(Microsoft Solution Framework), para padronização da linguagem dos documentos
nós utilizamos UML, alguns dos documentos utilizados, nasceram na própria
ArchITettura, decorrentes da necessidade de alguns projetos.
O diagrama abaixo ilustra o processo de desenvolvimento da metodologia MSF, o
qual seguimos na íntegra em nossos processos:
FASES
DA METODOLOGIA – VISÃO
O produto final da fase de visão são documentos e diagramas
que consigam ilustrar o escopo do projeto. Através das reuniões de oficina de
requisitos, entendemos e documentamos exatamente o que o cliente espera do
projeto.
Com os documentos homologados pelo cliente, e o comum acordo que todos temos a
mesma visão do escopo do projeto, é possível dimensionar e modularizar o
projeto, definir as metas fechando um planejamento para o projeto. A fase de
visão é documentada nos seguintes artefatos:
Definição dos papéis
No
inicio do projeto, realizamos uma reunião de integração das pessoas que
participarão do projeto, onde documentamos os papeis e responsabilidades de
cada pessoa dentro do projeto. Os papéis definidos seguem a estrutura de Team
Model da metodologia MSF (Microsoft Solutions Framework);
Levantamento Técnico Inicial (LTI)
O documento é
desenvolvido através de reuniões e entrevistas com o cliente e usuários do
sistema. O principal objetivo é detalhar os problemas e cenários de negócio do
cliente e documentá-los, O LTI é composto dos seguintes documentos: Diagrama
Macro Funcional e Modelo de Negócios do sistema, o resultado das entrevistas e
reuniões e a conclusão tecnológica que melhor atende o cliente.
Diagrama Macro Funcional
Tem como principal
objetivo representar graficamente o escopo macro do sistema, identificando suas
macro funções e os atores (pessoas ou outros sistemas) que interagem com o
sistema;
Modelo de Negócios
O modelo de negócios é
uma visão mais detalhada das macro funções, ilustrando as funcionalidades
envolvidas em uma macro função bem como sua hierarquia dentro do sistema. Para
que o documento possa ser desenvolvido, é imprescindível que tenhamos o
comprometimento do cliente, pois seu conhecimento de negócio, permite que a
visão das funcionalidades necessárias fique clara e objetiva.
Diretrizes de Arquitetura
Este documento é
destinado ao levantamento e documentação de todos os padrões técnicos que devam
ser seguidos para o sistema, como por exemplo: Padrões de Interface, padrões de
nomenclatura de banco de dados, padrões de infra-estrutura, regras de
segurança, integrações, e toda característica técnica mantida como requisito
não funcional do sistema;
Métricas do sistema
Para
dimensionar o sistema, utilizamos as técnicas da Análise de Ponto de Função,
com base na nossa realização histórica em no desenvolvimento de software.
FASES
DA METODOLOGIA - ESPECIFICAÇÃO
Conhecendo o escopo do projeto, podemos
detalhar todo o sistema iniciando sua especificação, nesse
momento utilizamos as técnicas da UML para documentarmos os comportamentos,
estruturas e a arquitetura do sistema.
Glossário do Sistema
O objetivo é listar os
termos específicos do negócio para que todas as pessoas envolvidas no projeto
tenham um mesmo entendimento sobre o conteúdo. Geralmente o documento é
elaborado e mantido pelo cliente.
Protótipo de Navegação
Trata-se da primeira
versão do sistema e tem como objetivo auditar tanto os padrões de interface
definidos como a hierarquia das funcionalidades descrita no modelo de negócio,
bem como a navegação pelas telas do sistema. O documento é elaborado a partir
dos esboços de telas fornecidos pelo cliente ou documentados nas oficinas de
requisitos, as inconsistências encontradas são reportadas e introduzidas no
protótipo.
Diagrama de Casos de Uso
Tem como objetivo
identificar as dependências entre os casos de uso (funcionalidades do sistema)
e a partir desse ponto definir a ordem de construção para os módulos que farão
parte do sistema planejando assim o desenvolvimento dos mesmos.
Especificação de Casos de Uso
Cada Caso de Uso
(funcionalidade do sistema), que foi apresentado no Diagrama será agora
detalhado quanto as suas dependências funcionais e de negócio. É importante que
qualquer programador ou analista entenda os fluxos do sistema apresentados
nessas descrições, por isso utilizamos os padrões UML para documentação dos
casos de uso.
4Descrição
do Objetivo: Breve descrição do objetivo do caso de uso;
4Pré-Condições:
Eventos que são pré-requisitos para o acontecimento do caso de uso;
4 Pós-Condições:
Descrição dos estados do sistema gerados pelo caso de uso;
4 Regras
de Negócio Associadas: Regras de negócio que serão aplicadas naquela
funcionalidade.
4Regras
Técnicas: Regras associadas aos componentes visuais da funcionalidade.
4Tabela
de Mensagens: Conjunto de mensagens que serão utilizadas no caso de uso;
4Protótipo
de Tela: Demonstração visual da tela correspondente ao caso de uso;
4Detalhamento
dos Fluxos: Documentação do fluxo principal e dos alternativos do caso de uso.
Em funcionalidades complexas utilizamos os Diagramas de Seqüência para
documentar os fluxos.
Modelo de
Entidades e Relacionamentos – MER
O objetivo é descrever
o modelo físico do banco de dados, identificando as entidades (tabelas) e seus
atributos (campos), otimizando a estrutura de dados e criando o banco de dados.
Oficinas de Requisitos
As oficinas de
requisitos são as reuniões onde são levantados os detalhes para a completa
especificação do sistema.
FASES DA METODOLOGIA –
DESENVOLVIMENTO
Na fase de desenvolvimento, toda a
especificação do sistema é submetida ao time de desenvolvedores que irão
construir o sistema. Buscando sempre a excelência na qualidade dos nossos
projetos, o desenvolvimento de software é todo padronizado dentro na
ArchITettura seguindo um documento interno de boas práticas de codificação e
para garantia dos padrões, submetemos o código fonte a periódicas auditorias a
qual denominamos Code Review.
Code Review
O principal objetivo é garantir a
utilização dos Patterns de desenvolvimento e certificar que o código utilizado
é o melhor para a aplicação. Quando o padrão é seguido conseguimos atingir os
índices de qualidade de código que futuramente facilitarão as manutenções do
sistema.
FASES DA
METODOLOGIA - ESTABILIZAÇÃO
É a fase em que são feitas entregas (parciais) do projeto ao
cliente. Essas entregas são chamadas de:
4RC1
(Release Candidate One): É quando o cliente tem o primeiro contato com um ou
mais módulos prontos do sistema. O cliente deverá testar todas as
funcionalidades do módulo entregue, e apontar o que é erro ou que seriam
melhorias a serem feitas no sistema.
4RC2
(Release Candidate Two): É a segunda entrega de um ou mais módulos do sistema.
Esta entrega estará próxima do produto final, e assim como na primeira o
cliente deverá testar as funcionalidades e apontar novos
erros caso seja necessário.
4RTM
(Release To Manufatcture): O RTM é entrega final do projeto, após a aprovação
do cliente é efetivada a conclusão do processo de desenvolvimento do sistema.
São entregues ao cliente todos os documentos gerados durante o projeto e também
os códigos fontes, e então inicia-se o ciclo de garantia.
O pacote formado por cada uma dessas entregas
antes de ser entregue ao cliente, passa primeiramente pela a área de SQA
(Software Quallity Assurance) para uma bateria de testes, as inconsistências
encontradas voltam para o time de desenvolvimento e a versão só é liberada ao
cliente quando não forem mais encontrados erros de sistema.
Planilha de Inconsistências (Testes
de Liberação)
Neste documento são descritas todas as
inconsistências encontradas no sistema, e a planilha é enviada aos
desenvolvedores para que eles corrijam os problemas. O SQA verifica se todas
elas foram corrigidas e então libera para avaliação do cliente. Caso não seja
aprovada ficará nesse ciclo até que não hajam mais erros no sistema.
Recibos de Release (RC1 – RC2 –
RTM)
O principal objetivo é
documentar a entrega dos módulos do sistema. Este documento é elaborado e em
seguida protocolado pelo cliente.
FASES
DA METODOLOGIA - IMPLANTAÇÃO
É a fase em que é implantado o sistema no ambiente do cliente.
Nesta fase será fornecido o seguinte documento:
Manual de Implantação do Projeto
Neste manual estarão documentados todos os
pré-requisitos para a instalação do sistema, o processo de instalação e as
configurações necessárias para o sistema(conexão no banco de dados,
configurações de segurança, entre outros).
FASES DA METODOLOGIA - CONTROLE
A fase de controle está presente em todas as fases do projeto. Os
documentos gerados são:
Cronograma
Com base no planejamento criado, será gerado o
cronograma detalhado do projeto, para que todas as pessoas envolvidas possam se
programar e concluir suas atividades no prazo estipulado;
Task Plan
Gerenciamento e
acompanhamento semanal de cada membro do projeto. Devemos definir as atividades
dos membros da equipe para a próxima semana e verificar se as atividades da
semana anterior foram realizadas.
|