• Nenhum resultado encontrado

Em relação à manutenção e evolução de software, diversos autores realizaram iniciativas para cobrir a falta de modelos específicos para este contexto. Observa-se que as abordagens construídas foram inspiradas em modelos e normas como ISO/IEC 12207 (ISO 12207, 2008), ISO/IEC 14764 (ISO/IEC 14764, 2006), CMMI (SEI, 2010a; SEI, 2010b) e ITIL (OGC, 2007).

Kajko-Mattsson (2007) defende em seus trabalhos que a manutenção tem características específicas. A abordagem estabelecida pela autora envolve um conjunto de modelos de maturidade agrupados sob o EM³ (Evolution and Maintenance Maturity

Model). O modelo foi criado a partir de experiências na indústria e Normas IEEE 1219

(IEEE 1219, 1998); ISO/IEC 14764 (ISO/IEC 14764, 2006) e ITIL (OGC, 2007). Até o momento da realização desta pesquisa, a proposta do EM³ é a criação de submodelos específicos para os processos primários, relacionados aos tipos de manutenção corretiva (CM³), evolutiva (EnhM³), adaptativa (AM³), preventiva (PM³) e redutiva (RM³) e

processos de suporte. Durante a pesquisa realizada identificou-se apenas evidências de materiais descrevendo o modelo CM³ (Corrective Maintenance Maturity Model), direcionado às manutenções corretivas (Kajko-Mattsson et al., 2012; Kajko-Mattsson et

al., 2001).

Na tese de Niessink (Niessink, 2000; Niessink e van Vliet, 2000) é proposto o IT

Service Capability Maturity Model (IT Service CMM), um modelo de maturidade

direcionado a organizações de manutenção de software e outros provedores de serviço de TI, com ênfase em serviços ao invés de produtos. O autor defende que as características de serviço da manutenção de software devem ser consideradas, justificando a criação de seu modelo que atende a um escopo mais amplo que a de empresas de manutenção, aplicado a qualquer provedor de serviço de TI. O modelo foi fundamentado no Software CMM (SEI, 1995).

Polo et al. (2002) descrevem o MANTEMA, um modelo de processo para a manutenção de software baseado na Norma ISO/IEC 12207. O modelo foi estabelecido pela necessidade de uma metodologia específica para a manutenção de software. Em Pino

et al (2012) o MANTEMA foi adaptado para empresas de pequeno porte, sob a

justificativa de que há necessidade de adaptações de modelos de melhoria do processo para as necessidades e restrições deste tipo de organizações. Assim, foi criado o Agile MANTEMA, com características ágeis para melhor atender as necessidades de organizações de pequeno porte.

O modelo SMmm foi projetado para ser usado como um complemento do modelo CMMI, preservando portanto, a estrutura deste modelo (April et al., 2005). O objetivo do SM3 é abordar as atividades exclusivas da manutenção de software (como exemplo, atividades de transição de software, negociação de ANS, Solicitação de Modificação e reporte do problema ao helpdesk e aceitacão/rejeição da solicitação de mudança) que não são abordados pelos modelos de melhoria do processo para desenvolvimento. Além do CMMI, o modelo é baseado no ITIL e nas experiências práticas dos mantenedores.

O presente trabalho compartilha a visão dos trabalhos citados de que a manutenção e evolução de software necessita de uma abordagem específica. A proposta de Niessink e van Vliet (2000), caracterizando a manutenção de software como um serviço serviu de base para a proposta defendida nesta tese. No entanto, a proposta desenvolvida neste trabalho procura incorporar elementos de modelos de referência de ampla adoção, de forma a ser aplicável durante iniciativas de melhoria do processo em organizações que buscam a avaliação de seus processos junto a instituições de notável reconhecimento na

indústria de software. Assim, optou-se por adotar a Engenharia de Processo Dirigida a Perfis de Capacidade de Processo – PCDE (Salviano, 2006) como instrumento para a definição de um Perfil de Capacidade de Processo para atender ao contexto específico de micro e pequenas organizações orientadas à manutenção e evolução de produtos de software.

