Engenharia de Software e Sistemas de Informação

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento de Sistemas
Advertisements

Gerenciamento de Projetos
A estrutura do gerenciamento de projetos Introdução
Ciclo de vida e organização do projeto
Objetivos do Capítulo Utilizar o processo de desenvolvimento de sistemas delineado neste capítulo e o modelo de componentes de SI, do Capítulo 1, como.
7130 – Adminstração de Sistemas de Informação
ISO Processos do Ciclo de Vida do Software
Gerência de Projetos Wesley Peron Seno Introdução
GERENCIAMENTO DE INTEGRAÇÃO DO PROJETO
Engenharia de Software
Processo Lacen de Desenvolvimento de Software
Centrado na arquitetura
INTRODUÇÃO A INFORMÁTICA
Mitos e Problemas Relacionados ao Software
CK 119: Engenharia de Software DC/CC/UFC © Rossana Andrade, Setembro CK119: Engenharia de Software Rossana Andrade Ph.D, SITE, University of Ottawa,
Área: Engenharia de Software e Sistemas de Informação
Qualidade de Software Aula 2
SISTEMA DE INFORMAÇÕES DESENVOLVIMENTO DE SISTEMAS
Análise e Projeto de Sistemas
Implementação de Sistemas
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Como Desenvolver Sistemas de Informação
TSDD Teste de segurança durante o desenvolvimento.
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Metodologia Versão 2 FSRS.
Engenharia de Software
Engenharia de Software
Configuração de manutenção
Gerência de Configuração de Software
Gerenciamento de Implantação
Engenharia de Software
Modelos de Maturidade de Processos de Software
Projeto: Capacitação em GP
Gestão de Projetos Ms. Karine R. de Souza
Metolodogia de Desenvolvimento de Data Warehouse
IFSul – Campus Venâncio Aires
Análise de problemas Capacidade de pensamento crítico
Qualidade de Software Aula 2 / 2014/1
Análise e Projeto de Sistemas
Prof. Alexandre Vasconcelos
Modelos de Maturidade de Processos de Software
Gerência de Configuração - GC
Processo de Aquisição Adilson de Almeida Cezar Meriguetti
O Processo de desenvolvimento de software
Melhoria do processo de software brasileiro
Teste de Software Conceitos iniciais.
ISO Processos do Ciclo de Vida do Software
Qualidade de Software Aula 4
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
Gestão de defeitos.
Engenharia de Software
AVALIAÇÃO DE PROCESSOS
Integração.
ICMC – USP Coordenadores: Prof. Dr. José Carlos Maldonado Profa. Dra. Elisa Yumi Nakagawa 20/05/2011.
Engenharia de Software
Engenharia de Software
Engenharia de Software
 São métodos formais de tornar disponíveis para a administração, quando oportuno, as informações necessárias para facilitar o processo de tomada de decisão.
Engenharia de Software
Gerenciamento de Configuração de Software
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
Apresentação Leonardo Brussolo de Paula
Lenylda Albuquerque ISO Processos de Ciclo de Vida de Software Universidade Federal de Pernambuco.
Programa criado em Apoio ao programa: Ministério da Ciência e Tecnologia da Finep Banco Interamericano de Desenvolvimento Universidades e Governo.
Introdução – ISO Conceitos relacionados a Norma NBR ISO/IEC 12207; Procedimentos de ciclo de vida e desenvolvimento de software; Objetivos e a estrutura.
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
Engenharia de Software Conceitos e elementos 1. Engenharia   Resolução de problemas através de soluções economicamente viáveis  Motivacão: Limitação.
CMMI Capability Maturity Model Integration
ROTEIRO PARA ELABORAÇÃO DE SISTEMA ESTRUTURADO
Transcrição da apresentação:

Engenharia de Software e Sistemas de Informação Laboratório de Engenharia de Software 2008

Conteúdo Visão geral da área de pesquisa Relação da área com os cursos de Computação do ICMC. O Profissional que atua em engenharia de software Projetos em andamento Oportunidades de Iniciação Científica. Contatos

O Veículo Espacial ARIANE 5 Em 1996, o veículo espacial Ariane 5 saiu do curso e explodiu segundos após o seu lançamento. Levou uma década de desenvolvimento e custou 7 bilhões de dólares para a Agência Espacial Européia. Causa do acidente: reutilização de componentes do veículo Ariane 4.

