A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Um Modelo de Subcontratação de Desenvolvimento de Software

Apresentações semelhantes


Apresentação em tema: "Um Modelo de Subcontratação de Desenvolvimento de Software"— Transcrição da apresentação:

1 Um Modelo de Subcontratação de Desenvolvimento de Software
Jairo Coutinho de Oliveira Alexandre M. L. de Vasconcelos Hermano Perrelli Universidade Federal de Pernambuco (UFPE) CIn – Centro de Informática

2 Motivação Participação de projetos com necessidade de subcontratação, ex. escolha de fornecedor e serviços Contratos envolvem cifras elevadas, número elevado de profissionais envolvidos e gerenciamento complexo Subcontratação motivada pela redução de custos (fusão de empresas ou foco no core business) 48% das empresas no Brasil ainda não terceirizaram nenhuma de suas funções de TI (fonte Yangee Group ) MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

3 Subcontratação Não é um fenômeno recente em TI Introdução: Ano
Foco da Subcontratação Objetivo da Subcontratação 1960s Hardware Serviços e Gerência de Facilidades 1970s Software Gerência de Operação e Facilidades 1980s Padronização de Software e Hardware Customização 1990s Solução Total Gerência de Ativos - Gerencia de facilidades – equipamento, cabeamento, estrutura, rede elétrica, sistema, etc. - 60 – 70s: principalmente em setores de suporte e financeiro 60s 70s 80s 90s Hardware Software Customização Solução Total MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

4 Subcontratação O que se subcontrata?
Introdução: Subcontratação O que se subcontrata? O desenvolvimento parcial/completo de software (produto/projeto) Compra ou customização de pacotes de software Atividades do ciclo de desenvolvimento de software MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

5 Introdução: Subcontratação Tipos de SubContratação/Terceirização (Offshore Contract) In-House Building (No outsourcing) Product Component outsourcing Process Component outsourcing Software Acquisition (Total Outsourcing) Construção In-House: desenvolvimento do software é realizado pelo departamento de TI da organização com recursos e limitações próprias. Terceirização de Componentes do Produto: o fornecedor é contratado para desenvolver parte(s) do sistema. Praticado principalmente em grandes projetos onde a empresa pode não ter habilidade ou capacidade para produzir alguma(s) parte(s) do sistema Terceirização de Componentes do Processo: organização contrata uma empresa terceira para realizar parte ou todas as funções de um ou mais de seus processos ou componentes. Aquisição de Software (Terceirização total): subcontratação de todo o processo de construção de software incluindo projeto, desenvolvimento, teste e manutenção. Este tipo de contrato permite que a empresa concentre-se no seu core business. MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

6 Modelos Relacionados Processo Desenvolvimento de Software
SA-CMM (Software Acquisition – Capability Maturity Model) IEEE Std. 1062 Desenvolvimento de Software Gerência de Subcontratação utilizando o RUP (Rational Unified Process) Gerência de Projeto PMBOK (Project Management Body of Knowledge) MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

7 Measurement & Analysis
Modelos Relacionados: SA-CMM Arquitetura SA-CMM Maturity Levels Activities Key Process Area Goals Commitment to perform Ability to perform Measurement & Analysis Verification Institucionalization Features Goals. Goals are the aggregate result achieved by the effective implementation of the key process area. Commitment to perform: Commitment to perform describes the actions that the organization must take to establish the process and ensure that it can endure. Ability to perform: Ability to perform describes the preconditions that must exist in the project or organization to implement the acquisition process competently. Activities performed: Activities performed describes the roles and procedures necessary to implement a key process area. Measurement and analysis: Measurement and analysis describes the need to measure the process performance and analyze these measurements. Verifying implementation. Verifying implementation describes the steps to ensure that the activities are performed in compliance with the process that has been established. MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

8 SA-CMM 5 níveis de maturidade Nível 1: Inicial Nível 2: Repetitivo
Modelos Relacionados: SA-CMM 5 níveis de maturidade Nível 1: Inicial Nível 2: Repetitivo Nível 3: Definido Nível 4: Quantitativo Nível 5: Otimizado Repetitivo: Software Acquisition Planning Solicitation Requirements Development and Management Project Management Contract Tracking and Oversight Evaluation Transition to Support Definido Process Definition and Maintenance User Requirements Project Performance Management Contract Performance Management Acquisition Risk Management Training Program Management Quantitativo Quantitative Process Management Quantitative Acquisition Management Otimizado Continuous Process Improvement Acquisition Innovation Management MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