Neste contexto, o trabalho de Lima (2008) também explora o uso de Perfis de Capacidade de Processo a partir do modelo CMMI-DEV, para a criação de uma abordagem de melhoria voltada para as organizações orientadas a manutenção e evolução de produtos. Na proposta construída no presente trabalho, no entanto, aproveitou-se da disseminação de modelos de referência para a melhoria do processo para prestação de serviços como oportunidade para evoluir a proposta de Lima (2008), inserindo a dimensão de serviços para a gestão das atividades de manutenção e evolução de software.

Na presente tese defende-se a visão de que características da manutenção e evolução de software são melhor representadas segundo uma visão de serviços. Dessa forma, acredita-se que as práticas para melhoria da prestação de serviços, sugeridas pelo modelo CMMI-SVC, acrescidas de práticas relacionadas à engenharia de software, sugeridas pelo modelo CMMI-DEV, podem ser mais alinhadas às características de negócio do domínio tratado, e logo, possibilitar melhorias mais significativas.

No Quadro 2.6 é apresentado uma comparação das características da abordagem proposta em relação aos trabalhos correlatos. Em relação às características comparadas entende-se:

Trata o contexto de manutenção e evolução de software: o trabalho

considera as características específicas da manutenção e evolução de software;

Considera a manutenção como serviço: o trabalho considera não somente

as questões de desenvolvimento e manutenção do código do software, mas também as áreas correlatas que prestam serviço de manutenção e evolução;

Foca no contexto das micro e pequenas organizações: o trabalho considera

as limitações de implementação de melhoria dos processos nas micro e pequenas organizações;

Baseia-se em modelos de referência reconhecidos: a abordagem do trabalho

é inspirada nas boas práticas recomendadas em modelos ou normas reconhecidos internacionalmente. Neste caso, não há garantia que a implantação da melhoria utilizando a abordagem resulte em um processo que esteja em conformidade com alguma norma ou modelo que possa ser avaliado;

Adota modelos de referência reconhecidos: a abordagem desenvolvida pelo

trabalho está em conformidade com práticas de alguma norma ou modelo que possa ser alvo de avaliação oficial reconhecida pelo mercado.

Quadro 2.6. Comparação entre a Proposta e Trabalhos Correlatos Característica Trabalhos Trata o contexto de manutenção e evolução de software Considera a manutenção como serviço Foca no contexto das micro e pequenas organizações Baseia-se em modelos de referência reconhecidos Adota modelos de referência reconhecidos CM3 (Kajko- Mattsson et al.,

2012) Sim Não Não

IEEE 1219, ISO/IEC 14764 e ITIL Não IT Service CMM (Niessink e van Vliet, 2000)

Sim Sim Não CMM e ITIL Não

MANTEMA (Polo et al.,

2002) Sim Não Não ISO/IEC 12207 Não

Agile MANTEMA (Polo et al., 2012)

Sim Sim Sim ISO/IEC 12207, ISO/IEC 15504 Não

SMmm (April et

al., 2005) Sim Sim Não

CMM, CMMI, ISO/IEC 12207, IEEE 1219, ISO/IEC 9126, ISO/IEC 14764 Não PCP (Lima,

2008) Sim Não Sim CMMI-DEV CMMI-DEV

Abordagem proposta nesta

tese Sim Sim Sim

CMMI-DEV e

CMMI-SVC CMMI-DEV e CMMI-SVC

Observa-se no Quadro 2.6 que a principal diferença na abordagem proposta reside na adoção de modelos de referência consolidados internacionalmente (CMMI-DEV e CMMI- SVC) para a criação de uma estratégia de melhoria do processo. O uso de modelos de referência provê uma melhoria guiada com base em boas práticas já consolidadas e reconhecidas pela academia e indústria, o que viabiliza a realização de uma avaliação oficial, do processo da organização, frente às recomendações dos modelos. Uma outra diferença a destacar é a percepção de características de serviço envolvidas nas atividades direta ou indiretamente ligadas a manutenção e evolução de software. As atividades necessárias para manter e evoluir um software são contínuas e imprevisíveis e dependem de serviços correlatos (atendimento, suporte, implantação e outros) que podem estar dispersos em diferentes setores de uma mesma organização.

