Você está na página 1de 100

Universidade Federal do Rio Grande do Norte

Centro de Ciências Exatas e da Terra


Departamento de Informática e Matemática Aplicada
Programa de Pós-Graduação em Sistemas e Computação
Mestrado Acadêmico em Sistemas e Computação

Um Catálogo sobre Requisitos de


Colaboração

Edir Lucas da Silva Icety Braga

Natal-RN
Julho de 2022
Edir Lucas da Silva Icety Braga

Um Catálogo sobre Requisitos de Colaboração

Dissertação de Mestrado apresentada ao Pro-


grama de Pós-Graduação em Sistemas e Com-
putação do Departamento de Informática e
Matemática Aplicada da Universidade Fede-
ral do Rio Grande do Norte como requisito
parcial para a obtenção do grau de Mestre
em Sistemas e Computação.

Linha de pesquisa:
Engenharia de Sofware e Engenharia de re-
quisitos

Orientador
Lyrene Fernandes da Silva

PPgSC – Programa de Pós-Graduação em Sistemas e Computação


DIMAp – Departamento de Informática e Matemática Aplicada
CCET – Centro de Ciências Exatas e da Terra
UFRN – Universidade Federal do Rio Grande do Norte

Natal-RN
Julho de 2022

ii
EDIR LUCAS DA SILVA ICETY BRAGA

“Um Catálogo sobre Requisitos de Colaboração”

Esta Dissertação foi julgada adequada para a obtenção do título de Mestre em


Sistemas e Computação e aprovada em sua forma final pelo Programa de Pós-
Graduação em Sistemas e Computação do Departamento de Informática e Matemática
Aplicada da Universidade Federal do Rio Grande do Norte.

______________________________________________________________________
Dr.ª ANNE MAGALY DE PAULA CANUTO
Coordenadora do PPgSC

BANCA EXAMINADORA

Examinador(a) Externo(a): Dr.ª ISABEL DILLMANN NUNES

Presidente: Dr.ª LYRENE FERNANDES DA SILVA

Examinador(a) Interno(a): Dr.ª MARCIA JACYNTHA NUNES RODRIGUES LUCENA

Examinador(a) Externo(a): Dr.ª MARIA LENCASTRE PINHEIRO DE MENEZES E CRUZ

Discente: EDIR LUCAS DA SILVA ICETY BRAGA

Natal, 13 de julho de 2022


Universidade Federal do Rio Grande do Norte - UFRN
Sistema de Bibliotecas - SISBI
Catalogação de Publicação na Fonte. UFRN - Biblioteca Central Zila Mamede

Braga, Edir Lucas da Silva Icety.


Um catálogo sobre requisitos de colaboração / Edir Lucas da
Silva Icety Braga. - 2022.
99 f.: il.

Dissertação (mestrado) - Universidade Federal do Rio Grande


do Norte, Centro de Ciências Exatas e da Terra, Programa de Pós-
Graduação em Sistemas e Computação. Natal, RN, 2022.
Orientadora: Profa Dra. Lyrene Fernandes da Silva.

1. Engenharia de requisitos - Dissertação. 2. Catálogo -


Dissertação. 3. Colaboração - Dissertação. 4. Elicitação -
Dissertação. 5. Requisitos não-funcionais - Dissertação. I.
Silva, Lyrene Fernandes da. II. Título.

RN/UF/BCZM CDU 004.41

Elaborado por Fernanda de Medeiros Ferreira Aquino - CRB-15/301


Dedicatória

Dedico este trabalho a todos as pessoas que não puderam realizar os seus sonhos.

v
Agradecimentos

Agradeço primeiramente a Deus, por estar comigo durante todo o caminho até
aqui, me proporcionado muito mais do que eu imaginei e ter permitido que esta fase se
concretize.
À minha esposa, Yarice, por ser meu suporte e minha paz durante os momentos
bons e, principalmente, nos momentos ruins.
Aos meus pais, que mesmo de longe se fazem presentes para me apoiar e me
manter motivado.
À minha avó, Meire, pelo amor, paciência, incentivos aos estudos em todas as
etapas da minha vida, e por ter me apoiado nos momentos mais difíceis da minha vida.
À meu tio Marcos, pela ajuda e confiança, por ter me dado conforto suficiente
para que eu pudesse estudar, e por me direcionar pelo caminho certo.
À meu sobrinho Pedro, onde encontro paz e amor, que é minha motivação para
nunca desistir de lutar.
À professora Lyrene Fernandes, que me conduziu em toda a construção deste
trabalho, pelos momentos de orientação e pela experiência repassada, sempre com
paciência e atenção para ajudar.
E a todos aqueles que, de forma direta ou indireta, contribuíram como o desen-
volvimento deste trabalho.
Muito Obrigado!

vi
Um Catálogo sobre Requisitos de Colaboração

Autor: Edir Lucas da Silva Icety Braga


Orientador: Lyrene Fernandes da Silva

Resumo
Cada vez mais processos de negócio são apoiados por ferramentas de soft-
ware e muitos deles necessitam de serviços que facilitem a colaboração entre
as pessoas envolvidas. Colaboração é um termo amplo, um tanto subjetivo,
definido pela participação e contribuição de diversas pessoas e sugerindo
comprometimento delas para executar processos. Assim, a colaboração pode
ser entendida como um atributo de qualidade (ou RNF), que pode ser inter-
pretado, aplicado e implementado de formas diferentes por tais ferramentas
colaborativas. No entanto, quais são os requisitos de software para apoiar
processos colaborativos? Para ajudar engenheiros de requisitos na elicitação
e validação de requisitos de colaboração, esta dissertação tem o objetivo de
desenvolver um catálogo sobre aspectos de colaboração (e seus requisitos).
Esse catálogo é uma fonte de informação que organiza e mapeia 43 itens sobre
colaboração. A construção do catálogo foi baseada em trabalhos da literatura
que abordam aspectos de colaboração a partir perspectivas diferentes. O
catálogo foi avaliado por meio de um questionário, no qual analisou-se a
utilidade e o nível de compreensão de seus itens.

Palavras-chave: Engenharia de requisitos, Catálogo, Colaboração, Elicitação,


Requisitos não-funcionais.
A Catalog on Collaboration Requirements

Author: Edir Lucas da Silva Icety Braga


Advisor: Lyrene Fernandes da Silva

Abstract
More and more business processes are supported by software tools and many
of them are wrapped up by services that facilitate collaboration between people.
Collaboration is a broad, somewhat subjective, defined by the participation
and contribution of several people and suggesting them to carry out processes.
Thus, collaboration can be defined as an quality attribute that can have several
interpretations and be applied and coded using different strategies by colla-
borative tools. However, what are the software requirements for collaborative
processes? To assist requirements engineers in eliciting and validating colla-
boration requirements, this dissertation aims to develop a catalog on aspects
of collaboration (and its requirements). This catalog is a information that
organizes and maps 43 items on collaboration. The construction of the catalog
was based on works in the literature that approach aspects of collaboration
from different viewpoints. The catalog was evalueted through a questionnaire,
in usefulness and level of understanding of its items were analyzed.

Keywords: Requirements Engineering, Catalogue, Collaboration, Elicitation,


Non-functional requirement (NFR).
Lista de Figuras

4.1 Catálogo de apoio a processos colaborativos. (Parte 1) . . . . . . . . . . 29


4.2 Catálogo de apoio a processos colaborativos. (Parte 2) . . . . . . . . . . 30
4.3 Catálogo de apoio a processos colaborativos. (Parte 3) . . . . . . . . . . 31

5.1 Caracterização por área de atuação. . . . . . . . . . . . . . . . . . . . . . 46


5.2 Percepção sobre a utilidade de cada item do catálogo. . . . . . . . . . . . 48
5.3 Percepção sobre a compreensão de cada item do catálogo. . . . . . . . . . 51
5.4 Percepção sobre a utilidade do catálogo no contexto de levantamento de
requisitos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.5 Percepção sobre a utilidade do catálogo no contexto de validação de
requisitos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5.6 Percepção sobre a melhoria do entendimento das características essenciais
para ambientes colaborativos. . . . . . . . . . . . . . . . . . . . . . . . . 54
5.7 Percepção sobre a possibilidade de ajudar em alguma atividade rotineira
do ambiente de trabalho. . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

ix
Lista de Tabelas

3.1 Comparação das características extraídas de cada abordagem de colaboração. 18


3.2 Perguntas de pesquisa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 Critérios de classificação. . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.4 Critérios de inclusão e exclusão. . . . . . . . . . . . . . . . . . . . . . . . 20
3.5 Visão geral dos catálogos. . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.6 Comparação entre os trabalhos relacionados e o proposto. . . . . . . . . . 25

4.1 Visão geral de características de colaboração. . . . . . . . . . . . . . . . . 27

1 Visão geral dos itens do catálogo não atendidos e atendidos parcialmente


pela ferramenta GitHub. (Obs: *não atendidos. **atendidos parcialmente) . . . . . . . 67

x
Lista de Acrônimos

EC Engenharia de Colaboração. 9–11, 58, 59

ER Engenharia de Requisitos. 4

MDSE Model-Driven Software Engineering. 17

NFR Non-functional requirement. viii, 12, 13

RNF Requisito Não Funcional. 12, 13

WEB World Wide Web. 65

xi
Sumário

1 Introdução 1
1.1 Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Identificação do Problema . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4 Metodologia de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 Organização do Trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Fundamentação Teórica 7
2.1 O Conceito de Colaboração . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Engenharia de Colaboração . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 Colaboração como um Requisito de Software . . . . . . . . . . . . . . . . 11
2.4 Uso de Abordagens Orientadas a Metas e Catálogos . . . . . . . . . . . . 12

3 Trabalhos Relacionados 14
3.1 Colaboração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2 Catálogo de Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2.1 Perguntas de Pesquisa e Procedimentos de Busca . . . . . . . . . 19
3.2.2 Critérios de Seleção dos Estudos . . . . . . . . . . . . . . . . . . . 19
3.2.3 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

xii
4 Um Catálogo para Elicitação e Validação de Requisitos de Colaboração 26
4.1 Elaboração do Catálogo . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.2 Organização e Descrição dos Itens do Catálogo . . . . . . . . . . . . . . . 28
4.3 Princípios e Diretrizes para o Uso do Catálogo . . . . . . . . . . . . . . . 42

5 Avaliação do Catálogo 44
5.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.2 Recursos Usados na Avaliação . . . . . . . . . . . . . . . . . . . . . . . . 44
5.3 Perfil dos Participantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.4 Compreensão e Utilidade dos Itens do Catálogo . . . . . . . . . . . . . . 47
5.5 Avaliação do Catálogo como um Todo . . . . . . . . . . . . . . . . . . . . 53
5.6 Limitações do Estudo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

6 Considerações finais 56
6.1 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Bibliografia 60

Apêndice A - Avaliação da Ferrameta GitHub 65

Apêndice B - Questionário de Avaliação 68

Apêndice C - Tutorial do Catálogo 78

xiii
1 Introdução

O mundo está cada vez mais informatizado, existe um número crescente de


empresas, universidades, órgãos governamentais, profissionais, e indivíduos que utilizam
algum tipo de serviço disponível na Internet para realizar suas atividades cotidianas.
Por isso, as empresas de desenvolvimento de software se preocupam em desenvolver
sistemas que sejam úteis para seus usuários, esses sistemas vão desde simples ferramentas
de comunicação até ferramentas complexas que solucionam problemas de negócios em
ambientes organizacionais.
Dessa forma, o avanço da tecnologia proporciona o aumento de ambientes
organizacionais distribuídos, que necessitam manter sua capacidade de tomada de decisões
estratégicas, controle de operações e comunicação elevadas. Portanto, a importância e a
complexidade do desenvolvimento de software vem crescendo cada vez mais com o passar
do tempo (Pressman e Maxim 2016).
De acordo com Hans e Van Vliet (2008), os problemas no desenvolvimento surgem
quando excede prazos, orçamentos e o software possui níveis de qualidade reduzidos,
causando a perda de confiabilidade. Para desenvolver softwares complexos e de qualidade,
é de extrema importância realizar as atividades da engenharia de requisitos (Wiegers e
Beatty 2013). Muitos processos de negócios, inclusive o processo de desenvolvimento de
software, necessitam da colaboração dos participantes e interessados para atingir seus
objetivos.

1
1.1 Contexto

A colaboração é um termo que pode ser entendido e aplicado de várias maneiras


diferentes. Além disso, pode ser definida como uma relação prolongada entre pessoas
que contribuem com seus próprios recursos para atingir os mesmos objetivos (Mattessich
e Monsey 1992), (Perrault et al. 2011). Do ponto de vista da engenharia de requisitos,
a colaboração pode ser entendida como um atributo de qualidade (ou requisito não
funcional), tal como segurança, acessibilidade, dentre outros. Assim como outros atributos
de qualidade, para atendê-la e implementá-la se faz necessário uma análise de aspectos
subjetivos e concretos que a promova (Chung, B. A. Nixon et al. 2000), (Cysneiros 2007),
(R. Oliveira et al. 2016).
Este atributo de qualidade vem sendo altamente exigido em ferramentas de
software. A colaboração, geralmente, não é o objeto fim de um software ou time, ela
serve para apoiar ou facilitar a execução de outros processos. Assim, muitas organizações
apostam na colaboração como uma forma eficiente de garantir que produtos ou serviços
se mantenham competitivos no mercado. Além de considerá-la como um meio eficaz de
criar soluções criativas e identificar novas oportunidades de negócio. Portanto, identificar
e analisar os aspectos essenciais a este atributo de qualidade pode auxiliar na elaboração
de requisitos para ferramentas de software colaborativas.
A tecnologia é uma ótima aliada para promover o trabalho colaborativo dentro
das organizações. Nesse contexto, a atenção para os benefícios da colaboração associada
à tecnologia vem aumentando nos últimos anos e podemos atribuir esse acontecimento a
vários fatores, tais como: a disponibilidade de informação, que se caracteriza pelo fácil
gerenciamento de conteúdo e o compartilhamento de conhecimento entre os colaboradores
em ferramentas colaborativas (Fink 2007); o apoio para uma melhor conscientização das
atividades de trabalho em equipes distribuídas; a redução de custos de coordenação e
comunicação; a flexibilidade para a comunicação das pessoas envolvidas; e a identificação

2
de novas parcerias colaborativas (Canché e Pino 2021). Esses são alguns dos fatores que
fundamentam a necessidade de desenvolver ferramentas de software que dão apoio a
processos colaborativos, e oferecer uma percepção mais concreta sobre quais características
promovem o conceito de colaboração.
Usando como exemplo o processo de desenvolvimento de software, existem
muitos desafios em torno da colaboração em projetos de software, principalmente na
construção de ferramentas que dêem suporte às metodologias ágeis, organizações com
equipes distribuídas, gerenciamento de processos, e o desenvolvimento de software global.
No geral, ferramentas de software tradicionais não fornecem recursos colaborativos
eficientes ou abrangentes (Sarma et al. 2010). Em contrapartida, estudos (Whitehead
2007), (Damian, Kwan e Marczak 2010), (Konaté, Kolfschoten et al. 2014) discutem a
importância da seleção e uso de técnicas, processos e ferramentas para proporcionar uma
colaboração efetiva.

1.2 Identificação do Problema

A falta de conhecimento sobre os aspectos de colaboração, bem como a sub-


jetividade do termo refletem negativamente no alinhamento entre o significado destes
aspectos e os requisitos de ferramentas de software colaborativas. Análises em pesquisas
exploratórias realizadas por Munkvold (1999) e Smith e McKeen (2011) indicam que as
organizações muitas vezes não são capazes de identificar suas necessidades em relação ao
suporte tecnológico de apoio à colaboração.
Essa falta de suporte ao mapeamento de infraestrutura tecnológica que atendem
às necessidades (pessoais e de negócio) do ambiente colaborativo pode estar associada à
dificuldade de se identificar e analisar várias características subjetivas (relacionadas ao
requisito não funcional) de colaboração e suas respectivas operacionalizações (alternativas)
(Canché e Pino 2021).

3
1.3 Objetivos

O objetivo do catálogo é servir como fonte de conhecimento dos aspectos de cola-


boração e requisitos necessários para atendê-lo, possibilitando assim o compartilhamento
e reuso de conhecimento a respeito desse atributo de qualidade. Dessa forma, apoiamos
engenheiros de requisitos (e outros profissionais) a entender mais rapidamente caracte-
rísticas importantes para ferramentas colaborativas, e a validar ou avaliar ferramentas
existentes considerando essas características.
Como objetivos específicos, destacam-se os seguintes:

• Considerando que estamos propondo um catálogo sobre colaboração e que este


atributo de qualidade envolve um amplo conjunto de características associadas, que
podem ser interpretadas e satisfeitas de formas diferentes, o nosso primeiro objetivo
é identificar e entender o significado de colaboração. Isso significa buscar e analisar
na literatura, como a colaboração se caracteriza, como é composta, quem participa,
como, quando e onde acontece.

• Definir uma forma de organizar e especificar o conhecimento levantado de forma a


facilitar o reuso e compartilhamento dele.

• Validar o conhecimento especificado no catálogo. Com isso, almeja-se que o os


requisitos e características apresentados no catálogo possam ser avaliados quanto
ao seu nível de compreensão e utilidade para o processo de elicitação e validação de
requisitos de uma ferramenta colaborativa.

1.4 Metodologia de Pesquisa

Esta é uma pesquisa aplicada de cunho descritivo que visa criar um catálogo
para a aplicação em atividades da Engenharia de Requisitos (ER). Durante sua execução
foram usados procedimentos de análise bibliográfica, tanto com a finalidade de analisar e

4
comparar o conceito de colaboração e seus aspectos intrínsecas, quanto, por meio de um
mapeamento sistemático, para entender catálogos de requisitos e como representá-los.
A elaboração dos itens do catálogo usou o método indutivo, ou seja, a partir de vários
estudos induziu-se um conjunto de itens sobre colaboração.
Para avaliar o catálogo criado foram usados os procedimentos de estudo de caso
piloto (para avaliação de ferramentas) e survey (para validação dos itens do catálogo).
Em primeiro lugar, realizamos um estudo de caso piloto com um software: GitHub. O
GitHub é um projeto de código aberto e tem sido muito utilizado como ferramenta de
suporte à colaboração por times de desenvolvimento de software. Após a definição de
qual ferramenta utilizar, buscamos entender quais funcionalidades a ferramenta provê
para apoiar a colaboração para posteriormente validá-las com os itens do catálogo.
Aplicamos também um questionário com o objetivo de gerar dados quantitativos
e qualitativos a respeito do catálogo construído, possibilitando a identificação de opiniões
positivas e negativas dos participantes sobre os itens dispostos no catálogo. A abordagem
quantitativa foi utilizada na maior parte do questionário aplicado, onde pedimos aos
participantes que apontassem sua perspectiva com pares de opostos predefinidos (Dis-
pensável - Indispensável). Dessa forma, cada item apresentado no catálogo foi avaliado
pelos participantes quanto à clareza e importância (onde 1 é a pior avaliação possível e 4
a melhor).
A abordagem qualitativa esteve presente em alguns pontos do questionário, nos
quais os participantes tiveram a oportunidade de compartilhar sua opinião sobre os
itens apresentados e sobre o catálogo como um todo, melhorando assim as contribuições
finais da pesquisa. Para isso, nos preocupamos em pedir sugestões de mudança aos
participantes logo após eles terem avaliado uma pequena parcela de itens, dessa forma,
fazendo com que eles não se sentissem sobrecarregados com a quantidade de itens avaliados
anteriormente. Além disso, pedimos, dessa vez em relação ao catálogo como um todo,

5
que os participantes deixassem sugestões, comentários, questionamentos e críticas para a
melhoria desta pesquisa.

1.5 Organização do Trabalho

Além deste capítulo introdutório, este documento está organizado da seguinte


forma: No capítulo 2, é apresentada a fundamentação teórica que serviu de base para a
elaboração desta dissertação, envolvendo conceitos sobre Colaboração, o entendimento
deste domínio do ponto de vista conceitual, do ponto de vista da engenharia de colaboração
e do ponto de vista da engenharia de requisitos, e conceitos sobre abordagens orientadas
a metas.
No capítulo 3, são apresentados os trabalhos relacionados, tanto do ponto de vista
da construção do catálogo como a respeito do conceito e aspectos de colaboração. Além
disso, é apresentado um mapeamento sistemático realizado com o intuito de entender
melhor a construção de catálogos de requisitos.
O capítulo 4 apresenta detalhes sobre o catálogo desenvolvido e as nossas
considerações sobre os princípios que devem ser considerados em seu uso. No capítulo 5,
é apresentada uma avaliação realizada através de um questionário, que visa verificar a
viabilidade do catálogo proposto. Finalmente, o capítulo 6 apresenta as contribuições,
trabalhos futuros e as conclusões finais.

6
2 Fundamentação Teórica

