• Aucun résultat trouvé

Pipelining Issues

Dans le document 1. Introduction to the MultiTitan (Page 87-91)

List of Figures

MEM 1 coproc ALU instr driven from CPU 2

4. Sample Applications

1.3 Pipelining Issues

Na literatura de sistemas de informação, o estudo pioneiro que introduziu a abordagem dos stakeholders foi o de Schonberger (1980) e incluiu a ideia de que o esforço de

design de um SI pode ser liderado pelo usuário e não apenas pelo analista. O autor propôs

seis abordagens para design de um SI variando de nenhum envolvimento do usuário a um envolvimento considerável. O modelo prevê que a liderança em design de um SI depende do tipo de tomada de decisão. Os executivos, usuários ou outros stakeholders podem assumir uma liderança ativa quando as circunstâncias a justifiquem.

Outras aplicações recentes avaliam o impacto dos stakeholders no planejamento de um SI, analisam o relacionamento dos stakeholders e a colaboração deles na prestação de serviços online, comunidades virtuais e abordam a teoria dos stakeholders para discutir questões éticas na gestão de SI (Freeman et al., 2010).

Um campo que tem utilizado essa teoria é o de engenharia de software. As pessoas e grupos que afetam o sistema e são afetadas por eles são os stakeholders com papel decisivo na definição e criação do software. Entender o papel dos stakeholders é fundamental para compreender o desenvolvimento do software pois eles tomam decisões fundamentais sobre o escopo, funcionalidade, características operacionais e estrutura de um sistema de software. Além disso, eles têm necessidades que precisam ser atingidas pelo software e preocupações sobre o sistema que será criado. Existem diversos stakeholders, tais quais: cliente, assessores, comunicadores, desenvolvedores, engenheiros de software, analistas, fornecedores, testadores e usuários (Rozanski & Woods, 2011).

O aspecto colaborativo é destacado pela literatura. O sucesso de um projeto de desenvolvimento de software é visto como resultado de atividades colaborativas entre diferentes stakeholders incluindo pessoas técnicas e todas as outras que tem riscos ou interesse no projeto com os clientes (Babar et al., 2014) .

Cada stakeholder desempenha um papel e leva para a interação seus interesses particulares o que gera uma negociação contínua sobre os objetivos e procedimentos do processo. A participação dos stakeholders no desenvolvimento de software tende a ser

descrita como um processo altamente complexo, entrópico (isto é, propenso a desordens) e idiossincrático (isto é, específico de caso e dependente do contexto). Em essência, a participação pode ser interpretada em três linhas gerais, são elas: participação como contribuição, que é voluntária ou outras formas de contribuição das pessoas para programas e projetos predeterminados; participação como organização, seja externamente concebida ou emergindo como resultado do processo; ou a participação como empoderamento, capacitando as pessoas a desenvolver habilidades para se tornarem mais autossuficientes, e para tomar decisões ações essenciais ao seu desenvolvimento (McManus, 2005).

Os estudos que analisam as abordagens de seleção e análise de stakeholders focam em diferentes domínios como abordagem da gestão estratégica, sistemas de informação, engenharia e de gestão (Babar et al., 2014). Diversos estudos adotam o conceito de

stakeholders na literatura de desenvolvimento de software. A fim de identificar aqueles que

que abordam os preceitos da teoria dos stakeholders e tem uma ligação com o campo da gestão foi feito uma revisão do tipo scoping conforme consta no apêndice III. A figura 30 apresenta os estudos identificados na literatura.

Ano Autores Título Principais resultados

2000 Ravichan dran e Rai Quality Management in Systems Development: An Organizational System Perspective

Os autores propõem o desenvolvimento de uma teoria de gerenciamento de qualidade de software que integra questões sócio-comportamentais, organizacionais e de desempenho. Um dos construtos do modelo é a participação dos stakeholders como clientes, fornecedores, programadores e analistas. Foi constatado que esse construto tem uma relação positiva com a eficácia do gerenciamento de processos de desenvolvimento. 2010 Power Stakeholder Identification in Agile Software Product Development Organizations

