30
Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Embed Size (px)

Citation preview

Page 1: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Fábrica de Software III

Resposta à RFP do IEC

Breno CostaGerente de Negócios

Page 2: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Agenda Problema Apresentado Proposta de solução da Fábrica III Metodologia Fases x Artefatos Organização da Fábrica Métrica de Estimativa de Esforço Desenvolvimento Baseado em Componentes Ferramentas Acordo de Nível de Serviço (SLA)

Page 3: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Problema Apresentado

Alocação automática de recursos humanos e físicos para definição de horário e consultas

Sugestão de solução: Job Shop Problem e Time Scheduling

Page 4: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Investigações Fábrica III

Job Shop não é adequado para o problema Timetabling é mais indicado Diversas abordagens e variações para

solucionar timetabling Abordagem e algoritmo serão definidos no

início da fase de Desenvolvimento de Componentes

Page 5: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Atores e Casos de UsoAtores Gerente de alocações Usuário comum

Casos de Uso Manter cadastro de

professores/alunos Manter cadastro de

disciplina Manter cadastro de

recurso físico Realizar alocação Alterar/Cancelar alocação Solicitar sugestão de

alocação Consultar alocação

Page 6: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Cálculo do esforço

S M C1 Manter cadastro de professores/alunos 1 0 02 Manter cadastro de disciplinas 1 0 03 Manter cadastro de recurso físico 1 0 04 Realizar alocação 0 0 15 Alterar/Cancelar alocação 0 1 06 Solicitar sugestão de alocação 0 1 07 Consultar alocação 1 0 0

4 2 1

Complexidade

TotalPeso Total

Casos de Uso

55

S M C1 Gerente de alocações 0 0 12 Usuário comum 0 0 1

0 0 2Peso Total

Atores

6

Complexidade

Total de Atores

Pontos de Casos de Uso Não Ajustados (PCUNA) 61

Page 7: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

# Fatores Técnicos Peso ValorPeso

x Valor

T1Sistema distribuído

2 0 0

T2

Objetivos de performance relativos à tempo de resposta e vazão

1 4 4

T3 Eficiência para o usuário (online)

1 1 1

T4 Processamento interno complexo 1 3 3

T5 Reutilização de código 1 0 0

T6 Facilidade na instalação 0,5 0 0

T7 Facilidade na utilização 0,5 0 0

T8 Portabilidade 2 0 0T9 Manutenabilidade 1 1 1T10 Concorrência 1 2 2

T11 Inclui características especiais de segurança

1 0 0

T12 Fornece acesso direto para terceiros 1 0 0

T13 facilidades de 1 0 0

Fatores de Complexidade Total dos Fatores Técnicos

0,7111

Page 8: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Cálculo do esforço# Fatores Ambientais Peso Valor

Peso x

Valor

FA1Familiaridade com o RUP (ou o processo de desenvolvimento

utilizado)1,5 4 6

FA2 Experiência na aplicação 0,5 5 2,5

FA3 Experiência em orientação a objetos 1 5 5

FA4 capacidade de liderança do analista líder 0,5 4 2

FA5 Motivação 1 4 4

FA6 Requisitos estáveis 2 4 8

FA7 Trabalhadores part-time -1 5 -5

FA8 Dificuldade na linguagem de programação -1 0 0

Total dos Fatores Ambientais 22,50,725Fatores Ambientais (FA)

Page 9: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Cálculo do esforço

31,4

70,6494A . Se QFA <= 2 565,1955diasEstimativa de Esforço (homens-hora)

Pontos de Casos de Uso (PCU)RESULTADOS

Esforço total: 565 horas

Page 10: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Prazo de entrega

6 semanas a partir da aprovação da proposta

Caso proposta seja aprovada em 21/07/2003, o prazo de entrega será 01/09/2003

Page 11: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Metodologia

Baseada no RUP Metodologia de desenvolvimento

dividida em 4 fases:– Comercial– Planejamento e Gerenciamento– Desenvolvimento de Componentes– Testes e Validação

Page 12: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Levantar Necessidades do Cliente

Elaborar Proposta Comercial

Elaborar Proposta Técnica

Estimar Esforço do Projeto

Elaborar Plano de Projetos Preliminar

Validar o Projeto junto ao Cliente

Definir o Controle do Projeto

Acompanhar e Gerenciar o Projeto

Comunicar Evolução do Projeto

Definir Problema

Implementar Componentes

Especificar Componentes

Projetar Componentes

Elaborar Plano de Testes

Avaliar Testes

Executar Testes de Aceitação

Implementar Testes

Realizar Testes

Fases da MetodologiaComercial

Planejamento e Gerenciamento

Desenvolvimento

Testes

Page 13: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Metodologia - Fases

Levantar Necessidades do Cliente