Este capítulo aborda os seguintes conteúdos: 2.1 conceito geral de colaboração,


como esse conceito é caracterizado em alguns trabalhos, e comparação entre eles; 2.2
engenharia de colaboração; 2.3 como caracterizamos colaboração como um requisito
de software; e por fim, 2.4 duas formas de analisar e representar requisitos com tais
características: abordagens orientadas a metas e catálogos.

2.1 O Conceito de Colaboração

Num ambiente de colaboração, os membros de um grupo podem trocar conheci-


mentos, discutir opiniões, dividir responsabilidades, e identificar alternativas, sob pontos
de vistas e habilidades diferentes, para auxiliar na resolução dos problemas existentes
naquele domínio. Assim, o tempo e o esforço necessários para alcançar os resultados
esperados podem ser potencialmente reduzidos (Fuks, Gerosa e Lucena 2002). A colabora-
ção acontece quando pessoas interdependentes e autônomas compartilham recursos para
resolver problemas em comum, podendo envolver novas relações dentro de uma mesma
entidade ou entre entidades distintas (Lawson 2004). Exemplos dessas entidades são
indivíduos, grupos, famílias, profissões, organizações, sistemas governamentais e nações.
Gray (1989) defende que a colaboração não é a ausência de conflito, também não
propõe a minimização do interesse próprio, pelo contrário, os interesses individuais são
um impulsionador da colaboração. Assim, permitindo que as diferentes perspectivas sobre

7
as soluções de um problema ultrapassem as visões limitadas de cada parte envolvida.
Ao trabalhar em grupo, os indivíduos (mesmo que representem entidades) neces-
sitam alcançar a comunicação, coordenação e cooperação (3C) (Ellis, Gibbs e Rein 1991),
(Borghoff e Schlichter 2000). Comunicação envolve a troca de informações e possibilita
uma maior compreensão das percepções de cada indivíduo durante suas atividades;
coordenação organiza e gere os esforços individuais de forma a possibilitar o cumprimento
dos objetivos acordados; e a cooperação se caracteriza pelas ações conjuntas dos membros
do grupo, cada um com experiências e habilidades diferentes, compartilhando o mesmo
ambiente de colaboração com o objetivo de alcançar resultados concretos. (Ellis, Gibbs e
Rein 1991), (Raposo et al. 2001), (Fuks, Gerosa e Lucena 2002).
Determinar quais características são essenciais para as práticas colaborativas
é uma tarefa difícil, pois cada ação colaborativa abrange elementos únicos que foram
identificados a partir de considerações particulares sobre o contexto do problema (Perrault
et al. 2011). Segundo Lawson (2004), os principais cenários que fazem da colaboração um
aspecto necessário são: (i) quando os aspectos de novidade, complexidade, incerteza e
ambiguidade prevalecem no ambiente; (ii) quando a resolução de um problema depende
de abordar outros; (iii) quando as atividades são dificultadas pelo distanciamento físico
ou cultural dos colaboradores; (iv) quando as estratégias convencionais de resolução de
problemas são ineficazes; e (v) quando problemas de performance se originam de ações
individualizadas.
O termo colaboração abrange uma variedade de significados intrincados, que
inclui aspectos humanos e operacionais (Mattessich e Monsey 1992). Por exemplo, segundo
Mattessich e Monsey (1992), no contexto de saúde, ciências sociais, educação e relações
públicas, colaboração é uma relação mútua e bem definida para alcançar objetivos
comuns, incluindo acordo na definição de relacionamentos, objetivos, responsabilidades,
autoridade, confiança, bem como o compartilhamento de recursos e benefícios. Para

8
Henneman, Lee e Cohen (1995), no contexto da saúde, colaboração requer competência,
comprometimento, confiança e respeito entre todos os envolvidos. Para Wiggins e Damore
(2006), na educação, colaboração envolve atividades cooperativas e o compartilhamento
de papéis e responsabilidades para aprendizagem dos estudantes.

2.2 Engenharia de Colaboração

A Engenharia de Colaboração (EC) é baseada em processos sistemáticos que


visam proporcionar interações sociais eficazes para tornar produtos, sistemas e operações
complexas competitivas. Esses processos sistemáticos permitem que diferentes pontos
de vista sejam levantados, resultando na evolução de perspectivas dos colaboradores
durante as interações sociais. Assim, exigindo uma maior preocupação com os processos
e ambientes que tornam essas interações mais produtivas (Lu et al. 2007).
Um dos principais desafios que a EC pretende resolver é integrar de forma
gerenciada as decisões técnicas e interações sociais no ambiente colaborativo, buscando
deixar claro durante as tomadas de decisão o que se deseja alcançar, como pode ser
alcançado, a quem essas decisões interessam e o por quê se deseja alcançar algo. Para
isso, é necessário compreender os aspectos de colaboração que influenciam as pessoas
durante as interações de um time (Lu et al. 2007).
A área ainda aborda quatro características principais do ponto de vista da
construção de um processo de colaboração, sendo estas:

• Flexibilidade interpretativa: pressupõe que o resultado de uma discussão co-


laborativa é dependente das circunstâncias sociais de seu desenvolvimento e da
singularidade das perspectivas dos colaboradores.

• Grupo social relevante: atribui às partes interessadas da discussão em questão um


processo dinâmico onde diferentes perspectivas são propostas, até que um discurso
específico leve todos os interessados a entrarem em um consenso de que a solução

9
apresentada satisfaz a todos.

• Fechamento e estabilização: prevê que os conflitos sejam encerrados após os


colaboradores chegarem num consenso ou quando não surgem novos conflitos, isso
ocorre quando todos possuem um entendimento comum do trabalho que precisa ser
realizado.

• Contexto amplo: destaca a importância de um bom relacionamento dos membros,


experiência profissional no contexto das discussões técnicas, dentre outras caracterís-
ticas do meio social, cultural e político que influenciam diretamente nas interações e
construção de processos colaborativos.

A ideia da EC é oferecer suporte para a construção de práticas de trabalho


colaborativo, transferindo o conhecimento sobre colaboração e as necessidades de um
domínio específico para atividades que possam ser facilmente utilizadas e replicadas pelos
profissionais. (De Vreede e R. O. Briggs 2005). Os processos colaborativos podem ser
classificados em seis padrões de colaboração identificados como os mais comuns durante
as práticas de trabalho colaborativo dentro de uma equipe. Um processo colaborativo
criado por um engenheiro de colaboração geralmente abrange um ou mais desses padrões.
Esses padrões se caracterizam pela evolução das atividades colaborativas de uma equipe
em direção aos seus objetivos (R. Briggs et al. 2006).

• Gerar: os praticantes têm o objetivo de coletar, produzir e compartilhar os conceitos


relacionados ao domínio do problema.

• Reduzir: os praticantes identificam os conceitos mais importantes (generalização).


Neste padrão a equipe busca por conceitos mais gerais, mas sem eliminar conceitos
únicos.

• Esclarecer: os praticantes definem com mais clareza o significado dos conceitos


importantes. Neste padrão a equipe discute sobre as explicações e alternativas de
um conceito.

10
• Organizar: os praticantes têm o objetivo de compreender melhor as relações entre
os conceitos considerados.

• Avaliar: os praticantes buscam a compreensão sobre o real valor dos conceitos


considerados. Neste padrão a equipe avalia quais são as opiniões existentes em
relação aos conceitos e identifica as preferências.

• Construir consenso: os praticantes definem um conjunto de soluções que atendem


as necessidades de cada parte interessada e os objetivos da equipe. Neste padrão a
equipe busca identificar e solucionar divergências de opiniões.

Por fim, a EC contribuiu diretamente com esta pesquisa expondo necessidades


essenciais na construção de um processo que necessita de colaboração para atingir seu
objetivo. Com isso, nos apresentou conceitos e aspectos importantes para a construção
do catálogo apresentado nesta pesquisa. Analisar de forma mais aprofundada a relação
entre esta pesquisa e a EC é um trabalho futuro.

2.3 Colaboração como um Requisito de Software

A engenharia de requisitos é um processo que envolve atividades relacionadas à


produção e gerenciamento de requisitos (Nuseibeh e Easterbrook 2000). Um requisito é
uma descrição formal a respeito das funções ou restrições que o sistema necessita cumprir
para atingir seus objetivos. Em geral existem dois tipos de requisitos, sendo estes: (i)
requisitos funcionais, que definem as funcionalidades do software a ser desenvolvido; e
(ii) requisitos não funcionais, que definem as restrições e as características de qualidade
que o software precisa garantir (Pressman e Maxim 2016), (Glinz 2007). Por exemplo,
a usabilidade é um atributo de qualidade associado a requisitos que visam facilitar a
compreensão e uso do sistema por parte dos usuários (Cysneiros, Werneck e Kushniruk
2005).
RNFs, geralmente, estão associados a aspectos transversais e subjetivos, de difícil

11
modularização, e validação. Considerando a diversidade de expectativas e necessidades
dos stakeholders é difícil também alcançar o consenso entre stakeholders sobre quais re-
quisitos de qualidade são essenciais para atender as características de qualidade desejadas
(Cysneiros 2007).
Considerando as características restritivas que o conceito de colaboração impõe
aos processos, sendo de difícil modularização, que envolve aspectos técnicos e sociais,
este trabalho aborda a Colaboração como Requisito Não Funcional (RNF). As seções a
seguir abordam estratégias de Engenharia de Requisitos para modelar RNFs, e como
elas podem auxiliar no processo de elicitação desse tipo de requisito.

2.4 Uso de Abordagens Orientadas a Metas e

Catálogos

A partir da nossa perspectiva da colaboração como um requisito não funcional,


buscamos por maneiras de representar esse tipo de requisito para facilitar o reuso
de conhecimento a cerca de colaboração. A seguir, apresentamos algumas abordagens
encontradas na literatura para representar requisitos não funcionais.
Métodos orientados a metas, como por exemplo, NFR Framework (Mylopoulos,
Chung e B. Nixon 1992) e i-star (Yu 1997) provêem modelos para representar requisitos
não funcionais (softgoals) e seus refinamentos em objetivos concretos. No entanto, cada
abordagem possui suas próprias sintaxes e particularidades para associar funcionalidades
aos atributos de qualidade.
No NFR Framework os atributos de qualidade são chamados de metas suaves
(softgoal), ou seja, metas abstratas que necessitam de um refinamento ou decomposição
para que se possa ter compreensão sobre como alcançá-las (Mylopoulos, Chung e B. Nixon
1992). O NFR Framework oferece também relacionamentos de contribuição entre metas

12
para auxiliar a análise de impactos e conflitos, bem como representar o conhecimento
intrínseco ao domínio para lidar com o requisito de qualidade (Chung e Prado Leite
2009).
O i-star framework também é orientado a metas, proposto em (Yu 1997). Essa
abordagem provê a modelagem de processos organizacionais, visando uma melhor compre-
ensão sobre como o sistema está embutido no ambiente organizacional. O i-star aborda
dois modelos: modelo SD (Strategic Dependency) que descreve os relacionamentos de
dependência entre atores em um contexto organizacional, considerando vários elementos
intencionais (objetivos, tarefas, recursos e metas) do ambiente; e o modelo SR (Strategic
Rationale) que é usado para descrever os interesses dos stakeholders, apresentando as
dependências que os atores têm um no outro e os seus elementos internos.
Em resumo tanto o NFR Framework como o i-star realizam análises por meio
de um grafo de decomposições e contribuições, permitindo que a subjetividade e as
interações, relacionadas aos atributos de qualidade, sejam mais compreensíveis.
Esses modelos também são usados para compartilhar e possibilitar o reuso
de conhecimento associado a RNF’s. Por exemplo, Cysneiros, Werneck e Kushniruk
(2005) apresentam um catálogo sobre Usabilidade; Milene Serrano e Maurício Serrano
(2013), apresentam um catálogo de RNFs sobre computação invisível, invasiva e móvel;
R. Oliveira et al. (2016) apresentam um catálogo sobre acessibilidade Web. Outras formas
de representação e compartilhamento também são usadas, dentre elas, a mais usada que
identificamos foi a representação tabular. Na seção a seguir resumimos um mapeamento
sistemático que realizamos com o intuito de explorar os catálogos existentes.

13
3 Trabalhos Relacionados

Este capítulo aborda os seguintes conteúdos: 3.1 apresenta trabalhos que carac-
terizam a colaboração de forma mais concreta e 3.2 apresenta catálogos de requisitos
para o reuso de conhecimento durante o processo de elicitação e validação de requisitos
de softwares.

3.1 Colaboração

Em 25/01/2021 desenvolvemos um pesquisa com o objetivo de coletar informações


a respeito de características aplicadas a ferramentas, métodos ou técnicas para prover a
colaboração, mas que não se caracteriza como um mapeamento sistemático. Para isso,
definimos 3 perguntas de pesquisa a serem respondidas: (i) Quais são os aspectos de
colaboração identificados no estudo? (ii) Qual o objetivo do estudo? e (iii) Como os
aspectos de colaboração do estudo são validados? Definimos o seguinte termo básico de
busca: ("requirement" OR "condition") AND ( "collaboration" OR "collaborative") AND
("tool" OR "technique" OR "method").
Após aplicar a string de busca citada anteriormente nas bases IEEE, Scopus,
ACM Digital Library, identificamos um conjunto de artigos que abordam colaboração em
um contexto mais amplo, sem demonstrar aspectos de colaboração que caracterizam o seu
conceito de maneira mais concreta. Somente um desses artigos continham um conjunto de
características concretas sobre Colaboração. E a partir dele encontramos os dois outros

14
que fundamentaram a construção do catálogo aqui apresentado. Apresentamos esses 3
trabalhos a seguir:
Os trabalhos de Wiggins e Damore (2006), Dullemond, Gameren e Solingen
(2014) e Franzago et al. (2017), a seguir, caracterizam a colaboração de forma mais
concreta.
Wiggins e Damore (2006) propõem um framework de avaliação da colaboração no
contexto de educação, que considera seis aspectos abstratos: atitude positiva, processo de
equipe, desenvolvimento profissional, liderança, recursos e benefícios. A atitude positiva
existe quando os colaboradores se mostram motivados, otimistas e dedicados às atividades
desempenhadas em colaboração. Processo de equipe aborda a necessidade de que os
processos executados sejam flexíveis o suficiente para acomodar necessidades individuais e
possíveis mudanças. O desenvolvimento profissional destaca a importância dos processos
colaborativos apoiarem o desenvolvimento profissional contínuo dos colaboradores. A
liderança promove maior participação de colaboradores, além de torná-los mais confiantes
para realizar suas atividades. Os recursos básicos envolve tempo e ferramentas de suporte
para os colaboradores. Enquanto que os benefícios abordam a necessidade de se perceber
os resultados concretos pelos participantes.
Wiggins e Damore (2006) também apresentam um checklist baseado nesses
aspectos direcionado para avaliar o nível de colaboração de instituições escolares e
quais características de colaboração devem ser priorizadas. Os itens do checklist são
classificados como nível inicial, nível emergente e nível efetivo. Além disso, um exemplo
do checklist preenchido a partir de uma escola fictícia foi apresentado para auxiliar as
instituições escolares a identificarem seus próprios níveis de desenvolvimento, fornecendo
uma visão mais ampla do processo de avaliação. E sugerindo a definição de um plano de
ação para melhorar os elementos que estão em níveis mais baixos de desenvolvimento.
Porém, a pesquisa de Wiggins e Damore (2006) direciona o framework construído para

15
avaliar os níveis de desenvolvimento de colaboração apresentando aspectos mais inerentes
ao estudante, não oferecendo muitos detalhes da infraestrutura necessária de apoio a
colaboração. Nossa pesquisa propõe um conjunto de aspetos de colaboração focados no
colaborador e na infraestrutura necessária para garantir que os aspectos relacionados ao
colaborador sejam satisfeitos.
Dullemond, Gameren e Solingen (2014) apresentam um conjunto de oito requisitos
principais para apoiar a colaboração em times virtuais de software. Esses requisitos são:
habilitar a troca de informações de forma discreta; disponibilizar informações relacionadas
ao trabalho de cada colaborador; combinar e disponibilizar dados de fontes diferentes;
representar e reconhecer o contexto atual dos colaboradores; apoiar a escuta de conversas;
dar apoio ao compartilhamento de humor; e fornecer suporte à interrupção.
Dullemond, Gameren e Solingen (2014) realizaram uma análise que destaca que
os membros de times de desenvolvimento gastam a maior parte do tempo em atividades
que envolvem algum tipo de interação com outras pessoas. Além disso, apresenta quatro
atividades diárias principais de um engenheiro de software, considerando as três últimas
atividades que viabilizam a colaboração: codificação; organização da área de trabalho e
processos; representação e comunicação de ideias e decisões de design; e comunicação
e negociação com vários stakeholders. Por isso, os autores realizam um estudo onde
o objetivo foi reunir um conjunto de requisitos essenciais que aumentam o nível de
percepção sobre as atividades de trabalho de cada membro do time de desenvolvimento.
Esses requisitos foram validados através de 9 (nove) estudos empíricos e 1 (um) estudo
analítico.
Os aspectos apresentados por Dullemond, Gameren e Solingen (2014) visam
apoiar a colaboração com o objetivo de aumentar a consciência a respeito das atividades de
cada colaborador durante as interações no ambiente colaborativo, enquanto a pesquisa aqui
apresenta um conjunto de aspectos de apoio a colaboração em diferentes contextos, como

16
por exemplo: liderança, papéis, recursos, desenvolvimento profissional e gerenciamento
de conflitos.
Franzago et al. (2017) relatam a realização de um mapeamento sistemático de
abordagens em Engenharia de software Baseada em Modelos (Model-Driven Software
Engineering (MDSE)) Colaborativa. Esta abordagem se refere ao uso sistemático de
modelos (e transformação de modelos) como artefatos essenciais para o compartilhamento
de informações e desenvolvimento colaborativo. O objetivo foi extrair de cada estudo
primário as informações a respeito das características atuais, desafios e deficiências, e
tendências das publicações sobre abordagens da MDSE colaborativa existentes.
Além disso, o estudo contribuiu com uma taxonomia da MDSE colaborativa
que engloba três dimensões complementares: gerenciamento de modelo, colaboração
e comunicação. Essa taxonomia foi usada pelos autores para criar um framework de
classificação reutilizável para a compreensão, classificação, e comparação de trabalhos
atuais e futuros em MDSE colaborativa. Ao analisar esse trabalho, ficou evidente que
a divisão realizada entre as três dimensões é limitada, uma vez que a divisão envolve
uma dimensão nomeada como "Colaboração", mas todos os aspectos apresentados são
para beneficiar a colaboração. Não há nenhuma indicativa de análise mais refinada para
as dimensões escolhidas. Além disso, os aspectos de colaboração apresentados nessa
pesquisa dizem respeito mais a infraestrutura necessária para a MDSE colaborativa, não
se preocupando com as características que suprem as necessidades dos colaboradores.
A Tabela 3.1 apresenta os aspectos de colaboração extraídos de (Wiggins e
Damore 2006), (Dullemond, Gameren e Solingen 2014), (Franzago et al. 2017). Eles
fundamentam a construção do catálogo realizada neste trabalho, detalhado no Capítulo
4.

17
(Dullemond, Gameren e
(Wiggins e Damore 2006) (Franzago et al. 2017)
Solingen 2014)
Contexto Educação Engenharia de software Engenharia de software
Professores (time de educação), estu- Time de desenvolvimento de
Participantes Partes interessadas
dantes) software
Atitude Positiva: sentimentos e opiniões;
comprometimento e motivação;
papéis: clareza, compreensão e acei-
tação; responsabilidade: para o professor e Troca de informações: habilitar a
desempenho do aluno; consciência sobre as informações de
Desenvolvimento Profissional: foco; forma discreta; Gerenciamento de modelo: artefato
conexão da voz do professor com Dados relacionados ao colaborador: suportado; linguagem de modelagem;
as práticas em sala de aula; uso do expertise disponibilizar informações importantes editor; suporte a multi-visualização;
e talentos; agendamento e entrega para o trabalho; domínio da aplicação;
opções; senso de comunidade; Combinação de dados: fornecer dados Colaboração: área de trabalho compar-
Aspectos de
Processos de time: comunicação e de fontes diferentes; tilhada; detecção de conflito; suporte ao
colaboração
processos de relacionamento de trabalho: Filtrar informações relevantes; versionamento; expertise e papéis do
rotinas, expectativas, encontros; papéis do time; Contexto atual: representar e reconhecer usuário;
Liderança: líderes; clima de trabalho; o cenário atual dos membros do time; Comunicação: parte interessada;
liderança e tomada de decisão pelo professores; Apoiar a escuta de conversas; consciência da área de trabalho;
motivação e responsabilidade; Humor compartilhado: fornecer suporte suporte a comunicação
Recursos: necessidades alvo: (tempo, pessoas, ao compartilhamento de humor;
finanças, agendamento, suprimentos, espaço, e Fornecer suporte a interrupção
outros);
Benefícios: identificados e evidentes; vivido vs.
abstrato; esforços publicamente reconhecidos

