Mauro de Mesquita Spinola, Prof. Dr. mauro.spinola@usp.br Escola Politécnica da USP Departamento de Engenharia de Produção [Palestra realizada na Universidade Metodista em 08/12/2010] Prof. Dr. Mauro Spinola Engenheiro de eletrônica (ITA) Mestre em Computação Aplicada (INPE) Doutor em Engenharia de Computação (Poli-USP) Livre-docente em Engenharia de Produção (Poli-USP) Professor da Escola Politécnica da USP, Departamento de Engenharia de Produção (graduação e pós) Professor e Consultor da Fundação Vanzolini, nas áreas de Tecnologia de Informação e Qualidade de Software Coordenador do MBA Gestão de Operações da USP- Vanzolini Treinamento e consultoria em CMMI e MPS.BR dez-10 FCAV TI 2 EPUSP - Mauro Spinola, Prof. Dr, 1
Bens de consumo x Bens de capital 09/12/2010 M Spinola - Engenharia de sistemas 3 Bens de consumo Bens duráveis, não duráveis e serviços 09/12/2010 M Spinola - Engenharia de sistemas 4 EPUSP - Mauro Spinola, Prof. Dr, 2
Software: bem de consumo 09/12/2010 M Spinola - Engenharia de sistemas 5 Software: bem de capital 09/12/2010 M Spinola - Engenharia de sistemas 6 EPUSP - Mauro Spinola, Prof. Dr, 3
Software está em bens de consumo! 09/12/2010 M Spinola - Engenharia de sistemas 7 Software é componente de sistema! 09/12/2010 M Spinola - Engenharia de sistemas 8 EPUSP - Mauro Spinola, Prof. Dr, 4
Questão central Como os mais recentes avanços da Engenharia de Sistemas e de Software podem contribuir para o aprimoramento dos bens de consumo? 09/12/2010 M Spinola - Engenharia de sistemas 9 Visão sistêmica 09/12/2010 M Spinola - Engenharia de sistemas 10 EPUSP - Mauro Spinola, Prof. Dr, 5
Visão sistêmica Sistema de bagagens do Aeroporto de Denver 09/12/2010 M Spinola - Engenharia de sistemas 11 Visão sistêmica: Exemplo 1 Engenharia Web Desenvolvimento de aplicações Web [Rodrigo Franco, 2009] 09/12/2010 M Spinola - Engenharia de sistemas 12 EPUSP - Mauro Spinola, Prof. Dr, 6
Visão sistêmica: Exemplo 1 Engenharia Web Desenvolvimento de aplicações Web [Rodrigo Franco, 2009] Engenharia de Software FUNÇÃO Design FORMA e FUNÇÃO Comunicação e mídia INFORMAÇÃO e FORMA 09/12/2010 M Spinola - Engenharia de sistemas 13 Visão sistêmica: Exemplo 2 - Ergonomia Software para ambiente de trabalho cooperativo [Vagner Gava, 2009] 09/12/2010 M Spinola - Engenharia de sistemas 14 EPUSP - Mauro Spinola, Prof. Dr, 7
Visão sistêmica: Exemplo 3 Sistemas que embutem software O que são sistemas embutidos? [Mauro Spinola, 1999] SE utiliza tecnologia computacional para atender a uma aplicação específica, tem comportamento reativo definido por sua interação com o ambiente e restrições de tempo, o que o caracteriza como sistema de tempo real. SFE SHE SE sistema embutido incluindo sensores e excluindo atuadores SFE sistema físico externo SHE sistema humano externo sensor atuador processador subsistema de comunicação intragrupo grupo de processadores subsistema de comunicação intergrupo 09/12/2010 M Spinola - Engenharia de sistemas 15 Visão sistêmica: Exemplo 3 Sistemas que embutem software Software embutido: é, em geral, software de tempo real, é desenvolvido geralmente para uma aplicação específica, é fortemente dependente do hardware em que é executado, pode ser distribuído, é concorrente, deve respeitar os requisitos de confiabilidade, segurança e desempenho determinados para o sistema, deve respeitar restrições impostas ao seu tamanho. 09/12/2010 M Spinola - Engenharia de sistemas 16 EPUSP - Mauro Spinola, Prof. Dr, 8
Visão sistêmica: Exemplo 3 Sistemas que embutem software Processo de engenharia de sistemas embutidos Projeto de Software Projeto de Hardware Projeto de Software Projeto de Hardware a) Paralelo (independente) b) Conjunto ou cooperativo 09/12/2010 M Spinola - Engenharia de sistemas 17 Engenharia de sistemas Engenharia de Sistemas (SysE) Um ramo da gestão de tecnologia e engenharia dedicado a controlar o Projeto de sistemas complexos feitos pelo ser humano. [Shenhar, 1994] Atividades: Conceber o sistema Estabelecer vínculos entre os requisitos de sistema e sua configuração Solucionar problemas técnicos e gerenciais relacionados a interfaces Integrar e manter a visão do todo Validar o sistema integrado 09/12/2010 M Spinola - Engenharia de sistemas 18 EPUSP - Mauro Spinola, Prof. Dr, 9
Engenharia de sistemas complexos Programas de importantes Universidades 09/12/2010 M Spinola - Engenharia de sistemas 19 software: produto Produto: características que permitem avaliar sua qualidade Aparência Peso Funcionalidade Facilidade de uso... 09/12/2010 M Spinola - Engenharia de sistemas 20 EPUSP - Mauro Spinola, Prof. Dr, 10
software: produto Processo: atividades Requisitos Desenvolvimento Verificação e validação Gestão de projeto Garantia da qualidade Gerência de configuração... 09/12/2010 M Spinola - Engenharia de sistemas 21 software: processo 09/12/2010 M Spinola - Engenharia de sistemas 22 EPUSP - Mauro Spinola, Prof. Dr, 11
software: processo MPS.BR 09/12/2010 M Spinola - Engenharia de sistemas 23 software: processos dez-10 FCAV TI 24 EPUSP - Mauro Spinola, Prof. Dr, 12
software: processo Medições, controle estatístico de processo, 6- sigma 09/12/2010 M Spinola - Engenharia de sistemas 25 software: processo Medições, controle estatístico de processo, 6- sigma Objetivos e Quest ões Processos Técnicos e Gerenciais Retorno dos usuários Resul tados da anál ise Atividades centrais da medição Estabelecer e sustentar o compromisso Planejar Medição Planejar Medição Novas Questões Executar Medição Escopo do PSM Ações de Melhoria Avaliar Medição Analisar Result ado e Medi r Desem penho 09/12/2010 M Spinola - Engenharia de sistemas 26 EPUSP - Mauro Spinola, Prof. Dr, 13
software: processo 09/12/2010 M Spinola - Engenharia de sistemas 27 software: processo Process Maturity Profile (CMMI for Development) http://www.sei.cmu.edu/ cmmi/casestudies/profil es/pdfs/upload/2010se pcmmi.pdf dez-10 FCAV TI 28 EPUSP - Mauro Spinola, Prof. Dr, 14
software: processos dez-10 FCAV TI 29 software: processo dez-10 FCAV TI 30 EPUSP - Mauro Spinola, Prof. Dr, 15
software: processos dez-10 FCAV TI 31 software: processos dez-10 FCAV TI 32 EPUSP - Mauro Spinola, Prof. Dr, 16
software: processos dez-10 FCAV TI 33 Visão sistêmica: Exemplo 3 Sistemas que embutem software Processo de engenharia de sistemas embutidos SISTEMAS EMBUTIDOS: TAREFAS DO DESENVOLVIMENTO 1. Requisitos do sistema 2. Decomposição do sistema 3. Arquitetura do sistema 4. Projetos (design) de hardware e software 5. Implementação 6. Integração de sistema 7. Verificação e validação Projeto de Hardware Projeto de Interface Projeto de Software 09/12/2010 M Spinola - Engenharia de sistemas 34 EPUSP - Mauro Spinola, Prof. Dr, 17
Visão sistêmica: Exemplo 3 Sistemas que embutem software Gerência do processo de desenvolvimento GERÊNCIA DO PROCESSO DE DESENVOLVIMENTO: REQUISITOS GERAIS 1. Planejamento do desempenho do processo 2. Definição do processo 3. Realização do processo 4. Verificação do desempenho do processo 5. Gerência do desempenho do processo 09/12/2010 M Spinola - Engenharia de sistemas 35 Visão sistêmica: Exemplo 3 Sistemas que embutem software Gerência do processo de desenvolvimento ÁREAS DE PROCESSO GERENCIAIS Áreas de processo de projeto Fornecem a infra-estrutura de gerência técnica necessária para o desenvolvimento dos sistemas. (BATE et al., 1995) 1 Garantia da qualidade 2 Gerência da configuração 3 Gerência de riscos 4 Planejamento e gerência de projeto Áreas de processo organizacionais Fornecem a infra-estrutura organizacional necessária para o desenvolvimento dos sistemas. (BATE et al., 1995) 5 Coordenação intergrupos 6 Gerência da evolução da linha de produtos 7 Gerência da tecnologia 8 Treinamento 9 Gerência de subcontratos 09/12/2010 M Spinola - Engenharia de sistemas 36 EPUSP - Mauro Spinola, Prof. Dr, 18
Visão sistêmica: Exemplo 4 - Serviços O que é serviço? Serviço é um sistema Serviço pode embutir software 09/12/2010 M Spinola - Engenharia de sistemas 37 Visão sistêmica: Exemplo 4 - Serviços O que é serviço? Serviço é um sistema Serviço pode embutir software 09/12/2010 M Spinola - Engenharia de sistemas 38 EPUSP - Mauro Spinola, Prof. Dr, 19
Visão sistêmica: Exemplo 4 - Serviços Qualidade em serviços Análise de 5 gaps Indicadores 09/12/2010 M Spinola - Engenharia de sistemas 39 Pessoas Temos emprego, mas não temos profissionais suficientes Uma alfaiataria é diferente de uma fábrica de ternos O que falta aos profissionais? dez-10 FCAV TI 40 EPUSP - Mauro Spinola, Prof. Dr, 20
Pessoas Desafios para as escolas de nível médio e universidades Formação básica Pesquisa aplicada Agilidade, para levar aos profissionais e empresas novos métodos e tecnologias Ambiente real de desenvolvimento para os alunos dez-10 FCAV TI 41 Pessoas Desafios para as empresas Manterem-se atualizadas Desenvolver processos maduros Preparar continuamente seu pessoal (começando pela direção!) Enfrentar o desafio do mercado global dez-10 FCAV TI 42 EPUSP - Mauro Spinola, Prof. Dr, 21
Pessoas Para os profissionais Buscar continuamente o preparo global Para a nação Intercâmbio e colaboração (nosso concorrente não está em nosso quintal) Ex. SPIN Software Process Improvement Network www.spinsp.org.br Programas de incentivo ao preparo contínuo de profissionais e empresas Facilidades para exportação dez-10 FCAV TI 43 Mauro de Mesquita Spinola, Prof. Dr. mauro.spinola@usp.br Escola Politécnica da USP Departamento de Engenharia de Produção [Palestra realizada na Universidade Metodista em 08/12/2010] EPUSP - Mauro Spinola, Prof. Dr, 22