O Veículo Espacial ARIANE 5 Motivo da falha: Erro de software no cálculo da velocidade horizontal do foguete. A variável que armazenava este valor tinha 64 bits (floating point) e foi erroneamente modificada para 16 bits (signed integer). O valor era maior que 32.767 (maior inteiro), gerando uma falha de conversão!!!

Um Sistema Baseado em Computador (SBC) é um dos subsistemas do sistema empresa. Qual é a finalidade de um SBC?

Sistema Baseado em Computador Conjunto de elementos organizados para executar certo método, procedimento ou controle ao processar informações.

Quais são os elementos de um SBC?

Elementos de um Sistema Baseado em Computador Entrada Saída Documentos Procedimento Hardware Software Pessoas Banco de dados

Elementos de um Sistema Baseado em Computador Procedimento Dispositivos eletrônicos e eletromecânicos. Documentos Hardware Entrada Saída Sistema Banco de dados Software Pessoas

Elementos de um Sistema Baseado em Computador Procedimento Documentos Hardware Entrada Saída Seqüência de passos que definem o uso específico de cada elemento do sistema ou o contexto em que o sistema reside. Sistema Banco de dados Software Pessoas

Elementos de um Sistema Baseado em Computador Procedimento Documentos Hardware Entrada Saída Sistema Manuais, formulários e outras informações descritivas que retratam o uso e/ou a operação do sistema. Banco de dados Software Pessoas

Elementos de um Sistema Baseado em Computador Coleção organizada de dados a que se tem acesso pelo software. Procedimento Documentos Hardware Entrada Saída Sistema Banco de dados Software Pessoas

Elementos de um Sistema Baseado em Computador Procedimento Usuários, interessados e operadores de hardware e software. Documentos Hardware Entrada Saída Sistema Banco de dados Software Pessoas

Elementos de um Sistema Baseado em Computador Programas de computador, estruturas de dados e documentação correlata que servem para efetivar o método, processo ou controle lógico necessário. Procedimento Documentos Hardware Entrada Saída Sistema Banco de dados Software Pessoas

Aplicações de Software Software Básico Coleção de programas escritos para dar apoio a outros programas. Software de Tempo Real Monitora, analisa e controla eventos do mundo real à medida que estes ocorrem. Software Comercial Sistemas de operações comerciais e tomadas de decisão administrativas.

Aplicações de Software Software Científico e de Engenharia Caracterizado por algoritmos de processamento de números. Software Embutido Usado para controlar produtos e sistemas para os mercados industriais e de consumo. Software de Computador Pessoal Envolve processamento de textos, planilhas eletrônicas, aplicações gráficas, diversões, etc.

Aplicações de Software Software para Web Páginas da Web recuperadas por um browser, incorporando instruções executáveis e dados. Software para Inteligência Artificial Faz uso de algoritmos não numéricos para resolver problemas que não são passíveis de computação ou análise direta. Sistemas especialistas, de reconhecimento de padrões, de redes neurais, etc.

Pode-se dizer que o software vai sofrendo um desgaste com o tempo, como o hardware?

Características do Software Desenvolvido ou projetado por engenharia, não manufaturado no sentido clássico. A maioria é feita sob medida em vez de ser montada a partir de componentes existentes. Não se desgasta mas se deteriora.

Características do Software tempo “desgaste” “mortalidade infantil” índice de falhas CURVA DE FALHAS DO HARDWARE

Características do Software índice de falhas mudança curva real curva idealizada tempo CURVA DE FALHAS DO SOFTWARE

Evolução do Software (1950 - 1965) O hardware sofreu contínuas mudanças. O software era uma arte "secundária" para a qual havia poucos métodos sistemáticos. O hardware era de propósito geral. O software era específico para cada aplicação. Não havia documentação.

Evolução do Software (1965 - 1975) Multiprogramação e sistemas multiusuários. Técnicas interativas. Sistemas de tempo real. 1a geração de SGBD’s. Produto de software - software houses. Bibliotecas de software.

Evolução do Software ..... CRISE DE SOFTWARE (1965 - 1975) Crescimento do número de sistemas baseados em computador. Manutenção quase impossível. ..... CRISE DE SOFTWARE

Evolução do Software (1975 - hoje) Sistemas distribuídos. Redes locais e globais. Uso generalizado de microprocessadores - produtos inteligentes. Hardware de baixo custo. Impacto de consumo.