Tabela 3.1: Comparação das características extraídas de cada abordagem de colaboração.

3.2 Catálogo de Requisitos

O reuso de requisitos por meio de catálogos é uma estratégia eficiente para


o engenheiro de requisitos elicitar e validar requisitos de software. Como o objetivo
deste trabalho é construir um catálogo de requisitos que possa ser utilizado como
fonte de conhecimento para a construção de ferramentas colaborativas, foi realizado um
mapeamento sistemático onde buscamos por trabalhos que tenham como contribuição
principal a apresentação de um catálogo, biblioteca ou repositório de requisitos, que pode
ser usado como fonte de conhecimento para o desenvolvimento de outros softwares por
engenheiros de requisitos.
O protocolo de um mapeamento sistemático da literatura estabelece procedimen-
tos para que possa ser viável o mapeamento. A definição do protocolo que foi utilizado
nesta pesquisa segue as diretrizes de (Kitchenham e Charters 2007). Além disso, o
processo de revisão dos trabalhos foi realizado pelo autor e um colaborador (aluno de
mestrado em computação), e uma terceira pessoa mediava as discussões para resolução

18
de conflitos na classificação.

3.2.1 Perguntas de Pesquisa e Procedimentos de Busca

O mapeamento buscou responder as seguintes questões de pesquisa (Tabela 3.2):

QP1. Quais são os catálogos de requisitos de software presentes na literatura?


QP2. Como os catálogos representam o conhecimento?
QP3. Qual o domínio de conhecimento representado no catálogo?
QP4. Como os catálogos foram avaliados?

Tabela 3.2: Perguntas de pesquisa.

Os precedimentos de busca utilizados foram o uso de String de Busca nas


bibliotecas Scopus e IeeeExplore, e depois de selecionados os artigos usamos o site do
Scopus para realizar snowball (forward e backward) até não surgir mais nenhum artigo
novo. Depois de definida a string, as buscas foram realizadas em 10/10/2021. A string de
busca utilizada foi a seguinte:
SRCTITLE (requirement) AND (TITLE(catalog OR repository OR library)
OR KEY (catalog OR repository OR library))) OR (TITLE-ABS-KEY ("requirements
reuse"OR "reuse of requirements"OR "requirements library"OR "library requirements"OR
"requirements repository"OR "repository of requirements"OR "requirements catalog"OR
"catalog of requirements") AND (TITLE(catalog OR library OR repository) OR KEY(catalog
OR library OR repository))) AND (LIMIT-TO(LANGUAGE, "English")).
Essa string limitou o espaço de busca para artigos em inglês e artigos que
contivessem as palavras catálogo, repositório e biblioteca nos campos título e chave.

3.2.2 Critérios de Seleção dos Estudos

Os critérios de classificação, inclusão e exclusão foram utilizados para determinar


se um trabalho deve ou não ser incluído no mapeamento. Esses critérios foram definidos

19
com base nas perguntas de pesquisa que direcionam o mapeamento, apresentados na
Tabela 3.2. Esses critérios estão descritos nas Tabelas 3.3 e 3.4.
Tipo Categoria Critério Explicação ou Pergunta
Classificação Contribuição Repositório/Catálogo/Biblioteca É focado em uma biblioteca, catálogo ou repositório?
Como é o conjunto de requisitos (ou o conhecimento
Classificação Conhecimento Caracterização dos requisitos
do domínio ou assets)?
Classificação Conhecimento Representação dos requisitos Como o conjunto de requisitos (ou assets) está representado?
Classificação Validação Validação do domínio Como ocorreu a validação do conhecimento (asset) a ser reusado?

Tabela 3.3: Critérios de classificação.

Tipo Critério Explicação ou Pergunta


O artigo tem como contribuição a apresentação de um repositório,
catálogo ou biblioteca de requisitos de software, que pode ser usado
Inclusão Sujeito
como fonte de conhecimento para outros softwares por engenheiros
de requisitos.
Exclusão Linguagem Artigos não escritos em inglês
Exclusão Artigos científicos Publicações que não sejam artigos científicos revisados por pares.
Exclusão Disponibilidade O artigo está indisponível para download.
O artigo não tem como contribuição a apresentação de um repositório,
catálogo ou biblioteca de requisitos de software, que pode ser usado
Exclusão Sujeito
como fonte de conhecimento para outros softwares por engenheiros
de requisitos.
Exclusão Qualidade O artigo não responde aos critérios de qualidade.
O artigo deve responder pelo menos dois critérios de classificação
Qualidade Ferramenta e Conhecimento
da categoria de Conhecimento.

Tabela 3.4: Critérios de inclusão e exclusão.

3.2.3 Resultados

Dos 75 artigos identificados para leitura na íntegra, 41 são sobre catálogos e 34


desses foram considerados relevantes para esta pesquisa. Os catálogos e suas referências
são listadas na Tabela 3.5.
QP2. Como os catálogos representam o conhecimento? Os tipos de
representação utilizados foram: tabela, lista textual, i*, estrutura hierárquica e SIG. Os
maiores recorrentes são listas textuais e tabelas. Vale destacar que não foi encontrado
nenhum catálogo de requisito sobre Colaboração.
QP3. Qual o domínio de conhecimento representado no catálogo? Os
trabalhos levantados apresentam uma base de conhecimento de diferentes domínios para

20
pesquisadores e indústria, como por exemplo: saúde, computação em nuvem, segurança e
invisibilidade, permitindo aos profissionais acessarem um conjunto de diretrizes, restrições
e requisitos que pode ser útil para a implementação e concepção de software.
QP4. Como os catálogos foram avaliados? Em relação a validação desses
catálogos, 10 trabalhos não representaram qualquer avaliação do catálogo, 11 utilizaram
questionário, 2 utilizaram estudos de caso centrados em questionário, 6 definiram estudos
de caso, e 4 relataram usar cenários reais. Acredita-se que catalogar os requisitos com os
dois tipos mais frequentes (tabela e lista textual), viabiliza a participação de profissionais
no processo de validação. Isso se dá pelo fato que utilizar representações mais complexas,
como por exemplo, o SIG, dificulta que profissionais sem conhecimento específico nesses
métodos de modelagem contribuam com os processos de validação. Assim, exigindo
também mais esforço em treinamento desses profissionais para validar os catálogos.
QP1. Quais são os catálogos de requisitos de software presentes na
literatura? É importante destacar que existe uma falta de preocupação com a dispo-
nibilidade dos catálogos construídos. Alguns trabalhos também citam a necessidade
de extensão e armazenamento do conhecimento gerado. Assim, facilitando o reuso do
conhecimento pela comunidade de interesse nos domínios abordados. A Tabela 3.5 apre-
senta uma visão geral a respeito de todas as questões de pesquisa levantadas para este
mapeamento.
Como será detalhado no próximo capítulo, nós iniciamos a modelagem sobre
colaboração usando uma estrutura hierárquica, mas devido as dificuldades encontradas e
considerando os resultados desse mapeamento sistemático, nós optamos por usar uma
representação tabular.

21
Tipo de
Citação Título do artigo Domínio Meio de avaliação
representação
A Requirements Catalog of Mobile
A1 (El Fhel et. al, 2021) Geographic Information System for Tabela Informações geográficas Questionário
Data Collection
How developers believe Invisibility impacts
A2 (Carvalho et. al, 2020) Tabela Invisibilidade Questionário
NFRs related to User Interaction
software Requirement Catalog on
A3 (Kharbouch et. al, 2020) Acceptability, Usability, Internationalization Tabela Saúde Questionário
and Sustainability for Contraception mPHRs
A Requirements Catalog of Mobile Personal
A4 (Bachiri et. al, 2019) Tabela Saúde Estudo de caso
Health Records for Prenatal Care
Catalog of invisibility requirements for
A5 (Carvalho et. al, 2018) SIG Invisibilidade Questionário
UbiComp and IoT applications
Sustainability requirements for connected
A6 (Ouhbi et. al, 2018) Tabela Saúde Questionário
health applications
A gamification requirements catalog for
educational software: Results from a
A7 (Peixoto and Silva, 2017) Tabela Ensino e Aprendizagem Questionário
systematic literature review and a survey
with experts
A reusable requirements catalog for
A8 (Ouhbi et. al, 2017) internationalized and sustainable blood Tabela Saúde Questionário
donation apps
ReqML-Catalog: The road to a requirements
A9 (Soad et. al, 2017) Estrutura hierárquica Ensino e Aprendizagem Questionário
catalog for mobile learning applications
Reusing functional software requirements in
A10 (Pacheco et. al, 2017) small-sized software enterprises: a model Tabela softwares de pequeno porte Estudo de caso
oriented to the catalog of requirements
A11 (de Castro Leal et. al, 2015) Cataloguing provenance-awareness with patterns SIG Proveniência Estudo de caso
Requirements catalog for business process
Estudo de caso/
A12 (Fellmann et. al, 2016) modeling recommender systems (extended Lista textual Melhoria de processos
Questionário
abstract)
Towards an M-learning requirements catalog
Estudo de caso/
A13 (Marcolino and Barbosa, 2016) for the development of educational applications Tabela Ensino e Aprendizagem
Questionário
for the teaching of programming
Towards a requirements catalogue for
A14 (Bahr, 2015) Lista Textual Prototipagem de interfaces Questionário
prototyping tools of mobile user interfaces
Requirements and tasks of cohorts and
A15 (Michalik et. al, 2014) Lista textual Saúde Não teve
registers, the German KoRegIT project
A16 (Cunha and do Prado Leite, 2014) Reusing non-functional patterns in i modeling i* Consciência Não teve
(MC2)2: Criteria, requirements and a software Tabela Lista
A17 (Menzel et. al, 2013) Computação em Nuvem Cenário real
prototype for Cloud infrastructure decisions textual
A catalogue of functional software requirement
A18 (Palomares et. al, 2013) patterns for the domain of content management Tabela Gerenciamento de conteúdo Não teve
systems
A requirements catalog for mobile learning
A19 (Filho and Barbosa, 2013) Estrutura hierárquica Estudo e Aprendizagem Entrevistas
environments
A set of requirements for Business Process Tabela/
A20 (Costa et. al, 2013) Melhorias de processos Questionário
Management Suite (BPMS) Lista textual
A catalogue of non-technical requirement
A21 (Palomares et. al, 2012) Tabela Padrões de requisitos Questionário
patterns
Internationalization requirements for e-learning
A22 (Cos et. al, 2012) Tabela Ensino e Aprendizagem Não teve
audit purposes
PABRE-man: Management of a requirement
A23 (Palomares et. al, 2011) Precisa analisar melhor Padrões de requisitos Não teve
patterns catalogue
Inferring technical constraints of a wireless
A24 (Oppermann and Peter, 2010) sensor network application from end-user Tabela Redes de sensores sem fio Estudo de caso
requirements
Requirements and evaluation procedures for
A25 (Volkamer and McGaley, 2007) Lista textual Sistemas de votação Cenário real
eVoting
Requirements for information systems model-
A26 (Santos-Neto et. al, 2007) Estrutura hierárquica Ferramentas de teste Não teve
based testing
An audit method of personal data based on
A27 (Martínez et. al, 2006) Lista textual Segurança Estudo de caso
Requirements Engineering
Requirements for requirements management Ferramentas de gerenciamento
A28 (Hoffmann et. al, 2004) Estrutura hierárquica Não teve
tools automotivo
Model-based Method to Utilize a Catalogue
A29 (Strey et. al, 2021) of Quality Requirements in software Estrutura hierárquica Melhoria de processos Cenário real
Development
A catalogue of reusable security concerns:
A30 (Goncalves and da Silva, 2018) Tabela Segurança Não teve
Focus on privacy threats
Towards a catalogue of reusable security
A31 (Goncalves and da Silva, 2018) Estrutura hierárquica Segurança Não teve
requirements, risks and vulnerabilities
A catalogue supporting software sustainability
A32 (Oyedeji et. al, 2018) Tabela Design de sustentabilidade Estudo de caso
design
A catalog of security requirements patterns
A33 (Beckers et. al, 2014) Tabela/Lista textuais Segurança Cenário real
for the domain of cloud computing systems
Constructing a Catalogue of Conflicts among
A34 (Mairiza and Zowghi, 2010) Tabela Conflitos de requisitos Não teve
Non-functional Requirements

Tabela 3.5: Visão geral dos catálogos.

22
Neste mapeamento sistemático foram encontrados trabalhos voltados para a
construção de catálogos abordando vários RNF’s. O objetivo desses trabalhos foi ajudar o
processo de levantamento e validação de requisitos durante o processo de desenvolvimento
de ferramentas de software. A seguir, apresentamos os principais trabalhos relacionados à
nossa pesquisa, principalmente, em relação aos seus processos de condução para construção
de seus catálogos.
Na pesquisa de El Fhel, Sardi e Idri (2021) é apresentado um catálogo de re-
quisitos para sistemas de informação geográficas (GIS) com foco em coleta de dados e
dispositivos móveis. Visando oferecer um conjunto de requisitos adequado para a reutiliza-
ção de conhecimento por stakeholders e desenvolvedores, os autores disponibilizaram um
catálogo com atributos de qualidade sobre usabilidade, internacionalização, performance,
confiabilidade e sustentabilidade. O método de especificação utilizado considerou padrões
de ES e a literatura. O catálogo desenvolvido é representado através de uma tabela com
51 requisitos divididos entre os 5 RNF’s avaliados e oferece um corpo de conhecimento
para o desenvolvimento de aplicações GIS. Entretanto, os autores não esclarecem como o
catálogo foi desenvolvido, tornando-se uma das limitações desta pesquisa. Outra limitação
é a falta de uma análise sobre a opinião de usuários, desenvolvedores ou pesquisadores
sobre os requisitos apresentados, onde um levantamento sobre a percepção desses pessoas
poderiam gerar mais perspectivas de evolução para o artefato construído. Não há também
uma preocupação clara sobre como o catálogo pode ser usado em um contexto real de
especificação de requisitos e quais requisitos devem ser priorizados.
Soad et al. (2017) abordam a necessidade de fornecer meios para avaliar com
mais eficiência a qualidade de aplicações móveis com foco em ensino/aprendizagem,
visando atender interesses como: confiabilidade, performance entre outros requisitos não
funcionais. Um catálogo de aspectos de qualidade foi construído para dar suporte a
essas aplicações no processo de design, avaliação e especificação de requisitos. Para a

23
construção do catálogo, os autores realizaram uma revisão sistemática de literatura e
consultaram especialistas do domínio. A avaliação do catálogo se deu a partir do uso
prático do catálogo em projetos reais e por meio de um survey com 18 respondentes com
experiência em pesquisas voltadas para educação com auxílio da computação.
Assim como o catálogo apresentado nesta dissertação, o catálogo apresentado
em (Soad et al. 2017) não compreende apenas requisitos técnicos, mas também aborda
questões relacionadas diretamente com os usuários, como por exemplo: aspectos educaci-
onais, socioculturais e socioeconômicas relacionadas com as atividades diárias de alunos e
professores. No entanto, os autores não fornecem sugestões detalhadas de uso do catálogo,
essa falta de informações dificultam a sua compreensão e utilização em contextos reais.
Outra limitação é que os autores não investigaram a percepção dos participantes sobre
cada item ou grupo de itens do catálogo, direcionando os questionamentos aos partici-
pantes sobre características mais genéricas de utilidade do catálogo, assim, tornando a
identificação de pontos de melhoria para o catálogo mais difícil.
A pesquisa de Hoffmann et al. (2004) propõe a construção de um catálogo de
requisitos para auxiliar a construção de ferramentas de gerenciamento de requisitos
voltados para os setores automotivo, aéreo e de sistemas de defesa. Diversos requisitos
foram estruturados de forma hierárquica e divididos entre 3 papéis específicos, sendo
estes: desenvolvedores, administradores da ferramenta e do projeto. O estudo consiste em
disponibilizar requisitos completos e adequados tanto para desenvolvedores de ferramentas
como para os usuários dessas ferramentas. Os requisitos foram apresentados de forma
textual junto ao seu nível de prioridade. Os autores não apresentaram uma validação
para o catálogo desenvolvido, enquanto a pesquisa aqui considerou a validação tanto de
características gerais como de pontos específicos do catálogo desenvolvido.
O trabalho de Carvalho, Andrade e K. M. Oliveira (2020) destaca o avanço
da computação ubíqua e internet das Coisas (IoT), mais especificamente relacionado

24
com a Interação Humano Computador (IHC). Para ajudar engenheiros de software a
escolherem as estratégias mais apropriadas para determinado contexto de desenvolvimento,
principalmente sobre questões relacionadas à interação do usuário, os autores coletaram
e catalogaram correlações (positivas e negativas) existentes entre a invisibilidade e
outros atributos de qualidade mais tradicionais. O catálogo foi desenvolvido a partir
de entrevistas com 15 desenvolvedores com nível avançado de experiência na área e
com a análise de conteúdo posterior. Além disso, um questionário foi aplicado com 7
Ph.Ds com experiência em RNF’s para a validação do catálogo. O trabalho apresenta
um catálogo final com 110 correlações de invisibilidade com outros 9 RNF’s, com isso,
garante um corpo de conhecimento considerável sobre as percepções de desenvolvedores
em relação aos impactos de cada contexto/estratégia de desenvolvimento para alcançar a
invisibilidade em projetos de software. Algumas das principais diferenças para a nossa
pesquisa são: (i) o fato que o catálogo construído aqui foi fundamentado na literatura e
posteriormente validado com desenvolvedores e especialistas do domínio; e (ii) a nossa
pesquisa também não apresenta correlações (positivas e negativas), entretanto associamos
os aspectos de colaboração coletados na literatura com um ou mais requisitos detalhados.

El Fhel, Sardi e Idri (2021) (Carvalho et. al, 2020) (Soad et. al, 2017) Trabalho proposto
Tipo de
Tabela Tabela Estrutura hierárquica Tabela
representação
Domínio Informações geográficas Invisibilidade Ensino e Aprendizagem Colaboração
Validação Questionário Questionário Questionário Questionário

Tabela 3.6: Comparação entre os trabalhos relacionados e o proposto.

25
4 Um Catálogo para Elicitação e
Validação de Requisitos de
Colaboração

Este capítulo apresenta as etapas para construção do catálogo, como ele está
organizado, uma descrição de seus itens e diretrizes de uso.

4.1 Elaboração do Catálogo

A partir da análise dos trabalhos de Wiggins e Damore (2006), Dullemond,


Gameren e Solingen (2014), Franzago et al. (2017) e (3C) Ellis, Gibbs e Rein (1991),
identificou-se os aspectos de colaboração que contribuem para o desenvolvimento de
ferramentas de software que dão apoio a processos colaborativos.
Primeiramente foi estabelecido um alinhamento entre as características definidas
pelos quatro trabalhos, tentando-se identificar semelhanças e diferenças para criar um
conjunto de características consistentes e sem repetições. Depois disso, redigiu-se pelo
menos uma pergunta para cada uma dessas características. Após uma análise criteriosa
das perguntas geradas, tentou-se escrevê-las de forma mais direta e verificável.
Depois disso, realizou-se um estudo piloto para avaliar se as características do
catálogo proviam um direcionamento prático para analisar os aspectos de colaboração

26
de uma ferramenta existente. Esse estudo foi realizado pelo proponente do catálogo
e a ferramenta analisada foi o GitHub (estudo detalhado no Apêndice A - Avaliação
da Ferramenta GitHub). Com isso, as questões consideradas repetidas, não claras ou
ambíguas foram revisadas novamente.
A Tabela 4.1 apresenta o alinhamento das características de colaboração obtidas
dos 4 trabalhos de referência citados anteriormente. Essas características foram organi-
zadas de acordo com os 3Cs em dois tópicos essenciais para um processo colaborativo
eficiente: aspectos relacionados ao colaborador e aspectos associados a infraestrutura de
colaboração (linhas da tabela).

Comunicação Coordenação Cooperação


Clareza, compreensão e aceitação
Clareza de foco;
Consciência do ambiente;
Comunicação ativa; Papéis do colaborador;
Consciência de atividades
Suporte de Líderes; Tarefas do colaborador;
de cooperação;
Decisões tomadas compartilhadas; Definição de objetivos;
Aspectos relacionados Comprometimento e motivação;
Conexão social Conexão das atividades com
ao colaborador Responsabilidade sobre sua perfor-
Resultados discutidos; expertise do colaborador;
mance;
Discussão sobre filosofia, objetivos Fornecer opções de
Resultados identificados
experiências crescimento profissional
e evidentes;
Senso de comunidade;
Voz do colaborador
Ambiente compartilhado;
Múltiplos tipos
de artefatos;
Identificação, documentação
Comunicação externa e interna;
e resolução;
Traceabilidade de decisões;
Infraestrutura de tomada de
Regras do ambiente;
decisão;
Representar e reconhecer o Artefatos consumidos e gerados;
Aspectos de infraestru- Documentação do processo;
contexto atual; Suporte a multi visualização;
tura de colaboração Necessidades alvo: financeiro,
Suporte a escuta de conversas; Suporte ao versionamento
tempo, ferramentas, etc;
Suporte a interrupção;
Enconttrar informações
Suporte ao compartilhamento
relevantes;
de humor
Dados relacionados ao
trabalho disponíveis;
Combinação de dados de
várias origens