9 RUP Subcontratação no Escopo do RUP Pré-requisito
Modelos Relacionados: RUP Subcontratação no Escopo do RUP Pré-requisito O contratante possuir o RUP implementado 6 Cenários de Interesse: Subcontratação a Partir de um Modelo de Casos de Uso Subcontratação a Partir de um Modelo de Análise Subcontratação a Partir de um Modelo de Projeto Subcontratação de Programação Subcontratação de Programação e Testes Subcontratação de Testes Permite a subcontratação como uma atividade normal no empreendimento do projeto 1 - A contratante define o modelo de Casos de Uso e contrata o desenvolvimento a partir daí. 2 - A contratante elabora os modelos de Casos de Uso e de Análise (Diagrama Estático de Classes), e contrata o desenvolvimento a partir daí. 3- A contratante elabora os modelos de Casos de Uso, Análise (opcionalmente) e Design (Diagrama Estático de Classes), verificando arquitetura e validando os principais riscos e questões arquiteturais do projeto. Contrata o desenvolvimento a partir daí. 4 - A contratante elabora os modelos de Casos de Uso, Análise (opcionalmente) e Design. E continua responsável pelo desenvolvimento desses modelos. Porém, a parte de programação é terceirizada nos moldes de uma “fábrica de software”. Neste cenário o código gerado pela contratada é integrado por esta e os testes de homologação são realizados pela contratante. 5 - A contratante elabora os modelos de Casos de Uso, Análise (opcionalmente) e Design, implementa o código, mas os testes são terceirizados nos moldes de um “bureau de testes”. Neste cenário os testes são responsabilidade do bureau contratado assim como o seu planejamento e administração. 6 - A contratante elabora os modelos de Casos de Uso, Análise (opcionalmente), Design e Teste. Porém a implementação dos programas e a aplicação dos testes são de responsabilidade da contratada. (Esta é uma modalidade híbrida dos cenários 4 e 5, porém com a diferença que a contratante mantém o domínio e o conhecimento em testes, terceirizando somente a sua aplicação). MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

10 PMBOK Processos identificados para subcontratação:
Modelos Relacionados: PMBOK Processos identificados para subcontratação: Gerência de Aquisição Gerência de Riscos Gerência de Comunicação MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

11 IEEE Std. 1062 Editado em 1998 Ciclo de vida de aquisição de software
Modelos Relacionados: IEEE Std. 1062 Editado em 1998 Ciclo de vida de aquisição de software Planejamento Contratação Implementação Aceitação Acompanhamento Planejamento: inicia com o surgimento da idéia e necessidade de aquisição, e termina com a preparação da proposta para requisição (RFP - Request for Proposal) Contratação: inicia com a aprovação da RFP, e em seguida são definidas as atividades para que o fornecedor possa satisfazer os requisitos de qualidade antes de assinar o contrato. Implementação do Produto/Serviço: compreende a fase entre a assinatura do contrato até a entrega do produto. Aceitação do Produto: começa com o recebimento do produto, e compreende todas as atividades necessárias para avaliar, testar e aceitar o produto. Acompanhamento (Follow-on): corresponde a todas a as atividades após a aceitação que possibilitem a aderência aos objetivos da aquisição, avaliação da satisfação do usuário, documentação e suporte oferecido pelo fornecedor. MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

12 IEEE Std. 1062 Nove passos: Planejamento da Estratégia Organizacional
Modelos Relacionados: IEEE Std. 1062 Nove passos: Planejamento da Estratégia Organizacional Implantação do Processo da Organização Definição dos Requisitos de Software Identificação de Potenciais Fornecedores Preparação dos Requisitos do Contrato Avaliação de Propostas e Seleção do Fornecedor Gerência de Performance do Fornecedor Aceitação do Software Uso do Software 1.      Planejamento da Estratégia Organizacional: revisão dos objetivos da aquisição e desenvolvimento de uma estratégia para aquisição de software 2.      Implantação do Processo da Organização: estabelecer um processo de aquisição que se enquadre aos objetivos e necessidades de qualidade de software da empresa. 3.      Definição dos Requisitos de Software: definir o que vai conter no software a ser adquirido e estabelecer um plano de qualidade e manutenção para aceitação do software. 4.      Identificação de Potenciais Fornecedores: preparar uma lista de fornecedores candidatos que possam fornecer instrumentos (documentação, demonstração do produto, se necessário) para sua avaliação, assim como proposta formal. 5.      Preparação dos Requisitos do Contrato: definir a qualidade do trabalho em termos de performance, critérios de aceitação e provisões do contrato. 6.      Avaliação de Propostas e Seleção do Fornecedor: avaliação e seleção do fornecedor, além de negociação do contrato e renegociação, se necessário. 7.      Gerência de Performance do Fornecedor: monitoramento das atividades do fornecedor para permitir que todos os marcos definidos sejam aprovados e cumpridos. 8.      Aceitação do Software: realização de teste e estabelecimento de critérios que garantam o cumprimento dos requisitos. Uso do Software: análise da prática de aquisição, lições aprendidas e satisfação do usuário com o produto. MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

