Engenharia de software

Preview:

DESCRIPTION

Introdução Engenharia de Software - baseado no livro Engenharia de Software by Sommerville

Citation preview

Introdução

Engenharia de software

João Johanes

Introdução

Engenharia de Software é ramo da engenharia cujo o foco é desenvolvimento dentro de custos adequados de sistemas de software de alta qualidade...

... Sommerville

Introdução

Software é abstrato e intagível

Não é limitado por materiais ou controlado por leis da física ou por processo de manufatura. De certo modo já simplifica a engenharia de software.

O que é Software?

Software não é apenas um programa, mas também todos os dados de documentação e configuração associados, necessários para que o programa opere corretamente.

O que é Software?

Um sistema de software consiste, geralmente, de conjunto de programas separados; arquivos de configuração, que são utilizados para configurar esses programas; documentação do sistema, que descreve a estrutura do sistema; a documentação do usuário, que explica como usuário deve usar software;

Tipos de software

Existem dois tipos de software:

• Produtos genéricos

• Produtos sob encomenda

Tipos de software

Produtos genéricos

São sistemas stand-alone, produzidos por uma organização de desenvolvimento e vendidos no mercado para qualquer cliente disposto a comprá-los.

Tipos de software

Produtos sob encomenda

São sistemas encomendados por um determinado cliente. O Software é desenvolvido especialmente para aquele cliente por uma empresa de software.

O que é Engenharia de Software?

Engenharia de software é uma disciplina de engenharia relacionada com todos os aspectos da produção de software, desde os estagios iniciais de especificação até manutenção, depois que entrar em operação;

O que é Engenharia de Software?

Disciplinas de engenharia: Os engenheiros fazem as coisas funcionarem. Eles aplicam teorias, métodos e ferramentas onde for apropriado mas eles usam de forma seletiva e sempre procuram descobrir soluções para os problemas.

O que é Engenharia de Software?

Todos os apectos da produção de software: A engenharia de software não esta relacionada apenas com os processos técnicos de desenvolvimento de software, mas também com atividades como o gerenciamento de projeto de software e o desenvolvimento de ferramentas , métodos e teorias que apóiem a produção de software;

O que é Processo de Software?

Um processo de software é conjunto de atividades e resultados associados que produz um produto de software.

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Especificação de software: clientes e engenheiros definem o software a ser produzido e as restrições para a sua operação.

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Especificação de software:

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Desevolvimento de software: O software é projeto e programado.

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Desevolvimento de software:

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Validação de software: Na qual o software é verificado para garantir que é o que o cliente deseja.

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Validação de software:

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Evolução de software: Na qual o software é verificado para garantir que é o que o cliente deseja.

O que é Processo de Software?

Existem quatros atividades fundamentais de processo:

• Evolução de software: Na qual o software é verificado para garantir que é o que o cliente deseja.

O que é um Modelo de Processo de Software?

Um modelo de processo de software é uma descrição simplificada desse processo de software que apresenta uma visão dele.

O que é um Modelo de Processo de Software?

Modelo de processo incluem atividades, que fazem parte do processo de software, os produtos de software, os papéis das pessoas envolvidas na engenharia de software.

Tipos de Modelo de Processo de Software

Um modelo de workflow: mostra a sequência de atividades ao longo do processo, com suas atividades , com suas entradas, saídas e depedência entre elas.

Tipos de Modelo de Processo de Software

modelo de workflow:

Tipos de Modelo de Processo de Software

Um modelo de fluxo de dados: representa o processo como um conjunto de atividades, no qual cada atividade realiza alguma transformação de dados.

Tipos de Modelo de Processo de Software

modelo de fluxo de dados:

Tipos de Modelo de Processo de Software

Um modelo de papel: representa os papéis das pessoas envolvidas no processo de software e as atividades pelas quais são responsáveis.

Três tipos de Modelos gerais ou paradigmas de desenvolvimento de software

O modelo em cascata: considera as atividades apresentadas anteriormente e as representa como fases separadas de processo, como especificação de requisitos, projeto de software, implementação, teste e assim por diante;

Três tipos de Modelos gerais ou paradigmas de desenvolvimento de software

Desenvolvimento iterativo: esta abordagem intercala as atividades de especificação, desenvolvimento e validação;

Três tipos de Modelos gerais ou paradigmas de desenvolvimento de software

Desenvolvimento iterativo:

Três tipos de Modelos gerais ou paradigmas de desenvolvimento de software

Baseado em componentes (CBSE – Component Based Software Engineering): esta técnica supõe que as partes do sistema já existam. O processo de desenvolvimento concentra-se em integrar essas partes.

O que é CASE?

Computer-Aided Software Engineering – CASE é conjunto de ferramentas para apoiar atividades do processo de software, tais como análise de requisitos, modelagem de sistema, depuração e teste.

O que é CASE?

Computer-Aided Software Engineering – CASE

Engenharia de Software

Introdução

FIM@

Recommended