Tabela 4.1: Visão geral de características de colaboração.

1. Aspectos relacionados ao colaborador: fornecem uma perspectiva de como as


pessoas se comportam (e quais expectativas elas possuem) em atividades de colaboração,
quais são o seus papéis e como eles devem ser designados, além de estabelecerem um
ambiente onde as parcerias interpessoais sejam significativas para que os colaboradores

27
não se sintam apenas um sobrevivente no processo.
2. Aspectos de infraestrutura de colaboração: fornecem uma perspectiva de
ambiente e recursos; o ambiente de colaboração exige comunicação ativa entre os cola-
boradores, pois praticamente todas as atividades incluem alguma forma de interação
com outras pessoas. Por isso, é fundamental que se ofereça a infraestrutura adequada
para essa interação e para fornecer as informações que realmente são importantes para
os colaboradores, evitando que ambientes e colaboradores sejam sobrecarregados com
informações desnecessárias. Além disso, os processos colaborativos normalmente exigem
resultados ou produtos finais e concretos, esses resultados podem ser representados através
de um documento, modelo, software, dentre outros.
Vale destacar que esses tópicos estão inter-relacionados, ou seja, os aspectos
relacionados ao colaborador precisam de infraestrutura para serem realizados, enquanto
que os aspectos de infraestrutura existem para dar suporte aos colaboradores. Esta análise
é essencial para auxiliar na tomada de decisões em relação aos aspectos (relacionados ao
colaborador e de infraestrutura) que serão considerados importantes para cada situação
específica de colaboração.

4.2 Organização e Descrição dos Itens do Catálogo

O catálogo é apresentado nas Figuras 4.1 4.2 e 4.3. Ele visa proporcionar para o
engenheiro de requisitos uma fonte de informação para identificação de características
a serem levadas em conta no desenvolvimento de software colaborativo. Além disso, o
catálogo pode ajudar em cenários de validação ou avaliação de ferramentas concorrentes,
nos quais se analisa se a ferramenta desenvolvida ou as ferramentas concorrentes atendem
aos aspectos de colaboração desejados e quais não são cobertos ou precisam ser melhorados.
As Figuras 4.1 4.2 e 4.3 também apresentam a relação das questões com os
aspectos de colaboração que foram levantados nos trabalhos relacionados. Os tópicos

28
amarelos estão associados a Franzago et al. (2017), os tópicos verdes a Wiggins e Damore
(2006) e os azuis a Dullemond, Gameren e Solingen (2014).

COMUNICAÇÃO
ID ITENS DO CATÁLOGO RÓTULOS SUB-RÓTULOS
Fornecer suporte para os colaboradores se comunicarem
I1
ativamente. Comunicação ativa
Comunicação externa e interna
I2 Fornecer ferramentas de comunicação integradas ao sistema.

I3 Fornecer ferramentas de comunicação externas ao sistema. Suporte à


Fornecer suporte a comunicação formal e informal, pública e comunicação
I4
privada.
Suporte a escuta de conversas
Fornecer suporte para os colaboradores buscarem ou registrarem
I5
interesse em tópicos de discussão relevantes para si.
I6 Possibilitar a mediação das discussões entre os colaboradores. Liderança Atitude Suporte de Líderes
Positiva Suporte à Comprometimento e motivação
I7 Estimular os colaboradores a fornecer um feedback rápido. comunicação Comunicação ativa
Benefícios
Consciência do ambiente
Estimular os colaboradores a vivenciar e discutir os resultados Atitude Positiva
I8 Resultados discutidos
alcançados. Suporte à
Comprometimento e motivação
comunicação
Atitude Positiva Consciência do ambiente
Fornecer infraestrutura para os colaboradores compartilharem e
I9 Suporte à Discussão sobre filosofia,
acordarem filosofias, objetivos e práticas adotadas.
comunicação objetivos e experiências
Possibilitar o rastreamento de decisões tomadas e acordos Suporte à Consciência do ambiente
I10
acertados através de ferramentas de comunicação. comunicação Traceabilidade de decisões
Consciência do ambiente
Fornecer a integração de utilitários no ambiente compartilhado
I11 Área de trabalho Representar e reconhecer o
que reconheçam o contexto atual dos colaboradores.
contexto atual
Consciência do ambiente
Fornecer suporte ao compartilhamento de humor juntamente com Suporte à Suporte ao compartilhamento
I12
as atividades e informações compartilhadas. comunicação de humor
Conexão social
Fornecer suporte para os colaboradores não serem interrompidos
Área de trabalho
quando estiverem envolvidos em atividades de alta interatividade Consciência do ambiente
I13 Suporte à
e concentração, ou quando não quiserem receber informações de Suporte a interrupção
comunicação
qualquer relevância.

Figura 4.1: Catálogo de apoio a processos colaborativos. (Parte 1)

Vale destacar que cada tópico não necessariamente existia em apenas um dos
trabalhos que fundamentaram a construção do catálogo. Por exemplo: o trabalho (Wiggins
e Damore 2006) e o trabalho (Franzago et al. 2017) citam a importância de se ter papéis
de colaboradores organizados e bem definidos. Nesse caso, nosso objetivo foi unificar
a ideia, escolhendo apenas um dos aspectos já que eles possuem a mesma motivação,

29
COORDENAÇÃO
ID ITENS DO CATÁLOGO RÓTULOS SUB-RÓTULOS
Indicar qual é o papel do colaborador nas interações realizadas no
I14
ambiente compartilhado.
Área de trabalho Papéis do colaborador
I15 Possibilitar o envio de convite de participação aos colaboradores.
Papel Ambiente compartilhado
Possibilitar a definição e distribuição dos papéis e permissões de cada
I16
colaborador.
Possibilitar aos líderes designarem as atividades de cada colaborador
I17
de acordo com sua expertise. Suporte de líderes
Liderança Tarefas do colaborador
Possibilitar aos líderes definirem os objetivos do trabalho
I18 Atividades Definição de objetivos
colaborativo e associar com as atividades que serão realizadas.
Papel Conexão das atividades com
Possibilitar a redefinição e reorganização de papéis, atividades e expertise do colaborador
I19
permissões dos colaboradores.
I20 Fornecer um ambiente compartilhado para a colaboração.
Ambiente compartilhado
Fornecer as regras de cooperação e comunicação para os Área de trabalho
I21 Regras de ambiente
colaboradores no ambiente compartilhado.
Necessidades alvo:
Fornecer os recursos (ferramentas e artefatos) necessários para o Recursos
I22 financeiro, tempo, ferramentas,
processo colaborativo (ex: editor, dashboard, padrões, etc). Artefatos
etc Múltiplos tipos de artefatos
Área de trabalho Ambiente compartilhado
I23 Possibilitar o gerenciamento de conflitos no espaço compartilhado. Gerenciamento Identificação, documentação e
de conflito resolução
Fornecer a infraestrutura necessária para os colaboradores Voz do colaborador Infra-
I24 Liderança
participarem das tomadas de decisão. estrutura de tomada de decisão
Necessidades alvo: financeiro,
Fornecer a visualização de informações sobre o uso dos recursos
I25 Recursos tempo, ferramentas, etc
disponíveis para possibilitar uma avaliação deles.
Documentação do processo
Fornecer no espaço compartilhado uma síntese das contribuições dos Ambiente compartilhado
I26
colaboradores. Consciência do ambiente
Fornecer informações relevantes de acordo com as atividades que os Encontrar informações
I27
colaboradores estão associados. Área de trabalho relevantes
Atividades Dados relacionados ao trabalho
Suporte à disponíveis Combinação de
Disponibilizar para os colaboradores informações combinadas e comunicação dados de várias origens
I28
contextualizadas das diferentes fontes disponíveis. Artefatos Suporte a multi visualização
Artefatos consumidos

Figura 4.2: Catálogo de apoio a processos colaborativos. (Parte 2)

evitando que aspectos duplicados dificultem a organização e o entendimento do catálogo.


As Figuras 4.1, 4.2 e 4.3 reúnem 43 itens que integram nosso catálogo de
colaboração. A seguir, nós apresentamos, em detalhes, as motivações de criação desses
itens. Vale destacar que a explicação segue a mesma ordem das Figuras 4.1, 4.2 e 4.3, e
os itens que estão agrupados pelos mesmos rótulos também são explicados juntos. Os

30
COOPERAÇÃO
ID ITENS DO CATÁLOGO RÓTULOS SUB-RÓTULOS

I29 Possibilitar aos colaboradores estarem cientes dos seus papéis.


Papéis do colaborador Clareza,
Papel
Possibilitar que os colaboradores aceitem ou não os papéis compreensão e aceitação
I30
designados para eles.
Possibilitar aos colaboradores estarem cientes dos objetivos de suas Tarefas do colaborador Clareza
I31 Atividades
atividades. de foco Definição de objetivos
Possibilitar aos colaboradores visualizarem as interações de outros Ambiente compartilhado
I32
colaboradores no espaço compartilhado. Consciência do ambiente
Área de trabalho
Tarefas do colaborador
Possibilitar a visualização das atividades desenvolvidas pelos Atividades
I33 Consciência de atividades de
colaboradores no espaço compartilhado. cooperação
Área de trabalho Consciência do ambiente
Possibilitar aos colaboradores confirmarem que se sentem apoiados
I34 Liderança Suporte de líderes
por líderes.
Atitude Positiva Comprometimento e motivação
Fornecer a visualização de informações sobre o engajamento dos Área de trabalho Consciência do ambiente
I35
colaboradores no espaço compartilhado. Atitude Positiva Comprometimento e motivação
Atividades Tarefas do colaborador
Possibilitar aos colaboradores estarem cientes da necessidade do seu Atitude Positiva Responsabilidade sobre sua
I36
comprometimento e de suas responsabilidades. Desenvolvimento performance Senso de
Profissional comunidade
Ambiente compartilhado
Consciência do ambiente
Área de trabalho
Fornecer e organizar no ambiente compartilhado as decisões e Comprometimento e motivação
I37 Atitude Positiva
resultados alcançados. Encontrar informações relevan-
Artefatos
tes Artefatos gerados Decisões
tomadas compartilhadas
Possibilitar aos colaboradores estarem cientes das decisões e Área de trabalho Ambiente compartilhado Resul-
I38
resultados alcançados. Benefícios tados identificados e evidentes
Área de trabalho Ambiente compartilhado Tare-
Conceder o reconhecimento para os colaboradores que
I39 Atividades fas do colaborador Esforço
desempenharam suas atividades de forma eficiente.
Benefícios reconhecido publicamente
Atividades
Tarefas do colaborador
I40 Atribuir atividades que envolvem grupos inteiros de participantes. Desenvolvimento
Senso de comunidade
Profissional
Área de trabalho
Possibilitar aos colaboradores planejarem e liderarem atividades de Ambiente compartilhado
I41 Desenvolvimento
cooperação. Voz do colaborador
Profissional
Atividades Tarefas do colaborador
Possibilitar aos colaboradores realizarem atividades que corroboram
I42 Desenvolvimento Fornecer opções de crescimento
com o seu desenvolvimento profissional.
Profissional profissional

Consciência do ambiente
Área de trabalho
I43 Fornecer suporte ao versionamento de artefatos compartilhados. Suporte ao versionamento
Artefatos
Múltiplos tipos de artefatos

Figura 4.3: Catálogo de apoio a processos colaborativos. (Parte 3)

31
termos que dão início a cada explicação resumem a explicação seguinte.
Comunicação ativa e facilitada - Um dos mais importantes requisitos é manter
uma comunicação ativa, saber torná-la eficiente e manter todos os interessados na
discussão informados. No entanto, estabelecer uma comunicação eficiente em ambientes
de ferramentas de software, de fato, representa um desafio significativo, principalmente
quando falamos de times distribuídos que abrangem uma quantidade expressiva de
pessoas. É preciso, portanto, estabelecer regras de comunicação e fornecer meios de
comunicação internos e externos ao software, possibilitando que a transmissão e recepção
de informações seja realizada mais rapidamente. Além disso, é necessário garantir que se
estabeleçam conexões pessoais a partir de comunicações facilitadas e que os colaboradores
possam alcançar discussões que, do seu próprio ponto de vista, seja apropriada para a
realização de suas atividades.
Essas necessidades estão expostas no catálogo por meio dos seguintes itens: I1 -
Fornecer suporte para os colaboradores se comunicarem ativamente; I2 - Fornecer ferra-
mentas de comunicação integradas ao sistema; I3 - Fornecer ferramentas de comunicação
externas ao sistema; I4 - Fornecer suporte comunicação formal e informal, pública e
privada; I5 - Fornecer suporte para os colaboradores buscarem e registrarem interesse em
tópicos de discussão relevantes para si.
Discussões mediadas - Uma forma de evitar processos de comunicação cada vez
menos produtivos é possibilitar a mediação de discussões. A comunicação precisa ser
coordenada a todo momento e esse papel não necessariamente precisa ser atribuído apenas
aos líderes. Assim, os colaboradores possuem controle sobre as pautas das discussões e
problemas a serem resolvidos, fazendo com que as partes envolvidas se sintam engajadas
com as suas atividades. Outro fator necessário durante a comunicação é fornecer estímulo
para os colaboradores darem feedback o mais rápido possível. Isso torna as pessoas de
um ambiente colaborativo mais produtivas durante as atividades desenvolvidas. Essas

32
necessidades estão expostas no catálogo por meio dos seguintes itens: I6 - Possibilitar
a mediação das discussões entre os colaboradores; I7 - Estimular os colaboradores a
fornecer um feedback rápido.
Colaboradores estimulados - Um dos fatores de sucesso de um processo cola-
borativo é fazer com que os colaboradores vivenciem todos os resultados alcançados.
Isso ocorre porque os colaboradores se sentem mais confiantes e motivados ao discutir
os progressos alcançados durante as atividades de colaboração. A ferramenta de soft-
ware colaborativa deve ter papel fundamental nesse contexto. Neste tipo de cenário é
necessário que um ambiente compartilhado torne os processos de discussão mais fáceis.
Essa necessidade está exposta no catálogo por meio do seguinte item: I8 - Estimular os
colaboradores a vivenciar e discutir os resultados alcançados.
Compartilhamento de práticas profissionais - Fornecer para os colaboradores uma
infraestrutura que auxilia o compartilhamento de filosofias, práticas e objetivos adotados
permite uma maior consciência sobre o ambiente de trabalho. Outras vantagens desse
compartilhamento é a discussão entre as soluções de atividades, possibilitado que colabo-
radores aprimorem suas habilidades e práticas durante as atividades. Essa necessidade
está exposta no catálogo por meio do seguinte item: I9 - Fornecer infraestrutura para os
colaboradores compartilharem e acordarem filosofias, objetivos e práticas adotadas.
Decisões rastreáveis - Um dos pilares da colaboração é possibilitar uma maior
percepção sobre o ambiente compartilhado. Nessa perspectiva, é fundamental ter a
rastreabilidade das decisões tomadas e acordos acertados durante as atividades de
comunicação. Assim, as tarefas e discussões têm uma ligação estruturada com a discussão
que gerou sua criação e podem ser alcançadas por qualquer colaborador. Essa necessidade
está exposta no catálogo por meio do seguinte item: I10 - Possibilitar o rastreamento de
decisões tomadas e acordos acertados através de ferramentas de comunicação.
Reconhecimento do contexto atual - Um ambiente de suporte à colaboração

33
deve ser capaz de reconhecer o contexto atual dos colaboradores. É necessário que um
colaborador possa visualizar qual atividade um outro colaborador está executando. Outra
vantagem importante é poder reconhecer o momento atual de cada colaborador, como por
exemplo, se um colaborador está ausente do ambiente compartilhado. Essa necessidade
está exposta no catálogo por meio do seguinte item: I11 - Fornecer a integração de
utilitários no ambiente compartilhado que reconheçam o contexto atual dos colaboradores.
Humor compartilhado - Os colaboradores de um ambiente colaborativo se tornam
mais conectados socialmente quando compartilham o seu humor atual. Por isso, é
importante que eles consigam expressar seus sentimentos em relação às atividades e
informações compartilhadas no ambiente. Este requisito não parece ser tão importante
em um primeiro momento, mas Dullemond, Gameren e Solingen (2014) mostram o quão
valioso foi para um time a funcionalidade que fornece indicadores de humor entre as
pessoas do time. Essa necessidade está exposta no catálogo por meio do seguinte item:
I12 -Fornecer suporte ao compartilhamento de humor juntamente com as atividades e
informações compartilhadas.
Apoio à interrupção - Um dos requisitos de sucesso para ambientes colaborativos
é o suporte à interrupção. O ambiente precisa fornecer aos colaboradores informações
sobre o contexto no qual o time está trabalhando para que eles possam colaborar de
forma efetiva. Ferramentas de suporte podem disponibilizar, por exemplo, o nível de
complexidade de uma atividade que está sendo desempenhada por um colaborador.
Isso garante que colaboradores sejam mais conscientes sobre o momento de iniciar uma
comunicação ou pedir ajuda. Essa necessidade está exposta no catálogo por meio do
seguinte item: I13 - Fornecer suporte para os colaboradores não serem interrompidos
quando estiverem envolvidos em atividades de alta interatividade e concentração, ou
quando não quiserem receber informações de qualquer relevância.
Papéis claros e acordados - Uma colaboração altamente coordenada exige que

34
pessoas, times e organizações compartilhem papéis e responsabilidades durante todo o
processo. Esses papéis precisam ser claros e acessíveis para garantir uma comunicação
eficiente. Um ambiente colaborativo deve garantir que uma interação inicie com colabo-
radores que conhecem qual a função de cada um naquele momento, bem como os limites
das ações de cada colaborador. Essas necessidades estão expostas no catálogo por meio
dos seguintes itens: I14 - Indicar qual é o papel do colaborador nas interações realizadas
no ambiente compartilhado; I15 - Possibilitar o envio de convite de participação aos
colaboradores; I16 - Possibilitar a definição e distribuição dos papéis e permissões de
cada colaborador.
Papéis e atividades flexíveis - Um dos principais propósitos da colaboração é fazer
com que interações entre pessoas com conhecimentos diversos possam atingir um objetivo
comum. Os colaboradores se sentem mais capazes e motivados ao se depararem com
papéis e atividades que englobam sua área de conhecimento. Por isso é importante ter
flexibilidade na distribuição de papéis e atividades durante todo o processo, possibilitando
que as mesmas sejam acordadas e que colaboradores se sintam à vontade para não aceitar
o papel ou atividade que lhe foi atribuído. Essas necessidades estão expostas no catálogo
por meio dos seguintes itens: I17 - Possibilitar aos líderes designarem as atividades de
cada colaborador de acordo com sua expertise; I18 - Possibilitar aos líderes definirem
os objetivos do trabalho colaborativo e associar com as atividades que serão realizadas;
I19 - Possibilitar a redefinição e reorganização de papéis, atividades e permissões dos
colaboradores.
Ambiente de trabalho compartilhado - Um processo colaborativo suportado por
uma ferramenta de software deve apoiar times distribuídos geograficamente a realizarem
suas atividades sem que existam falhas de comunicação, coordenação e cooperação.
Fornecer um ambiente de trabalho compartilhado e suas regras de colaboração deve ser
uma preocupação inicial de todo processo colaborativo, visto que essas regras servem

35
como guia de todas as interações no processo. Essas regras dependem diretamente dos
papéis e nível de experiência dos colaboradores, ou seja, cada processo colaborativo
pressupõe um ambiente e regras específicas para o seu problema. Assim, é importante que
se defina e compartilhe todas as regras de colaboração com o time, como por exemplo:
não permitir que decisões sejam tomadas sem que todos os interessados na discussão
estejam presentes. Essas necessidades estão expostas no catálogo por meio dos seguintes
itens: I20 - Fornecer um ambiente compartilhado para a colaboração; I21 - Fornecer as
regras de cooperação e comunicação para os colaboradores no ambiente compartilhado.
Ambiente de trabalho compartilhado - O processo colaborativo precisa ser
suportado por ferramentas e artefatos. Por isso, a análise de quais ferramentas e artefatos
tornarão os colaboradores mais capacitados para contribuir com o processo é um requisito
que não pode ser desconsiderado ou considerado em estágios mais avançados da construção
da ferramenta. Perceber tarde que os recursos disponíveis não são suficientes para alcançar
os objetivos do processo colaborativo causará retrabalho e gastos não planejados para
o projeto. Essa necessidade está exposta no catálogo por meio do seguinte item: I22 -
Fornecer os recursos (ferramentas e artefatos) necessários para o processo colaborativo
(ex: editor, dashboard, padrões, etc).
Gerenciamento de conflitos - O gerenciamento de conflitos em ferramentas de
software muitas vezes só é considerado entre artefatos, pois é normal que as pessoas
estejam trabalhando em um documento, software, etc. Porém, sob o ponto de vista da
colaboração, nosso entendimento é que existem dimensões de conflitos entre pessoas
que não necessariamente estão refletidas nos conflitos encontrados em artefatos, aumen-
tando assim a necessidade dessas dimensões de conflitos serem também abordadas. Essa
necessidade está exposta no catálogo por meio do seguinte item: I23 - Possibilitar o
gerenciamento de conflitos no espaço compartilhado.
Infraestrutura para tomada de decisão - Um ambiente colaborativo deve garantir