Os conceitos de saliência, stakeholders primários e secundários são utilizados. O estudo de caso em uma organização de produtos de software classificou os stakeholders em seis categorias principais: a equipe do proprietário do produto; a equipe de entrega do produto; a equipe do patrocinador do programa; os consumidores de produtos; o Conselho do produto e a equipe principal do programa e fornece uma descrição das responsabilidades básicas dos membros do grupo.

2012 Pacheco e Garcia A systematic literature review of stakeholder identification methods in requirements elicitation

Foi realizada uma revisão sistematizada para investigar os métodos de elicitação de requisitos. Os métodos apresentados sugerem que a identificação de stakeholders relacionadas ao projeto será baseada em sua relevância para o projeto (interesses de prioridade), seus conhecimentos e habilidades, e na atitude adequada em relação ao processo. Todas as iniciativas de software referidas contribuem para a melhoria do processo de software. No entanto, os estudos não explicaram como desenvolver o sistema de informação.

2013 Bois, Els e Bart

Demonstration of software concepts to multiple stakeholders using modular abstract

prototyping

Os autores abordam a prototipagem para modelar a funcionalidade do sistema, aspectos visuais e interação nas fases iniciais, junto com os stakeholders. A metodologia de prototipagem desenvolvida tem as seguintes fases: 1) conceptualização; 2) design; 3) execução e 4)avaliação de dados.

2014 Babar, Ghazali, Jawawi e Elsafi Stakeholder management in value- based software development: systematic review

Os atributos enfatizados dos stakeholders nos estudos são poder, interesse, papel e urgência. A aplicação das diferentes abordagens de seleção e identificação de stakeholders não é uniforme e se concentram apenas em alguns domínios e diferentes metodologias são aplicadas. As questões relacionadas ao desenvolvimento de software baseada em valor são diversas, tais como: ideia inovadora, analise de riscos, comunicação, problemas de tomada de decisão e também nos stakeholders.

2015

Achimigu , Ibrahim e Selamat

Using the fuzzy multi- criteria decision making approach for software requirements

priorization

Propõe-se uma abordagem de decisão multicritérios pautada na lógica fuzzy para priorização de requisitos. Eles são definidos e etapas: 1)geração de requisitos, 2)requisitos de gravação, 3) discussão dos requisitos, 4) requisitos de classificação. Em seguida, são obtidos os pesos números, que são convertidos em uma matriz de decisão e alocados os pesos e gerada as classificação.

2016 Wurfel, Lutz e Diehl Grounded requirements Engineering: An approach to use case

driven requirements Engineering

Aplica-se a teoria fundamentada para coleta e análise de requisitos seguindo as fases: 1)coleta de dados, 2) transcrição de vídeos, 3) codificação aberta; 4) codificação axial; 5) codificação seletiva. Em seguida, os resultados da teoria fundamentada gerada foram transformados nos casos de uso seguindo três passagens: 1) transferência de estrutura; 2) transferência de conteúdo e 3)conclusão de detalhes. A nova abordagem permite passar das observações do mundo real aos requisitos na forma de casos de uso. Figura 30. Estudos sobre Teoria dos Stakeholders e desenvolvimento de software

Nota. Fonte: Elaboração própria, 2019

Foi gerada uma nuvem de palavras (figura 31) utilizando os resumos e palavras-chave desses estudos selecionados. Algumas regras de exclusão manual de palavras4 foram adotadas para melhor visualização da nuvem. As palavras que estão em destaque na nuvem refletem os principais aspectos estudados. A aplicação da teoria dos stakeholders no desenvolvimento de software se dá principalmente nas primeiras etapas de desenvolvimento do software que é a identificação dos stakeholders, elicitação dos requisitos e priorização

