Keywords

1 Introduction

The formation of the project team is a crucial phase for achieving quality in the development and achievement of project objectives. It is necessary to decide who to allocate in each activity according to the required technical competence profile. In order to choose the best team composition, competencies, skills and experiences are usually analyzed.

Bejanaro [1] states that the performance of a team also depends on the quality with which members engage. According to Belbin [2], team structure must also take into account the skill and personality of the individual in order to seek a combination of these characteristics, as this is a singular reason why teams fail. The author adds that an ideal team must be developed so that the strengths and weaknesses of each of its members complement each other.

In this context, some research has applied personality traits to people’s recommendation systems. These systems are known as social combination systems or social correspondence systems. However, the works found in the literature use the principle of similarity, as the works by Nunes [3] and Thenmalar et al. [4].

Therefore, considering the specificities of the project teams it is proposed a model of recommendation system that considers, in addition to the technical characteristics, the personality traits based on the principle of complementarity.

This research is characterized as exploratory and to achieve the proposed objectives we used the methodological phases: (i) Study of the approach to analysis of personality traits; (ii) Analysis of team recommendation models; (iii) Creation of a recommendation system model that combines technical competence profiles and personality traits; and (iv) Prototype development from the proposed recommendation system model.

2 Project Team and Personality Traits

2.1 Composition of Project Teams

Effective project teams are formed of independent and flexible people who have a connection, producing quality results [5]. Efficient teams have characteristics that are associated with the team’s interaction with the team and their technical skills.

Boehm [6] presents five principles for forming a project team, they are:

  1. 1.

    The principle of the best talents: better use and few people. The team size should be ideal, as too many or too few members can impair the dynamics of the team, which can result in too much or too little pressure on the members, which makes it difficult to develop their activities.

  2. 2.

    The principle of equalization of functions: Fit tasks to the skills and motivation of the people available. This principle is very important, because a person who performs a task and has the ability to do so, benefits the entire team and the project to be developed.

  3. 3.

    The principle of career progression: An organization does better in the long run, helping people to achieve self. A good performance of a team member usually takes place anywhere, but a company can help or hinder this fact, leading to a good or bad development of that member in a project team.

  4. 4.

    The principle of team balance: Select the people who will complement and harmonize with each other. This principle covers some dimensions of a team’s balance, they are: (i) Natural skills: intelligence, objectivity, creativity, organization, analytical thinking; (ii) Psychological composition: leaders and followers, risk-takers and conservatives, visionaries and critics, cynics and optimists; (iii) Objectives: financial, set of resources, quality, punctuality.

  5. 5.

    The elimination principle: maintaining a team mismatch does not benefit anyone. A misfit person on the team may be the reason for his replacement or live with one less member of the team. Since this maladjusted member ends up discouraging the other team members and ends up interrupting the balance of the team in some dimension.

Observing the dimensions of the “Team Balance” principle proposed by Boehm [6], it appears that, when composing a team, it is necessary to seek a balance, which is related to the complementarity of profiles, in order to meet the different objectives of the project for which the team was formed. When this balance is not found in any of the dimensions, the project is at great risk.

In this sense, Belbin [2] contributes by informing that there are 9 basic functions that need to be fulfilled in order to form a successful team, the functions are as follows:

  • Sowers: creative, independent and introverted people, their role is to generate innovative proposals and ideas for solving problems.

  • Resource investigators: extroverts and negotiators, their role is to explore new ideas and negotiate with external agents to obtain resources for the team.

  • Monitors/Evaluators: prudent and with critical aptitude, but slow to make decisions, responsible for critically analyzing ideas and suggestions, exposing their advantages and disadvantages.

  • Coordinators: mature and trustworthy people who manage to make members work on shared goals, have the function of coordinating teams with different characteristics.

  • Formatters: motivated and energetic people who thrive under pressure, responsible for generating action for the team.

  • Implementers: practical, have self-control and discipline, are those with great ability to apply the work.

  • Team workers: sociable people who care about others, do not like conflict and are responsible for preventing conflicts from occurring between team members.

  • Completers: detailed and with a high level of precision and reliability, they are generally introverted, occupy functions where the level of accuracy required is high.

  • Experts: people with great skill and technical knowledge, in the team, are the members who have a deep knowledge about the product and the service performed.

Regarding the size of project teams, Oliveira et al. [7] argues that the number of members depends on the context in which the team is, however, that the number of people on the team should be 2 to 20, but for ease of use in the interaction between members, there should be no more than 12 members.

