Programação Orientada a Objetos no WordPress: Declaração de Trabalho
Antes de entrarmos no tópico de análise e design orientado a objetos (que é quando a maioria de nós se diverte mais com o que fazemos além de realmente escrever código), é importante acompanhar mais algumas coisas sobre entender os requisitos do cliente .
No post anterior, mencionei:
Se você dedicar algum tempo para entender o que eles querem desde o início, os requisitos não precisam ser um documento de 50 páginas descrevendo como cada módulo deve funcionar.
Por exemplo, sempre que reúno requisitos (ou uma Declaração de Trabalho), como costumo chamá-los quando os envio aos clientes, raramente excedo dez páginas, e geralmente é menos.
E embora haja momentos em que é mais longo, acho que parte do motivo pelo qual o desenvolvimento de um pequeno conjunto de requisitos vem com as discussões preliminares para garantir que você e o(s) cliente(s) tenham desenvolvido uma linguagem comum com a qual você possa trabalhar.
Quando você faz isso, os requisitos e a declaração de trabalho – como você optar por chamá-los – não precisam ser tão longos.
Escrevendo uma declaração de trabalho
Primeiro, gostaria de diferenciar entre uma Declaração de Trabalho e Requisitos no contexto deste post.
- Requisitos são o que o cliente quer que seja construído.
- A Declaração de Trabalho detalha o que você vai fazer, como vai fazer e por quanto.
Vou cobrir o último com mais detalhes neste post. Mas basta dizer que os requisitos podem vir na forma de discussões, documentação ou ambos, no que diz respeito ao cliente.
Antes de pular para as diferentes partes do que incluo em uma declaração de trabalho, há algumas coisas que acho que vale a pena mencionar:
- Não escreva uma Declaração de Trabalho até que você tenha todos os requisitos do cliente.
- Certifique-se de que o cliente saiba o que esperar de uma Declaração de Trabalho.
- Se você tiver tempo para escrever uma Declaração de Trabalho, decida se cobrará pelo tempo ou não e certifique-se de que o cliente esteja ciente de que precisará pagar por isso ou não
Essa é uma daquelas coisas que são feitas de freelancer por freelancer ou agência por agência. Com isso dito, aqui estão as partes de uma Declaração de Trabalho que costumo incluir.
Preparando uma Declaração de Trabalho
Sempre que preparo uma declaração de trabalho, tenho um modelo que uso. Eu vou fornecer um detalhamento que cobre muito disso aqui.
Veja como cada seção funciona:
1 Declaração de Trabalho
O objetivo deste documento é [definir uma solução proposta para O PROJETO].
Os requisitos do projeto foram fornecidos por [NOME DO CLIENTE], [PAPEL DO NOME DO CLIENTE NO NOME DA SUA EMPRESA]. Os termos do contrato são uma combinação daqueles acordados por [NOME DO CLIENTE] e [SEU NOME DA AGÊNCIA].
2 Visão geral dos requisitos
O objetivo deste documento é [definir uma solução proposta para O PROJETO].
Os requisitos do projeto foram fornecidos por [NOME DO CLIENTE], [PAPEL DO NOME DO CLIENTE NO NOME DA SUA EMPRESA]. Os termos do contrato são uma combinação daqueles acordados por [NOME DO CLIENTE] e [SEU NOME DA AGÊNCIA].
3 Idiomas e Tecnologia
O servidor web, software, ferramentas e abordagem que serão usados para construir a solução.
Se este for um projeto baseado na web, cubra os navegadores suportados, se haverá ou não funcionalidade responsiva e como os pontos anteriores serão testados.
5 Idiomas e Tecnologia
O servidor web, software, ferramentas e abordagem que serão usados para construir a solução.
6 Requisitos e Marcos do Projeto
Normalmente, a seção mais longa do documento. Ele resume:
- Os requisitos,
- Como cada requisito será construído e entregue,
- Quaisquer notas adicionais das quais o cliente deva estar ciente.
7 Cronograma proposto
Isso se baseia nos marcos descritos na seção anterior e no feedback do cliente.
8 Outros Fatores
Coisas diversas que você opta por incluir, como o que você ou sua agência optam por trazer para o projeto, como o atraso no feedback pode afetar o projeto e assim por diante.
9 Custo Estimado
Isso inclui o custo total do projeto e um detalhamento opcional do cronograma de pagamento.
É necessário
Eu sei: eu já disse isso antes em posts anteriores desta série. Esta não é a parte mais glamorosa do que fazemos. Em vez disso, iríamos direto para a programação.
Mas como você sabe o que construir (e construir bem) se não lidamos adequadamente com o problema que estamos tentando resolver?
E é isso que tudo que leva à análise e design orientados a objetos nos dá.
Análise Orientada a Objetos
Agora que tiramos a papelada (ou até mesmo as “coisas de negócios", como alguns podem se referir) fora do caminho, é hora de começar a trabalhar na programação.
Antes de fazer isso, porém, é importante analisar os requisitos e determinar quais partes do projeto servirão para qual propósito. Por exemplo:
- Precisamos de algum software pré-existente?
- Precisamos escrever algum adaptador ou código de camada de dados?
- Como construiremos a camada de aplicação e as entidades dentro dela?
- E o front-end
E para muitos, é aqui que a diversão começa. Então, estou ansioso para começar a falar sobre isso também. Começaremos no próximo post.