4Regras adotadas: 1) exclusão de palavras que tiveram frequência de ocorrência igual a 1 e 2; 2) exclusão das palavras que representam as temáticas da revisão, tais como “stakeholders”, “stakeholder”, “software”, “system”, “Systems”, “development”, “Software”; “management”, “organization” 3) exclusão de adjetivos como “different”, “specific”, “important”, “current” 4) exclusão de verbos como “can”, “presentes”, “using”, “demonstrate”, “according”, “developed”, “reported”, “improved”, “existing”, “may”, “used”, “need”, “understanding”, 6) exclusão de palavras que remetem a estrutura do resumo dos artigos como “theory”, “paper”, “approaches” e “approach”, “abstract”, “methods”, “review”, “Theory”, “model”, “literature”, “systematic”, “method”; 7) siglas de tecnologias “VBS”, “GRE” e “MAP e 8) exclusão de outras palavras que não são significantes para a nuvem como “suggest”, “atributes”, “demonstration”, “group”, “order” e “evidence”.

deles, conforme destacado pelas palavras “identification”, “elicitation”, “requirements” e “priorization”.

Figura 31. Nuvem de palavras teoria dos stakeholders e desenvolvimento de software Nota. Fonte: Elaboração própria (2019)

Babar et al. (2014) realizaram uma revisão sistemática e constataram que o modelo de Mitchell (1997) é um dos modelos mais adotados, os atributos de poder, legitimidade e urgência são usados para identificar e quantificar as stakeholders. O atributo de poder é o foco de 46,6% das técnicas; o de interesse é o foco de 40% das técnicas; o do papel está focado em 33,3% das técnicas; o da urgência é focado em 20% das técnicas e os atributos de atividade e relacionamento estão focados em 13,3%.

Nesse sentido, o estudo de Power (2010) enfatizou os papéis dos stakeholders e apresenta um mapa dos stakeholders e seus papéis no desenvolvimento de software sob o paradigma dos métodos ágeis. Entretanto, o estudo não descreve detalhadamente como foi feita essa identificação e análise. Babar et al. (2014) observaram isso na revisão e concluíram que o foco deles está em um nível mais genérico e não há quantificação e categorização dos

stakeholders em forma de um quadro ou em processo refinado de análise.

Rozanski e Woods (2005) corroboram com a constatação de Babar et al. (2014) e elucidam que não existem critérios objetivos para determinar se a identificação dos

stakeholders foi feita corretamente. Essa seleção depende de um conjunto de fatores,

incluindo os objetivos do sistema, as considerações políticas e organizacionais, a disponibilidade de recursos, o custo e as restrições de tempo. É indicada a elaboração de uma lista de stakeholders e a avaliação deles com base nos seguintes critérios: 1) informado – O

certas? 2) comprometido – O stakeholder está habilitado e disponível para participar do processo e enfrentar algumas decisões difíceis? 3) autorizado – Tem certeza de que a decisão feita agora pelo stakeholder não será revertida mais tarde? 4) representativo – O stakeholder é um grupo e não uma pessoa, tem representantes adequados que foram selecionados do grupo? Os autores apresentam uma lista (figura 32) dos principais stakeholders que atuam no desenvolvimento de software.

Stakeholder Descrição Preocupações

Comprador Supervisionam a aquisição do sistema. Geralmente são os gestores sêniores.

Alinhamento aos objetivos estratégicos, retorno do investimento, custo, planos e recursos envolvidos

Assessor

Supervisiona a conformidade dos sistemas com os padrões e regulação legal

Conformidade com os requisitos e compliance

Comunicador

Explica o sistema para outros stakeholders via documentação e materiais de

treinamento

Qualidade da comunicação

Desenvolvedor

Constroem o sistema com base nas especificações

Padrões de desenvolvimento, escolha da plataforma, linguagem, ferramentas, manutenção, flexibilidade e preservação do conhecimento ao longo do tempo

Mantenedores Gerencia a evolução do sistema

Documentação, instrumentação e preservação do conhecimento do time

Fornecedores

Constrói ou fornece o hardware, software ou infra para o sistema funcionar

Não estão envolvidos na construção e uso do sistema mas podem impor limitações Suporte