The effects that an erroneous number of people can have negatively influence the following aspects of the team: demand from the leader, direction of the leader, tolerance of the member of the leadership of the leader, inhibition of the participation of members, use of rules and procedures and time needed to arrive to a conclusion [7].

2.2 Personality Traits

For Martins [8] the expected results of an effective team are great productivity and good morale, however, for that it is necessary to have a clear purpose and use social skills.

Social skills, in addition to technical competence, are valuable for team development. These competencies include skills such as communication skills, emotional intelligence, conflict resolution, negotiation, influence, team building, and group facilitation [9].

According to PMI [9] the project management team can, for example, use emotional intelligence to reduce tension and increase cooperation by identifying, assessing and controlling the feelings of project team members, anticipating their actions, recognizing their concerns and monitoring their problems.

According to the PMI [9]:

[…] teamwork is an essential factor for the success of the project, and developing effective project teams is one of the primary responsibilities of the project manager. Project managers must create an environment that facilitates teamwork. Project managers must continually motivate the team by providing challenges and opportunities, offering feedback and support as needed, and recognizing and rewarding good performance […].

In a team there can be people with the most varied types of personality, and knowing how to deal with these different profiles is the key to the success of any project. Martins [8] states that the critical elements that must be considered in the team’s interaction are: the way decisions are made, in order to obtain the commitment of all involved; the different personalities; communication deficiencies; persuasion to change people’s attitudes and; pay attention to change management.

2.3 Model for Analysis of Traits Personality in Project Teams

Oliveira et al. [7], addresses the importance of the phase of allocating people in the development of a project, however, with an emphasis on affective computing, which addresses the psychological characteristics of each individual and how these characteristics influence the success of a project.

Based on the importance of the psychological characteristics of the members of the project team, Oliveira et al. [7] proposed a model for team building based on the complementarity of profiles. From a wide bibliographic analysis, in the BigFive model and in the NEO-IPIP questionnaire, a model was developed for the evaluation of personality traits and proposals for guidelines for project team recommendation systems were developed.

In the Table 1, it is possible to observe that for each of these features (that authors recommend for an ideal design team) was inferred a dimension and one or more facets of the Big Five model. Some facets are denied using a “!” before your name so that you reach the desired result; as an example, the facet !Unstable, from its negation it is possible to obtain the characteristic Stable [7].

Table 1. Association of team features to the Big Five model [5]

From the association the characteristics of design teams with the Big Five facets, in [7] it was developed the questionnaire to evaluate the personality traits test. The test model used was NEO-IPIP, which uses 300 questions to identify personality traits. The questions were refined, based on works in the literature, resulting in 72 questions whose objective was to trace the individual’s characteristics. To identify the personality of the individuals, tests were applied. From this, a percentage of similarity was calculated with each of the facets for each individual, and later with the eight profiles of the BigFive model, making it possible to analyze and suggest the creation of the project team based on the complementarity of profiles, once the profiles are identified, the team can be constituted in a way that complements the skills [7].

3 Social Combination Systems

According to Robillard et al. [10], recommendation systems are software applications that assist users in making decisions when faced with a large amount of information. Items of interest to users are recommended based on their preferences, either explicitly or implicitly. The expansion of the volume and increase in the complexity of the information has made recommendation systems essential tools for users in information search activities. Recommendation systems also help to overcome the problem of information overload, giving only the most interesting information items to users, and also by offering novelty, surprise and relevance.

Recommendation systems have been studied since the 90’s. Its positive point is to guide the user through dense layers of information towards light layers of useful knowledge. Initial research on recommendation systems focuses on algorithms and their evaluation to improve the accuracy of recommendations using f-measure and other methodologies of signal detection theory. The most recent research includes other aspects, such as human factors that affect the user experience and interactive visualization techniques to support the transparency of results and user control [11].

In recommendation systems for traditional domains, the context is established through a user profile, which can consist of any combination of characteristics specified by the user, explicitly, and characteristics learned by the system, implicitly [10].

According to Isinkaye et al. [12] explains, recommendation systems are information filtering systems that solve the information overload problem, filtering fragments of vital information from large amounts of dynamically generated information, for this, the data that link the user to the item is used. The recommendation system has the ability to predict whether a specific user prefers an item or not based on the user’s profile. Recommendation systems are beneficial for service providers and users. An example is the reduction in transaction costs of finding and selecting items in an online shopping environment. Recommendation systems have also been shown to improve decision-making and quality.

