Beruflich Dokumente
Kultur Dokumente
S9 Informtica12/09/08
Computadorizao: Projetos
Necessidades Projeto de Hardware
Anlise de Sistemas
Projeto de Software
Integrao
Projeto Administrativo
S9 Informtica12/09/08 Introduo Engenharia de Software
Sistema Computadorizado
2
Engenharia de Software
Disciplina que se ocupa de todos os aspectos da produo de software, desde a especificao at a manuteno (Sommerville, 2001) Criao e utilizao de slidos princpios de engenharia a fim de obter software de maneira econmica, que seja confivel e que trabalhe eficientemente em mquinas reais (Pressman, 2001) Aplicao de abordagem sistemtica, disciplinada e quantificvel, para o desenvolvimento, operao e manuteno de software (IEEE, 1993)
Introduo Engenharia de Software 3
S9 Informtica12/09/08
Sistemas de Informao
Sistemas Computadorizados
Sistemas de Software
Ambiente Sistmico
S9 Informtica12/09/08 Introduo Engenharia de Software 4
Desempenho (ponto de vista do usurio) Eficincia (ponto de vista do sistema) Segurana Robustez Facilidade de manuteno Confivel Ergonomia (facilidade de uso)
Introduo Engenharia de Software 5
S9 Informtica12/09/08
Desenvolvimento de Software
Iterativo Interativo Incremental Tcnicas para: Abordar o domnio da Aplicao Abstrair o modelo conceitual e criar sua representao Efetuar transformaes entre representaes at obter o produto final
S9 Informtica12/09/08 Introduo Engenharia de Software 6
Processo de Software
Estrutura a partir da qual um plano de desenvolvimento de software pode ser desenvolvido Deve contemplar atividades de especificao, desenvolvimento, validao e manuteno do software
S9 Informtica12/09/08
Gerenciamento da complexidade Comunicao entre os envolvidos Reduo dos custos de desenvolvimento Predio do comportamento futuro do sistema
S9 Informtica12/09/08
Atividades de Apoio
S9 Informtica12/09/08
Modelo: representao abstrata que permite descrever e/ou prever comportamentos especficos de um sistema, por meio do estudo de um nmero reduzido de caractersticas relevantes do sistema (Maffeo, 1992) Em geral, modelos so construdos por meio de tcnicas que se utilizam de notaes grficas e textuais
S9 Informtica12/09/08
10
Modelo Clssico ou Cascata Modelo Evolucionrio (Espiral, Incremental etc.) Modelo de Prototipagem Mtodos Formais Desenvolvimento baseado em componentes
S9 Informtica12/09/08
11
Manuteno
Modelo Clssico/Cascata
Anlise e Engenharia de Sistema Anlise e Especificao de Requisitos do Software
Projeto do Software
Codificao
Testes
Processo Unificado
S9 Informtica12/09/08
14
Abordagens/paradigmas Populares
(Paradigma: Modelo; Padro; Molde; Figurino. Estrutura (modelo bsico) para Abstrao do mundo real)
S9 Informtica12/09/08 Introduo Engenharia de Software 15
Objetivo Tcnicas e Ferramentas Atividades Responsabilidades (gerenciamento, execuo, apoio, aprovao) Artefatos/Produtos Finais (resultados / documentao do projeto) Marcos/Pontos de Controle (com % de avano) Padres de Qualidade Check List
Introduo Engenharia de Software 16
S9 Informtica12/09/08
Tcnicas
Diagramas de Fluxos de Dados (DFD) Diagramas Entidade-Relacionamento (DER) Diagramas de Estrutura Casos de Uso Diagramas de Classes Diagramas de Estados Etc.
S9 Informtica12/09/08
17
Artefatos
Resultados em forma de produtos liberados durante o desenvolvimento e que comporo a documentao de projeto e a de utilizao do software Exemplos: planos, contratos, modelos, especificaes, cdigo, manuais etc.
S9 Informtica12/09/08
18
Marcos
Eventos que podem indicar o status de um projeto de desenvolvimento de software e permitem realizar o controle do processo
S9 Informtica12/09/08
19
Atividades
Um pequeno nmero so comuns a todos os projetos noutras: tarefas, pontos de avaliao, artefatos liberados, aspectos de garantia de qualidade, etc. so adaptveis a projetos especficos as atividades de apoio, tais como:
Ferramentas
S9 Informtica12/09/08
21
Projeto (extenso) e Produto (tamanho) Cliente (caractersticas) Processo (definio) Ambiente de desenvolvimento Tecnologia para construo do produto Equipe (tamanho e experincia)
S9 Informtica12/09/08
22
Balas de Pratas
... No horizonte prximo no h balas de pratas que por si s prometam melhora de uma ordem de magnitude em produtividade, confiabilidade ou simplicidade. Fred Brooks, no Silver Bullet, IEEE Computer, abril de 1987
S9 Informtica12/09/08 Introduo Engenharia de Software 23
Balas de Pratas
Melhores Linguagens de programao Melhores Profissionais Ferramentas automatizadas Jad (Joint application Development) Rad (Rapid application Development) Prototipao Tcnicas Estruturadas
Introduo Engenharia de Software 24
S9 Informtica12/09/08
Orientao a Objeto Reutilizao de Software Redesenvolvimento de Software Melhoria do processo de software Mtricas
S9 Informtica12/09/08
25