“Arquiteturas como diagramas de classe / pacote: A arquitetura é uma apresentação estrutural de
todo o sistema. Geralmente, é descrito por diagramas de classe ou pacote, normalmente para
mostrar camadas globais (camadas). Por exemplo, em um aplicativo com IU e banco de dados, as
camadas são geralmente definidas horizontalmente da IU para o banco de dados e um caso de uso
as percorre para atingir seu objetivo. Outros padrões de arquitetura como “MVC” (Model-View-
Controller) também podem ser escolhidos como uma arquitetura global. A Figura.4 é um exemplo de
arquitetura desenhada como um diagrama de pacote baseado na arquitetura MVC. Todos na equipe
devem compreender as funções e significados dos componentes da arquitetura para que os
membros da equipe possam escrever códigos que se encaixem no lugar certo na arquitetura de
forma consistente. “Dependências” são frequentemente expressas neste diagrama entre pacotes
para evitar acoplamentos indesejados ou dependências circulares. Do ponto de vista arquitetônico,
as dependências circulares entre pacotes são o problema pior e resultam em testes mais difíceis e
um tempo de construção mais longo.
Modelos de domínio como diagramas de classe ou ER (entidade-relacionamento) / diagramas: Um
Modelo de Domínio descreve a taxonomia de conceito do espaço do problema no qual o aplicativo
funciona. No nível de comunicação humana, o vocabulário desse modelo de domínio deve se tornar
a “linguagem ubíqua” usada em toda a comunidade de partes interessadas, incluindo usuários,
especialistas de domínio, analistas de negócios, testadores e desenvolvedores. No nível de
programação, o Modelo de Domínio também é essencial para selecionar nomes de construções de
programação, como classes, dados, métodos e outras convenções. Uma grande parte da taxonomia
conceitual (frequentemente chamada de “entidades”) é mapeada em uma estrutura de dados
persistente no banco de dados e geralmente tem uma vida útil mais longa do que o próprio
aplicativo. Normalmente, o modelo de domínio (ou entidades) reside no pacote “M” na arquitetura
lógica se você escolher uma arquitetura “MVC” para sua aplicação. Um diagrama ER é mais adequado
para expressar um modelo de domínio porque está vinculado mais diretamente a bancos de dados
relacionais. Observe também que esse modelo de domínio cresce com o tempo. Como o domínio
está no cerne da compreensão e comunicação do problema, manter os modelos de domínio em
crescimento na equipe (ou mais amplo, na comunidade) é muito importante. ”
Backlog de Produto
Para recordarmos, um backlog de produto é uma lista priorizada de entregas e isso inclui novos
recursos, que devem ser implementados como parte de um projeto ou desenvolvimento de produto
de software. É um artefato de tomada de decisão que ajuda a estimar, refinar e priorizar tudo o que
você pode querer concluir no futuro.
Isso ajuda a garantir que a equipe esteja trabalhando nos recursos mais importantes e valiosos,
corrigindo os bugs mais importantes ou fazendo outro trabalho importante e crítico para o
desenvolvimento do produto.
O backlog, portanto, é extremamente útil em situações em que você não consegue fazer tudo o que
está sendo solicitado, ou em contextos em que mesmo uma pequena quantidade de planejamento
ajudará muito. Muitos pensam nesta “lista” como uma lista de tarefas pendentes e a definem
exatamente dessa forma, como uma lista de coisas que você deve fazer para entregar seu produto
de software ao mercado. Na verdade, não é necessariamente uma lista de tarefas pendentes. Pense
nisso como uma lista de desejos.