Evolução do Software (Quarta era do software de computador) Tecnologias orientadas a objetos. Sistemas especialistas e software de inteligência artificial usados na prática. Software de rede neural artificial. Computação paralela.

Por que surgiu a Engenharia de Software?

Evolução do Software AFLIÇÃO CRÔNICA Crise de Software (1965 - 1975) Crescimento do número de sistemas baseados em computador. Manutenção quase impossível. AFLIÇÃO CRÔNICA Crise de Software refere-se a um conjunto de problemas encontrados no desenvolvimento de software. ..... CRISE DE SOFTWARE

Crise de Software As estimativas de prazo e de custo freqüentemente são imprecisas. Freqüente insatisfação do cliente com o sistema concluído A qualidade do software é, em geral, menos que adequada. O software existente é muito difícil de manter. Falhas das pessoas responsáveis pelo desenvolvimento de software.

Resposta à Crise de Software Engenharia de Software A aplicação de uma abordagem sistemática, disciplinada e possível de ser medida para o desenvolvimento, operação e manutenção do software (IEEE)

O Produto Software O produto software tem uma natureza um pouco diferente dos “produtos tradicionais”: O software é abstrato é a expressão – traduzida em instruções para computadores – da solução desenvolvida por um ser humano (ou vários!) para um problema pode ser tão simples quanto calcular o total de uma lista de compras, ou tão complexo quanto calcular a fatura de um telefone celular.

Assim, é preciso .... compreender bem o problema do cliente desenvolver uma solução garantir que ela funcione transformar a solução em um software entregar o software ao cliente no custo e prazo combinados oferecer treinamento aos usuários realizar alterações quando o cliente pedir manter o controle da versão do software que cada cliente possui e tudo enquanto negocia preços e prazos, paga o salário dos funcionários, capacita os funcionários se mantém atualizado com o mercado tecnológico e ainda busca maneiras de fazer tudo isso cada vez melhor, mais rápido e mais barato do que a concorrência.

Assim, é preciso .... Parece não ser simples E não é! compreender bem o problema do cliente desenvolver uma solução garantir que ela funcione transformar a solução em um software entregar o software ao cliente no custo e prazo combinados oferecer treinamento aos usuários realizar alterações quando o cliente pedir manter o controle da versão do software que cada cliente possui e tudo enquanto negocia preços e prazos, paga o salário dos funcionários, capacita os funcionários se mantém atualizado com o mercado tecnológico e ainda busca maneiras de fazer tudo isso cada vez melhor, mais rápido e mais barato do que a concorrência. Parece não ser simples E não é!

Resposta à Crise de Software Pode ser orientada pela Norma Internacional ISO/IEC 12207 Engenharia de Software A aplicação de uma abordagem sistemática, disciplinada e possível de ser medida para o desenvolvimento, operação e manutenção do software (IEEE)

Norma Internacional ISO/IEC 12207 utilizada em muitos países, inclusive no Brasil, para alcançar um diferencial competitivo na produção de software abrange desde a concepção até a descontinuidade do software.

Norma Internacional ISO/IEC 12207 a norma apresenta “o quê” deve ser feito para que se alcance a qualidade a norma não apresenta “como fazer”, ficando essa parte a cargo do interessado na sua implantação.

Processos de Ciclo de Vida de Software Na Norma ISO/IEC 12207, os processos são agrupados em três classes, que representam a sua natureza. Processos Fundamentais Processos de Apoio Processos Organizacionais

Processos de Ciclo de Vida de Software Processos Organizacionais Processos Organizacionais Processos Processos Fundamentais Fundamentais Gerência Gerência Aquisição Aquisição Fornecimento Fornecimento Melhoria Melhoria Garantia da Qualidade Processos de Apoio Controle da Configuração Recursos e Infraestrutura Recursos e Infraestrutura Desenvolvimento Desenvolvimento Operação Operação Reuso Reuso Processos de Apoio Controle da Configuração Garantia da Qualidade

Processos de Ciclo de Vida de Software Papéis Envolvidos Adquirente: organização que adquire um sistema ou produto de software Fornecedor: organização que fornece o produto de software ao adquirente Desenvolvedor: organização que define e desenvolve o produto de software Processos Processos Fundamentais Fundamentais Aquisição Aquisição Fornecimento Fornecimento Desenvolvimento Desenvolvimento Operação Operação

