ENGENHARIA DE SOFTWARE José Manuel de Sacadura Rocha jsacadura@ultrarapida.com.br http://unigalera.vila.bol.com.br
O que é um Sistema? É uma série integrada de partes com uma meta claramente definida. Carro: É um sistema cuja meta/objetivo é fornecer transporte. Todavia, as partes do sistema são interdependentes. http://unigalera.vila.bol.com.br
Sistemas Conjunto de processos, relacionados e coordenados de forma a produzirem um bem (produto ou serviço); Processo: conjunto de atividades, coordenadas entre si, e que formam uma estrutura organizada; Sistemas Automatizados Software Hardware Usuários SISTEMA Procedimentos Dados http://unigalera.vila.bol.com.br
Visão de Gestão de Sistemas Conjunto de entidades interrelacionadas que, através de instruções e procedimentos (processos) numa seqüência lógica definida, produzem resultados, utilizando determinados recursos (hardware, software, tecnologia de comunicação, depósitos de dados e RH). Sistemas apresentam características específicas comuns, tais como objetivo, totalidade, tendência à deteriorização, adaptabilidade ao meio e reciprocidade funcional. http://unigalera.vila.bol.com.br
Crise de Software Problemas Crise de Tecnologia - hardware caminha mais rápido que os sistemas e que o próprio software. Crise de Oferta - demanda é maior que a capacidade de desenvolvimento de novos sistemas e softwares. Crise de manutenção - mau projetado - principalmente nas fases iniciais - e recursos escassos não permitem permanente atualização. Problemas Por que os sistemas não ficam prontos rapidamente ? Por que os custos de desenvolvimento são altos ? Por que erros não são detectados ? Por que é difícil medir o progresso durante o desenvolvimento ? http://unigalera.vila.bol.com.br
Softwares não desgastam! Hardwares sim! Desgaste Taxa de falhas (hardware) Tempo http://unigalera.vila.bol.com.br
Ciclo de Vida de Software Softwares deterioram!! http://unigalera.vila.bol.com.br
Engenharia de Software Estabelece o uso de princípios sólidos de gestão, com o intuito de obter , economicamente, softwares que sejam confiáveis e funcionem eficientemente em ambientes reais. Métodos Ferramentas Produtividade Pessoas http://unigalera.vila.bol.com.br
Componentes de Desenvolvimento de Softwares Enfoque de Engenharia Recursos Humanos Tecnologia Enfoque de Gestão Processos http://unigalera.vila.bol.com.br
Ciclo de Desenvolvimento de Softwares Modelo de Cascata http://unigalera.vila.bol.com.br
Modelo da interface de usuário (em papel ou tela) Prototipação Modelo da interface de usuário (em papel ou tela) Implementação de algoritmos Implementação de parte das funções http://unigalera.vila.bol.com.br
Modelo Espiral Levantamento/Planejamento Análise e Projeto dos riscos Análise do cliente Codificação/Prototipação Coleta inicial dos requisitos e planejamento do projeto Planejamento baseado nos comentários do cliente Avaliação do cliente Análise dos riscos baseada nos requisitos iniciais baseada na reação do Decisão de prosseguir/ não prosseguir Protótipo de sistema inicial Protótipo no nível seguinte Desenho Lógico http://unigalera.vila.bol.com.br