• Nenhum resultado encontrado

MDS Metodologia de Desenvolvimento de Software

N/A
N/A
Protected

Academic year: 2021

Share "MDS Metodologia de Desenvolvimento de Software"

Copied!
9
0
0

Texto

(1)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

MDS – Metodologia de Desenvolvimento de Software

(2)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

Objetivo

O objetivo deste documento é formalizar a Metodologia de Desenvolvimento (MDS) do T2Ti ERP, apresentando os artefatos que serão criados durante o desenvolvimento do ERP, as fases do processo e os envolvidos.

Conceitos Importantes

Para que um software venha à existência é necessário que ele passe por diversos estágios. Esse processo já foi tema para diversos livros, disciplinas em faculdades e continua gerando muita polêmica entre os desenvolvedores de software.

Muitos defendem a idéia de que é necessário ter um processo bem completo, o que se resume em fazer diversas reuniões com todos os interessados, levantar todos os possíveis requisitos do sistema e documentar tudo, desde as atas das reuniões até o código fonte.

Existem algumas metodologias que tem o objetivo de fazer exatamente o que está exposto no parágrafo anterior. Essas são chamadas de metodologias tradicionais (processos tradicionais). Como exemplo podemos citar:

• Cascata – Desenvolvida pela marinha americana na década de 60 para desenvolvimento de softwares militares complexos.

(3)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

Essa metodologia é focada em documentos. Existem vários entregáveis, muitos dos quais são apenas documentos. Isso pode irritar o cliente que não vê logo o produto na sua frente e pensa que o desenvolvedor só está enrolando por fazer tantos documentos.

• Protótipos – Nessa metodologia é feito um protótipo do sistema para que o cliente possa ter algo pra ver. O protótipo pode ser páginas HTML, formulários sem acesso a banco de dados, imagens, etc. O objetivo é dar uma noção para o cliente de como o sistema vai funcionar, qual a cara do sistema.

O pecado dessa metodologia pode ser a total falta de documentação. Outro problema é que, depois que o cliente definir que está tudo certo com base no protótipo, pode ter a falsa noção de que está faltando muito pouco para se concluir o sistema, visto que ele já viu as telas.

• RUP (Rational Unified Process) – é um processo que fornece uma metodologia disciplinada de desenvolvimento utilizando um conjunto de ferramentas, modelos e entregáveis. Essa metodologia pertence a IBM Rational. A RUP utiliza a UML para definir os requisitos e criar todos os artefatos para a documentação.

(4)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

Ao trabalhar com o RUP a empresa desenvolvedora do software precisa estar preparada para criar uma gama extensa de documentação. É muita coisa mesmo.

Acreditamos que o maior problema dos métodos tradicionais é o esforço para predizer tudo que o software terá. Nesse esforço perde-se bastante tempo em reuniões e documentos “desnecessários”. A grande maioria desses documentos nunca serão lidos, só vão servir para fazer volume. A Equipe T2Ti tem a visão do parágrafo anterior.

Houve então uma evolução das metodologias de desenvolvimento. Surgiram as metodologias ágeis. Como exemplo podemos citar:

• XP (Extreme Program) – Metodologia ágil para equipes pequenas e médias e que irão desenvolver software com requisitos vagos e em constante mudança. Para isso, adota a estratégia de constante acompanhamento e realização de vários pequenos ajustes durante o desenvolvimento de software. (wikipedia)

Dentre as variáveis de controle em projetos (custo, tempo, qualidade e escopo), há um foco explícito em escopo. Para isso, recomenda-se a priorização de funcionalidades que representem maior valor possível para o negócio. Desta forma, caso seja necessário a diminuição de escopo, as funcionalidades menos valiosas serão adiadas ou canceladas. (wikipedia)

• SCRUM – Metodologia ágil para gestão e planejamento de projetos de software. Os projetos são divididos em ciclos (na maioria das vezes mensais) chamados de Sprints. O Sprint representa uma

(5)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

Caixa do Tempo (Time Box) dentro do qual um conjunto de atividades deve ser executado. O trabalho com o Scrum é dividido em iterações, que são chamadas de Sprints. As funcionalidades a serem implementadas em um projeto são mantidas em uma lista que é conhecida como Product Backlog. No início de cada Sprint, existe uma reunião de planejamento (Sprint Planning Meeting) onde o Gestor do Produto (Product Owner) prioriza os itens do

Product Backlog e a equipe seleciona as atividades que ela será

capaz de implementar durante o Sprint que se inicia. As tarefas alocadas em um Sprint são transferidas do Product Backlog para o

Sprint Backlog.

Todos os dias a equipe faz uma breve reunião chamada Daily

Scrum. O objetivo é disseminar conhecimento sobre o que foi feito

no dia anterior, identificar impedimentos e priorizar o trabalho do dia que se inicia.

No final de um Sprint, a equipe apresenta as funcionalidades implementadas em uma reunião conhecida como Sprint Review

Meeting. Finalmente, faz-se uma retrospectiva (Sprint

Retrospective) e a equipe parte para o planejamento do próximo Sprint. Reinicia-se o ciclo.

(6)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

Projeto T2Ti ERP – Funcionamento

