|
Que sobre esta plataforma que faz o ciclo de desenvolvimento mais rápido?
A tabela abaixo ilustra a diferença no processo do projeto entre DB3NF e a aproximação tradicional. Em elimina virtualmente a necessidade a base de dados e projeto componente e na reduz o tempo needed projetar páginas do ASP desde que a maioria da funcionalidade needed encapsulated no componente de DB3NF. Mais grande a aplicação, mais as economias do tempo lá serão. A maioria de páginas do ASP são genéricas assim quando uma página é projetada, possibilidades são ele reúso com mudanças menores em muitos lugares durante todo a aplicação.
A maioria do código em DB3NF automaticamente é gerado ou é dentro do componente. Este código extensivamente é testado e trabalha confiantemente. O código que necessita ser adicionado no alto de DB3NF é muito curto e simples - lá não é muitas opções para fazer um erro, conseqüentemente o processo do QA é reduzido dramàtica.
Estas economias do tempo não são teóricas, mas conseguido em várias execuções de DB3NF.
Tempo típico do projeto (dias de trabalho) para uma aplicação simples da correia fotorreceptora 3-tier
| Processo |
Asp |
Net |
DB3NF |
| Formalizing réguas de negócio |
1/4 |
1/4 |
1/4 |
| Criação de base de dados |
1/4 |
1/4 |
0 |
| programação T-t-sql |
1/4 |
1/4 |
0 |
| Projeto componente |
1/2 |
1/2 |
0 |
Projeto das páginas da correia fotorreceptora (peça do código) |
1 1/2 |
1 |
1/8 |
| Garantia de qualidade - fixing dos erros |
1 |
1/2 |
1/8 |
| Tempo total |
3 3/4 |
2 3/4 |
1/2 |
Para cada produto do RAD há um ponto da complexidade da aplicação e/ou do distinctiveness da exigência em que o benefício da aproximação é um válido não mais longo. Que é o "ponto de nenhum retorno" para este produto?
a) Complexidade da aplicação. Do perspective do projeto e da execução, há mal qualquer coisa tão simples quanto DB3NF uma vez que da "a curva aprendizagem" é terminada. DB3NF faz mesmo as aplicações as mais simples mais simples. Com aplicações mais complexas os benefícios de DB3NF são mais evidentes.
b) Distinctiveness . DB3NF é transação orientada. Jorra tarefas como o registo do usuário e a gerência, ordens de compra, controlando tipos diferentes de clientes, catalogam browsing, etc.. Não faz perguntas ou relatórios complexos bons. De nossa experiência, nós tivemos que adicionar procedimentos feitos sob encomenda para relatórios como seletos de veículos de investimento com os retornos correlacionados mais com uma marca de nível. Um outro exemplo de um relatório onde os métodos nativos de DB3NF não fossem os mais eficazes seria um seleto dos usuários que visitaram frequentemente o local o ano passado, mas não foi ao local no último mês. Para tais tarefas há os métodos genéricos na classe da base de dados que executam indicações feitas sob encomenda do SQL ou procedimentos armazenados. Se necessitados, os objetos feitos sob encomenda podem ser adicionados aos componentes da base de dados e do costume dos "dados" criados para trabalhar com eles e/ou com as tabelas nativas e os procedimentos de DB3NF. No short, os elementos nativos de DB3NF podem ser usados sempre que é apropriado (em a maioria de casos, cobrirá 3/4 da aplicação) quando o descanso da aplicação puder ser feito com métodos tradicionais. Não há um único obstáculo usar junto DB3NF e os métodos tradicionais.
Como os procedimentos armazenados deste produto any.more "optimized" do que os SP's são desenvolvidos por um de nossos DBA?
Não há nada em DB3NF que os seres humanos não podem fazer também ou nivelar em alguns casos mais melhor. Isso está na teoria. Na prática, onde há mais de 50 tabelas na base de dados, torna-se muito duro e caro manter o estado perfeito do projeto de base de dados. Os povos fazem erros e com a aplicação complexa muitos povos são envolvidos no projeto e alguns deles têm poucas habilidades então as outras. Um exemplo:
Suponha que há uma coluna "número dos dependentes" em uma aplicação da segurança social. O que são as possibilidades que os desenhadores adicionarão um confinamente da verificação na base de dados [ número de dependents]>=0 e [ número dos dependentes ]<100? Or how often the real world DBA's write explicit index hints? Have they never forgotten to add a useful index or never accidentally dropped one?
A vontade de DB3NF nunca "esquece-se" de adicioná-los. Em um mundo onde haja nenhuns limitação e colaborador do orçamento não são todos os peritos e não começam furados de escrever o mesmo código repetidamente outra vez lá são nenhuma necessidade em DB3NF. No mundo real, DB3NF faz aplicações melhores, mais rapidamente e reduz custos do projeto.
Você escreve que DB3NF e o usuário da sessão são rápidos. Como rapidamente? Pode você fornecer alguma marca de nível?
O desempenho da aplicação naturalmente depende da ferragem. Nas escalas de desempenho médias do usuário DB3NF do único processador em a maioria de casos do ms 10 ao ms 40 por a página dependendo do código. Significa que o usuário pode confiantemente servir a até 50 páginas um o segundo ou a 1.500.000 páginas um dia (desempenho bom presumido durante horas ocupadas).
O tempo round-trip do usuário da sessão depende do tamanho dos dados da sessão. Se os dados da sessão forem menos do que alguns KB, o tempo round-trip é o ms aproximadamente 10.
|