Elaborar Proposta Comercial

Elaborar Proposta Técnica

Estimar Esforço do Projeto

Elaborar Plano de Projetos Preliminar

Comunicar Evolução do Projeto

Validar o Projeto junto ao Cliente

Definir o Controle do Projeto

Acompanhar e Gerenciar o Projeto

1. Fase Comercial

2. Fase Planejamento e Gerenciamento

Page 14: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Metodologia - Fases3. Fase Desenvolvimento de Componentes

4. Fase Testes e Validação

Definir Problema

Implementar Componentes

Especificar Componentes

Projetar Componentes

Elaborar Plano de Testes

Avaliar Testes

Executar Testes de Aceitação

Implementar Testes

Realizar Testes

Page 15: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Fases x ArtefatosFase Artefatos

Comercial 1. Proposta Técnica2. Planilha de Estimativa de Esforço3. Proposta comercial

Planejamento e Gerenciamento

1. Plano de Projeto2. Ata de Reuniões3. Formulário de Controle de

Mudanças4. Formulário de Validação do

Cliente5. Relatório Avaliando Processo de

Desenvolvimento6. Avaliações periódicas7. Formulário de Controle de

Impactos

Desenvolvimento de Componentes

1. Documento de Requisitos2. Documentos gerados no

MVCASE3. Código-fonte

Testes e Validação 1. Plano de Testes2. Relatório de Avaliação dos Testes3. Componentes de Testes

Page 16: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Organização da Fábrica

Perfis que compõem a Fábrica III Gerente de Negócios Gerente de Projetos Analista de Sistemas Analista de Qualidade Engenheiro de Software Engenheiro de Testes Líder de Equipe

Page 17: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Organização da Fábrica

G eren te d e N eg ó c ios

E n g en h e iro d e S oftw areA n a lis ta d e S is tem asE n g en h e iro d e Tes tes

L íd er d e E q u ip e

E n g en h e iro d e S oftw areA n a lis ta d e S is tem asE n g en h e iro d e Tes tes

L id er d e E q u ip e

G eren te d e P ro je tos A n a lis ta d e Q u a lid ad e

Page 18: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Organização da Fábrica Equipe X Perfil

Breno Costa Gerente de Negócios e Engenheiro de Testes

Carlos Andreazza Engenheiro de Testes e Engenheiro de Software

Carlos Júnior Analista de Qualidade e Engenheiro de Software (líder)

Clarissa Borba Gerente de Negócios e Engenheiro de Testes (líder)

Eduardo Almeida Analista de Qualidade e Engenheiro de Testes

Fábio Ferreira Analista de Sistemas e Engenheiro de Software

Luiz Eduardo Leite Analista de Sistemas e Engenheiro de Software

Mônica Priscila França Analista de Sistemas e Engenheiro de Testes

Taciana Vanderlei Analista de Sistemas e Engenheiro de Software

Vanessa Bittencourt Gerente de Projeto e Engenheiro de Testes

Vivianne Medeiros Gerente de Projetos e Engenheiro de Software

Page 19: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Métrica de Estimativa de Esforço

Breve Histórico [Kirsten Ribu 01]– Ponto de equilíbrio entre investimento e precisão– Estimativa de Especialista– Analogia– FPA

Por que Pontos de Caso de Uso? Benefícios

– Facilidade de uso– Experiência da empresa no desenvolvimento O-O

Page 20: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Pontos de Caso de Uso [Gustav Karner 93]

Passos Necessários:1. Identificar Atores e Casos de Uso2. Categorizar Atores e Casos de Uso3. Calcular PCU Desajustados4. Calcular Fator Complex. Técnica5. Calcular Fator Complex. Ambiental6. Calcular PCU Ajustados7. Converter PCUA para HH - [Schneider and Winters

98]

Page 21: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Pontos de Caso de Uso

Experiência com a métrica Registro do esforço estimado x esforço

realizado Ajustes baseados em dados históricos Novo fator de conversão

Horas por PCU (realizado): 350/22,272 = 15,7148Novo Fator: 18

Page 22: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Reutilização de Software

Software reuse is the use of existing software knowledge or artifacts to build new software artifacts [Frakes, 1995]

Vantagens– Qualidade– Tempo de desenvolvimento– Redução nos custos de desenvolvimento,

testes, documentação e manutenção

Page 23: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Artefatos Reutilizáveis [D’ Souza, 1999]

Código compilado [fonte] Casos de testes Modelos e projetos: frameworks e

padrões Interface de usuário Planos, estratégias e regras

arquiteturais

Page 24: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Desenvolvimento Baseado em Componentes (DBC)

Visão anterior– Blocos monolíticos– Grande número de partes inter-relacionadas– Relacionamentos implícitos

