Desempenho e Segurança em Sistemas de Informação Profa.: Me. Christiane Zim Zapelini E-mail: christianezapelini@nwk.edu.br
Desempenho e Segurança em Sistemas de Informação Aula 5 Áreas da Engenharia de Software (SWEBOK) Qualidade em Software Histórico Engenharia de Software Características de Qualidade de Software Aula 5 2
Desempenho e Segurança em Sistemas de Informação Lembretes: 2 Bimestre - Datas das provas: 20/março: Aula 7 Prova (30%) Matéria: aulas 1 a 6 COM CONSULTA! 02/abril: Aula 9 - Prova Bimestral 1 (70%) Individual e sem consulta Aula 5 3
Áreas da Engenharia de Software - SWEBOK Pelo SWEBOK (IEEE's Software Engineering Body of Knowledge) a Engenharia de Software é dividida em 10 áreas, a saber: Requisitos de software Design de software Construção de software Teste de software Manutenção de software Gerência de configuração de software Gerência de engenharia de software Processo de engenharia de software Ferramentas e métodos Qualidade de software Aula 5 4
Áreas SWEBOK Requisitos de software: Aquisição, análise, especificação e gestão de requisitos de software Design de software: Transformação de requisitos (de software), tipicamente estabelecidos em termos relevantes ao domínio do problema, em uma descrição explicando como solucionar os aspectos do problema relacionados com software Aula 5 5
Áreas SWEBOK Construção de Software: Construção de programas funcionais e coerentes através da codificação, autovalidação, e teste unitário Teste de Software: Verificação dinâmica do comportamento do programa através do uso de um conjunto finito de casos de teste adequadamente selecionados de um domínio de execuções usualmente infinito - contra o comportamento esperado deste Aula 5 6
Áreas SWEBOK Manutenção de Software: o Atividades de suporte custo-efetivo a um sistema de software, que pode ocorrer antes e após a entrega do software o Após a entrega do software são feitas modificações com o objetivo de corrigir falhas, melhorar seu desempenho ou adaptá-lo a um ambiente modificado o Antes da entrega do software são feitas atividades de planejamento Aula 5 7
Áreas SWEBOK Gerência de Configuração de Software: Identifica a configuração do sistema (características documentadas do hardware e software que o compõem) em pontos discretos no tempo, de modo a controlar sistematicamente suas mudanças e manter sua integridade e rastreabilidade durante o ciclo de vida do sistema Gerência de Engenharia de Software: Gerencia projetos de desenvolvimento de software Aula 5 8
Áreas SWEBOK Processo de Engenharia de Software: Define, implementa, mede, gerencia, modifica e aperfeiçoa o processo de desenvolvimento de software Ferramentas e Métodos: Ferramentas de software automatizam o processo de engenharia de software Métodos impõem estrutura sobre a atividade de desenvolvimento e manutenção de software com o objetivo de torná-la sistemática e mais propensa ao sucesso Aula 5 9
Áreas SWEBOK Qualidade de Software: Conjunto de atividades relacionadas com garantia de qualidade de software, entre estas as atividades de verificação e validação Aula 5 10
Introdução Segundo Pressman, Engenharia de Software é: Engenharia de Software é uma estratégia sistemática, disciplinada e quantificável para a programação Envolve o desenvolvimento, operação e manutenção do software Elementos fundamentais: Métodos Ferramentas Procedimentos Aula 5 11
Introdução Métodos = Técnica Ferramentas = Tecnologia Aula 5 12
HISTÓRICO DA ENGENHARIA DE SOFTWARE Aula 5 13
Histórico Histórico da Engenharia de Software Década de 50 Engenharia de software não existia como a conhecemos hoje e era tratada como Engenharia de Hardware Aula 5 14
Histórico Década de 60 Distância da engenharia de hardware Conferência OTAN (Europa) em 1968 Conference on Software Engineering Uso de linguagens de programação: FORTRAN e COBOL Aula 5 15
Histórico Década de 70 Foi a década do surgimento de métodos formais para o processo de desenvolvimento de software Modelo em Cascata Crise de Software Aula 5 16
Histórico Modelo em Cascata ou Waterfall Fonte:Profa. Dra. Cecíclia M.F. Rubira Aula 5 17
Histórico Fonte:Profa. Dra. Cecíclia M.F. Rubira Aula 5 18
Histórico Década de 80 A utilização de modelos orientados a objetos começaram a ser utilizados como ferramenta para a reutilização de código Surgiu também o conceito de Fábrica de Software visando agregar reuso, performance e qualidade ao desenvolvimento de software, tornando o mesmo um processo formal dentro da fábrica Em 1988 surge o modelo em espiral Aula 5 19
Fonte:Profa. Dra. Cecíclia M.F. Rubira Histórico Modelo em Espiral Aula 5 20
Histórico Década de 90 O surgimento da Internet torna distribuição uma característica comum aos sistemas de informação Surge também o modelo Open Source e Free de desenvolvimento É consolidado o modelo orientado a objetos (OO) e uma série de padrões de projetos são criados para o desenvolvimento OO A Rational cria o RUP (Rational Unified Process) baseado no modelo em espiral A UML (Unified Modeling Language) surge como linguagem de modelagem mais utilizada no desenvolvimento de software Aula 5 21
Histórico Fonte:Profa. Dra. Cecíclia M.F. Rubira Aula 5 22
Histórico Século XXI A partir do ano 2000, surgem novos modelos que começam a ser utilizados na engenharia de software, tais como: Orientação a aspectos, Métodos ágeis para desenvolvimento como: XP SCRUM CRYSTAL... Aula 5 23
Bibliografia Wikipédia Material Profa. Dra. Cecília M. F. Rubira - UNICAMP/IC Material Profa. Dra. Eliane Martins - UNICAMP/IC Pressman, R.S. Software Engineering, A Practicioners Approach, McGraw- Hill. SWEBOK Aula 5 24