wiki:Modelos/EspecificacaoDasDemandas
Last modified 9 years ago Last modified on 09/14/10 17:33:21
[[PageOutline]]
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Para utilização deste template considere a seguinte notação:
 * Conteúdo dentro de caixas cinzas são comentários que auxiliam no preenchimento da seção e devem ser removidos da versão fina da DFD; e
 * Texto entre os sinais "<" e ">" devem ser substituídos pelo texto/valores correspondentes.
Comece preenchendo, abaixo, a versão do template utilizado para este documento e o número do ticket associado à esta Declaração Formal de Demanda.
}}}

{{{
#!div class="important" style="border: 1pt solid; display: inline-block;"

Caso um link seja definido de forma errada, manter o link antigo e definir o novo link
imediatamente ao lado, seguindo o padrão

 * [wiki:LinkCorreto Link Correto] - ~~[wiki:LinkErrado Link Errado]~~ (link errado)

}}}

= Especificação da Demanda - <DFDXXXX> =

'''Expresso Livre, versão <versão>'''
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Preencher o campo <versão> com o nome da versão definida (milestone) na Ata de Reunião de Seleção de Demandas
}}}

== Introdução ==

{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Preencher o campo <versão> com o nome da versão definida (milestone) na Ata de Reunião de Seleção de Demandas
}}}
Este documento especifica a arquitetura, implementação e plano de testes da <DFDXXXX>, selecionada para o projeto intitulado <versão>, <dar continuidade à descrição da introdução deste documento, ressaltando a importância desta especificação para a implementação e realização de testes adequados>

== Requisitos ==

=== Requisitos Funcionais ===

 * <Requisito funcional>: <Descrição do Requisito funcional, encontrado na DFD>
 * <Requisito funcional !#2>: <Descrição do Requisito funcional, encontrado na DFD>

=== Requisitos Não Funcionais ===

 * Usabilidade: <descrição do requisito de usabilidade>

 * Confiabilidade: <descrição do requisito de confiabilidade>

 * Desempenho: <descrição do requisito de desempenho>

 * Suportabilidade: <descrição do requisito de suportabilidade>

 * Restrições de Desenvolvimentoo: <descrição do requisito de desenvolvimento>

 * Padrões Aplicáveis: <descrição do requisito de padrões aplicáveis>

== Visões do usuário ==

 * <nome e/ou sigla do requisito funcional>: <forneça uma narrativa que represente a necessidade de se atender o requisito funcional, sob o ponto de vista do usuário>

 * <nome e/ou sigla do requisito funcional> !#2: <forneça uma narrativa que represente a necessidade de se atender o requisito funcional, sob o ponto de vista do usuário>

== Implementação ==

=== Interfaces de usuário ===
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Se julgar necessário, anexe e referencie aqui protótipos de telas que representem a funcinalidade desejada, a partir da descrição do problema na Declaração Formal de Demanda e dos Requisitos obtidos
}}}

=== Diagramas e Modelagem ===
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Se julgar necessário, anexe e referencie aqui diagramas que facilitem a interpretação e a implementação da demanda
}}}

=== Codificação ===


==== Arquivo <incluir o nome do arquivo> ====

Tipo de arquivo: <Existente, Inédito>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar se o arquivo em questão é um arquivo Existente, que apenas será alterada, ou se é um arquivo Inédito, que será criado para a implementação
}}}

Localização: <localizacao.php>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar a localização do arquivo em questão
}}}

Camada afetada: <Componentes da Interface do Usuário (UI) ou Componentes de Objetos de Négocio (BO) ou Componentes de Armazenamento de Objetos (SO)>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar qual camada de arquitetura do Expresso Livre será afetada
}}}

Requisitos associados: <Requisito funcional !#1>, <Requisito funcional !#2>, <Requisito não funcional !#1>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar os requisitos funcionais e/ou não funcionais na qual a implementação neste arquivo irá atender
}}}

Estratégia de implementação: 
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Descrever como deve ser implementado os requisitos no arquivo especificado, de modo claro e entendível, detalhando as classes ou funções que serão alteradas, estruturas de dados afetadas e tabelas de banco de dados envolvidas. Se necessário, podem ser inseridos trechos de
código, visando facilitar a cofificação ou diagamas específicos intimamente relacionados e esta descrição.
}}}

==== Arquivo <incluir o nome do arquivo> !#2 ====