36
que todos os colaboradores tenham voz ativa durante as tomadas de decisão. Portanto,
um software colaborativo precisa disponibilizar toda a infraestrutura necessária para
os colaboradores participarem dessas decisões, assim, tornando-os mais confiantes e
sentido-se valorizados. Essa necessidade está exposta no catálogo por meio do seguinte
item: I24 - Fornecer a infraestrutura necessária para os colaboradores participarem das
tomadas de decisão.
Visualização de recursos - Um processo colaborativo exige que recursos sejam
disponibilizados de acordo com suas necessidades. No entanto, esses recursos podem não
ser suficientes durante todo o processo, pois as necessidades podem mudar e exigir que
outros recursos sejam integrados ao processo. Assim, é importante que os mesmos possam
ser analisados e documentados fornecendo um maior controle sobre os recursos disponíveis.
Essa necessidade está exposta no catálogo por meio do seguinte item: I25 - Fornecer a
visualização de informações sobre o uso dos recursos disponíveis para possibilitar uma
avaliação deles.
Informações relevantes - Os colaboradores não devem ser sobrecarregados com
informações irrelevantes. É importante que o software compreenda quando uma informa-
ção é relevante para o colaborador. Por exemplo, quando uma informação está atrelada
com alguma atividade que o colaborador está desempenhando ou quando o mesmo
sinaliza anteriormente que o tipo de informação o interessa. Além disso, é possível que as
ferramentas ajudem times colaborativos automatizando a combinação de informações de
diferentes fontes, como por exemplo, decisões tomadas em ferramentas de comunicação,
calendários, tarefas, dentre outras possibilidades de combinação. Essas necessidades estão
expostas no catálogo por meio dos seguintes itens: I26 - Fornecer no espaço compartilhado
uma síntese das contribuições dos colaboradores; I27 - Fornecer informações relevantes
de acordo com as atividades que os colaboradores estão associados; I28 - Disponibilizar
para os colaboradores informações combinadas e contextualizadas das diferentes fontes

37
disponíveis.
Consciência e aceitação de papéis - As relações em um ambiente colaborativo
têm mais chances de serem produtivas quando fornecemos com clareza os papéis de
cada um. Dessa forma, as interações entre os colaboradores são mais produtivas e cada
colaborador já entende de que forma pode ajudar para alcançar os objetivos acordados.
Para isso, é ideal que se dê aos colaboradores a oportunidade de aceitar ou não os papéis
que lhe foram designados, isso possibilita um ambiente mais amigável onde todos estão
satisfeitos com suas responsabilidades. Essas necessidades estão expostas no catálogo por
meio dos seguintes itens: I29 - Possibilitar aos colaboradores estarem cientes dos seus
papéis; I30 - Possibilitar que os colaboradores aceitem ou não os papéis designados para
eles.
Consciência de objetivos - Quando os membros de um time estão envolvidos
em atividades que possuem objetivos bem traçados, é possível que eles se sintam mais
confiantes e enxerguem nesse mesmo objetivo o seu próprio desenvolvimento profissional.
Assim, é importante que ferramentas colaborativas disponham os objetivos individuais de
cada colaborador. Essa necessidade está exposta no catálogo por meio do seguinte item:
I31 - Possibilitar aos colaboradores estarem cientes dos objetivos de suas atividades.
Interações no ambiente compartilhado - Fornecer informações das interações e
atividades desempenhadas no ambiente compartilhado pode trazer mais produtividade
para um processo colaborativo. Uma ferramenta de software deve ser capaz de registrar
interações importantes de um determinado usuário e garantir que essa informação seja
disponibilizada para outros colaboradores interessados na informação. A visualização
das atividades que estão sendo desempenhadas por outros colaboradores pode tornar a
comunicação entre os colaboradores mais assertiva, tendo em vista que o sucesso de uma
comunicação está diretamente associado com o quão essas pessoas podem se ajudar para
atingir determinado objetivo. Essas necessidades estão expostas no catálogo por meio dos

38
seguintes itens: I32 - Possibilitar aos colaboradores visualizarem as interações de outros
colaboradores no espaço compartilhado; I33 - Possibilitar a visualização das atividades
desenvolvidas pelos colaboradores no espaço compartilhado.
Apoio de líderes - Um ambiente colaborativo deve permitir que seus colabora-
dores indiquem o quanto se sentem apoiados por líderes. Fornecer esta opção para os
colaboradores permite uma análise do quanto os líderes oferecem suporte aos profissi-
onais. Esse suporte pode garantir uma maior participação dos colaboradores, além de
impulsioná-los a criarem mais parcerias colaborativas. Essa necessidade está exposta no
catálogo por meio do seguinte item: I34 - Possibilitar aos colaboradores visualizarem as
interações de outros colaboradores no espaço compartilhado.
Engajamento de colaboradores - Uma ferramenta colaborativa necessita que
os colaboradores cooperem e se comuniquem com frequência. Tornar a visualização do
engajamento pode ajudar na análise de alternativas para aumentar a participação. A
ideia não é oferecer uma disputa de desempenho individual, uma vez que é preciso existir
comprometimento e confiança entre todos para que cada um com suas habilidades e
conhecimentos possam contribuir para um objetivo comum. É importante que essas
informações sejam de diferentes formas de interação do colaborador na ferramenta, como
por exemplo: conversas em chats por mensagens e por voz, contribuição na criação de um
documento, entre outras possibilidades. Essa necessidade está exposta no catálogo por
meio do seguinte item: I35 - Fornecer a visualização de informações sobre o engajamento
dos colaboradores no espaço compartilhado.
Comprometimento com os objetivos - A ferramenta colaborativa necessita prover
o máximo de informações a respeito das responsabilidades de cada colaborador. Assim, os
colaboradores devem indicar o quão comprometido se sentem em relação a determinada
atividade ou papel que lhe foi atribuído. Isso permite que líderes possam coordenar melhor
as atribuições de tarefas e possibilitar que os colaboradores entendam a importância

39
do seu comprometimento para o sucesso do processo colaborativo. Essa necessidade
está exposta no catálogo por meio do seguinte item: I36 - Possibilitar aos colaboradores
estarem cientes da necessidade do seu comprometimento e de suas responsabilidades.
Decisões e resultados - A visualização dos resultados alcançados e decisões
tomadas pelos colaboradores no ambiente compartilhado é extremamente importante
para manter o time motivado e se sentido parte essencial do processo. É importante
garantir que os colaboradores vivenciem todo o processo de evolução da colaboração.
Assim, qualquer progresso em direção do objetivo, conquistado por todos, devem ser
expostos no ambiente compartilhado para os colaboradores. Essas necessidades estão
expostas no catálogo por meio dos seguintes itens: I37 - Fornecer e organizar no ambiente
compartilhado as decisões e resultados alcançados; I38 - Possibilitar aos colaboradores
estarem cientes das decisões e resultados alcançados.
Reconhecimento - Os participantes de um processo colaborativo precisam ser
lembrados quando os mesmos desempenharem suas atividades de forma eficiente. O esforço
aplicado por um colaborador mesmo que já seja o esperado necessita ser reconhecido.
Por isso, uma ferramenta colaborativa precisa ser capaz de destacar conquistas pessoais
de cada colaborador. Isso não necessariamente precisa ser uma gamificação, o ideal é
que cada um se sinta como parte fundamental em determinadas conquistas do processo
como um todo. Essa necessidade está exposta no catálogo por meio do seguinte item: I39
- Conceder o reconhecimento para os colaboradores que desempenharam suas atividades
de forma eficiente.
Senso de comunidade - O senso de comunidade é um aspecto importante dentro
de um processo colaborativo. Isto não quer dizer que todas as atividades precisam ser
atribuídas a mais de uma pessoa, mas sim que elas devem ser divididas envolvendo todos
os colaboradores de um grupo. Cada um com sua contribuição para o objetivo geral
definido. A ferramenta colaborativa deve permitir que grupos com papéis específicos e

40
bem definidos possam ser criados e que determinadas atividades possam ser atribuídas
a todos as partes envolvidas neste grupo. Vale destacar que existem atividades que
envolvem mais de um grupo e que a ferramenta precisa flexibilizar essas parcerias durante
todo o processo colaborativo. Essa necessidade está exposta no catálogo por meio do
seguinte item: I40 - Atribuir atividades que envolvem grupos inteiros de participantes.
Atividades de liderança - A ferramenta colaborativa deve garantir que novas ati-
vidades possam ser exercidas e lideradas pelos colaboradores. Além disso, essas atividades
precisam estar alinhadas com os objetivos de desenvolvimento profissional dos envolvidos.
O processo colaborativo deve garantir que as pessoas desenvolvam suas habilidades, tendo
em vista que isso ajuda seus colaboradores a se tornarem mais produtivos e eficazes
nas atividades do dia a dia. Então, é importante oferecer na ferramenta possibilidades
para que essas atividades sejam realizadas. Exemplos dessas atividades são: grupos de
estudo, discussões técnicas, projetos de pesquisa, dentre outras. Essas necessidades estão
expostas no catálogo por meio dos seguintes itens: I41 - Possibilitar aos colaboradores
planejarem e liderarem atividades de cooperação; I42 - Possibilitar aos colaboradores
realizarem atividades que corroboram com o seu desenvolvimento profissional.
Artefatos versionados - A maior parte dos processos colaborativos exige a cons-
trução de um artefato, como por exemplo, documentos, modelos, códigos, dentre outras
possibilidades. Esses artefatos evoluem e sofrem refinamentos durante todo o processo
colaborativo. Nesse caso, é importante assegurar que essas alterações não impactem
negativamente no artefato, e para recuperar versões anteriores quando necessário. Outra
vantagem é a rastreabilidade de alterações realizadas por cada colaborador. Essa neces-
sidade está exposta no catálogo por meio do seguinte item: I43 - Fornecer suporte ao
versionamento de artefatos compartilhados.

41
4.3 Princípios e Diretrizes para o Uso do Catálogo

O uso do catálogo deve considerar alguns princípios fundamentais:

• O reuso de requisitos pressupõe o alinhamento entre as necessidades dos stakeholders


(e do negócio) e os aspectos de colaboração. Ou seja, nem todos os requisitos
disponíveis para reuso precisam ser reusados, é importante que somente aqueles que
se adequam ao domínio e objetivos do processo colaborativo sejam reusados. Assim, o
engenheiro de requisitos deve conhecer as necessidades do domínio para selecionar os
aspectos de colaboração que irão favorecer o trabalho colaborativo em seu contexto.

• A lista de aspectos de colaboração não busca completude e deve evoluir para incluir
outros aspectos ou para aperfeiçoar os já incluídos. Apesar de termos pretendido
abordar todos os aspectos essenciais para uma colaboração efetiva, entendemos que
podem e devem surgir outros aspectos que não foram considerados em nosso catálogo.

• A realização de todos os aspectos de colaboração não garante que a colaboração


acontecerá efetivamente. O processo de colaboração geralmente envolve pessoas
com características diferentes (motivações, expectativas, nível social, saúde, etc).
Essas características são inerentes ao ser humano (e ao seu cotidiano) e estão fora
do controle de ferramentas de apoio ao processo colaborativo. Então, entendemos
que mesmo oferecendo todos os aspectos de colaboração, uma ferramenta somente
facilitará a colaboração, a colaboração em si depende dos participantes do processo.

• A não realização dos aspectos de colaboração por uma ferramenta não implica na
ausência de colaboração, pois geralmente um processo colaborativo extrapola as
ferramentas de apoio. É possível que um processo colaborativo tenha sido eficiente
mesmo que os aspectos listados no catálogo não tenham sido alcançados em um nível
suficiente, ou até mesmo estejam ausentes na ferramenta de apoio. Por exemplo, se
os colaboradores possuem confiança um no outro e comunicação frequente é possível
que eles consigam atingir seus objetivos, mesmo que esses resultados não tenham

42
sido alcançados com a rapidez ou facilidades caso possuíssem um ambiente de apoio
com todos os aspectos apresentados nesta pesquisa.

• Os aspectos de colaboração não definem a forma como eles devem ser operacionaliza-
dos. Ou seja, não definimos em nossa pesquisa formas de implementar (ou atender)
os aspectos de colaboração. Também não foi definida a ordem nem a prioridade de
cada um. Dessa forma, é necessário que o engenheiro de requisitos, com base nas
necessidades do domínio em que está trabalhando, estabeleça técnicas para alcançar
os aspectos que ele considera pertinentes.

43
5 Avaliação do Catálogo

Este capítulo descreve a avaliação do catálogo de colaboração que visa apoiar o


processo de elicitação e validação de requisitos e facilitar um melhor entendimento sobre
os requisitos a serem levados em conta por ferramentas colaborativas.

5.1 Objetivo

Com o intuito de avaliar o catálogo desenvolvido e seus itens, realizamos um


survey com profissionais e acadêmicos que atuam em diferentes áreas da Engenharia de
software. O objetivo dessa avaliação foi identificar a compreensão, utilidade e aplicabilidade
do catálogo, considerando as tarefas de elicitação e validação de software. Assim, buscou-
se responder a seguinte questão de pesquisa: O catálogo fornece requisitos úteis para
conduzir o processo de elicitação e validação de requisitos de colaboração para ferramentas
de software?

5.2 Recursos Usados na Avaliação

O questionário respondido pelos sujeitos contém 5 partes: (i) termo de con-


sentimento livre e esclarecido; (ii) perfil profissional; (iii) perguntas sobre o nível de
compreensão e utilidade de cada item disposto no catálogo; (iv) perguntas sobre a per-
cepção geral do participante quanto ao catálogo como um todo, considerando o contexto

44
de elicitação e validação de requisitos; e por fim, (v) perguntas abertas para sugestões
e comentários. Além das perguntas objetivas com respostas numa escala de 4 pontos
(sendo 1 a pior avaliação e 4 a melhor avaliação), há também espaços para comentários
positivos, negativos e sugestões de melhoria para os itens individualmente ou o catálogo
como um todo. O questionário está disposto no Apêndice B - Questionário de Avaliação.
O questionário foi aplicado por meio da ferramenta Google Forms, entre os dias
17/01/2022 e 08/02/2022, e foi divulgado para um conjunto de desenvolvedores de software
e pesquisadores em requisitos e em colaboração. O envio do questionário aos participantes
foi realizado por email contendo, em anexo, um tutorial apresentando o catálogo, Apêndice
C - Tutorial do Catálogo. Nele buscamos introduzir o conceito de colaboração como
sendo um requisito de software, além de apresentar todo o catálogo desenvolvido e
suas características intrínsecas. Foi solicitado aos participantes que respondessem o
questionário somente após a leitura do tutorial. Havia dois links para o questionário, um
que levava ao questionário com os itens iniciando de I1 a I21 (e depois I22 a I43), e o
outro iniciando dos itens I22 a I43 (depois I1 a I21). Essa estratégia foi usada para dar
possibilidade do participante analisar apenas metade dos itens se estivesse cansado ou
desmotivado e ao mesmo tempo todos os itens serem avaliados, mesmo que por pessoas
diferentes. Antes da aplicação desse questionário, foi realizado um estudo piloto com dois
desenvolvedores de software, para identificarmos o tempo gasto e possíveis problemas na
estratégia de condução definida.

5.3 Perfil dos Participantes

De 22 pessoas convidadas, 13 responderam o questionário na íntegra. Vale


destacar que buscou-se convidar um grupo diverso de pessoas: especialistas em colaboração,
docentes e pesquisadores da área de ES e desenvolvedores de software. Foi dada a
possibilidade deles avaliarem somente metade dos itens do catálogo, mas todos eles

45
escolheram avaliar o catálogo inteiro. Dos 13, 4 participantes se apresentaram como sendo
da academia, 8 como sendo da indústria, e 1 atuando em ambos (sendo 1 de Startup).
Quanto ao tempo de experiência em engenharia de software: um tem menos de 1
ano, 7 participantes tem entre 1 e 3 anos, quatro tem entre 3 e 5 anos, e 1 participante
tem mais de 10 anos de experiência. Vale destacar que esse nível representa apenas o
tempo de atuação profissional na indústria e academia (docente, aluno de mestrado ou
doutorado), ou seja, por mais que todos os participantes sejam graduados esse tempo
não foi contabilizado para a análise.
Quanto às áreas de atuação profissional, era permitido selecionar mais de uma
opção e preencher um campo com outras. Dez dos participantes afirmaram atuar em
programação, dois em interface humano-computador, um em gestão de projeto, um
em engenharia de requisitos, um em arquitetura de software e um em ecossistemas de
software. A Figura 5.1 mostra todas as áreas de atuação desses participantes.

Figura 5.1: Caracterização por área de atuação.

A partir da caracterização dos participantes um grupo maior trabalha direta-


mente na área de programação. Dos 13 participantes 10 trabalham com programação e
apenas 3 não. Além disso, os participante relataram que utilizam ferramentas de apoio a

46
colaboração, como por exemplo: slack, google meet, trello, discord e github. A maior parte
também respondeu que utiliza essas ferramentas de apoio à colaboração frequentemente.

5.4 Compreensão e Utilidade dos Itens do Catálogo

Cada item do catálogo foi avaliado quanto à compreensão e quanto à utilidade,


considerando uma escala de 4 pontos entre: (i) Incompreensível- Compreensível e (ii)
Dispensável-Indispensável, respectivamente. A Figura 5.2 apresenta um mapa de calor
com os valores obtidos para a utilidade de cada item, sendo 1 a pior avaliação e 4 a
melhor avaliação. Decidimos não deixar uma opção de neutro para forçar os participantes
a decidirem entre se inclinar para uma avaliação positiva ou negativa.

47
Figura 5.2: Percepção sobre a utilidade de cada item do catálogo.

48
Considerando esses resultados, verifica-se que: na média, moda e mediana, apenas
9 itens dos 43 presentes no catálogo tiveram notas inferiores a 3. Desses 9, observa-se 6
itens com moda igual a 2, ou seja, o valor 2 foi o valor mais atribuído. Enquanto que
para apenas 2 itens a maior parte dos participantes (mediana) escolheu o valor 2.
Dessa forma, a maioria dos itens foram avaliados positivamente como sendo úteis.
E mesmo para os 9 itens com valores abaixo de 3, houve uma maioria de acordo para
apenas 2 itens: I12 (Fornecer suporte ao compartilhamento de humor juntamente com
as atividades e informações compartilhadas) e I28 (Disponibilizar para os colaboradores
informações combinadas e contextualizadas das diferentes fontes disponíveis).
Já as respostas para o segundo critério de avaliação (Figura 5.3), que pergunta o
nível de compreensão de cada item, revelaram um resultado mais positivo, no qual todos
os itens foram pontuados com valores (média, mediana e moda) maiores ou iguais a 3.
Como apresentado na Figura 5.3, 3 itens foram avaliados com a pior pontuação
da escala (1 - Incompreensível), mesmo que por apenas um dos 13 avaliadores, sendo estes:
I3 (Fornecer suporte de comunicação externas ao sistema); I11 (Fornecer a integração de
utilitários no ambiente compartilhado que reconheçam o contexto atual dos colaboradores);
e I35 (Fornecer a visualização de informações sobre o engajamento dos colaboradores no
espaço compartilhado). O I3 pode gerar dificuldade de compreensão da sua utilidade,
visto que o catálogo é proposto para apoiar a construção de uma ferramenta colaborativa,
mas o item propõe que essa ferramenta seja usada em conjunto com outras ferramentas
que já existem, para facilitar a comunicação. Porém, deve ser ressaltado que pode ser
muito caro (esforço humano e financeiro) integrar, em um software, ferramentas de
comunicação. Como apresentado na Seção 4.3, as diretrizes de uso do catálogo prever a
análise de utilidade de cada item por parte do engenheiro de requisitos. E cada escolha
deve ser feita quando fizer sentido para o contexto da ferramenta colaborativa que precisa
ser construída.