Processos de Ciclo de Vida de Software Processos de Desenvolvimento Orientam a organização que assumir o papel de desenvolvedor Processos Processos Fundamentais Fundamentais Aquisição Aquisição Fornecimento Fornecimento Desenvolvimento Desenvolvimento Operação Operação

PROCESSOS DE DESENVOLVIMENTO Norma ISO 12207 PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos de Operação Orientam a organização na fase pós entrega Processos Processos Fundamentais Fundamentais Aquisição Aquisição Fornecimento Fornecimento Desenvolvimento Desenvolvimento Operação Operação

PROCESSOS DE DESENVOLVIMENTO Norma ISO 12207 PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Fundamentais Fundamentais Processos de Aquisição Orientam a organização que assumir o papel de comprador Aquisição Aquisição Fornecimento Fornecimento Desenvolvimento Desenvolvimento Operação Operação

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos de Fornecimento Orientam a organização que assumir o papel de fornecedor Processos Processos Fundamentais Fundamentais Aquisição Aquisição Fornecimento Fornecimento Desenvolvimento Desenvolvimento Operação Operação

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE FORNECIMENTO Proposta do Fornecedor Liberação do Produto Apoio a Aceitação do Produto PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos Organizacionais Processos Organizacionais Processos Processos Fundamentais Fundamentais Gerência Gerência Aquisição Aquisição Fornecimento Fornecimento Melhoria Melhoria Recursos e Infraestrutura Desenvolvimento Desenvolvimento Operação Operação Reuso Reuso Processos de Apoio Controle da Configuração Garantia da Qualidade

Processos de Ciclo de Vida de Software Processos de Apoio Auxiliam e contribuem para o sucesso e qualidade de quaisquer outros processos nos vários pontos do ciclo de vida do software Processos de Apoio Controle da Configuração Garantia da Qualidade

Processos de Ciclo de Vida de Software Processos de Controle da Configuração Desenvolvimento de software  sucessivas mudanças  produto evolua para o seu estado final. Se as mudanças não são controladas o caos é praticamente inevitável. Os processos de controle da configuração têm o objetivo de orientar a organização a evitar esse caos. Processos de Apoio Controle da Configuração Garantia da Qualidade

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE FORNECIMENTO Proposta do Fornecedor Liberação do Produto Apoio a Aceitação do Produto PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE CONTROLE DA CONFIGURAÇÃO Documentação Gerenciamento da Configuração Gerenciamento da resolução de problemas Gerenciamento dos Pedidos de Alteração PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos de Garantia de Qualidade Mudanças inerentes à produção de software  medidas para garantir a qualidade dos produtos e serviços Os processos de garantia de qualidade  orientam a organização fornecedora para garantir que o produto seja construído corretamente (com o mínimo de erros possível) e que o produto correto seja construído (esteja em conformidade com as necessidades do cliente). Processos de Apoio Controle da Configuração Garantia da Qualidade

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE FORNECIMENTO Proposta do Fornecedor Liberação do Produto Apoio a Aceitação do Produto PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE GARANTIA DE QUALIDADE Garantia da Qualidade Verificação Validação Revisão Conjunta Auditoria Avaliação do produto PROCESSOS DE CONTROLE DA CONFIGURAÇÃO Documentação Gerenciamento da Configuração Gerenciamento da resolução de problemas Gerenciamento dos Pedidos de Alteração PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos Organizacionais Processos Organizacionais Processos Processos Fundamentais Fundamentais Gerência Gerência Aquisição Aquisição Fornecimento Fornecimento Melhoria Melhoria Recursos e Infraestrutura Recursos e Infraestrutura Desenvolvimento Desenvolvimento Operação Operação Reuso Reuso Processos Processos de de Apoio Apoio Controle da Configuração Controle da Configuração Garantia Garantia da da Qualidade Qualidade