Para construir o ERP a Equipe T2Ti vai utilizar uma adaptação do SCRUM/XP. Isso será necessário porque estamos fazendo algo sui

generis: um treinamento com diversos Participantes e um sistema

durante o treinamento. Nós também utilizaremos alguns artefatos que são de uso da metodologia tradicional.

T2Ti ERP – Módulos

O T2Ti ERP possui 24 módulos. Nós “olharemos” para cada módulos de forma individual, como se fosse um único projeto. Não tentaremos pensar em todas as possíveis conexões entre os módulos quando estivermos desenvolvendo um módulo.

Por exemplo, quando estivermos desenvolvendo os módulos de cadastro e formos construir a tabela de funcionários, nós vamos tentar imaginar onde essa tabela poderia ser utilizada nos módulos do ERP, mas não vamos pensar exaustivamente em todos os possíveis campos dessa tabela. Digamos que no módulo “Folha de Pagamento” seja detectado que faltaram 4 campos essenciais para a tabela de funcionários. O modelo de dados será atualizado, a tabela será atualizada no banco de dados e o cadastro visual do funcionário também será atualizado.

Essas alterações serão mapeadas, pois no final haverá um curso em vídeo explicando como integrar o ERP. Neste curso final será feita uma revisão das alterações.

Trabalharemos da forma definida nos parágrafos anteriores para ganharmos agilidade. Não vamos fazer o ERP de forma preditiva, mas adaptativa.

T2Ti ERP – Artefatos de Documentação

Antes do desenvolvimento de um módulo do ERP, serão inseridos no EAD os seguintes artefatos:

• Documento de Visão: para cada módulo do ERP construiremos um documento de visão com o objetivo de vislumbrar tudo o que o

(7)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

módulo deverá fazer. Para uma descrição detalhada deste artefato visite o seguinte endereço:

http://pt.wikipedia.org/wiki/Documento_de_vis%C3%A3o

• Product Backlog: lista de requisitos, estórias e coisas que o cliente deseja. No nosso caso o product backlog sairá do documento de visão. Neste ponto faremos igual ao que está descrito no livro Scrum e XP Direto das Trincheiras. Queira consultar os capítulo 2 e 3 do livro.

Segue um exemplo de product backlog, retirado do livro mencionado no parágrafo anterior:

(8)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

Sprint Backlog – lista dos requisitos retirados do product backlog que serão entregues na próxima versão do produto. Leia o capítulo 4 do livro Scrum e XP Direto das Trincheiras.

E por que não implementar logo todo o product backlog? Porque quando utilizamos Scrum, nosso Sprint deve ter um tempo curto, ou seja, devemos fazer vários entregáveis do sistema, até que todo o product backlog tenha sido feito.

No nosso caso, cada Sprint terá como resultado um curso em vídeo. É possível que um módulo do ERP tenha mais do que um curso em vídeo por causa disso.

• DER – Diagrama Entidade Relacionamento: para cada módulo do ERP faremos um DER. Existirá também um DER integrado onde todas as tabelas serão mostradas juntas. Este DER integrado será atualizado sempre que um módulo for construído.

(9)

T2Ti Tecnologia da Informação Ltda – T2Ti.COM CNPJ: 10.793.118/0001-78

Projeto T2Ti ERP

T2Ti ERP – Dinâmica do Projeto

Abaixo segue o ciclo que será seguido pelos membros da Equipe T2Ti sempre que forem fazer um módulo do ERP.

• Definição do módulo que será construído;

• Criação do Documento de Visão. Insere o DV no EAD. Aguarda uns dias para avaliação dos participantes. Não pode ser muitos dias para não atrasar muito o projeto;

• Criação do Product Backlog. Insere o PB no EAD.

• Criação do Sprint Backlog. Insere o SB no EAD.

• Criação do DER. Insere o DER no EAD.

Referências

Documentos relacionados

• Gerar nos alunos de Análise e desenvolvimento de software a capacidade de analisa, documentar e especificar sistemas computacionais de informação.. Estes devem fazer uso

• O ciclo de vida iterativo e incremental pode ser visto como uma generalização da abordagem em cascata: o software é desenvolvimento em incrementos e cada incremento é desenvolvido

Vemos que a configuração subjetiva de Lia aponta claramente um momento atual de desmotivação, enquanto Edu continua lutando com fatores adversos com relação

Em relação ao perfil dos pesquisados, verifica-se que os respondentes são pessoas altamente qualificadas (60,8% tem formação lato sensu/MBA) e que esse não é

● O SW-CMM (Capability Maturity Model for Software) é um modelo de capacitação de processos de software, desenvolvido pelo SEI (Software Engineering Institute) e patrocinado

Nesta reunião, o ScrumMaster trabalha junto com o Proprietário do Produto e a Equipe de Desenvolvimento para definir qual a carga de tempo que cada funcionalidade do Product

Esse conjunto de função consiste naquelas funções não diretamente relacionada à definição, ao gerenciamento, ao desenvolvimento e ao teste de software, mas que não

Processo de Desenvolvimento de Software: Analises iniciais, ciclo de vida de um processo, modelos de processos de desenvolvimento, padrões de processos, processo unificado;