Yunus Levent Ekinci 1,2
GENİŞLETİLMİŞ ÖZET
As principais contribuições do trabalho foram: a) a abordagem ontológica para seleção de equipes distribuídas tecnicamente qualificadas para a implementação de módulos de software em um projeto de LPS, referente à recomendação técnica de equipes do framework
CAPÍTULO 7 – CONCLUSÃO 119
de recomendações; b) especificação da ontologia, contemplando elementos como classes, propriedades, instâncias; c) implementação da ontologia em uma ferramenta; e, d) a comparação entre a abordagem ontológica e a abordagem baseada em lógica fuzzy. A adoção de uma abordagem ontológica proporciona raciocínio e entendimento do domínio, facilita a comunicação e formalização, uma vez que disponibiliza um vocabulário que permite representar conhecimento de um domínio específico e reutilização a partir do vocabulário do domínio. Embora não represente uma contribuição de fato, além de especificar a ontologia em classes, subclasses, propriedades de objetos e dados, instâncias (ou indíviduos) e axiomas a ontologia proposta foi classificada quanto ao grau de formalismo em semi-informal, expressa em linguagem natural de forma restrita e estruturada contendo os termos e relacionamentos necessários para a realização da recomendação de equipes, quanto a sua aplicação em de
especificação, baseada em uma ontologia de domínio, e quanto a função em ontologia de domínio, descrevendo conceitos e vocabulários de domínios particulares, e por fim
estabelecendo uma metodologia para elaboração da Ontologia, proposta por Falbo, utilizando as atividades de identificação do propósito e especificação dos requisitos, captura da ontologia, formalização e avaliação da ontologia. A ferramenta utilizada para implementar a Ontologia proposta foi a Protegé, com arquitetura baseada em Java, que provê suporte a linguagem de especificação de ontologia OWL, recomendada pelo W3C, e escolhida para modelar a abordagem. Utilizando a ferramenta foi possível criar e modelar classes, propriedades de dados e objetos, funções entre as propriedades e criar as instâncias (indivíduos) das classes, além de realizar consultas e visualizar os resultados das equipes consideradas adequadas a implementar os módulos de software de um projeto. A análise comparativa dos resultados dos estudos de casos apresentados foi baseada na interseção entre a abordagem ontológica proposta neste trabalho e a abordagem utilizando lógica fuzzy proposta por Santos (2010) com o intuito de verificar se o conjunto de equipes consideradas adequadas a implementar os módulos de software são equivalentes ou próximos entre essas abordagens.
Além das contribuições, algumas limitações foram observadas quanto à abordagem proposta. Dentre elas, podemos citar: a) o fato de não explorar a API da ferramenta para manipular a base de dados ontológica de forma programática em Java; b) estudos de casos não realizados com equipes reais; c) menor precisão das estimativas de adequabilidade sem uso de
lógica fuzzy. Sem o uso da API, a criação das classes, propriedades de objetos, propriedades
de dados e os indivíduos foram criados de forma manual, ocasionando em desperdício de tempo, uma vez que os dados podem necessitar serem modificados ou alterados. As equipes
CAPÍTULO 7 – CONCLUSÃO 120
criadas para gerar as recomendações foram equipes fictícias baseadas em alunos de computação e funcionários de equipes de desenvolvimento, o que não traz uma validação real para abordagem, embora torne possível a avaliação e os resultados das recomendações das equipes consideradas adequadas a implementar os módulos. A imprecisão das estimativas de adequabilidade sem uso de lógica fuzzy, é analisada através da possibilidade que uma mesma equipe pode apresentar diferentes níveis de habilidade técnica com diferentes graus de pertinência, utilizando esta abordagem. Uma equipe, por exemplo, pode ter habilidade técnica
média e alta com graus de pertinência 0.6 e 0.4, respectivamente, representando que sua
habilidade técnica é mais média do que alta. Em contrapartida com a abordagem ontológica, uma equipe pode ter apenas um nível de habilidade técnica, valor representado pelo ponto médio do intervalo de valores usados para representar os termos vagos na lógica fuzzy.
Tendo em vista as limitações percebidas, alguns trabalhos futuros foram identificados. Dentre eles, podemos citar: a) utilizar a API da ferramenta com o intuito de manipular a base de dados ontológica de forma programática, a partir de um framework chamado Jena, evitando que essa manipulação seja feita de forma manual diretamente na ferramenta Protegé; b) utilizar a abordagem ontológica proposta em um projeto real mais complexo para que possa ser de fato validada e uma avaliação mais completa das contribuições práticas da abordagem possa ser obtida; c) alterar a forma como a adequabilidade é calculada para aproximar-se dos cálculos realizados com lógica fuzzy, para que os processos de transformação de valores numéricos em termos vagos tornem a adequabilidade na abordagem ontológica mais próxima possível desta abordagem.
121
REFERÊNCIAS
ALMEIDA, M.; BAX, M. Uma visão geral sobre ontologias: pesquisa sobre definições, tipos, aplicações, métodos de avaliação e de construção. Revista Ciência da Informação, v. 32, n. 3, 2003.
ANTONIOU, G.; HARMELEN, F. A Semantic Web Primer. London: The MIT Press, 2008. ARPÍREZ, J. C. et al. Webode: a scalable workbench for ontological engineering. Canadá: British Columbia, 2001.
ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR ISO 10006: gestão da qualidade – diretrizes para a qualidade no gerenciamento de projetos. Rio de Janeiro, 2000. ATKINSON C. et al. Component-based Product Line Engineering with UML. [S.l.]: Addison-Wesley, 2001.
BAADER, F. et al. The Description logic handbook theory, implementation and applications. [S.l.]: Cambridge University Press, 2003.
BARRETO A. S. Apoio à alocação de recursos humanos em projetos de software: uma abordagem baseada em satisfação de restrições. Rio de Janeiro: UFRJ/COPPE, 200?.
BATEMAN, J.; MAGNINI, B.; FABRIS, G. The generalized upper model knowledge base: organization and use. [S.l.: s.n.], 1995.
BECHHOFER, S. DL Implementation Group (DIG). Disponível em: <http://dl.kr.org/dig>. Acesso em: 10 nov. 2013.
BERNERS-LEE, T.; HENDLER, J. The semantic web. Scientific American, maio 2001. BLACKBURN, S.; MARCONDES, D. Dicionário Oxford de Filosofia. Rio de Janeiro: Jorge Zahar, 1997.
BORGO, S. Using a large linguistic ontology for Internet-based retrieval of object- oriented components. Madrid: [s.n.], 1997.
BORST, W. Construction of Engineering Ontologies. Enschede: University of Tweenty, 200?.
BOSCH, J. et al. Object Oriented framework: problems & experiencies. [S.l.]: Wiley & Sons, 1999.
BRAGA, R. Um processo para construção e instanciação de frameworks baseados em uma linguagem de padrões para um domínio específico. São Carlos: Instituto de Ciências Matemáticas e de Computação da USP – SC, 2003.
122
BRILL, D. Loom reference manual. In: BACON, J.; HAYTON, R.; MOODY, K. Middleware for digital libraries. [S.l.: s.n.], 1998.
BURBECK, S. The tao of e-business services: the evolution of web applicationsinto service- oriented components with web services. [S.l.]: IBM Software Group, 2000.
BURITY, T. Uma abordagem para recomendação de módulos para projetos de desenvolvimento distribuído de linhas de produto de software. [S.l.]: Universidade Federal da Paraíba, 2011.
CALLEGARI D. A.; FOLIATTI F. L.; BASTOS R. M. MRES – Ferramenta para seleção de recursos para tarefas de projetos de software via abordagem difusa e multicritérios. Fortaleza: Simpósio Brasileiro de Engenharia de Software (SBES) - Sessão de Ferramentas, 2009.
CARMEL, E. Global software teams: collaborating across borders and time zones. [S.l.]: Upper Saddle River Prentice Hall PTR, 1999.
CATALDO M.; HERBSLEB, D. Communication networks in geographically distributed software development: proceedings of the 2008 ACM conference on Computer supported cooperative work. San Diego: [s.n.], 2008.
CHAVES, A. P. DiSEN-CSE: um modelo baseado em context-awareness para disseminação de informações em um ambiente de desenvolvimento distribuído de software. Maringá: Universidade Estadual de Maringá, 2011.
______. Um modelo baseado em context-awareness para disseminação de informações em um ambiente de desenvolvimento distribuído de software. Santa Fe: XXXIV Conferencia Latinoamericana de informática (CLEI), 2009.
CLEMENTS, P.; NORTHROP, L. Software product lines: practices and patterns. Boston: Addison-Wesley, 2002.
COLLOFELLO J. et al. A system dynamics software process simulator for staffing policies decision support: proceedings of the thirty-first annual hawaii international conference on system sciences. Kohala Coast: [s.n.], 1998.
COX, E. D. Fuzzy logic for business and industry. Rockland: Charles River Media, 1995. DEYL, A. K. et al. A conceptual framework and a toolkit for supporting the rapid prototyping of context-aware applications, human-computer interaction. [S.l.: s.n.], 2001.
DIRK, M. et al. GoPhone: A Software Product Line in the Mobile Phone Domain. IESE- Report Nº. 025.04/E, Version 1.0, March 5, 2004.
DOMINGUE, J.; MOTTA, E. A Knowledge-based news server supporting ontology-driven story enrichment and knowledge retrieval. In: KNOWLEDGE ACQUISITION, MODELING AND MANAGEMENT. Dagstuhl Castle. Germany: [s.n.], 1999.
123
DUGGAN, J.; BYRNE, J.; LYONS G. A task allocation optimizer for software construction. Los Alamitos: IEEE Computer Society Press, 2004. v. 21.
FALBO, R. A. Integração de conhecimento em um ambiente de engenharia de software. Rio de Janeiro: Universidade Federal do Rio de Janeiro, 1998.
FENSEL, D. OIL: an ontology infrastructure for the semantic web. [S.l.]: IEEE Intelligent Systems, 2001.
FRANK, V. D. K.; SCHIMD, K.; ROMMES, E. Software product lines in action: the best industrial practice in product line engineering. New York: Springer-Verlag, 2007.
GANDON, F. Engineering na ontology for a multi-agents corporate memory system. [S.l.]: International Symposium on the management of industrial and corporate knowledge, 2001.
GRUBER, T. A transition approach to portable ontology specification. Knowledge Acquisition, v. 5, n. 2, p. 199-220, 1993.
______. What is an ontology. Disponívele em: <http://www-ksl.stanford.edu/kst/what-is-an- ontology.html>. Acesso em: out. 2013.
GUARINO, N. Formal ontology and information systems. Proceedings of FOIS’98, p. 3-15, 1998.
______. Understanding, building and using ontologies. International Journal of Human and Computer Studies, v. 45, n. 2, p. 2/3, 1997.
GUIZZARDI, G. Desenvolvimento para e com reuso: um estudo de caso no domínio de vídeo sob demanda. [S.l.]: Universidade Federal do Espírito Santo, 2000.
GUMM D. C. Distribution Dimensions in Software Development Projects: A Taxonomy. IEEE Software. Los Alamitos, v. 23, p. 45-51, 2006.
HAROLD, E. R. The XMLBible. [S.l.]: IDG Books, 1999.
HEFLIN, J.; HENDLER, J. Searching the web with SHOE. [S.l.]: Menlo Park, 2000. HORROCKS, I. The ontology interchange language (OIL). [S.l.: s.n.], 2001.
HUZITA, E. H. M. et al. Um ambiente de desenvolvimento distribuído de software – DiSEN. João Pessoa: I Workshop de Desenvolvimento Distribuído de Software, 2007.
JONES, D.; BENCH-CAPON, T.; VISSER, P. Methodologies for ontology development. Budapest: Proc. IT KNOWS Conference, XV IFIPWorld Computer Congress, 1998.
KAGDI, H.; HAMMAD, M.; MALETIC, J. I. Who can help me with this source code change? IEEE International Conference on Software Maintenance. Beijing: [s.n.], 2008.
124
KARP, R.; CHAUDHRI, V.; THOMERE, J. XOL: an XML-based ontology exchange language. [S.l.: s.n.], 1999.
KIFER, M.; LAUSEN, G.; WU, J. Logical foundations of object-oriented and frame-based languages. Journal of ACM, v. 42, p. 741-843, 1995.
KONSTANTINOU, N.; SPANOS, D.; MITROU, N. Ontology and Database Mapping: A Survey of Current Implementarions and Future Directions. Journal of Web Engineering, v. 7, p. 1-24, 2008.
LASSILA, O.; SWICK, R. Resource Description Framework (RDF) model and syntax specification: W3C recommendation. [S.l.: s. n.], 1999.
LENAT, D. B.; GUHA, R. V. Building large knowledge-based systems. Massachussets: Addison-Wesley, 1990.
LIMA A. et al. Gerência flexível de processos de software com o ambiente WebAPSEE. [S.l.]: 19º Simpósio Brasileiro de Engenharia de Software – Sessão de Ferramentas, 2006. LIMA, R. C. A. Uma abordagem flexível para execução de processos de software evolutivos. [S.l.]: Universidade Federal do Rio Grande do Sul, 2003.
LINDEN R. Algoritmos genéticos: uma importante ferramenta da inteligência computacional. Rio de Janeiro: Brasport, 2008. v. 2.
LINDEN, F. J.; SCHMID, K.; ROMMES, E. Software Product lines in action: the best industrial practice in product line engineering. New York: Springer-Verlag, 2007.
MAEDCHE, A. et al. Semantic portal: the seal approach. [S.l.: s.n.], 2001.
MARQUARDT, M. J.; HORVATH, L. Global teams: how top multinationals span boundaries and cultures with high-speed teamwork. Palo Alto: Davies-Black, 2001.
MORENO, A. O.; HERNÁNDEZ, C. P. Reusing the mikrokosmos ontology for concept- based nultilingual terminology databases. [S.l.: s.n.], 2000.
NECHES, R. 1991. Enabling technology for knowledge sharing. AI Magazine, v. 12, n. 3, p. 36-56, 1991.
NOY, N. F.; MCGUINNESS, D. L. Ontology development 101: A guide to creating your first ontology. [S.l.: s.n.], 2006.
______. Ontology Development 101: A Guide to Creating Your First Ontology. Stanford Knowledge Systems Laboratory Technical Report KSL-01-05 and Stanford Medical Informatics Technical Report SMI-2001-0880, p. 1-25, 2001.
OBERWEIS, A.; PANKRATIUS, V.; STUCKY, W. Product lines for digital information products. Information Systems, v. 32, p. 909-939, 2007.
125
PATIL, S. et al. Methodological reflections on a field study of a globally distributed software project. Inf. Softw. Technol. v. 53, n. 9, p. 969-980. 2011.
PAUL, Z. Z. Sharing engineering design knowledge in a distributed environment. [S.l.: s.n.], 2007.
PEREIRA, T. A. B. et al. A Recommendation Framework for Allocating Global Software Teams in Software Product Line Projects. [S.l.]: Proceedings of 2nd International Workshop on Recommendation Systems for Software Engineering, 2010.
PETRY, H. ICARE: um sistema de recomendação de especialistas sensível a contexto. [S.l.]: UFPE, 2011.
POHL, K. et al. Software product line engineering: foundations, principles and techniques. New York: Berlin Heidelberg, 2005.
PRESSMAN, R. S. Software engineering: a practitioner's approach. New York: McGraw- Hill, 2004. v. 6.
PRIKLADNICKI, R.; AUDY, J. L. Gestão quantitativa de pessoas em DDS: primeira aplicação de um modelo para o cálculo da distância percebida relativa em equipes distribuídas de desenvolvimento de software. Campinas: II Workshop de Desenvolvimento Distribuido de Software (WDDS), 2008.
______. Uma análise comparativa de práticas de desenvolvimento distribuído de software no Brasil e no exterior. Florianópolis: SBES, 2006.
REICHLING, T.; SCHUBERT, K.; WULF, V. Matching human actors based on their texts: design and evaluation of an instance of the expertfinding framework. New York: ACM SIGGROUP Conference on Supporting Group Work, 2005.
RIBEIRO, B. Uso de atributos não-técnicos na alocação de equipes em projetos de desenvolvimento distribuído de software. Salvador: IV Workshop de Desenvolvimento Distribuido de Software (WDDS), 2010.
RUSKOVA, N. A. Decision support system for human resources appraisal and selection. [S.l.]: First International IEEE Symposium "Intelligent Systems", 2002.
RUSSELL, Stuart J.; NORVIG, Peter. Artificial intelligence: a modern approach. New Jersey: Prentice Hall, 1995.
SANTOS, V. Uma abordagem para recomendação de módulos para projetos de desenvolvimento distribuído de linhas de produto de software. São Paulo: V Workshop de Desenvolvimento Distribuido de Software (WDDS), 2010.
SHANTEAU, J. et al. Performance-based assessment of expertise: How to decide if someone is an expert or not. European Journal of Operational Research, v. 136, p. 253-263, 2002. SHEN, M. et al. Multi-Criteria Task Assignment in Workflow Management Systems. [S.l.]: 36th Annual Hawaii International Conference on System Sciences, 2002.
126
SHUM, S. B.; MOTTA, E.; DOMINGUE, J. Scholonto: an ontology-based digital library server for research documents and discourse. Int. J. on Digital Libraries, v. 3, n. 3, p.237- 248, 2000.
SILVA, M. A. WebAPSEE-Planner: Auxílio à alocação de pessoas em projetos de software através de políticas. [S.l.]: Universidade Federal do Pará, 2007.
STRUDER, R.; BENJAMINS, V.; FENSEL, D. Knowledge engineering: principles and mothods. [S.l.]: IEEE Transactions on Data and Knowledge Engineering, 1998.
WEISS, D. J.; SHANTEAU, J.; HARRIES, P. People who judge people. Journal of Behavioral Decision Making, v. 19, p. 441-454, 2006.
127
APÊNDICES
APÊNDICE A – Questionário
Seção 1.03 Conhecimento:JAVA
Conhecimento e familiaridade na utilização da linguagem Java
Há quantos anos você desenvolve projetos em JAVA? ( ) Nenhum ( ) 1-3 ( ) 3-5 ( ) 5-7 ( ) 7-9 ( ) 9 ou mais.
Quantos projetos você desenvolveu utilizando a linguagem JAVA? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( ) 20-25 ( ) 25-30 ( ) 30 ou mais.
Quais dessas certificações você possui em JAVA? ( ) SCJA ( ) SCJP ( ) SCJD ( ) SCWCD ( ) SCBCD ( ) SCDWJC ( ) SCEA ( ) SMAD
Seção 1.04 Conhecimento: Eclipse
Conhecimento e familiaridade na utilização da IDE Eclipse para JAVA
Há quantos anos você trabalha com o Eclipse? ( ) Nenhum
( ) 1-3 ( ) 3-5 ( )5 ou mais.
128
Quantos projetos você desenvolveu utilizando Eclipse? ( ) Nenhum
( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15 ou mais.
Seção 1.05 Conhecimento: JSF (Java Server Faces)
Conhecimento e familiaridade na utilização do framework JSF
Há quantos anos você desenvolve projetos em JSF? ( ) Nenhum
( ) 1-3 ( ) 3-5 ( ) 5 ou mais.
Quantos projetos você desenvolveu utilizando JSF? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( ) 20 ou mais.
Seção 1.06 Conhecimento: Hibernate
Conhecimento e familiaridade na utilização do framework Hibernate
Há quantos anos você utiliza o Hibernate? ( ) Nenhum
( ) 1-3 ( ) 3-5
( ) 5 ou mais.
Quantos projetos você desenvolveu utilizando Hibernate? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( ) 20 ou mais-25
Seção 1.07 Conhecimento: Programação Reflexiva
Conhecimento e familiaridade na utilização de programação reflexiva
Há quantos anos você utiliza programação reflexiva? ( ) Nenhum
( ) 1-3 ( ) 3-5 ( ) 5 ou mais.
129
Quantos projetos você desenvolveu utilizando programação reflexiva? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( ) 20 ou mais. Seção 1.08 Conhecimento: SVN
Conhecimento e familiaridade na utilização de sistemas de controle de versão JAVA
Há quantos anos você utiliza o SVN? ( ) Nenhum
( ) 1-3 ( ) 3-5
( ) 5 ou mais.
Quantos projetos você desenvolveu utilizando SVN? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( )20ou mais. Seção 1.09 Conhecimento: SQL
Conhecimento e familiaridade na utilização da linguagem SQL
Há quantos anos você desenvolve utiliza SQL? ( ) Nenhum ( ) 1-3 ( ) 3-5 ( ) 5-7 ( ) 7-9 ( ) 9 ou mais.
Quantos projetos você desenvolveu utilizando SQL? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( ) 20 ou mais.
Seção 1.10 Conhecimento: Android
Conhecimento e familiaridade na utilização da plataforma Android
Há quantos anos você trabalha com o Eclipse? ( ) Nenhum
( ) 1-3 ( ) 3-5 ( )5 ou mais.
130
Quantos projetos você desenvolveu utilizando Android? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( )20-25 ( )25-30 ( )30ou mais.
Quais certificações ou especializações você possui relacionadas a plataforma Android?
Seção 1.11 Conhecimento: Agentes de Software
Conhecimento e familiaridade na utilização de Agentes Inteligentes de Software
Há quantos anos você utiliza agentes de software? ( ) Nenhum
( ) 1-3 ( ) 3-5 ( ) 5-7 ( ) 7 ou mais.
Quantos projetos você desenvolveu utilizando Agentes de Software? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( ) 20 ou mais.
Seção 1.12 Conhecimento: Redes de Computadores (Protocolos)
Conhecimento e familiaridade na utilização de: i) protocolos de descoberta dinâmica de serviços (UPnP, SLP, etc) ii) protocolos de transporte (UDP, TCP)
Há quantos anos você desenvolve projetos que necessitam de protocolos de redes? ( ) Nenhum ( ) 1-3 ( ) 3-5 ( ) 5-7 ( ) 7 ou mais.
Quantos projetos você desenvolveu que necessitam protocolos de redes? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( )20ou mais.
Quais certificações ou especializações você possui relacionadas ao conhecimento acerca de protocolos de redes?
131
Seção 1.13 Conhecimento:Redes de Computadores (Paradigmas)
Conhecimento e familiaridade na utilização de: i) redes sem fio (bluetooth, wifi) paradigmas de comunicação (fila, espaço de tuplas, publisher/subscriber, etc)
Há quantos anos você desenvolve projetos que necessitam de paradigmas de comunicação de redes? ( ) Nenhum ( ) 1-3 ( ) 3-5 ( ) 5-7 ( ) 7 ou mais.
Quantos projetos você desenvolveu que necessitam de algum paradigma de comunicação redes? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( )20ou mais.
Quais certificações ou especializações você possui relacionadas ao conhecimento acerca de protocolos de redes?
Seção 1.14 Conhecimento: SCRUM
Conhecimento e familiaridade na utilização do processo de desenvolvimento Scrum
Há quantos anos você utiliza Scrum? ( ) Nenhum
( ) 1-3 ( ) 3-5 ( ) 5-7
( ) 7 ou mais.
Quantos projetos você desenvolveu que necessitam protocolos de redes? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( )20ou mais.
Quais dessas certificações você possui em JAVA? ( ) Certified Scrum Product Owner
( ) Certified Scrum Master ( ) Certified Scrum Practiconer ( ) Certified Scrum Coach ( ) Certified Srcum Trainer
132
Seção 1.15 Conhecimento: Transações Bancárias Web
Conhecimento e familiaridade na implementação de projeto que utilizam de transações bancárias na WEB (E-Commerce)
Há quantos anos você utiliza Scrum? ( ) Nenhum
( ) 1-3 ( ) 3-5
( ) 5 ou mais.
Quantos projetos você desenvolveu que necessitam protocolos de redes? ( ) Nenhum ( ) 1-5 ( ) 5-10 ( ) 10-15 ( ) 15-20 ( )20ou mais. .... ...
133
APÊNDICE B – Políticas de Seleção de Equipes
Política de qualificação equivalente
Essa política visa selecionar equipes que possuem as habilidades técnicas mais próximas possíveis dos requisitos necessários para o desenvolvimento dos módulos de software. Com a adoção dessa política, evita-se que equipes com um conhecimento alto sejam alocadas para a implementação de módulos de software que não demandem um conhecimento elevado em uma determinada tecnologia, deixando assim essas equipes disponíveis para atividades mais complexas. Do mesmo modo, equipes caracterizadas com pouca habilidade
técnica em um determinado domínio ou em uma determinada tecnologia podem participar dos
projetos sendo boas opções para módulos de software que demandem baixa habilidade
técnica.
Nessa política, mesmo uma equipe possuindo um nível de conhecimento abaixo do que é esperada para o módulo de software, ela pode ser considerada uma opção desde que os níveis estejam próximos (ou equivalentes). Quanto mais distantes os níveis se encontram, seja para mais ou para menos, menor será a adequabilidade.
O uso dessa política pode trazer um bom custo-benefício ao projeto uma vez que as equipes são selecionadas de acordo com as necessidades e não por serem as equipes com maiores habilidades técnicas. Esta política é apresentada na tabela a seguir.
Política de Qualificação Equivalente
Complexidade de tecnologia dos módulos
Baixo Médio Alto
H abil ida de T éc nica da s equip es
Nenhum Médio Baixo Nenhum
Baixo Alto Médio Baixo
Médio Médio Alto Médio
Alto Baixo Médio Alto
Política de equipes mais hábeis
Essa política visa selecionar equipes que possuem as maiores habilidades técnicas apresentadas. Fazendo uma análise das regras que são acionadas para essa política, é possível observar que as equipes possuem menos chances de serem selecionadas para módulos cujas complexidades das tecnologias são superiores às habilidades técnicas das equipes. Também é
134
possível observar que as equipes que possuem conhecimentos mais altos sempre levam vantagem sobre aquelas que possuem conhecimentos mais baixos.
O uso dessa política pode ser feita com o objetivo de acelerar o projeto, uma vez que seleciona sempre as equipes que possuem os níveis de habilidades técnicas mais altas, já que na teoria estas equipes podem realizar o trabalho em menor tempo. Porém, os custos decorrentes dessa decisão podem se tornar maiores. Esta política pode ser observada na tabela abaixo.
Política de Equipes mais Hábeis
Complexidade de tecnologia dos módulos
Baixo Médio Alto
H abil ida de T éc nica da s equip es
Nenhum Nenhum Nenhum Nenhum
Baixo Baixo Baixo Baixo
Médio Médio Médio Médio
Alto Alto Alto Alto
Política de qualificação mínima
Essa política é baseada na política de qualificação equivalente, apresentada na tabela 35, fazendo os ajustes, para selecionar equipes que possuam as habilidades técnicas mínimas