Processos de Ciclo de Vida de Software Processos Organizacionais Processos Organizacionais Processos de Gerência orientam a organização a definir atividades genéricas que podem ser empregadas quando houver a necessidade de gerenciar algum processo. Gerência Gerência Melhoria Melhoria Recursos e Infraestrutura Recursos e Infraestrutura Reuso Reuso

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE GERÊNCIA Alinhamento Organizacional Gerenciamento da Organização Gerenciamento do projeto Gerenciamento da Qualidade Gerenciamento de Risco Medições PROCESSOS DE FORNECIMENTO Proposta do Fornecedor Liberação do Produto Apoio a Aceitação do Produto PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE GARANTIA DE QUALIDADE Garantia da Qualidade Verificação Validação Revisão Conjunta Auditoria Avaliação do produto PROCESSOS DE CONTROLE DA CONFIGURAÇÃO Documentação Gerenciamento da Configuração Gerenciamento da resolução de problemas Gerenciamento dos Pedidos de Alteração PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos Organizacionais Processos Organizacionais Processos de Recursos e Infraestrutura Para que todos os processos e atividades sejam executados com sucesso é preciso que exista recursos e infraestrutura adequada. Gerência Gerência Melhoria Melhoria Recursos e Infraestrutura Recursos e Infraestrutura Reuso Reuso

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE GERÊNCIA Alinhamento Organizacional Gerenciamento da Organização Gerenciamento do projeto Gerenciamento da Qualidade Gerenciamento de Risco Medições PROCESSOS DE FORNECIMENTO Proposta do Fornecedor Liberação do Produto Apoio a Aceitação do Produto PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE RECURSOS E INFRAESTRUTURA Gerenciamento de Recursos Humanos Treinamento Gerenciamento do Conhecimento Infraestrutura PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE GARANTIA DE QUALIDADE Garantia da Qualidade Verificação Validação Revisão Conjunta Auditoria Avaliação do produto PROCESSOS DE CONTROLE DA CONFIGURAÇÃO Documentação Gerenciamento da Configuração Gerenciamento da resolução de problemas Gerenciamento dos Pedidos de Alteração PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos Organizacionais Processos Organizacionais Processos de Reuso Muitas funcionalidades são comuns a vários projetos É desejável que ao término de um projeto os componentes tenham sido desenvolvidos de uma forma que possam ser reutilizados em outros. O reuso de partes de software pode não ser tão trivial quanto aparenta ser Gerência Gerência Melhoria Melhoria Recursos e Infraestrutura Recursos e Infraestrutura Reuso Reuso

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE GERÊNCIA Alinhamento Organizacional Gerenciamento da Organização Gerenciamento do projeto Gerenciamento da Qualidade Gerenciamento de Risco Medições PROCESSOS DE FORNECIMENTO Proposta do Fornecedor Liberação do Produto Apoio a Aceitação do Produto PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE RECURSOS E INFRAESTRUTURA Gerenciamento de Recursos Humanos Treinamento Gerenciamento do Conhecimento Infraestrutura PROCESSOS DE REUSO Gerencia dos Ativos Gerencia do Programa de Reuso Engenharia de Domínio PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE GARANTIA DE QUALIDADE Garantia da Qualidade Verificação Validação Revisão Conjunta Auditoria Avaliação do produto PROCESSOS DE CONTROLE DA CONFIGURAÇÃO Documentação Gerenciamento da Configuração Gerenciamento da resolução de problemas Gerenciamento dos Pedidos de Alteração PROCESSOS DE APOIO

Processos de Ciclo de Vida de Software Processos Organizacionais Processos Organizacionais Processos de Melhoria Após o estabelecimento do processo dificilmente ele será o melhor possível. Sempre haverá melhorias a serem feitas. São previstos processos de melhoria de processo baseados em ciclos de melhoria Gerência Gerência Melhoria Melhoria Recursos e Infraestrutura Recursos e Infraestrutura Reuso Reuso

Norma ISO 12207 PROCESSOS FUNDAMENTAIS PROCESSOS ORGANIZACIONAIS PROCESSOS DE AQUISIÇÃO Preparação da Aquisição Seleção do Fornecedor Contrato Monitoramento do Fornecedor Aceitação do Cliente Norma ISO 12207 PROCESSOS DE GERÊNCIA Alinhamento Organizacional Gerenciamento da Organização Gerenciamento do projeto Gerenciamento da Qualidade Gerenciamento de Risco Medições PROCESSOS DE FORNECIMENTO Proposta do Fornecedor Liberação do Produto Apoio a Aceitação do Produto PROCESSOS DE DESENVOLVIMENTO Elicitação de Requisitos Análise dos Requisitos do Sistema Projeto Arquitetural do Sistema Análise dos Requisitos de Software Projeto do Software Construção do Software Integração do Software Teste do Software Integração do Sistema Teste do Sistema Instalação do Software Manutenção do Software e do Sistema PROCESSOS FUNDAMENTAIS PROCESSOS DE MELHORIA DE PROCESSO Estabelecimento do Processo Avaliação do Processo Melhoria do Processo PROCESSOS ORGANIZACIONAIS PROCESSOS DE RECURSOS E INFRAESTRUTURA Gerenciamento de Recursos Humanos Treinamento Gerenciamento do Conhecimento Infraestrutura PROCESSOS DE REUSO Gerencia dos Ativos Gerencia do Programa de Reuso Engenharia de Domínio PROCESSOS DE OPERAÇÃO Uso Operacional Apoio ao Cliente PROCESSOS DE GARANTIA DE QUALIDADE Garantia da Qualidade Verificação Validação Revisão Conjunta Auditoria Avaliação do produto PROCESSOS DE CONTROLE DA CONFIGURAÇÃO Documentação Gerenciamento da Configuração Gerenciamento da resolução de problemas Gerenciamento dos Pedidos de Alteração PROCESSOS DE APOIO

