Eng De Software
Dissertações: Eng De Software. Pesquise 861.000+ trabalhos acadêmicosPor: vinicius.sco • 11/9/2013 • 2.204 Palavras (9 Páginas) • 381 Visualizações
ATPS
ENGENHARIA DE SOFTWARE
Etapa1
Introdução
Tentamos agendar duas reuniões com o cliente CLIVET, para discutirmos as características do projeto, como necessidades e tempo de entrega do mesmo, porém, como o mesmo estava muito ocupado, ambas reuniões não puderam ser realizadas.
Devido a tal fato, e a nossa vontade e competência em entregar um produto que agregue mais valor aos serviços da CLIVET e, à maior ou total satisfação de nosso cliente, resolvemos trabalhar com algum método/metodologia que nos permita entregar: ou protótipos ou fazer com quem nosso software seja facilmente modificado.
Mediante à impossibilidade de entrevistarmos nosso cliente, perguntando ao mesmo sobre as características desejadas do software, complexidade, integração com qual tipo de banco de dados (se necessário), tamanho da base de dados do mesmo, necessidade (ou não) de ser acessado via web, ser expansível para possíveis filiais, vontade do mesmo em ter um software que possa ser atualizado facilmente, etc, resolvemos seguir nossa intuição, e trabalharmos com algum método que nos permita entregar um protótipo ou então, que possa ser facilmente modificado (não temos um escopo inicial por parte de nosso cliente).
Desenvolvimento
Diagramamos duas tabelas, para a apresentação ao nosso cliente; mesmo ele não podendo comparecer às reuniões e discutir sobre tais metodologias, nós resolvemos escolher entre as 3 metodologias inicialmente propostas, a que julgamos ser melhor pelo comportamento de nosso cliente, e pelo que julgamos que o cliente quer / espera do software.
| Clássico (cascata) | Prototipação | Metodologia Ágil / Scrum |
Exige extensa documentação: | P | P |
PP* |
Software é facilmente modificado / expansível: | PP | P | P |
Gerar um protótipo / beta: | NP | P | P |
Exige excelentes/experientes programadores: | NA** | NA** | P |
Cálculo do fator risco: | NP | NP | P |
Fácil cálculo do tempo de entrega do software | PP | NA | P |
Tabela I: requisitos das metodologias.
Onde: P = possui; PP = possui parcialmente; NA = não se aplica ; NP = não possui.
* = se o cliente desejar é feito; porém não é uma característica da metodologia
** = a menos que a empresa já conte com excelentes programadores; em teoria, não é necessário.
Vamos, agora, apresentar uma tabela comparativa entre as três metodologias:
| Vantagens | Desvantagens |
Clássico (cascata) | *É antigo; *É muito utilizado;*Minimiza o tempo de planejamento;*Funciona bem com equipes tecnicamente mais fracas;*É linear. | *Perde-se muito tempo com documentações, nem sempre necessárias;*Projetos chegam a levar muitos meses para serem concluídos;*Cliente só vê o programa em funcionamento ao final de todo o processo;*Não necessita de uma equipe bem integrada, o que pode gerar falhas ou incapacidade do programa ser atualizado;*Não tem análise de risco. |
Prototipação | *Trabalha com um protótipo do software;*Cliente recebe uma versão protótipo do mesmo, para utilização e testes;*Pode ser utilizado quando a comunicação com o cliente não é completa;*Facilmente atualizável;*Bom para softwares com mudanças de requisitos constantes. | *Cliente pode se contentar com o protótipo, e esquecer a versão final;*Impossível determinar com exatidão o tempo que o processo vai durar;*Não há formas de saber o número de iterações necessárias;*Muitas vezes,
o protótipo acaba atrapalhando o desenvolvimento da versão final;*Não há análise de risco.. |
Ágil / Scrum | *É ágil;*Utiliza análise de risco;*Focado na negociação interna e com clientes;*Agrega muito valor ao produto e ao cliente;*Geralmente, traz alto grau de satisfação do cliente com o produto;*Time pequeno. | *Necessita de um time bem entrosado;*Necessita de bons programadores;*Ambiente que facilite a fácil comunicação entre os membros;*Quebra de paradigmas é complicado;*Difícil de gerenciar projetos que precisam de muitas pessoas. |
Tabela II: comparação entre as metodologias.
Conclusão
Resolvemos optar, mesmo não sendo excelentes programadores, pelo método Scrum, pois temos uma boa comunicação, um time pequeno, e visamos a total satisfação de nosso cliente, em um curto período de tempo, visando, também, um software que possa ser facilmente atualizável, e, sem uma extensa documentação.
Etapa 2
Introdução
Vamos apresentar o documento de requisitos do software da veterinária CLIVET. Procuramos seguir passos para uma adequada elaboração dos requisitos necessários para o bom desenvolvimento e funcionamento da aplicação voltada à tal empresa.
Desenvolvimento
Basicamente, dividimos todo o programa de desenvolvimento em 3 etapas, podendo estas, serem subdivididas em outras “n” etapas.
As 3 principais etapas são:
*Desenvolvimento do aplicativo em PHP;
*Integração do mesmo com o banco de dados MySQL;
*Integração da base de dados com o sistema operacional Linux.
Apresentaremos os motivos pelos quais escolhemos tais conjuntos de ferramentas, abaixo.
*PHP mostra uma excelente integração com bases de dados, é muito portável (rodas em inúmeras
diferentes plataformas), e é muito leve, no que diz respeito à necessidade de um hardware / investimento em hardware;
*MySQL é uma ferramenta livre e grátis, e, muito poderosa; tem uma excelente performance para bases de dados pequenas e médias, mantendo um excelente controle e segurança dos dados arquivados; além disso, é bem leve, mais uma vez, contribuindo com o baixo custo do projeto, no que diz respeito ao hardware;
...