Tipo de arquivo: <Existente, Inédito>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar se o arquivo em questão é um arquivo Existente, que apenas será alterada, ou se é um arquivo Inédito, que será criado para a implementação
}}}

Localização: <localizacao.php>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar a localização do arquivo em questão
}}}

Camada afetada: <Componentes da Interface do Usuário (UI) ou Componentes de Objetos de Négocio (BO) ou Componentes de Armazenamento de Objetos (SO)>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar qual camada de arquitetura do Expresso Livre será afetada
}}}

Requisitos associados: <Requisito funcional !#1>, <Requisito funcional !#2>, <Requisito não funcional !#1>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar os requisitos funcionais e/ou não funcionais na qual a implementação neste arquivo irá atender
}}}

Estratégia de implementação: 
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Descrever como deve ser implementado os requisitos no arquivo especificado, de modo claro e entendível, detalhando as classes ou funções que serão alteradas, estruturas de dados afetadas e tabelas de banco de dados envolvidas. Se necessário, podem ser inseridos trechos de
código, visando facilitar a cofificação ou diagamas específicos intimamente relacionados e esta descrição.
}}}

==== Arquivo <incluir o nome do arquivo> !#3 ====

Tipo de arquivo: <Existente, Inédito>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar se o arquivo em questão é um arquivo Existente, que apenas será alterada, ou se é um arquivo Inédito, que será criado para a implementação
}}}

Localização: <localizacao.php>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar a localização do arquivo em questão
}}}

Camada afetada: <Componentes da Interface do Usuário (UI) ou Componentes de Objetos de Négocio (BO) ou Componentes de Armazenamento de Objetos (SO)>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar qual camada de arquitetura do Expresso Livre será afetada
}}}

Requisitos associados: <Requisito funcional !#1>, <Requisito funcional !#2>, <Requisito não funcional !#1>
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Especificar os requisitos funcionais e/ou não funcionais na qual a implementação neste arquivo irá atender
}}}

Estratégia de implementação: 
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Descrever como deve ser implementado os requisitos no arquivo especificado, de modo claro e entendível, detalhando as classes ou funções que serão alteradas, estruturas de dados afetadas e tabelas de banco de dados envolvidas. Se necessário, podem ser inseridos trechos de
código, visando facilitar a cofificação ou diagamas específicos intimamente relacionados e esta descrição.
}}}

=== Banco de Dados ===

 * <Requisito funcional [ou não]>
  * <Listar as tabelas que serão afetadas com a codificação executada neste requisito> - <Descrição de procedimentos e alterações a serem realizadas na tabela>
  * ...

 * <Requisito funcional [ou não] !#2>
  * <Listar as tabelas que serão afetadas com a codificação executada neste requisito> - <Descrição de procedimentos e alterações a serem realizadas na tabela>
  * ...

 * <Requisito funcional [ou não] !#3>
  * <Listar as tabelas que serão afetadas com a codificação executada neste requisito> - <Descrição de procedimentos e alterações a serem realizadas na tabela>
  * ...
=== Impactos gerados pelas alterações ===
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Descrever o impacto das alterações em outros camadas da arquitetura ou outros módulos do Expresso Livre.
}}}

=== Migração ===
{{{
#!div class=important style="border: 1pt solid; display: inline-block;"

Descrever os procedimentos que envolvam a migração de arquivos, código e/ou banco de dados, caso sejam afetados pela implementação da solução da demanda
}}}

== Plano de Testes ==

 * <Requisito funcional [ou não]>: <Descrever os procedimentos que envolvam a realização de testes que verifiquem a codificação executada neste requisito>

 * <Requisito funcional [ou não] !#2>: <Descrever os procedimentos que envolvam a realização de testes que verifiquem a codificação executada neste requisito>

 * <Requisito funcional [ou não] !#3>: <Descrever os procedimentos que envolvam a realização de testes que verifiquem a codificação executada neste requisito>

== Rastreabilidade ==

 * <[wiki:projetoX/Planejamento/Demandas Conjunto de demandas selecionadas]> {Referenciar o link para a página do projeto que contém todas as DFD's do projeto. Este link deve ser preenchido apenas na Fase de Execução, durante a atividade Atualizar Matriz de Rastreabilidade}

 * <[wiki:projetoX/Planejamento/PlanoDeProjeto Plano de Projeto]> {Referenciar o link para o documento Plano de Projeto. Este link deve ser preenchido apenas na Fase de Execução, durante a atividade Atualizar Matriz de Rastreabilidade}