There are several types of recommendation systems for the most diverse contexts, in this session the most used models will be addressed and in the following session the model used in this work.

  • Collaborative Filtering: According to Pazzani [13], collaborative approaches locate and recommend sources of information for a particular user that have been highly evaluated by other users who have a classification pattern similar to that of the user.

  • Content-based filtering: As Lops et al. [14] explains, content-based recommendation systems try to recommend items similar to those that a particular user liked in the past. The basic process performed by content-based filtering consists of combining the attributes of a user profile, in which preferences and interests are stored, with the attributes of a content object (item), in order to recommend new items to the user of interest.

  • Multi-criteria recommendation systems: According to Liu et al. [15], multi-criteria systems provide more information about user preferences than a single rating system. And by adopting a decision model, multi-criteria systems can provide rich tools for the system designer to build better applications.

  • Mobile recommendation systems: Mobile recommendation systems offer the user the possibility to receive personalized recommendations in constantly moving environments. However, this possibility comes at a cost of privacy, as user data can be processed in unexpected ways by service providers. Thus, the user’s attitude towards the mobile recommendation process can be negative [16].

Hybrid recommendation systems: A hybrid system combining techniques A and B tries to use the advantages of A to correct the disadvantages of B. For example, collaborative filtering methods suffer from problems with new items, that is, they cannot recommend items that have no ratings. This does not limit content-based filtering approaches, as the forecast for new items is based on their descriptions (features) that are normally readily available. Given two (or more) basic techniques of recommendation systems, several ways have been proposed to combine them to create a new hybrid system [17].

The recommendation techniques described in the previous section aim to recommend products or services to people, however, with the technological advancement people started to relate in virtual environments, which generated the need to create a technique that recommends people to other people, as described by Cazzela et al. [18], this was how the social combination system emerged, among its applications are the construction of contacts on social networks, the formation of couples on romantic dating platforms and the recommendation of professionals in virtual environments with reputable systems.

Nunes et al. [19], explains that, for the most part, social combination systems do not use psychological aspects in recommending people, but describes the importance of these aspects in the recommendation process:

[…] However, even though human psychological aspects are difficult to intentionally extract from the user, their relevance is highly significant in decision-making processes to be ignored by Recommendation Systems. […].

According to Nunes [3], homogeneous groups, in terms of personality, spend less time maintaining group cohesion through socio-emotional interactions, leaving more time for relevant interactions. In contrast, incompatible groups spend more time on socio-emotional problems and less time on relevant tasks.

Still according to Nunes et al. [19], the use of personalities in recommendation systems began to be considered so that it is possible to create better and more efficient group dynamics, such as, for example, recommending people on social networks, in distance education courses and even the creation of more credible virtual agents. These recommendation systems in particular are referred to as social combination systems.

An example of a social combination system model is the Group Recommender by Nunes et al. [20], which is a social combination model based on the BigFive model and has positive feedback in more than 99% of cases. After the user answers a questionnaire, the value assigned to each of the responses is used to calculate the result that is used as a basis to assign a value between 1 and 100 for each of the items in the BigFive model and its facets.

Most recommendation systems that use the social combination system do so through the similarity of characteristics, such as the tool proposed by Thenmalar et al. [4]. However, the model proposed in this work is based on the system of social combination, but by complementarity of characteristics.

4 Project Team Recommendation Model

Human psychological aspects, such as its personality, have a direct impact on its decision-making ability [21], thus highlighting the importance in the process of creating teams, taking into account not only the technical capabilities of the employee, but also their personality traits.

The social combination model as well as two works were taken based on the creation of a recommendation model for project teams. One of these works is that of Mengato [22], who explains the importance of the people allocation phase for the formation of a project team and creates an allocation tool based on the technical skills of employees. This tool, is supported by the business process model based on the Project Management Body of Knowledge (PMBOK) project management concepts and uses an algorithm that classifies members in order to assemble the best team possible for a given project taking into account the technical skills of potential team members. Remembering that this Mengato [22] tool does not consider personality traits in the allocation of members

The second work is by Oliveira et al. [7], which demonstrates how the personality of the members affects the team’s performance and which offers a model based on the Big Five, composed of 72 questions, which allows inferring the personality traits of the members of the project team.