Outros trabalhos relatam esta tendência da adoção de modelos de referência para a melhoria do processo em organizações voltadas para a manutenção e evolução de software. Pino et al. (2010) descreve um relato de experiência sobre a harmonização de processos do CMMI-DEV e ISO/IEC 15504 com o foco na melhoria do processo de desenvolvimento de software. Conforme já exposto, acredita-se que a adoção destes modelos com o foco no desenvolvimento de software, de fato agregam melhorias para a manutenção de software. No entanto percebe-se a oportunidade de maior alinhamento entre as iniciativas de melhoria do processo e as necessidades e o modelo de negócio de organizações orientadas a manutenção e evolução de produtos de software, a partir da inserção de boas práticas relacionadas a prestação de serviços.

Em relação a adoção de modelos de referência voltados a serviço para o contexto da indústria de software, Araújo et al. (2014) descreve a adoção do MR-MPS-SV em uma empresa brasileira chamada Eco Sistemas. A organização já havia sido submetida a um programa de melhoria do processo de software baseado no MR-MPS-SW, e os autores apontaram que os modelos podem ser harmonizados para melhorar e organizar diferentes times dentro da organização. No entanto, a experiência descrita se concentra na introdução das boas práticas do modelo apenas na unidade organizacional do helpdesk, não se aplicando a todos os serviços da organização. Em contrapartida, a proposta definida neste trabalho investe na introdução de boas práticas para a prestação de serviço em todos os setores organizacionais que atuam em atividades relacionadas a manutenção e evolução de software, o que inclui setores de suporte, implantação e desenvolvimento. Entende-se que uma visão orientada a serviços pode apoiar, inclusive, a melhor comunicação entre setores quando introduzida de forma mais homogênea na organização. Kalinowski e Reinehr (2013) descrevem a adoção de uma abordagem baseada em serviços para o desenvolvimento sob demanda em uma organização de software. Os autores descrevem como a migração de uma estrutura de projetos para uma estrutura de serviços favorece o aumento do controle, visibilidade e produtividade na organização. O processo da organização foi estruturado conforme boas práticas do modelo MR-MPS-SV e utilizando práticas ágeis do método Kanban. Concordamos com a visão apresentada pelos autores, embora o enfoque esteja direcionado a contextos diferentes.

Jordão e Kalinowski (2013) desenvolveram um survey para investigar a aplicabilidade do modelo MR-MPS-SV, em organizações que já adotaram práticas do modelo MR-MPS-SW, para ampliar as melhorias para seus serviços de desenvolvimento e manutenção de software. Os resultados mostram que o modelo MR-MPS-SV pode

fornecer benefícios de produtividade e qualidade para a organização. Os resultados também apontam que pode ser mais fácil introduzir as práticas do modelo MR-MPS-SV quando o modelo MR-MPS-SW tiver sido implementado devido a mudança da cultura organizacional para a melhoria do processo. O trabalho citado corrobora com a perspectiva de que é possível a adoção conjunta de modelos com estes dois enfoques.

A partir da revisão da literatura realizada, não foi observado nenhum trabalho relacionado que explora a adoção conjunta dos modelos CMMI-DEV e CMMI-SVC, ou mesmo os modelos nacionais MR-MPS-SW e MR-MPS-SV, para tratar a atividade de manutenção e evolução de software a partir de uma visão de serviço. O trabalho de Kalinowski e Reinehr (2013) trouxe a perspectiva mais próxima do pretendido por esta tese, no entanto, os autores direcionam apenas ao contexto do desenvolvimento sob demanda.