Laboratório de engenharia de software

Histórico do Grupo de Engenharia de Software do ICMC Criado em 1974 33 anos!! Total: Mestrados: 99 Doutorados: 08

Grupo de Engenharia de Software do ICMC Fernão S. Rodrigues Germano (Titular-aposentado) Paulo Cesar Masiero (Titular) Jose Carlos Maldonado (Titular) Renata P. Mattos Fortes (Doutor) Rosely Sanches (Doutor) Elisa Nakagawa (Doutor) Rosana T. Vaccare Braga (Doutor) Adenilso S. Simão (Doutor) Simone Rocio Senger de Souza (Doutor) Ellen Francine Barbosa (Doutor)

Grupo de Engenharia de Software do ICMC Fernão S. Rodrigues Germano (Titular-aposentado) Paulo Cesar Masiero (Titular) Jose Carlos Maldonado (Titular) Renata P. Mattos Fortes (Doutor) Rosely Sanches (Doutor) Elisa Nakagawa (Doutor) Rosana T. Vaccare Braga (Doutor) Adenilso S. Simão (Doutor) Simone Rocio Senger de Souza (Doutor) Ellen Francine Barbosa (Doutor)

Grupo de Engenharia de Software do ICMC Fernão S. Rodrigues Germano (Titular-aposentado) Paulo Cesar Masiero (Titular) Jose Carlos Maldonado (Titular) Renata P. Mattos Fortes (Doutor) Rosely Sanches (Doutor) Elisa Nakagawa (Doutor) Rosana T. Vaccare Braga (Doutor) Adenilso S. Simão (Doutor) Simone Rocio Senger de Souza (Doutor) Ellen Francine Barbosa (Doutor)

Pesquisadores do LabES Alunos de Iniciação Científica: 25 Alunos de Mestrado: 21 Alunos de Doutorado: 07 Colaboradores: 07

Linhas de Pesquisa Processos de software Ambientes de desenvolvimento de software Engenharia de requisitos Desenvolvimento orientado a objetos Desenvolvimento orientado a aspectos Desenvolvimento baseado em componentes Gerenciamento de configuração Gerenciamento e planejamento de projeto Métricas de software

Linhas de Pesquisa Métodos e modelos formais Qualidade de software Teste e validação de software Manutenção de software Engenharia reversa / reengenharia Reúso Padrões de software Projeto de Interface do Usuário Desenvolvimento Orientado por Modelos Ensino e treinamento

Alguns dos Projetos em Andamento Pesquisa em Métodos e Ferramentas de Engenharia de Software (CNPq) Coordenadores: Paulo Cesar Masiero e José Carlos Maldonado Métodos em Engenharia de Software Aplicados a Soluções Numéricas e Mecânica dos Fluidos (Multidisciplinar) (Fapesp) Coordenador: Paulo Cesar Masiero Pesquisa em Qualidade de Software Coordenadora: Rosely Sanches Plavis: Plataforma para Validação e Integração de Software em Sistemas Espaciais (CNPq) Coordenador: José Carlos Maldonado

Alguns dos Projetos em Andamento Design Rationale em Processos de Software e Web Engineering Coordenadora: Renata Pontin de Mattos Fortes Software Engineering Available For Everyone – SAFE Financiamento: FINEP Reuso de Software e Desenvolvimento Orientado por Modelos Teste de Software aplicado a Programas Concorrentes Coordenadora: Simone do Rocio Senger de Souza Desenvolvimento de Módulos Educacionais Coordenadora: Ellen Francine Barbosa …

www.labes.icmc.usp.br

www.labes.icmc.usp.br