Fornece suporte para os usuários do sistema.

Possuir a informação requerida para resolver o problema dos usuários que se comunica via telefone, e-mail ou internet

Administração do sistema

Rodam o sistema desenvolvido

Monitoração do sistema, continuidade do negócio, disponibilidade, resiliência, escalabilidade

Testadores Testam o sistema para garantir o uso

Estabelecimento dos requisitos e design de teste

Usuários

Definem a funcionalidade do sistema e o utilizam

Escopo, funcionalidade, performance, segurança.

Figura 32. Principais stakeholders no desenvolvimento de software Nota. Fonte: Rozanski e Woods (2005)

McManus (2005) também apresentam uma lista completa dos stakeholders de um projeto de software específico na área de saúde conforme pode ser visto na figura 33. A equipe típica de stakeholders de um projeto de software consiste em um gerente de projeto, analistas, designers, desenvolvedores, testadores e pessoal de garantia de qualidade. A equipe também pode incluir usuários ou seus representantes.

Ciclo de vida do projeto de software Stakeholders primários, secundários, externos 1. Análise dos requisitos do sistema • Membro do conselho do projeto • Analistas de negócios 2. Design da arquitetura do sistema • Administradores não executivos • Arquiteto técnico 3. Análise dos requisitos do software • Gerente / diretor

• Arquiteto de banco de dados

4. Design arquitetura do software • Gerente de departamento

• Analista de banco de dados

5. Design detalhado do software • Gerentes de conta • Desenvolvedores 6. Teste e codificação do software • Patrocinador do projeto • Gerente de integração 7. Integração de software • Usuário campeão • Gerente de configuração 8. Teste de qualificação do software • Gerente de recursos humanos

• Gerente de controle de mudanças

9. Integração do sistema • Usuários do departamento

• Gerente de controle de qualidade

10. Teste de sistema • Gerente de programa • Gerente de teste 11. Instalação do software • Gerente de projetos • Testadores 12. Apoio a aceitação • Arquiteto de negócios

• Equipes de suporte de infraestrutura

• Ministro do governo • Agências governamentais • Autoridades locais • Órgãos estatutários e voluntários • Agências do setor privado • Regulamentação de categorias profissionais • Instituições financeiras • Grupos de interesse local • Público geral • Consultores

• Relações Públicas • Pacientes Figura 33. Stakeholders de software na área de saúde

Nota. Fonte: McManus (2005)

Outro aspecto abordado nos estudos é a atuação dos stakeholders na elicitação e priorização de requisitos. Pacheco e Garcia (2012) realizaram uma revisão sistemática e constataram que a identificação dos stakeholders na fase de elicitação recebeu pouca atenção das diferentes iniciativas existentes no desenvolvimento de software, por exemplo, CMMi, SWEBOK, BABOK e ISO / IEC 12207. Os métodos apresentados sugerem que a identificação dos stakeholders seja baseada em sua relevância para o projeto (interesses de prioridade), seus conhecimentos e habilidades, e em uma atitude adequada em relação ao processo. Wurfel et al. (2016) desenvolveram um método baseado em teoria fundamentada para coletar os requisitos do software, que seguiu as fases: 1) coleta de dados, 2) transcrição de vídeos, 3) codificação aberta; 4) codificação axial; 5) codificação seletiva. Em seguida, os resultados foram transformados nos casos de uso seguindo três passagens: 1) transferência de estrutura; 2) transferência de conteúdo e 3) conclusão de detalhes.

A literatura recomenda algumas práticas para o desenvolvimento de um SI: 1) Atribuir papéis apropriados aos stakeholders por meio de uma análise de habilidades, comportamento em dinâmicas de grupo e testes de personalidade; aspectos que tornariam o SI repetível e verificável; 2) Estabelecer uma interação construtiva entre eles durante o processo de coleta de requisitos para evitar conflitos e problemas de comunicação decorrentes de diferentes pontos de vista; 3) Classificar os requisitos obtidos dos stakeholders