49
Já o I11, como relatado pelo participante 11, que avaliou o item como "Incom-
preensível e Dispensável", causou problemas na compreensão, pois pode dar a entender
que a integração de utilitários está associada com ferramentas/artefatos prontos, e não
que se trata de uma funcionalidade, que por exemplo, pode identificar se o colaborador
está ativo ou não no ambiente compartilhado. O I35 causou diferentes interpretações
pelos participantes, pois mostrar o engajamento de cada participante pode ser percebida
mais como uma característica negativa do que positiva para a ferramenta colaborativa,
tornando o ambiente compartilhado mais competitivo do que colaborativo.

50
P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 Média Moda Mediana
I1 2 4 4 4 3 3 4 4 4 3 4 4 4 3,62 4 4
I2 2 3 4 4 4 4 4 4 3 4 4 4 3 3,62 4 4
I3 2 1 4 3 4 4 4 4 2 4 4 3 4 3,31 4 4
I4 2 3 4 3 4 3 4 4 3 4 4 4 3 3,46 4 4
I5 2 2 4 4 4 3 3 3 3 4 4 4 4 3,38 4 4
I6 3 2 4 4 3 3 4 3 4 3 4 4 4 3,46 4 4
I7 3 3 4 4 4 4 4 4 3 4 4 4 4 3,77 4 4
I8 3 3 4 4 4 3 4 4 3 4 4 4 4 3,69 4 4
I9 3 3 4 4 4 3 3 4 2 4 4 4 3 3,46 4 4
I10 3 3 4 4 3 3 3 3 2 4 4 4 4 3,38 3 3
I11 3 3 4 4 3 3 4 3 3 4 1 3 3 3,15 3 3
I12 3 2 4 3 4 3 3 4 2 3 4 4 4 3,31 4 3
I13 3 4 4 3 4 4 4 4 3 3 4 4 4 3,69 4 4
I14 3 3 4 4 4 4 4 3 3 3 4 4 4 3,62 4 4
I15 3 3 4 4 4 4 4 3 3 3 4 4 4 3,62 4 4
I16 3 3 4 4 4 4 4 2 4 4 4 4 4 3,69 4 4
I17 3 3 4 4 4 4 4 4 4 4 4 4 4 3,85 4 4
I18 2 3 4 4 4 4 4 3 3 4 4 4 4 3,62 4 4
I19 2 4 4 4 4 3 4 4 3 4 4 4 4 3,69 4 4
I20 3 4 4 4 4 4 4 4 4 4 4 4 3 3,85 4 4
I21 3 3 4 3 4 4 4 4 3 4 4 4 4 3,69 4 4
I22 3 4 4 3 4 4 4 4 2 4 4 4 4 3,69 4 4
I23 4 3 4 4 4 3 4 2 3 4 4 4 4 3,62 4 4
I24 4 4 4 4 4 3 4 4 4 4 4 4 3 3,85 4 4
I25 3 4 4 4 4 4 3 3 4 4 2 4 3 3,54 4 4
I26 3 4 4 4 4 3 4 4 3 4 4 4 4 3,77 4 4
I27 3 3 4 4 4 4 4 4 4 4 4 4 3 3,77 4 4
I28 2 2 4 4 4 3 4 3 3 3 3 4 2 3,15 4 3
I29 3 4 4 4 4 4 4 4 4 4 4 4 3 3,85 4 4
I30 3 2 4 4 4 4 4 4 4 4 4 4 4 3,77 4 4
I31 3 4 4 4 4 4 4 4 4 4 4 4 4 3,92 4 4
I32 3 4 4 4 4 3 4 4 3 4 4 4 4 3,77 4 4
I33 3 4 4 3 4 3 4 4 3 4 4 4 4 3,69 4 4
I34 3 3 4 4 4 3 4 4 4 4 4 4 3 3,69 4 4
I35 1 3 4 4 4 3 4 4 3 4 4 4 3 3,46 4 4
I36 3 3 4 4 4 3 4 4 4 3 4 4 4 3,69 4 4
I37 3 3 4 4 4 3 4 4 4 4 4 4 4 3,77 4 4
I38 2 3 4 4 4 3 4 4 3 4 4 4 4 3,62 4 4
I39 3 3 4 4 4 4 4 4 3 4 4 4 4 3,77 4 4
I40 4 4 4 4 4 3 4 4 3 4 4 4 4 3,85 4 4
I41 4 3 4 4 4 4 4 4 3 4 4 4 4 3,85 4 4
I42 4 3 4 4 4 4 4 4 4 3 4 4 4 3,85 4 4
I43 3 4 4 4 4 2 4 4 3 4 4 4 4 3,69 4 4

Figura 5.3: Percepção sobre a compreensão de cada item do catálogo.

51
Vale destacar que alguns participantes deixaram sugestões de melhoria para
itens onde houve dificuldade de interpretação. Para o I11 (Fornecer a integração de
utilitários no ambiente compartilhado que reconheçam o contexto atual dos colaboradores),
um participante deixou o seguinte comentário: "Não consegui compreender apenas a
informação do item 11. Os outros estão muito claros e diretos.". Enquanto que para o
I23 (Possibilitar o gerenciamento de conflitos no espaço compartilhado), um participante
escreveu o seguinte comentário: "Fiquei com dúvida para entender sobre o que se tratavam
esses "conflitos", na minha interpretação ficou um pouco ambíguo o sentido da palavra,
tornando difícil de entender". Como citamos na Seção 5.6, os participantes não tiveram
acesso as justificativas de cada item apresentados no Capítulo 4. E nesses casos a
explicação destes itens apresentam detalhadamente sua motivação e significados, como
por exemplo, para o I23, apresentamos as diferentes dimensões de conflitos que devem
ser tratadas num ambiente colaborativo.
Já o I28 (Disponibilizar para os colaboradores informações combinadas e con-
textualizadas das diferentes fontes disponíveis), o participante 8 e o participante 12
escreveram os seguintes comentários: "Devido ao contexto e a sequência dos itens do
catálogo, consegui entender o sentido deste item, porém acredito que poderia ter um deta-
lhamento maior sobre do que se tratam essas informações combinadas e contextualizadas."
e "No item 28 fiquei na dúvida sobre as fontes. Se eram fonte de informação ou de um
recurso, por exemplo.", respectivamente. Esses comentários foram muito importantes
para entendermos a causa deste item ter sido avaliado com uma pontuação negativa
pela maior parte dos participantes (7 dos 13 participantes), com a nota 2. Ainda assim,
entendemos que com a explicação do item (Capítulo 4) facilitaria o entendimento deste
item e de outros com justificativas mais complexas.

52
5.5 Avaliação do Catálogo como um Todo

A terceira parte do questionário tinha o objetivo de avaliar o catálogo como um


todo. Para isso foi perguntado aos participantes qual a percepção que eles tinham do
catálogo numa situação de levantamento de requisitos e de avaliação de uma ferramenta
existente. A Figura 5.4 apresenta as características avaliadas (coluna 1), representadas
por pares de opostos, nas quais também foi usada uma escala de 4 pontos, sendo os
valores 1 e 2 uma avaliação negativa e 3 e 4 uma avaliação positiva.

Contexto de Elicitação P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 Média Moda Mediana


De difícil aprendizagem/De fácil
aprendizagem 3 3 4 4 4 4 4 4 3 4 4 4 4 3,77 4 4
Não atende as expectativas/
Atende as expectativas 2 4 4 4 4 3 4 3 3 4 4 4 4 3,62 4 4
Impraticável/Prático 2 3 3 4 4 3 4 3 4 4 3 4 3 3,38 3 3
Sem utilidade/Muito útil 3 3 3 3 4 4 4 4 3 4 4 4 3 3,54 4 4
Obstrutivo/Condutor 3 4 4 3 4 3 4 3 3 4 4 3 3 3,46 3 3
Incompleto/Completo 2 3 4 4 4 3 4 4 4 3 4 4 3 3,54 4 4
Convencional/Original 3 4 4 3 3 4 4 3 4 4 3 4 3 3,54 4 4
Contém conteúdo excessivo/
Contém conteúdo indispensável 2 4 4 4 4 3 4 3 3 4 3 3 2 3,31 4 3

Figura 5.4: Percepção sobre a utilidade do catálogo no contexto de levantamento de


requisitos.

Todas as características avaliadas, nos dois contextos, obtiveram valores maiores


que 2 para média, moda e mediana. Isso indica que para todas as características analisadas,
a maioria dos participantes avaliou o catálogo positivamente. Pode-se perceber pelo mapa
de calor que apenas o primeiro participante (P1) e o último (P13) avaliaram alguns dos
aspectos com resultado inferior a 3. O catálogo teve uma avaliação Tabela (5.5) ainda
mais positiva para um contexto de avaliação de uma ferramenta existente.
Os participantes concordaram ou concordaram totalmente que o catálogo me-
lhorou o entendimento deles sobre as características para ambientes colaborativos (8 e
5, respectivamente), e que o conhecimento compartilhado no catálogo pode ajudar em
alguma atividade rotineira do seu ambiente de trabalho (6 e 7, respectivamente).

53
Contexto de Validação P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 Média Moda Mediana
De difícil aprendizagem/De fácil
aprendizagem 3 3 4 4 4 4 4 4 4 4 4 4 2 3,69 4 4
Não atende as expectativas/
Atende as expectativas 2 4 4 4 4 4 4 4 3 4 4 4 4 3,77 4 4
Impraticável/Prático 2 4 3 4 4 3 4 3 4 4 3 4 4 3,54 4 4
Sem utilidade/Muito útil 3 4 4 4 4 4 4 4 4 4 4 4 4 3,92 4 4
Obstrutivo/Condutor 3 4 4 4 4 3 4 3 3 4 4 4 4 3,69 4 4
Incompleto/Completo 2 3 4 4 4 3 4 4 4 3 4 4 4 3,62 4 4
Convencional/Original 3 4 4 4 4 3 4 3 4 4 3 4 4 3,69 4 4
Contém conteúdo excessivo/
Contém conteúdo indispensável 3 4 4 4 4 3 4 4 3 4 3 3 3 3,54 4 4

Figura 5.5: Percepção sobre a utilidade do catálogo no contexto de validação de requisitos.

As avaliações mostram um grau de satisfação com o artefato construído em


relação à percepção da utilidade do catálogo na construção de ferramentas de software de
apoio à colaboração. Como podemos ver na Figura 5.6 e na Figura 5.7 os participantes
concordaram que o catálogo desenvolvido apoia o entendimento mais rapidamente das
características essenciais para ambientes colaborativos, além de poder ser um facilitador
de outras atividades rotineiras durante o ambiente de trabalho.
Contudo, ainda é importante mencionar que a validação proposta foi realizada
sem um contexto de elicitação ou validação de requisito de colaboração específico. Por
isso, as sugestões de uso citadas na Subseção 4.3 precisam ser levadas em consideração.

Figura 5.6: Percepção sobre a melhoria do entendimento das características essenciais


para ambientes colaborativos.

Diante da avaliação elaborada, além do aspecto positivo em relação ao resultado


estatístico citado, as sugestões deixadas foram positivas em relação ao uso do catálogo

54
Figura 5.7: Percepção sobre a possibilidade de ajudar em alguma atividade rotineira do
ambiente de trabalho.

para ajudar a construção de ambientes colaborativos.

5.6 Limitações do Estudo

Embora os resultados obtidos com a avaliação tenham sido positivos, destacamos


algumas limitações a serem levadas em conta: (i) o estudo contou com um conjunto
pequeno de participantes, que embora seja heterogêneo, com participantes que atuam
em subáreas diferentes da ES, não inclui especialistas de longa data nem em software
colaborativo nem em elicitação e validação de software, contudo, é importante ressaltar
a relevância dos resultados, tendo em vista a experiência de todos os participantes em
trabalho colaborativo; (ii) ao responder o questionário, os participantes não tiveram
acesso as justificativas e explicações de cada item. Assim, eles podem não ter entendido
todos os itens, e também não ter percebido que algum item não está suficientemente
claro; e (iii) ao responder o questionário os participantes não vivenciaram situações de
elicitação e validação, tal que eles não se depararam com as dificuldades, dúvidas e
problemas que poderiam ocorrer num ambiente real, para só assim poder avaliar se o
catálogo poderia auxiliá-los em tal vivência.

55
6 Considerações finais

Esta dissertação define e apresenta um catálogo de aspectos e itens de colaboração


que devem ser levados em consideração no desenvolvimento de software de apoio a
processos colaborativos. O catálogo é composto por 43 itens de verificação que pode
ser usado como fonte de informação para se obter entendimento sobre requisitos para
viabilizar a colaboração.
O catálogo foi avaliado por meio de um questionário envolvendo 13 participantes.
Eles avaliaram a compreensão e utilidade de cada item e também avaliaram o catálogo
como um todo, segundo 8 características qualitativas, tanto em relação ao processo de
elicitação quanto de avaliação de um software. Os resultados foram muito positivos e
animadores, mas instigam um olhar mais detalhado para alguns dos itens do catálogo e
a necessidade de avaliação em contextos reais.
Destacamos ainda a necessidade de estratégias e ferramenta para facilitar o uso,
o reuso, o compartilhamento e a evolução do catálogo. É necessário também analisar
a prioridade dos itens e se eles são igualmente importantes em diferentes contextos e
domínios. Além disso, se faz necessário analisar qual a relação dos itens do catálogo com
outros atributos de qualidade, tais como, privacidade e awareness, bem como o respeito
aos aspectos e preferências humanas, tais como, disponibilidade, humor, atenção.

56
6.1 Contribuições

A principal contribuição desta dissertação é a elaboração de um catálogo que


compartilha conhecimento a respeito do conceito de colaboração para auxiliar no processo
de elicitação e validação de requisitos para ferramentas colaborativas. Esse catálogo
é baseado num alinhamento onde dividimos de acordo com a perspectiva dos 3Cs da
colaboração (coordenação, cooperação e comunicação) vários aspectos de colaboração
levantados da literatura, que foram relacionados a dois tópicos considerados por esta
pesquisa essenciais para o processo colaborativo: aspectos de infraestrutura de colabo-
ração e aspectos relacionados diretamente ao colaborador. Dessa forma, as principais
contribuições desta dissertação são as seguintes:

• A Modelagem dos aspectos intrínsecos à colaboração para apoiar a elicitação e


validação de requisitos de colaboração. Esse catálogo representa nossa análise de
como o requisito não funcional de colaboração está relacionado com os aspectos (e
seus requisitos) que foram identificados na literatura. É importante destacar que até
a escrita do presente trabalho não encontramos outras pesquisas com o objetivo de
construir um catálogo de requisitos de software com foco em Colaboração.

• A análise e mapeamento de conceitos e informações importantes, a partir de pers-


pectivas diferentes, que caracterizam a colaboração.

• A definição e apresentação da nossa perspectiva que relata a colaboração como um


requisito de software. Entendo-a como um atributo de qualidade que vem sendo
altamente exigido na construção de ferramentas de software. Isso pode impulsionar
futuras pesquisas com o mesmo ponto de vista, promovendo cada vez mais um corpo
de conhecimento sólido para a implantação de ferramentas colaborativas.

• A aplicação de um questionário, que fez uma avaliação do quanto o catálogo construído


pode contribuir para a implementação e qualidade de ferramentas de software
colaborativas. Embora nosso catálogo não tenha sido avaliado dentro de um contexto

57
real, ele apresenta tópicos de colaboração importantes e o levantamento de questões
para pesquisas futuras.

6.2 Trabalhos Futuros

Para prosseguir com a pesquisa desenvolvida nesta dissertação, sugerimos os


seguintes trabalhos futuros:

• A adaptação do catálogo proposto para outras modelagens, como por exemplo, a


abordagem NFR Framework, que permite uma análise e representação de relações e
conflitos das características intrínsecas à colaboração apresentadas. E assim, alguns
experimentos poderiam ser feitos com o objetivo de entender quais as perdas e ganhos
em relação a utilidade da modelagem para os processos de elicitação e validação
de requisitos de colaboração, comparado com a nossa estratégia. Destacamos a
necessidade do nosso catálogo ser avaliado em um contexto real de elicitação ou
validação de requisitos para uma ferramenta colaborativa, buscando analisar as
dependências entre os itens, bem como a seu nível de prioridade para contextos
específicos.

• A construção de uma repositório para armazenar os requisitos apresentados no


catálogo, com o intuito de oferecer uma base de conhecimento para a análise e
reuso de requisitos de colaboração. Assim, possibilitando que o conhecimento sobre
colaboração seja compartilhado, evoluído e aplicado por profissionais dentro das
organizações. Esse repositório deve também auxiliar a validação dos itens do catálogo,
possibilitando uma análise colaborativa sobre quais aspectos são percebidos como
mais importantes.

• Realizar uma análise mais aprofundada sobre os aspectos de colaboração citados


pela EC e investigar como essa área pode contribuir com a evolução do catálogo de
colaboração apresentado nesta pesquisa, e também como os aspectos de colaboração

58
levantados nesta pesquisa podem ser úteis para a construção de processos da EC.

• Realizar uma análise mais aprofundada sobre o processo de construção de catálogos


de requisitos e identificar pontos similares nos trabalhos observados com o objetivo de
apresentar uma abordagem sistemática para ajudar no processo de desenvolvimento
desses catálogos.

• Analisar e validar diferentes perspectivas a respeito de quais são os requisitos básicos


para que se promova a colaboração (com base no catálogo apresentado nesta pesquisa),
tendo em vista que o catálogo apresentado aqui oferece um conjunto de requisitos
gerais para o processo colaborativo. Além disso, estabelecer maneiras formais de
definir os requisitos que implementam (operacionalizações) os itens apresentados no
catálogo.

59
Bibliografia

Borghoff, Uwe M e Johann H Schlichter (2000). “Computer-supported cooperative work”.


Em: Computer-supported cooperative work. Springer, pp. 87–141 (ver p. 8).
Briggs, Robert, Gwendolyn Kolfschoten, Gert-Jan de Vreede e Dean Douglas (2006).
“Defining key concepts for collaboration engineering”. Em: AMCIS 2006 Proceedings,
pp. 121–128 (ver p. 10).
Canché, Maximiliano e José A Pino (2021). “Requirements Elicitation for Collaborative
Systems: A Systematic Review”. Em: 2021 IEEE 24th International Conference on
Computer Supported Cooperative Work in Design (CSCWD). IEEE, pp. 297–304 (ver
p. 3).
Carvalho, Rainara Maia, Rossana MC Andrade e Káthia M Oliveira (2020). “How
developers believe Invisibility impacts NFRs related to User Interaction”. Em: 2020
IEEE 28th international requirements engineering conference (RE). IEEE, pp. 102–112
(ver p. 24).
Chung, Lawrence, Brian A Nixon, Eric Yu e John Mylopoulos (2000). Non-functional
requirements in software engineering. Kluwer Academic Publishers (ver p. 2).
Chung, Lawrence e Julio Cesar Sampaio do Prado Leite (2009). “On non-functional
requirements in software engineering”. Em: Conceptual modeling: Foundations and
applications. Springer, pp. 363–379 (ver p. 13).
Cysneiros, Luiz Marcio (2007). “Evaluating the Effectiveness of Using Catalogues to
Elicit Non-Functional Requirements.” Em: WER, pp. 107–115 (ver pp. 2, 12).

60
Cysneiros, Luiz Marcio, Vera Maria Werneck e Andre Kushniruk (2005). “Reusable kno-
wledge for satisficing usability requirements”. Em: 13th IEEE International Conference
on Requirements Engineering (RE’05). IEEE, pp. 463–464 (ver pp. 11, 13).
Damian, Daniela, Irwin Kwan e Sabrina Marczak (2010). “Requirements-driven collabo-
ration: Leveraging the invisible relationships between requirements and people”. Em:
Collaborative software engineering. Springer, pp. 57–76 (ver p. 3).
De Vreede, G-J e Robert O Briggs (2005). “Collaboration engineering: designing repeatable
processes for high-value collaborative tasks”. Em: Proceedings of the 38th Annual Hawaii
International Conference on System Sciences. IEEE, p. 17 (ver p. 10).
Dullemond, Kevin, Ben van Gameren e Rini van Solingen (2014). “Collaboration spaces
for virtual software teams”. Em: IEEE Software 31.6, pp. 47–53 (ver pp. 15–17, 26, 29,
34).
El Fhel, Badr, Lamyae Sardi e Ali Idri (2021). “A Requirements Catalog of Mobile
Geographic Information System for Data Collection”. Em: World Conference on
Information Systems and Technologies. Springer, pp. 324–336 (ver p. 23).
Ellis, Clarence A, Simon J Gibbs e Gail Rein (1991). “Groupware: some issues and
experiences”. Em: Communications of the ACM 34.1, pp. 39–58 (ver pp. 8, 26).
Fink, Lior (2007). “Coordination, learning, and innovation: The organizational roles
of e-collaboration and their impacts”. Em: International Journal of e-Collaboration
(IJeC) 3.3, pp. 53–70 (ver p. 2).
Franzago, Mirco, Davide Di Ruscio, Ivano Malavolta e Henry Muccini (2017). “Collabo-
rative model-driven software engineering: a classification framework and a research
map”. Em: IEEE Transactions on Software Engineering 44.12, pp. 1146–1175 (ver
pp. 15, 17, 26, 29).