The Fig. 1 shows the recommendation model proposed. As shown in Fig. 1, the project manager first needs to configure the new project, with information such as the name of the project, start date, end date, what technical skills are necessary for a professional to be considered to be allocated to the project and what type of personality profile recommendation will he give preference to in his project: the standard one, based on the Big Five model, which will be explained in the next sub-chapters, or the personalized one.

Fig. 1.
figure 1

Project team recommendation model

If the project manager chooses the standard profiles, the system will search for employees who meet the 8 standard profiles, based on a weight system and layer of profiles that will be explained in the next subsections. If the option of personalized profiles is chosen, the manager will be able to choose from the 8 profiles, which he will give more importance to, and the recommendation system will recommend employees based on these choices.

Thus, a tool was developed based on the recommendation model of the proposed project team. It is important to emphasize that, for the operation of this tool, it is of fundamental importance that the project manager applies the Personality Test, proposed by Oliveira et al. [7], to his collaborators, in order to obtain the facets of the collaborator’s personality. It is necessary to have in the database the record of the training and technical skills of each member and also the profiles of technical competence necessary for the realization of the project.

4.1 Characteristics Weight Calculation

In order to infer the characteristics of the employees, the percentage of each facet is added, and after that, it is divided by the number of facets that make up these characteristics [23]. With these characteristics, the percentage value of each profile of a given employee is obtained.

This, however, is a very generic way, because neither the characteristics nor the profiles have weights to distinguish one from the other. We then need to add weights to these characteristics and profiles, in order to know which ones would be the most “valuable”, so that in this way, the recommendation system knows what its priorities are.

The calculation of the weight of a given characteristic is done based on the number of times that characteristic appears in the profiles. For example, the weight of the “Intelligence” characteristic is 8.0, as it is a collective characteristic, and is repeated in all 8 profiles. The formula below describes this calculation, with “PC” being the weight of the characteristic, with its initial value 0 (zero), “C” being the characteristic in question and “P”, a certain profile.

$$ \begin{aligned} f\,C\, \in \,P\,then: \hfill \\ PC = PC + 1.0 \hfill \\ \end{aligned} $$
(1)

This calculation is done only once, since it is not necessary to always calculate the weight of the characteristics, it is enough to calculate them only once. With that done, you can now calculate the weight of each one of the profiles.

4.2 Profile Weight Calculation

Now that we know the weight of each of the characteristics, we will use this to calculate the weight of each of the profiles. The idea is simple: the weight of a profile will be given by the sum of the weights of the characteristics that compose it. The following formula describes this calculation, with “P” being the profile weight and “C” being the characteristic weight.

$$ P = \sum C $$
(2)

Once this is done, the following weights are obtained for each of the profiles (Table 2):

Table 2. Table of weights for each of the profiles

4.3 Profiles with the Same Weight

“Coordinator” and “Implementer”, for example, have the same weight, so the system will deal with this type of situation as follows: first, candidates for each profile will be ranked in descending order. For example, in “Coordinator”, candidate X with the highest score scored a total of 15 points in this profile, and second candidate Y scored 13 points. In “Implementer”, the candidate with the highest score was candidate Y, with 16 points, and second was candidate X, with 12 points.

As the two profiles have equal weight, to know which candidate would be recommended by the system, the scores of these candidates would be added, in this case, candidate X would have a sum of 15 + 12, resulting in 27 points, and candidate Y would have a sum of 13 + 16, resulting in 29 points. So, in this way, the recommended candidate would be candidate Y, in the profile that he made the highest score, in this case, in “Implementer”. Now, as the main vacancy for “Implementer” has already been filled, if there are still vacancies in the project compatible with candidate X, the vacancy for “Coordinator” would be filled by the candidate X.

Scoring by Layers:

as there are different profiles with the same weight, the concept of layers was necessary. There will then 4 layers, as shown in Fig. 2.

Fig. 2.
figure 2

Profile layers

The layers are separated by the weights of the profiles. In the lower layers, there are the profiles with less weight, and as the layers go up, the weights of the profiles also increase. In this way, profiles with the same weights start to be part of the same group. An example would be, a collaborator X, has 15 points as “Coordinator” and 15 points as “Implementer”, totaling 30 points in the most valuable layer. And this is done with the rest of the layers, adding the candidate’s weight in the profiles of the given layer, in order to find out how many points he has in the total. The formula for this calculation is given by “T” representing the total weight of the layer, and “P”, representing the candidate’s score in that layer. The score of profiles for each candidate will be explained in the next subsection.

