Como Prometido vamos começar o nosso primeiro projeto, mas antes de começar precisamos conhecer como vamos dividir o desenvolvimento desse projeto (metodologia de trabalho) , essa metodologia é acima de tudo para nos dar uma noção maior do mundo da programação, não só o código fonte, mais sim das dificuldades de ser um programador, ainda mais hoje que as empresas estão adotando um modelo de empresa enxuta (menor número de pessoas dentro da empresa e mais responsabilidades e atividades para um programador). Resumindo, em todos os projetos vou simular um ambiente que mostre o cotidiano de um developer.
Vamos dividir o desenvolvimento dos nosso projeto em 5 partes:
1 – Análise de Requisitos
Na minha opinião o mais importante do desenvolvimento de um software, neste período é que vamos conhecer o domínio, ter contato com o cliente e procurar abstrair o máximo de informação.
Na teoria a Análise tanto serve para abstrair e documentar todo o conhecimento adquirido sobre o projeto, como serve de contrato entre o desenvolvedor e o cliente, quem nunca teve um diálogo parecido.
Cliente diz:
- Eu estou controlando o faturamento mas a produção ainda está em planilha, quero a produção no sistema.
Desenvolvedor:
- Mas senhor, quando falamos sobre produção o senhor não se interessou, só queria controlar o faturamento.
Cliente diz:
- É, não, não, quero controlar a produção também…
Em casos como este tendo a análise de requisitos como um contrato faz com que fale mais alto a documentação, se ele quiser produção terá que pagar mais, aliás, é um novo projeto.
Podemos dividir a análise de requisitos em dois grandes tipos:
Tipo de Requisitos Funcionais – este é a documentação inicial do que o sistema terá que fazer, não como, mais sim o que terá que fazer.
Exemplo:
Ao imprimir uma Nota Fiscal de industrialização será impresso 2 Cfops na Nota Fiscal.
O sistema terá que controlar a saída e o retorno de mercadoria na logística…
Já vi muitas pessoas chamando também de Mini-Mundo do sistema, que quer dizer o mesmo, descrever de uma forma menos técnica e mais prática o domínio (Regras de negócio), os problemas encontrados, o que é mais importante…
Tipo de Requisitos não Funcionais – trata mais de informações adicionais sobre o cliente, como, o que significa este projeto para o cliente, o que ele espera da solução que será desenvolvida, quem é o cliente, quais produtos ele tem, os usuários e fatores humanos, ambiente físico…
Neste caso vamos usar os tipos de requisitos não funcionais somente como análise do Cliente, não vamos tratar de informações do tipo documentação, Dados, segurança, dividimos essa informação em mais 2 fases.
Quer saber Mais:
http://pt.wikipedia.org/wiki/Análise_de_requisitos
http://www.governancamunicipal.sp.gov.br/conteudo/arquivos/Analise de requisitos.pdf
2 – Desenho UML (Documentação)
Para quem não conhece UML (Unified Modeling Language) é uma linguagem gráfica que através de diagramas te auxiliam a visualizar melhor o desenho e a comunicação do seus objetos:
Alguns Diagramas usaremos neste nosso projeto como:
- Casos de Uso
- Seqüência Nem sempre vamos usar
- Estado Nem sempre vamos usar
- Classes
Acho muito importante fazer o Desenho UML antes de definir qual estrutura usar, qual ferramenta utilizar, antes disso não acredito que conseguimos analisar tão bem o projeto como conseguimos analisar já com a Documentação em UML pronta.
Quer saber Mais:
http://pt.wikipedia.org/wiki/UML
3 – Analise de Sistema
Agora sim, com o desenho UML pronto o analista consegue conversar e trocar informação com os programadores, agora é que começa a ficar bom! Rsrs.
Algumas prioridades são analisadas como Funcionalidade, Documentação, Dados, Segurança, Recursos, Ferramentas que serão utilizadas, definir os responsáveis pela implementação do Código, Cronograma de desenvolvimento, teste…
Quer saber Mais:
http://pt.wikipedia.org/wiki/Análise_de_sistemas
4 – Implementação (programação)
Nesta Fase que entraremos em ação, depois de receber o Desenho UML, ter definido com o Analista o que vai ser usado e suas prioridades no desenvolvimento, vamos para a implementação do código.
Essa parte costuma ser rápido, creio eu que só não é quando envolve novas metodologias ou tecnologias, assim essa parte pode se tornar até a mais demorada.
Obs. Mesmo passando por todas as fases de um desenvolvimento de um projeto, vamos focar sempre na programação, que é o intuito principal do nosso blog.
No caso da implementação usaremos sempre o conceito de Orientado a objeto como base para os nossos projetos.
Quer saber Mais:
http://pt.wikipedia.org/wiki/Orientação_a_objeto
5 – Teste
Nesta Fase vamos testar tudo que foi feito, a usabilidade, funcionalidade, possíveis erros (principalmente de gramática), programador é meio americanizado, do tipo
Sou Brazileiro!
.
Esta fase é meio que repetitivo, feitos os testes, terá alguns ajustes, voltará para a programação, que voltará para os testes…
Claro que depois de feitos os testes é feito a instalação e o cliente começa a se divertir com o brinquedo novo.
6 – Controle de Projeto
O Controle de Projeto não considero como uma Fase, pois ele está em todas as fases, o controle de projetos é uma maneira de organização para manter sobre controle o desenvolvimento do projeto, normalmente conta com gráficos que ajudam no aúxilio e acompanhamento do projeto.
Quer saber Mais:
http://www.geteq.ufsc.br/controle/upload/arquivos/OP1606.pdf
Claro que aqui só passei um pouco do modelo que vamos usar a no nosso projeto, os links que passei só passam um conceito base para você ter uma noção de cada fase, quando estiver colocando em prática mostrarei algumas ferramentas que vão nos auxiliar no ciclo de desenvolvimento, este modelo de desenvolvimento foi baseado no Modelo Cascata. No próximo Artigo já iremos apresentar o projeto.
Gostaria de deixar todos os leitores do nosso blog bem a vontade para comentar e ajudar no nosso desenvolvimento do projeto… tenho certeza que será de ajuda para muitos… fique a vontade para clicar nos anúncios do google também
Vlw.e até a próx…
Popularity: 6% [?]

[...] Se não entender como dividimos o desenvolvimento deste projeto no artigo Ciclo de Desenvolvimento está bem detalhado para você não se perder, [...]