61
Fuks, Hugo, Marco Aurelio Gerosa e Carlos Jose Pereira de Lucena (2002). “The de-
velopment and application of distance learning courses on the internet”. Em: Open
Learning: The Journal of Open, Distance and e-Learning 17.1, pp. 23–38 (ver pp. 7, 8).
Glinz, Martin (2007). “On non-functional requirements”. Em: 15th IEEE International
Requirements Engineering Conference (RE 2007). IEEE, pp. 21–26 (ver p. 11).
Gray, Barbara (1989). Collaborating: Finding Common Ground for Multiparty Problems.
Josses-Bass Publishers (ver p. 7).
Hans e JC Van Vliet (2008). Software engineering: principles and practice. Vol. 13. John
Wiley & Sons Hoboken, NJ (ver p. 1).
Henneman, Elizabeth A, Jan L Lee e Joan I Cohen (1995). “Collaboration: a concept
analysis”. Em: Journal of advanced Nursing 21.1, pp. 103–109 (ver p. 9).
Hoffmann, Matthias, Nikolaus Kuhn, Matthias Weber e Margot Bittner (2004). “Require-
ments for requirements management tools”. Em: Proceedings. 12th IEEE International
Requirements Engineering Conference, 2004. IEEE, pp. 301–308 (ver p. 24).
Kitchenham, Barbara e Stuart Charters (2007). “Guidelines for performing systematic
literature reviews in software engineering”. Em: (ver p. 18).
Konaté, Jacqueline, Gwendolyn L Kolfschoten et al. (2014). “Collaborative requirements
elicitation: A process-centred approach”. Em: Group Decision and Negotiation 23.4,
pp. 847–877 (ver p. 3).
Lawson, Hal A (2004). “The logic of collaboration in education and the human services”.
Em: Journal of interprofessional care 18.3, pp. 225–237 (ver pp. 7, 8).
Lu, SC-Y, Waguih ElMaraghy, Günther Schuh e Robert Wilhelm (2007). “A scientific
foundation of collaborative engineering”. Em: CIRP annals 56.2, pp. 605–634 (ver
p. 9).

62
Mattessich, Paul W e Barbara R Monsey (1992). Collaboration: what makes it work. A
review of research literature on factors influencing successful collaboration. Amherst H.
Wilder Foundation (ver pp. 2, 8).
Munkvold, Bjorn E (1999). “Challenges of IT implementation for supporting collaboration
in distributed organizations”. Em: European Journal of Information Systems 8.4,
pp. 260–272 (ver p. 3).
Mylopoulos, John, Lawrence Chung e Brian Nixon (1992). “Representing and using
nonfunctional requirements: A process-oriented approach”. Em: IEEE Transactions on
software engineering 18.6, pp. 483–497 (ver p. 12).
Nuseibeh, Bashar e Steve Easterbrook (2000). “Requirements engineering: a roadmap”.
Em: Proceedings of the Conference on the Future of Software Engineering, pp. 35–46
(ver p. 11).
Oliveira, Romeu, Lyrene Silva, Julio Cesar Sampaio P Leite e Ana Moreira (2016).
“Eliciting accessibility requirements an approach based on the NFR framework”. Em:
Proceedings of the 31st Annual ACM Symposium on Applied Computing, pp. 1276–1281
(ver pp. 2, 13).
Perrault, Ellen, Robert McClelland, Carol Austin e Jackie Sieppert (2011). “Working
together in collaborations: Successful process factors for community collaboration”.
Em: Administration in social work 35.3, pp. 282–298 (ver pp. 2, 8).
Pressman, Roger e Bruce Maxim (2016). Engenharia de Software-8ª Edição. McGraw
Hill Brasil (ver pp. 1, 11).
Raposo, Alberto Barbosa, Léo Pini Magalhães, Ivan Luiz Marques Ricarte e Hugo Fuks
(2001). “Coordination of collaborative activities: A framework for the definition of tasks
interdependencies”. Em: Proceedings Seventh International Workshop on Groupware.
CRIWG 2001. IEEE, pp. 170–179 (ver p. 8).

63
Sarma, Anita, Ban Al-Ani, Erik Trainer, Roberto S Silva Filho, Isabella A da Silva,
David Redmiles e André van der Hoek (2010). “Continuous coordination tools and
their evaluation”. Em: Collaborative Software Engineering. Springer, pp. 153–178 (ver
p. 3).
Serrano, Milene e Maurício Serrano (2013). “Ubiquitous, Pervasive and Mobile Computing:
A Reusable-Models-based Non-Functional Catalogue.” Em: (ver p. 13).
Smith, Heather A e James D McKeen (2011). “Enabling collaboration with IT”. Em:
Communications of the Association for Information Systems 28.1, p. 16 (ver p. 3).
Soad, Gustavo Willians, Maria Lydia Fioravanti, Venilton Falvo, Anderson Marcolino,
Nemésio Freitas Duarte Filho e Ellen Francine Barbosa (2017). “Reqml-catalog: The
road to a requirements catalog for mobile learning applications”. Em: 2017 IEEE
Frontiers in Education Conference (FIE). IEEE, pp. 1–9 (ver pp. 23, 24).
Whitehead, Jim (2007). “Collaboration in software engineering: A roadmap”. Em: Future
of Software Engineering (FOSE’07). IEEE, pp. 214–225 (ver p. 3).
Wiegers, Karl e Joy Beatty (2013). Software requirements. Pearson Education (ver p. 1).
Wiggins, Kathryn C e Sharon J Damore (2006). ““Survivors” or “friends”? A framework
for assessing effective collaboration”. Em: Teaching Exceptional Children 38.5, pp. 49–
56 (ver pp. 9, 15, 17, 26, 29).
Yu, Eric SK (1997). “Towards modelling and reasoning support for early-phase require-
ments engineering”. Em: Proceedings of ISRE’97: 3rd IEEE International Symposium
on Requirements Engineering. IEEE, pp. 226–235 (ver pp. 12, 13).

64
Apêndice A - Avaliação da
Ferrameta GitHub

Este apêndice apresenta um estudo que usa o catálogo para avaliar quais aspectos
de colaboração o GitHub atende. O GitHub é uma ferramenta de hospedagem de código
fonte e arquivos com controle de versão. Algumas de suas funcionalidades são: criação de
listas de tarefas com as descrições das funcionalidades a serem desenvolvidas, criação
de quadros de projetos para gerenciar projetos no próprio repositório, e a customização
de notificações. O GitHub foi escolhido porque possui uma documentação disponível
na World Wide Web (WEB) que facilita a compreensão das suas funcionalidades e é
largamente usada por times de desenvolvimento de software.
É importante destacar que esta avaliação não busca analisar um processo colabo-
rativo (de desenvolvimento de software), mas sim o que a ferramenta provê para auxiliar
a colaboração de times. Dessa forma, a avaliação da ferramenta foi realizada buscando
identificar quais funcionalidades/propriedades o GitHub provê para cada aspecto de
colaboração. Após esta etapa, foram descritas as justificativas para os itens que não
foram atendidos pela ferramenta.
Das 47 questões do catálogo, o GitHub atende a 31, atende parcialmente a 5, e
não atende 11. As questões não atendidas ou atendidas parcialmente dizem respeito tanto
aos aspectos relacionados diretamente ao colaborador como também aos de infraestrutura.
A Tabela 1 apresenta as questões de colaboração para os quais não conseguimos encontrar

65
funcionalidades associadas ou que as funcionalidades encontradas cumprem com a questão
parcialmente.
Por exemplo, o item 30 - Permitir que os colaboradores aceitem ou não os papéis
designados para eles, não foi atendida. Como mostra a Figura 4.3, os aspectos relacionados
à questão envolve os colaboradores e seus papéis, assim como as informações necessárias
para o colaborador compreender e aceitar o seu papel designado. Isso porque os papéis
dos colaboradores precisam ser claros, individuais e acordados, tornando os colaboradores
mais propensos a executar suas atividades de colaboração.
Um outro exemplo é o item 16 - Apoio para os líderes mediarem as discussões
entre os colaboradores, que está associada aos aspectos que abrangem liderança, atitude
positiva sobre as tarefas, e a responsabilidade dos colaboradores sobre suas performances.
Colaboradores necessitam ser apoiados por líderes para se sentirem mais capazes de
realizar suas atividades. Além disso, a presença do líder monitorando as atividades e
concedendo feedback rápido aos colaboradores é essencial para o sucesso da colaboração.
Como apresentado na coluna de justificativas da Tabela 1, a ferramenta oferece o
suporte necessário à comunicação, mas não identifica de forma clara os colaboradores que
desempenham funções de liderança, assim sendo, a questão foi avaliada como parcialmente
atendida.

66
Descrição do item Justificativa
As descrições dos papéis não são acessíveis para todos os colaboradores na ferramenta. A-
1 - Fornecer uma descrição simples e clara dos papéis defini-
penas proprietários e membros com papel de administrador (de organizações) têm acesso a
dos para os colaboradores.*
essas informações.
2 - Permitir que os colaboradores aceitem ou não os papéis O colaborador recebe apenas um convite de participação que não abrange as informações
designados para eles.* de papéis.
A ferramenta não fornece um processo para os colaboradores solicitarem a redefinição de
3 - Fornecer um processo de redefinição de papéis amigável.*
seus papéis.
A ferramenta não oferece uma opção específica para cumprir com o item, porém é possível
7 - Apoio para os colaboradores confirmarem que se sentem criar um tópico de discussão para coletar o feedback dos colaboradores sobre a presença de
apoiados por líderes.** líderes (a ferramenta pode ser integrada com o slack que possui diretórios de apps que aju-
dam a realizar enquetes, sendo esta uma opção mais específica para cumprir com o item).
8 - Apoio ao compartilhamento do nível de engajamento dos A ferramenta fornece o nível de engajamento de colaboradores na branch master de cada re-
colaboradores nas atividades desenvolvidas.** positório, porém sem a divisão por atividades desenvolvidas.
Os colaboradores não conseguem confirmar que são responsáveis pela performance das su-
9 - Apoio para os colaboradores confirmarem quando se senti- as atividades na ferramenta (isso é importante para verificar se os colaboradores se sentiram
rem responsáveis por suas performances.* em clima de comunidade e não houve obstáculos materiais ou pessoais no desenvolvimento
da mesma).
11 - Apoio a confirmação de visualização dos resultados com- Os colaboradores não conseguem confirmar que visualizaram os resultados compartilhados
partilhados com os colaboradores no espaço compartilhado.* e a ferramenta não identifica a visualização de cada colaborador automaticamente.
É possível identificar na ferramenta contribuições de código (e seu autores) que foram aco-
12 - Destacar no espaço compartilhado os colaboradores que
pladasao artefato principal (a branch master), porém não pussui destaque claro para os cola-
desempenham suas atividades de forma eficiente.**
boradores, e sim para as atividades desempenhadas.
15 - Oferecer um cronograma/planejamento no espaço com- A ferramenta não disponibiliza nenhum cronograma/planejamento para que seus colaborado-
partilhado para as atividades de desenvolvimento profissional.* res se desenvolvam profissionalmente.
17 - Disponibilizar artefatos aos colaboradores com contribui- A ferramena não disponibiliza aos colaboradores um artefato específico que forneça as con-
ções relevantes para cada exibição particular.* tribuições que o colaborador não fez parte.
25 - Disponibilizar as regras de colaboração para os colabo- A ferramenta não disponibiliza as regras para as atividades de cooperação no ambiente com-
radores no ambiente compartilhado.* partilhado. As regras se resumem nas permissões de cada colaborador na ferramenta.
A ferramenta não fornece informações (relatórios/gráficos) automaticamente que facilitem a
30 - Apoio para a avaliação contínua dos recursos disponíveis.*
checagem dos recursos disponíveis.
33 - Disponibilizar para os colaboradores informações combi- A ferramenta não fornece um artefato com informações combinadas de fontes como: issues,
nadas e contextualizadas das diferentes fontes disponíveis.* quadros de projetos, repositórios, etc.
Apesar do suporte a comunicação, fornecido pela ferramenta, algumas dificuldades ainda e-
xistem em relação ao suporte de líderes, como: (i) nao existir a possibilidade de customiza-
37 - Apoio para os líderes mediarem as discussões entre os
ção de roles na ferramenta e (ii) não existir o papel de líder (e suas devidas permissões); e
colaboradores.**
(iii) não possuir nenhuma identificação para colaboradores que desempenham pepéis de lide-
rança.
43 - Apoio a integração de utilitários no ambiente comparti- A ferramenta não fornece utilitários que reconheçam o contexto atual de colaboradores (cola-
lhado que reconheçam o contexto atual dos colaboradores.* boradores ativos, identificação de voz, etc).
45 - Disponibilizar links de comunicação formal e informal A ferramenta não fornece links de comunicação informal, bem como não fornece opções de
(públicos e privados) a partir das discussões encontradas.** conversas privadas com um colaborador específico.

Tabela 1: Visão geral dos itens do catálogo não atendidos e atendidos parcialmente pela
ferramenta GitHub. (Obs: *não atendidos. **atendidos parcialmente)

67
Apêndice B - Questionário de
Avaliação

Seção 1. Avaliação de um Catálogo sobre Requisitos de Colaboração

Olá! Obrigado por dispor um pouco do seu tempo para participar de nossa pesquisa.

Me chamo Edir Lucas da Silva Icety Braga, sou mestrando em Sistemas e Computação na
Universidade Federal do Rio Grande do Norte sob a orientação da Profa. Dra. Lyrene Fernandes da
Silva.

Nós conduzimos uma pesquisa para identificar requisitos para ferramentas que dão apoio ao trabalho
colaborativo. Um dos resultados dessa pesquisa foi a criação de um catálogo com 43 itens sobre
colaboração. O objetivo do catálogo é ser uma fonte de informação sobre colaboração, e possibilitar o
entendimento, compartilhamento e reuso desse conceito. Assim, os itens do catálogo foram
organizados de forma a ajudar o engenheiro de requisitos na elicitação para uma ferramenta a ser
desenvolvida ou na avaliação de ferramentas existentes.

Compartilhamos esse catálogo, num arquivo PDF, com você e gostaríamos de entender o seu ponto de
vista sobre as informações nele contidas e sobre algumas características gerais do catálogo. Leia-o
antes de começar a responder o questionário abaixo.

O preenchimento deste questionário levará apenas 15 minutos. Suas respostas serão analisadas apenas
pelos autores da pesquisa. Assim, garantimos o anonimato das suas informações pessoais no momento
da coleta, análise e divulgação dos resultados.

O Termo de Consentimento Livre e Esclarecido será mostrado na próxima seção.

Contamos com sua colaboração e agradecemos sua participação!

Se você tiver dúvidas ou problemas para preencher o questionário, entre em contato conosco por
email: icetylucas@gmail.com

Seção 2. Termo de Consentimento Livre e Esclarecido

Declaro, por meio deste termo, que concordei em participar na pesquisa de campo referente à pesquisa
intitulada "Avaliação de um catálogo sobre requisitos de Colaboração", por minha própria vontade,
sem receber qualquer incentivo financeiro ou ter qualquer ônus, e com a finalidade exclusiva de

68
retirada de minhas informações dessa pesquisa a qualquer momento, sem prejuízo e sem sofrer
quaisquer sanções ou constrangimentos.

Concordo
Não concordo

Seção 3. Questões de identificação e perfil profissional

A seguir, apresentamos 8 perguntas pessoais. Com elas, visamos extrair informações relativas ao seu
perfil profissional.

Qual o seu nome?*

Qual o seu email?*

Qual o seu ambiente de trabalho?*


Academia
Start up
Indústria
Outros

Há quanto tempo você atua em atividades relacionadas a Engenharia de Software?*


Não atuo na área de engenharia de software
Menos de 1 ano
1 a 3 anos
Mais de 10 anos
Qual a sua área de atuação de maior especialidade?*
Interface Humano Computador
Engenharia de requisitos
Arquitetura de software
Gestão de projeto
Programação
Teste
Outros

Com que frequência você realiza atividades colaborativas com apoio de algum software?*
Raramente
Eventualmente
Frequentemente
Muito Frequente
Nunca
Quais softwares você usa para dar apoio às atividades colaborativas que você realiza?

Você atua em atividades de elicitação ou validação de requisitos? Se sim, há quanto tempo?


Não atuo na área de engenharia de requisitos
1 a 3 anos
3 a 5 anos
5 a 10 anos
Mais de 10 anos

Seção 4. Questões sobre os itens do catálogo

Obrigado por decidir avaliar o catálogo completo! Como apresentado no PDF que compartilhamos
com você, o catálogo possui 43 itens de apoio a processos colaborativos. A seguir apresentamos os 43
itens para você avaliar quanto à clareza (compreensível - compreensível, mas pode ser melhorado -
difícil de entender - incompreensível) e importância (indispensável - importante - opcional -
dispensável).

Considerando os aspectos necessários para um processo colaborativo, qual a sua opinião sobre a
CLAREZA e IMPORTÂNCIA dos itens abaixo?

1. Apoio para os colaboradores se comunicarem ativamente.*

Incompreensível Compreensível Dispensável Indispensável


2. Fornecer ferramentas de comunicação integradas ao sistema.*

Incompreensível Compreensível Dispensável Indispensável


3. Fornecer ferramentas de comunicação externas ao sistema.*

Incompreensível Compreensível Dispensável Indispensável


4. Prover comunicação formal e informal, pública e privada.*

Incompreensível Compreensível Dispensável Indispensável


5. Apoio para os colaboradores buscarem ou registrarem interesse em tópicos de discussão
relevantes para si.*

Incompreensível Compreensível Dispensável Indispensável


6. Possibilitar a mediação das discussões entre os colaboradores.*

Incompreensível Compreensível Dispensável Indispensável


7. Estimular os colaboradores a fornecer um feedback rápido.*
Incompreensível Compreensível Dispensável Indispensável
8. Estimular os colaboradores a vivenciar e discutir os resultados alcançados.*

Incompreensível Compreensível Dispensável Indispensável


9. Fornecer infraestrutura para os colaboradores compartilharem e acordarem filosofias,
objetivos e práticas adotadas.*

Incompreensível Compreensível Dispensável Indispensável


10. Possibilitar o rastreamento de decisões tomadas e acordos acertados através de ferramentas
de comunicação.*

Incompreensível Compreensível Dispensável Indispensável


11. Fornecer a integração de utilitários no ambiente compartilhado que reconheçam o contexto
atual dos colaboradores.*

Incompreensível Compreensível Dispensável Indispensável

Você teria alguma sugestão de mudança para os itens (1-11) acima? Qual?

12. Apoio ao compartilhamento de humor juntamente com as atividades e informações


compartilhadas.*

Incompreensível Compreensível Dispensável Indispensável


13. Apoio para os colaboradores não serem interrompidos quando estiverem envolvidos em
atividades de alta interatividade e concentração, ou quando não quiserem receber informações
de qualquer relevância.*

Incompreensível Compreensível Dispensável Indispensável


14. Indicar qual é o papel do colaborador nas interações realizadas no ambiente
compartilhado.8

Incompreensível Compreensível Dispensável Indispensável


15. Possibilitar o envio de convite de participação aos colaboradores.*
Incompreensível Compreensível Dispensável Indispensável
16. Possibilitar a definição e distribuição dos papéis e permissões de cada colaborador.*

Incompreensível Compreensível Dispensável Indispensável


17. Possibilitar aos líderes designarem as atividades de cada colaborador de acordo com sua
expertise.*

Incompreensível Compreensível Dispensável Indispensável


18. Possibilitar aos líderes definirem os objetivos do trabalho colaborativo e associar com as
atividades que serão realizadas.*

Incompreensível Compreensível Dispensável Indispensável


19. Possibilitar a redefinição e reorganização de papéis, atividades e permissões dos
colaboradores.*

Incompreensível Compreensível Dispensável Indispensável


20. Fornecer um ambiente compartilhado para a colaboração.*

Incompreensível Compreensível Dispensável Indispensável


21. Fornecer as regras de cooperação e comunicação para os colaboradores no ambiente
compartilhado.*

Incompreensível Compreensível Dispensável Indispensável


22. Fornecer os recursos (ferramentas e artefatos) necessários para o processo colaborativo (ex:
editor, dashboard, padrões, etc).*

Incompreensível Compreensível Dispensável Indispensável


Você teria alguma sugestão de mudança para os itens (12-22) acima? Qual?

23. Possibilitar o gerenciamento de conflitos no espaço compartilhado.*

Incompreensível Compreensível Dispensável Indispensável