de acordo com uma avaliação de suas prioridades em relação ao objetivo do projeto (Pacheco & Garcia, 2012).

Após a seleção dos requisitos, o conceito de stakeholders aparece na priorização dos requisitos que é o ato de classificá-los de acordo com sua importância relativa pelos

stakeholders do projeto a fim de planejar as fases de liberação do software. Muitas técnicas

têm sido propostas na literatura por profissionais e acadêmicos. No entanto, qualquer que seja a técnica de priorização proposta, sua essência é gerar uma lista ordenada de requisitos com base nos pesos relativos ou nas pontuações fornecidas pelos stakeholders relevantes do projeto (Achimugu, Selamat, & Ibrahim, 2015).

Achimugu et al. (2015) utilizaram uma técnica quantitativa pautada na abordagem de decisão multicritério com o aporte da lógica fuzzy. Os requisitos são definidos em quatro etapas: 2) geração de requisitos, 2) requisitos de gravação, 3) discussão dos requisitos, 4) requisitos de classificação. Em seguida, são obtidos os pesos, números, que são convertidos em uma matriz de decisão e alocados para gerar a classificação.

As palavras “prototyping” e “design” representam a atuação dos stakeholders na fase de construção do software. Bois e Gerritsen (2013) desenvolveram uma metodologia para prototipagem de software que combina módulos genéricos e específicos de acordo com o foco dos stakeholders, ou seja, de acordo com seus pontos de vistas, demandas, habilidades e modalidade de apresentação. A metodologia desenvolvida tem as seguintes fases: 1) conceitualização, que envolve o perfil e agrupamento dos stakeholders, a definição do conceito de software, design do conteúdo de demonstração; 2) design que inclui a modularização, implementação, questões de discussão, planejamento de sessão, convocação e pré-avaliação e 3) execução, que inclui a participação dos stakeholders na criação e 4) avaliação de dados.

A palavra “quality” remete a atuação dos stakeholders no gerenciamento da qualidade do software. Ravichandran e Rai (2000) construíram um modelo para analisar os determinantes da qualidade do software e constataram que a participação dos principais

stakeholders, como clientes, fornecedores, programadores e analistas, tem uma relação

positiva com a eficácia do gerenciamento de processos de desenvolvimento de software. A figura 34 apresenta esses conceitos que são abordados pelos estudos e estão na interseção do campo da teoria dos stakeholders e desenvolvimento de software.

Figura 34. Interseção dos conceitos teoria dos stakeholders e desenvolvimento de software Nota. Fonte: Elaboração própria, 2019.

Após o entendimento, reflexão e discussão dos principais conceitos que permeiam essa pesquisa, é estabelecido um framework que especifica as relações que serão analisadas no estudo de campo. A pesquisa empírica que será desenvolvida objetiva entender e ampliar o conhecimento teórico discutido e apresentado na revisão de literatura.

2.4 SÍNTESE DA LITERATURA E CONFIGURAÇÃO TEÓRICA DA PESQUISA

Em resumo, as lacunas de pesquisa em relação à temática estudada dizem respeito principalmente a duas áreas. Primeiro, a forma como a cocriação acontece no desenvolvimento de software ainda é pouco conhecida. Sabe-se que é um processo dinâmico, cíclico e interativo, todavia as peculiaridades do processo ainda são pouco conhecidas. Em especial, são necessárias pesquisas sobre as formas específicas da cocriação e os seus resultados subsequentes (Oertzen et al., 2018).

A literatura relata aspectos que podem ajudar a explicar a cocriação, tais como, o lócus de interação que explica como se dá a interação com os stakeholders; o padrão de interação se é ativo ou passivo, iniciado pela organização ou pelos próprios stakeholders; a qualidade da interação e a existência de impedimentos ou incentivos no processo de cocriação (Hoyer et al., 2010; Prahalad & Ramaswamy, 2004a; Zwass, 2010). A literatura ainda explana que a cocriação acontece por meio de interações dinâmicas entre ações, recursos e um grupo de atores conforme foi exposto na figura 7 (Russo‐Spena & Mele, 2012).