13 Modelo Unificado de Aquisição de Software - MUDAS
Objetivos: Conciliar as diferenças entres os modelos anteriores Flexibilidade através de processos e artefatos opcionais Divisão de responsabilidades Definir o como fazer para facilitar o aprendizado e implantação do modelo Fortalecer relacionamento contratante com contratado Maior interação entre as partes MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

14 Modelo Unificado de Aquisição de Software - MUDAS
Planejamento Acompanhamento Execução Encerramento Inicialização Subcontrata? Última Iteração? 5 Fases: Inicialização Planejamento Execução Acompanhamento Encerramento Diagrama em notação UML MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

15 Modelo Unificado de Aquisição de Software - MUDAS
Planejamento: Planejamento dos Requisitos Planejamento de Aquisição Planejamento dos Riscos Planejamento de Comunicação Planejamento de Desenvolvimento (O) Planejamento de Transição para Suporte (O) (O) Opcional Planejamento dos Requisitos: Documento de Visão atualizado , Plano de Gerência de Requisitos , Resumo Executivo dos Requisitos, Modelo de Caso de Uso (O) e Especificação Suplementar (O). Planejamento dos Riscos Plano de Gerência de Riscos e Lista de Riscos Analisados. Planejamento de Comunicação: Plano de Gerência de Comunicação Planejamento de Desenvolvimento: Business Case (O), Plano de Aceitação do Produto (O), Plano de Desenvolvimento do Sistema (O), Plano de Iteração (O), Plano de Implantação (O), Plano de Configuração e Mudança (O) e Plano de Testes (O). Planejamento de Transição para Suporte Plano de Manutenção e Transição (O) Planejamento de Aquisição: Plano Estratégico Organizacional, Plano de Gerência de Aquisição, Modelo(s) de Proposta e Modelo(s) de Avaliação de Proposta. MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

16 Modelo Unificado de Aquisição de Software - MUDAS
Inicialização Definição dos Requisitos Básicos Análise Make or Acquire Definição do Processo de Aquisição Execução Contratação Distribuição da Informação Administração do Contrato Análise e Projeto (O) Implementação (O) MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

17 Modelo Unificado de Aquisição de Software - MUDAS
Acompanhamento Performance do Fornecedor Controle e Monitoramento de Riscos Testes (O) Configuração e Mudança (O) Encerramento Entrega do Produto Transição pra Suporte (O) Fechamento do Contrato MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

18 Modelo Unificado de Aquisição de Software - MUDAS
Próximos Passos: Detalhar todas as fases, processos e artefatos do modelo Instanciar em fábrica de software Situação real Avaliação, teste Ajustes e Mudanças necessários no modelo MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software

19 Referências Bibliográficas
SEI, Carnegie Mellon University (2002) “Software Acquisition Capability Maturity Model (SA-CMM), v.1.3”, Technical Report CMU/SEI, Março. Filho, M. C. de M. (2001) “Gerenciamento de Subcontratações com o Rational Unified Process”, Rational Software, São Paulo. PMI, Standards Comittee (2000) “A Guide to the Project Management Body of Knowledge”, Project Management Institute Inc. IEEE, Software Engineering Standards Committee (1998) “IEEE Recommended Practice for Software Acquisition”, IEEE Computer Society, IEEE Std 1062. Kobitzsch, W., Rombach, D. e Feldmann, R.L. (2001) “Outsourcing in India”, IEEE Software, Março/Abril. e-Zest, Solutions Pvt. Ltd. (2004) “Types of Outsourcing”, Lee, J.-N., Huynh, M.O., Kwok, R. C.-W. e Pi, S.-M., (2003) “IT Outsourcing Evolution — Past, Present, and Future”, Communications of the ACM, Maio. Kishore, R., Rao, H.R., Nam, K., Rajagopalan, S. e A. Chaudhury (2003) “A Relationship Perspective on IT Outsourcing”, Communications of the ACM, Dezembro. Oliveira, J.C. de (2004) “Um Modelo de Subcontratação de Desenvolvimento de Software”, CIn/UFPE, Maio. MUDAS - Um Modelo de Subcontratação de Desenvolvimento de Software


Carregar ppt "Um Modelo de Subcontratação de Desenvolvimento de Software"

Apresentações semelhantes


Anúncios Google