24. Fornecer a infraestrutura necessária para os colaboradores participarem das tomadas de
decisão.*
Incompreensível Compreensível Dispensável Indispensável
25. Fornecer a visualização de informações sobre o uso dos recursos disponíveis para
possibilitar uma avaliação deles.*

Incompreensível Compreensível Dispensável Indispensável

26. Fornecer no espaço compartilhado uma síntese das contribuições dos colaboradores.*

Incompreensível Compreensível Dispensável Indispensável


27. Fornecer informações relevantes de acordo com as atividades que os colaboradores estão
associados.*

Incompreensível Compreensível Dispensável Indispensável


28. Disponibilizar para os colaboradores informações combinadas e contextualizadas das
diferentes fontes disponíveis.*

Incompreensível Compreensível Dispensável Indispensável


29. Possibilitar aos colaboradores estarem cientes dos seus papéis.*

Incompreensível Compreensível Dispensável Indispensável


30. Possibilitar que os colaboradores aceitem ou não os papéis designados para eles.*

Incompreensível Compreensível Dispensável Indispensável


31. Possibilitar aos colaboradores estarem cientes dos objetivos de suas atividades.*

Incompreensível Compreensível Dispensável Indispensável


32. Possibilitar aos colaboradores visualizarem as interações de outros colaboradores no espaço
compartilhado.*

Incompreensível Compreensível Dispensável Indispensável


33 - Possibilitar a visualização das atividades desenvolvidas pelos colaboradores no espaço
compartilhado.*
Incompreensível Compreensível Dispensável Indispensável
Você teria alguma sugestão de mudança para os itens (23-33) acima? Qual?

34. Possibilitar aos colaboradores confirmarem que se sentem apoiados por líderes.*

Incompreensível Compreensível Dispensável Indispensável

35. Fornecer a visualização de informações sobre o engajamento dos colaboradores no espaço


compartilhado.*

Incompreensível Compreensível Dispensável Indispensável


36. Possibilitar aos colaboradores estarem cientes da necessidade do seu comprometimento e de
suas responsabilidades.*

Incompreensível Compreensível Dispensável Indispensável


37. Fornecer e organizar no ambiente compartilhado as decisões e resultados alcançados.*

Incompreensível Compreensível Dispensável Indispensável


38. Possibilitar aos colaboradores estarem cientes das decisões e resultados alcançados.*

Incompreensível Compreensível Dispensável Indispensável


39. Conceder o reconhecimento para os colaboradores que desempenharam suas atividades de
forma eficiente.*

Incompreensível Compreensível Dispensável Indispensável


40. Atribuir atividades que envolvem grupos inteiros de participantes.*

Incompreensível Compreensível Dispensável Indispensável


41. Possibilitar aos colaboradores planejarem e liderarem atividades de cooperação.*

Incompreensível Compreensível Dispensável Indispensável


42. Possibilitar aos colaboradores realizarem atividades que corroboram com o seu
desenvolvimento profissional.*
Incompreensível Compreensível Dispensável Indispensável
43. Fornecer suporte ao versionamento de artefatos compartilhados.*

Incompreensível Compreensível Dispensável Indispensável


Você teria alguma sugestão de mudança para os itens (34-43) acima? Qual?

Seção 5. Questões sobre os itens do catálogo

Para esta etapa, é importante que você tenha analisado o catálogo completo apresentado no PDF, pois
queremos coletar suas percepções gerais a respeito do catálogo como um todo.

O catálogo melhora o seu entendimento sobre as características essenciais para ambientes


colaborativos.*
Discordo totalmente
Discordo
Concordo
Concordo totalmente
Não sei
O conhecimento compartilhado no catálogo pode ajudar em alguma atividade rotineira do seu
ambiente de trabalho.*
Discordo totalmente
Discordo
Concordo
Concordo totalmente
Não sei
Agora, imagine o seguinte cenário: Você foi solicitado para definir os requisitos sobre
colaboração para uma ferramenta que será desenvolvida. Considerando o contexto de
levantamento de requisitos, como você avalia o catálogo?*

De difícil aprendizagem De fácil aprendizagem

Não atende as expectativas Atende as expectativas

Impraticável Prático
Sem utilidade Muito útil

Obstrutivo Condutor

Incompleto Incompleto

Convencional Original

Contém conteúdo excessivo Contém conteúdo indispensável

Agora, suponha um outro cenário: Você foi solicitado para avaliar os recursos de colaboração
fornecidos por uma ferramenta existente. Considerando o contexto de avaliação de ferramentas,
como você avalia o catálogo?*

De difícil aprendizagem De fácil aprendizagem

Não atende as expectativas Atende as expectativas

Impraticável Prático

Sem utilidade Muito útil

Obstrutivo Condutor

Incompleto Incompleto

Convencional Original
Contém conteúdo excessivo Contém conteúdo indispensável

Seção 6. Comentários e sugestões

Para esta etapa, é importante que você tenha analisado o catálogo completo apresentado no PDF, pois
queremos coletar suas percepções gerais a respeito do catálogo como um todo.

Por favor, deixe aqui comentários, sugestões ou críticas sobre os questionamentos feitos ou para
melhoria de nosso estudo.
Apêndice C - Tutorial do Catálogo

CATÁLOGO DE REQUISITOS SOBRE COLABORAÇÃO


PARA SOFTWARE COLABORATIVO

Edir Lucas da Silva Icety Braga


Profa. Dra. Lyrene Fernandes da Silva
Universidade Federal do Rio Grande do Norte

78
INICIANDO

Em primeiro lugar, obrigado por reservar seu tempo para ler este tutorial e responder às
perguntas do questionário.

Este tutorial possui três objetivos:

● apresentar nosso entendimento sobre Colaboração


● apresentar nosso catálogo de características de colaboração para ferramentas de
software colaborativas
● apresentar os objetivos definidos para a avaliação do catálogo

ÍNDICE

● A Colaboração
● O Catálogo
● Exemplo de Requisitos
● Objetivos do Questionário de Avaliação

A COLABORAÇÃO

De acordo com o dicionário, Colaborar significa "Trabalhar com uma ou com várias
pessoas numa atividade; cooperar" ou também "Trabalhar em cooperação (ajuda mútua)
para que algo fique pronto ou seja realizado; contribuir, auxiliar". E colaboração é "ato ou
efeito de colaborar; ajuda; contribuição; apoio; cooperação; participação" (Dicio, 2021).

O termo remete a distintas nuances de uma atividade realizada por mais de um


participante, podendo ser desde uma ajuda ocasional e pontual até uma atividade
complexa, ampla e permanente em time. Por exemplo, para Mattessich e Monsey (1992) e
Perrault et al. (2011), a colaboração pode ser entendida como uma relação prolongada
entre pessoas que contribuem com seus próprios recursos para atingir os mesmos
objetivos. Já para Henneman, Lee e Cohen (1995), o foco está na necessidade de haver
comprometimento, confiança e respeito entre todos os envolvidos. Enquanto que para
Wiggins e Demore (2006), é preciso também haver atividades cooperativas e o
compartilhamento de papéis e responsabilidades para alcançar objetivos concretos.

Você percebe a variedade de nuances complementares e intrincadas?

2
Mas no contexto de desenvolvimento de software, quais características um software deve
apresentar para ser entendido como um software colaborativo? Quais recursos ele deve
prover para ajudar em uma atividade colaborativa? Como ele pode promover a
colaboração entre os participantes?

Do ponto de vista da Engenharia de Requisitos, a colaboração pode ser entendida como


um atributo de qualidade (ou requisito não-funcional), tal como segurança,
acessibilidade, dentre outros. E assim como outros atributos de qualidade, colaboração é
um conceito subjetivo, e para atendê-la e implementá-la é necessária a análise de
aspectos subjetivos e concretos que a promovam. Então, quais são esses aspectos?
Quais requisitos uma ferramenta colaborativa precisa atender para promover
colaboração?

3
O CATÁLOGO

Este catálogo é o resultado de meses de trabalho e pesquisa sobre as características de


colaboração que precisam ser atendidas por ambientes colaborativos. Seu objetivo
principal é reunir e organizar requisitos sobre colaboração para ser usado como fonte de
informação para elicitação e validação de requisitos e, assim, contribuir para a
construção de ferramentas colaborativas.

O catálogo está representado na forma de tabela e apresenta 43 itens associados a 11


rótulos e 44 sub-rótulos. Os itens indicam requisitos a serem atendidos por um software
colaborativo enquanto os rótulos indicam temas gerais coletados na bibliografia
associada, sendo estes: área de trabalho, papel, atividades, liderança, atitude positiva,
desenvolvimento profissional, artefatos, benefícios, recursos, gerenciamento de conflito
e suporte à comunicação. Os sub-rótulos caracterizam de forma mais objetiva os temas
genéricos associados. A figura abaixo ilustra um dos itens, seu tema geral e os 3
sub-rótulos associados a ele. A cor dos rótulos indica o trabalho principal no qual nos
baseamos, então há algum grau de relação entre os itens associados aos rótulos das
mesmas cores, porém os conceitos são tão intrincados que não pudemos separá-los de
forma evidente. Os tópicos amarelos são enfatizados no trabalho de Franzago et al.
(2017), os tópicos verdes por Wiggins e D'amore (2006), e os vermelhos por Dullemond,
Gameren e Solingen (2014). Esses três trabalhos mais os 3Cs (Comunicação, Cooperação e
Coordenação) fundamentaram a construção do catálogo.

A seguir apresentamos 3 tabelas com os itens do catálogo. Dividimos dessa forma para
tornar a leitura e análise menos cansativa. Entre uma tabela e outra reflita um pouco
sobre os itens, os rótulos, os sub-rótulos e a organização geral. Tome nota de suas ideias,
críticas e sugestões.

Vamos lá?

4
COMUNICAÇÃO
ID ITENS DO CATÁLOGO RÓTULOS SUB-RÓTULOS

Fornecer suporte para os colaboradores se


I1
comunicarem ativamente.
Comunicação ativa
Fornecer ferramentas de comunicação Comunicação externa e
I2 interna
integradas ao sistema.
Fornecer ferramentas de comunicação Suporte à
I3
externas ao sistema. comunicação
Fornecer suporte a comunicação formal e
I4
informal, pública e privada.
Suporte a escuta de
Fornecer suporte para os colaboradores conversas
I5 buscarem ou registrarem interesse em tópicos
de discussão relevantes para si.
Possibilitar a mediação das discussões entre os Liderança Suporte de Líderes
I6
colaboradores. Atitude Positiva Comprometimento e
Estimular os colaboradores a fornecer um Suporte à motivação
I7 comunicação Comunicação ativa
feedback rápido.
Benefícios Consciência do ambiente
Estimular os colaboradores a vivenciar e Atitude Positiva Resultados discutidos
I8
discutir os resultados alcançados. Suporte à Comprometimento e
comunicação motivação
Fornecer infraestrutura para os colaboradores Atitude Positiva Consciência do ambiente
I9 compartilharem e acordarem filosofias, Suporte à Discussão sobre filosofia,
objetivos e práticas adotadas. comunicação objetivos e experiências
Possibilitar o rastreamento de decisões
Suporte à Consciência do ambiente
I10 tomadas e acordos acertados através de
comunicação Traceabilidade de decisões
ferramentas de comunicação.
Fornecer a integração de utilitários no Consciência do ambiente
I11 ambiente compartilhado que reconheçam o Área de trabalho Representar e reconhecer o
contexto atual dos colaboradores. contexto atual
Consciência do ambiente
Fornecer suporte ao compartilhamento de Suporte ao
Suporte à
I12 humor juntamente com as atividades e compartilhamento de
comunicação
informações compartilhadas. humor
Conexão social
Fornecer suporte para os colaboradores não
serem interrompidos quando estiverem
Área de trabalho
envolvidos em atividades de alta Consciência do ambiente
I13 Suporte à
interatividade e concentração, ou quando não Suporte a interrupção
comunicação
quiserem receber informações de qualquer
relevância.

5
Vamos refletir um pouco? Esses itens, rótulos e sub-rótulos fazem sentido pra você? Nas
suas atividades colaborativas esses itens se apresentam ou fariam a colaboração mais
eficiente?

Ainda tem mais a seguir…

COORDENAÇÃO
ID ITENS DO CATÁLOGO RÓTULOS SUB-RÓTULOS
Indicar qual é o papel do colaborador nas
I14 interações realizadas no ambiente
compartilhado.
Área de
Papéis do colaborador
Possibilitar o envio de convite de participação trabalho
I15 Ambiente compartilhado
aos colaboradores. Papel
Possibilitar a definição e distribuição dos
I16
papéis e permissões de cada colaborador.
Possibilitar aos líderes designarem as
I17 atividades de cada colaborador de acordo com
sua expertise. Suporte de líderes
Tarefas do colaborador
Possibilitar aos líderes definirem os objetivos Liderança
Definição de objetivos
I18 do trabalho colaborativo e associar com as Atividades
Conexão das atividades
atividades que serão realizadas. Papel
com expertise do
Possibilitar a redefinição e reorganização de colaborador
I19 papéis, atividades e permissões dos
colaboradores.
Fornecer um ambiente compartilhado para a
I20
colaboração.
Área de Ambiente compartilhado
Fornecer as regras de cooperação e trabalho Regras de ambiente
I21 comunicação para os colaboradores no
ambiente compartilhado.
Necessidades alvo:
Fornecer os recursos (ferramentas e artefatos)
Recursos financeiro, tempo,
I22 necessários para o processo colaborativo (ex:
Artefatos ferramentas, etc
editor, dashboard, padrões, etc).
Múltiplos tipos de artefatos
Área de
Ambiente compartilhado
Possibilitar o gerenciamento de conflitos no trabalho
I23 Identificação,
espaço compartilhado. Gerenciamento
documentação e resolução
de conflito
Fornecer a infraestrutura necessária para os Voz do colaborador
I24 colaboradores participarem das tomadas de Liderança Infraestrutura de tomada
decisão. de decisão

6
Necessidades alvo:
Fornecer a visualização de informações sobre
financeiro, tempo,
I25 o uso dos recursos disponíveis para Recursos
ferramentas, etc
possibilitar uma avaliação deles.
Documentação do processo
Fornecer no espaço compartilhado uma
I26
síntese das contribuições dos colaboradores. Ambiente compartilhado
Área de Consciência do ambiente
Fornecer informações relevantes de acordo
trabalho Encontrar informações
I27 com as atividades que os colaboradores estão
Atividades relevantes
associados.
Suporte à Dados relacionados ao
comunicação trabalho disponíveis
Artefatos Combinação de dados de
Disponibilizar para os colaboradores várias origens
I28 informações combinadas e contextualizadas Suporte a multi
das diferentes fontes disponíveis. visualização
Artefatos consumidos

Vamos refletir mais um pouco? Esses itens, rótulos e sub-rótulos são compreensíveis?
Eles fazem sentido para o seu trabalho colaborativo ?

COOPERAÇÃO
ID ITENS DO CATÁLOGO RÓTULOS SUB-RÓTULOS
Possibilitar aos colaboradores estarem cientes
I29 Papéis do colaborador
dos seus papéis. Papel
Clareza, compreensão e
Possibilitar que os colaboradores aceitem ou Atitude Positiva
I30 aceitação
não os papéis designados para eles.
Atividades Tarefas do colaborador
Possibilitar aos colaboradores estarem cientes
I31 Desenvolvimento Clareza de foco
dos objetivos de suas atividades.
Profissional Definição de objetivos
Possibilitar aos colaboradores visualizarem as
I32 interações de outros colaboradores no espaço Ambiente compartilhado
Área de trabalho
compartilhado. Consciência do ambiente
Atividades
Tarefas do colaborador
Possibilitar a visualização das atividades Suporte à
Consciência de
I33 desenvolvidas pelos colaboradores no espaço comunicação
atividades de cooperação
compartilhado.
Consciência do ambiente
Área de trabalho
Possibilitar aos colaboradores confirmarem Suporte de líderes
I34 Liderança
que se sentem apoiados por líderes. Comprometimento e
Atitude Positiva
motivação

7
Fornecer a visualização de informações sobre Consciência do ambiente
Área de trabalho
I35 o engajamento dos colaboradores no espaço Comprometimento e
Atitude Positiva
compartilhado. motivação
Atividades Tarefas do colaborador
Possibilitar aos colaboradores estarem cientes
Atitude Positiva Responsabilidade sobre
I36 da necessidade do seu comprometimento e de
Desenvolvimento sua performance
suas responsabilidades.
Profissional Senso de comunidade
Ambiente compartilhado
Consciência do ambiente
Comprometimento e
Fornecer e organizar no ambiente Área de trabalho motivação
I37 compartilhado as decisões e resultados Atitude Positiva Encontrar informações
alcançados. Artefatos relevantes
Artefatos gerados
Decisões tomadas
compartilhadas
Ambiente compartilhado
Possibilitar aos colaboradores estarem cientes Área de trabalho
I38 Resultados identificados
das decisões e resultados alcançados. Benefícios
e evidentes
Ambiente compartilhado
Conceder o reconhecimento para os Área de trabalho
Tarefas do colaborador
I39 colaboradores que desempenharam suas Atividades
Esforço reconhecido
atividades de forma eficiente. Benefícios
publicamente
Atividades
Atribuir atividades que envolvem grupos Tarefas do colaborador
I40 Desenvolvimento
inteiros de participantes. Senso de comunidade
Profissional
Possibilitar aos colaboradores planejarem e Ambiente compartilhado
I41 Área de trabalho
liderarem atividades de cooperação. Voz do colaborador
Atividades
Possibilitar aos colaboradores realizarem Tarefas do colaborador
Desenvolvimento
I42 atividades que corroboram com o seu Fornecer opções de
Profissional
desenvolvimento profissional. crescimento profissional

Consciência do ambiente
Suporte ao
Fornecer suporte ao versionamento de Área de trabalho
I43 versionamento
artefatos compartilhados. Artefatos
Múltiplos tipos de
artefatos

Excelente! Gostaríamos de saber sua opinião sobre os aspectos de colaboração que você
leu acima. Abaixo explicamos os objetivos de nosso questionário.

8
OBJETIVOS DO QUESTIONÁRIO

Agora que o catálogo foi apresentado, precisamos avaliá-lo. Planejamos fazer isso por
meio de um questionário, estruturado em 3 partes para coletar dados que se
complementam:

1º: questões simples de identificação e para extrair informações relativas ao seu perfil
profissional.

2º: perguntas sobre metade dos itens do catálogo, para não ser tão cansativo. As
perguntas visam entender sua opinião sobre a forma como os requisitos foram escritos e
sua clareza, e a sua percepção sobre a relevância de cada um deles. Também
perguntamos se você tem alguma sugestão de mudança para algum dos requisitos
analisados.

3º: perguntas que visam entender suas perspectivas gerais a respeito do catálogo como
um todo. O objetivo é coletar sua opinião sobre a utilidade geral do catálogo no contexto
de levantamento de requisitos e de avaliação de ferramentas colaborativas. Por fim, nós
solicitamos que você escreva comentários negativos, positivos e sugestões de melhoria a
respeito do conteúdo apresentado no catálogo.

LINK PARA O QUESTIONÁRIO

Mais uma vez, agradecemos por disponibilizar seu tempo e esperamos que este tutorial o
ajude nas respostas do questionário.

Se você se sentir à vontade para responder as perguntas relativas a todos os itens do


catálogo, o link é esse: https://forms.gle/efinEcdvNRHAR5eLA

Do contrário, o link está no email no qual compartilhamos este tutorial.

OBRIGADO!

9
REFERÊNCIAS

Franzago, Mirco, Davide Di Ruscio, Ivano Malavolta e Henry Muccini (2017). “Collaborative
model-driven software engineering: a classification framework and a research map”. Em: IEEE
Transactions on Software Engineering 44.12, pp. 1146–1175.

Wiggins, Kathryn C e Sharon J Damore (2006). ““Survivors” or “friends”? A framework for


assessing effective collaboration”. Em: Teaching Exceptional Children 38.5, pp. 49–56.

Dullemond, Kevin, Ben van Gameren e Rini van Solingen (2014). “Collaboration spaces for virtual
software teams”. Em: IEEE Software 31.6, pp. 47–53

Mattessich, Paul W e Barbara R Monsey (1992). Collaboration: what makes it work. A review of
research literature on factors influencing successful collaboration. Amherst H. Wilder
Foundation.

Perrault, Ellen, Robert McClelland, Carol Austin e Jackie Sieppert (2011). “Working together in
collaborations: Successful process factors for community collaboration”. Em: Administration in
social work 35.3, pp. 282–298

Henneman, Elizabeth A, Jan L Lee e Joan I Cohen (1995). “Collaboration: a concept analysis”. Em:
Journal of advanced Nursing 21.1, pp. 103–109

COLABORAÇÃO In.: Dicio, Dicionário online de português. Porto: 7GRAUS, 2021. Disponível em:
https://www.dicio.com.br/colaborar/. Acesso em: 05/12/2021.

10

Você também pode gostar