$$ T = \sum P $$
(3)

In this way, the Recommendation System will search for layers, starting from the fourth, and finding a candidate who will fill the vacancy of “Coordinator” or “Implementer”. With that done, he moves on to the third, and finds a candidate to fill out one of the profiles that compose it. Thus, when he is in the first tier, if there are still vacancies available in the project, he will return to the fourth tier, and perform this process again, until there are no more vacancies available.

4.4 Calculation of the Profile Score for Each Candidate

To find the score for each profile of a particular candidate, first find the real value of each of its characteristics. For example, a characteristic X, which has a weight of 5, and this candidate Y has 50% compatibility with this characteristic. Let’s extract the real value of this 50%, which is done by calculating the percentage (50%) multiplied by 5, which is the total weight of this characteristic and dividing this by 100. In this case, we would find 2.5, which is the actual number of points that candidate Y scored on characteristic X. This process is performed for all characteristics, so we can calculate the score for each of this candidate’s profiles.

In the same way that the weight of the profiles was calculated, the scoring of the candidates’ profiles will follow the same idea. The sum of the characteristics that make up the profile will be made, but now, with the only difference, that instead of using the total weight of the characteristics, the real value that the candidate made on this particular characteristic will be used. For example, in the “Resources Investigator” profile, composed of the characteristics “Extroversion”, “Friendly”, “Mutual Trust” and “Intelligence”, a candidate who has 2, 1, 5 and 6 respectively, will have a total of 14 points in the “Resource Investigator” profile.

4.5 Pre-classification

Now that the scores for all eight profiles of all possible candidates have been obtained, the system will sort the candidates in descending order for each profile. For example, in the “Seeder” profile, candidate X scored 12 points, while candidate Y scored 14.5, so in the “Seeder” profile, candidates would be arranged as follows: Y, X, where Y has the highest amount points of this profile, so it is arranged in the first place.

4.6 Recommendation

At this stage, the system already has, among technically able candidates, their due profiles and which are the best candidates in each profile. Now it is up to the project manager to decide if he will choose the standard recommendation, which will use the Profile Layers system, searching for the eight essential profiles in a standardized way, or he will be able to choose the customized way, in which the manager himself will be able to decide which profiles he deems most needed in your team. These two forms of selection are presented in Figs. 3 and 4, in the tool developed to support the recommendation system.

Fig. 3.
figure 3

Profile selection screen

Fig. 4.
figure 4

Custom profile selection screen

Fig. 5.
figure 5

Custom layers

When the project manager decides to choose the profiles he deems most suitable, a new profile layer is created, with the same idea as the four standard layers, in which the topmost layer is where the heaviest profiles are, and the lowest the less heavy profiles. In the case of Fig. 4, the manager chose “Implementer”, “Formatter” and “Team Worker” , with these choices, the following layers would be created:

In this way, the concept of weights still prevails, and the Recommendation System continues to work in the same standard way, with the only difference being that it now has fewer profiles to analyze. In this case, the system would look for a candidate in the third layer, who is an “Implementer”, when he found it, if there were still vacancies in the project, he would go to the layer below, looking for a “Formatter”, and when he found it, if there were still vacancies, he would look for a “Team Worker”, in the lower layer.

Figure 6 shows the two compatible collaborators that were recommended. First, an “Implementer” was found and as there were still collaborators with available technical skills, he moved to the bottom layer and found a “Formatter”. This time, as there were no more employees with technical skills available, the system stopped searching, and recommended the two best options, both technically and in terms of their personalities and qualities.

Fig. 6.
figure 6

Recommendation

5 Final Considerations

Teams do not always perform as expected, even if they have clear roles and responsibilities. A preponderant factor that can influence the team’s performance is the behavior assumed by each member, influenced by his personality trait.

Belbin [2] noted that teams can become unbalanced if all of their members have similar behavior styles (team roles). He says that normally, if team members have similar weaknesses, the team as a whole can tend to have that weakness too, and similarly, if team members have similar strengths in teamwork, they will tend to compete (instead of cooperating).

Understanding that personality of the members can influence the way a team develops and its success, with the proposed model, it is expected to contribute to the composition of a team with profiles that complement each other in order to balance the characteristics and emotions. From identifying the characteristics of the candidate members and the profiles essential to the project teams, was implemented the recommendation system based on classification algorithms.