Necessidade de “quebrar” esses blocos– Surgimento do DBC– Redução da complexidade e custo de

desenvolvimento Motivação

– Desenvolvimento da Internet– Evolução: Mainframes .... Objetos Distribuídos– Surgimento de Padrões – OMG, DCOM

Page 25: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Desenvolvimento Baseado em Componentes

Page 26: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Home-Page e Ferramentas http://www.cin.ufpe.br/~vnm/fabrica3

(acompanhamento) JBuilder (implementação) MVCASE [3] (modelagem) CVS [4] (controle de versões) Bugzilla [5] (reportar bugs) Project (gerenciador de cronograma) Word (documentação) PostgreSQL (armazenamento de dados) Twiki [6](compartilhamento de conhecimento)

Page 27: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Acordo de nível de serviço (SLA) [Naomi Karten] Serviço: desenvolvimento de software Indicadores:

– I1 - Problemas não-previstos– I2 - Total de dias de atraso– I3 - Relatórios semanais de status não-enviados

Metas Fórmula: Saldo = (I1-1) + (I3) + (I2-3) Penalidade: Saldo x 10 horas Bônus: Saldo x 0,1 (conceito) Aplicação do SLA apenas para o próximo projeto Revisão do SLA é possível e indicada

Page 28: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Referências Utilizadas[1] I. Aaen, P. Botcher, L. Mathiassen, Software Factories. Oslo, 1997 .[2] H. P. Siy, J. D. Herbsleb, A. Mockus, M. Krishnan, G. T. Tucker, Making the Software Factory Work: Lessons from a Decade of Experience.[D’Souza, 1999] D’Souza, D., F., Wills, C., A. Objects, Components, and Frameworks with UML – The Catalysis Approach. Addison-Wesley, 1999.[Frakes, 1995] Frakes, W., B., Fox, C., J. Sixteen Question about Software Reuse. Communications of the ACM. June 1995.   [3] http://www.recope.dc.ufscar.br/mvcase/.   [4] http://www.cvshome.org/.   [5] http://bugzilla.mozilla.org/.   [6] http://www.natalnet.br/twiki/.[Gustav Karner 93], Resource Estimation for Objectory Projects. Copyright Rational Software, Inc, 1993.[Kirsten Ribu 01], Estimating Object-Oriented Software Projects with Use Cases, Master of Science Thesis, University of Oslo, 2001.[John Smith 99], The estimation of Effort based on Use Cases, Rational Software White Paper, 1999.[Schneider and Winters 98]. Applying Use Cases. Addison-Wesley, 1998.[Naomi Karten], Establishing Service Level Agreements, 2001.

Page 29: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Referências Utilizadas[Jain98] Jain, A., Meeran, S. "A state-of-the-art review of job-shop scheduling techniques". Technical report, University of Dundee, Dundee, 1998.[Schaerf95] Schaerf, A., "A survey of automated timetabling,", Report, CWI, Amsterdam, 1995.[Terra01] Terra, I., "Uma Solução para a Confecção do Horário Acadêmico". Dissertação de Mestrado. Universidade Federal de Minas Gerais, 2001.[Gröbner02] Gröbner, M., Wilke P.,"A General View on Timetabling Problems", 4th International Conference on the Practice and Theory of Automated Timetabling, 2002,[Caldeira97] Caldeira, P., Agostinho, R., "School Timetabling Using Genetic Search", Practice and Theory of Automated Timetabling, Toronto, 1997.[Holland75] Holland J., Adaptation in Natural and Artificial Systems, University of Michigan Press, 1975.[Fang94] Fang, H., "Genetic Algorithms in Tametabling Problems", PhD Thesis, University of Edinburgh, 1994.[Fernandes02] Fernandes, C., Caldeira, J., "Infected Genes Evolutionary Algorithm for School Timetabling", WSES, 2002.

Page 30: Fábrica de Software III Resposta à RFP do IEC Breno Costa Gerente de Negócios

Referências Utilizadas[Souza01] Souza, F., Ochi, S., Maculan, N., "A GRASP-Tabu Search Algorithm to solve a School Timetabling Problem", Metaheuristics International Conference - MIC, July 2001[Aarts97] Aarts, E., Lenstra K., Local Search in Combinatorial Optimization, Wiley, 1997.[Feo95] Feo, T., Resende, M., "Greedy randomized adaptive search procedures". Journal of Global Optimization, 1995.[Abramson92] Abramson, D., Abela, J., "A Parallel Genetic Algorithm for Solving the School Timetabling Problem", 15 Australian Computer Science Conference, 1992.[Ribeiro01] Ribeiro, G., Lorena, L., "A Constructive Evolutionary Approach to School Timetabling", EvoCOP2001 - First European Workshop on Evolutionary Computation in Combinatorial Optimization, 2001