Além disso, estudos posteriores associam o elemento papéis à cocriação. Cada

stakeholder pode desempenhar papéis específicos os quais estão vinculados às suas ações no

processo de cocriação, bem como o uso de recursos ao longo do processo (Breidbach & Maglio, 2016; Goodman et al., 2017). Sabe-se que alguns stakeholders podem ter um papel mais proativo na cocriação. Em vez de reagir às solicitações da organização, esses

stakeholders proativos tomam a iniciativa de contribuir para o processo. Enquanto outros

podem ter um papel mais reativo (Goodman et al., 2017).

Todavia, ainda não está muito claro quais papéis e atividades os atores desempenham em conjunto na cocriação. Esse elemento parece ser importante para explicar o fenômeno uma vez que os papéis podem combinar-se com os recursos por meio de tarefas independentes, facilitar a troca de recursos ou efetivar atividades conjuntas. Assim, conceituar processos de cocriação de valor como sequências de interação entre papéis interdependentes de atores fornece uma nova compreensão da natureza da cocriação (Breidbach & Maglio, 2016).

A segunda lacuna refere-se à atuação dos stakeholders. Sabe-se que eles atuam de maneira colaborativa e interativa no desenvolvimento do software. Entretanto, os aspectos que impulsionam e caracterizam essa atuação ainda são pouco explorados e as ações deles nas atividades de cocriação também são pouco conhecidas. A literatura indica a realização de estudos que consideram a perspectiva de redes e de stakeholders na cocriação, ao invés de perspectivas diádicas (Agrawal et al., 2015; Agrawal & Rahman, 2015; Oertzen et al., 2018)

Assim, esse fenômeno da cocriação pode ser explicado pela ótica da teoria dos

stakeholders, conforme abordado na revisão de literatura. Os construtos dessa teoria podem

explicar as ações e reivindicações dos stakeholders nas atividades e decisões de cocriação. Esses construtos representam a saliência dos stakeholders, tais como o poder, a urgência e a legitimidade (Mitchell et al., 1997). Estudos enfatizados acima mostram que stakeholders que têm mais poder têm uma maior atuação na cocriação e tendem a tomar decisões mais estruturadas durante o processo de cocriação (Iivari, 2010; Nakki et al., 2011; Power, 2010).

Diante disso, o framework teórico-conceitual da pesquisa (figura 35) apresenta uma representação esquemática das categorias que serão analisadas, bem como uma visão integradora sobre o fenômeno estudado, utilizado como um guia para a realização da pesquisa de campo (Miles, Huberman, & Saldana, 2014) .

Figura 35. Framework teórico-conceitual da pesquisa Nota. Fonte: Elaboração própria, 2019

A seguir será o apresentado o delineamento e o percurso metodológico aplicado na pesquisa de campo.

COCRIAÇÃO

PODER URGÊNCIA LEGITIMIDADE

Russo-Spena e Mele (2015) Goodman et al. (2011) Breidbach e Maglio (2016) Prahalad e Ramaswamy (2009) Zwass et al. (2010) Hoyer et al. (2010) Boaventura (2017) Aaltonen et al. (2008) Parent e Deephouse (2007) Lócus de Interação Padrão de Interação Qualidade de Interação Cond. Facilitadoras ou Limitadoras Saliência ATORES/ STAKEHOLDERS AÇÕES RECURSOS PAPÉIS

3 PROCEDIMENTOS METODOLÓGICOS

A construção do percurso metodológico desta pesquisa consiste num encadeamento entre a filosofia da pesquisa e o desenvolvimento do método para operacionalização da pesquisa de campo. Ao construir o desenho da pesquisa, é aconselhável começar refletindo sobre as crenças e pressupostos que geram a filosofia adotada pela pesquisadora. Em seguida

Dans le document 1. Introduction to the MultiTitan (Page 87-91)

Documents relatifs