Qualidade é:
- atender aos requisitos do cliente
- antecipa os desejos do cliente
- escrever tudo o que se deve fazer e fazer tudo que foi escrito
Definição de qualidade segundo alguns autores:
- a) qualidade intrínseca do produto ou serviço: presença ou ausência de critérios específicos;
- b) custo: é o preço justo que o cliente está disposto a pagar;
- c) atendimento: quantidade certa, no local e hora certa;
Definição segundo a ISO:
… a totalidade das características de uma entidade que lhe confere a capacidade de satisfazer às necessidades explicitas e implícitas
entidade é o softwarenecessidade explicita: tudo que o usuário consegue perceber em relação ao softwarenecessidade implícita: é tudo que somente os desenvolvedores conseguem perceberApesar do software ser um produto de um processo intelectual, assim como um livro ou um quadro, o software não pode ser totalmente criado com as vontades do seu criador, diferente das obras de arte por exemplo. Considerações
- software é um produto complexo, até mais do que o hardware
- não tem produção em série e o seu custo está no projeto e desenvolvimento
- não se desgasta
- a engenharia de software ainda não está madura o suficiente
ConclusãoNão tem como modelar um software de qualidade sem um processo de qualidade também.Para que o software tenha qualidade, é necessário que o modelo de negócio também seja de qualidade.
Construção de Software (Vídeo 2)
Projeto é construir um produto, dentro de determinadas especificações, que atenda as necessidades dos usuários para que executem processos operacionais e gerenciais de negócios.
Projeto = (objetivos + atividades + prazos + recursos envolvidos + riscos e incertezas)
Características de um projeto de software:
- esforço finito, no seu termino pretende-se a entrega
- um esforço que pode ser subdividido (fases, etapas, atividades)
- objetivo, recursos e progresso podem ser monitorados e avaliados
Todo projeto tem três partes básicas:
- Planejamento
- elaborar escopo
- elaborar estimativas de prazo, recursos, esforço, custo, tamanho
- definir o processo de desenvolvimento
- Controle (execução)
- controle da alocação de recursos
- verificação e validação de produtos intermediário
- controle de mudança de escopo
- refinamento e replanejamento
- acompanhamento das tarefas e orçamento conforme cronograma
- Monitoramento
- verificar o progresso
- verificar e avaliar a qualidade
- verificar e avaliar produtividade
- verificar e avaliar financeiro
Processo de software
Conjunto de atividades em sequencia, métodos e práticas utilizadas na produção e evolução do software.
- definir politicas de desenvolvimento (ex. só se desenvolve para web ou para mobile)
- procedimentos para o desenvolvimento
- diversas técnicas e padrões para construção de produtos
- padrões de apresentação de produtos intermediários
Produto de software
É o resultado da execução de um processo que contém uma série de atributos derivados dos requisitos e especificações previstos no projeto.Sofre alterações caracterizadas como:
- manutenções corretivas, adaptativas
- melhorias