Please note this is an old version of this entry, which may differ significantly from the current revision.
An analytical model is used to consider refreshing the competences of the team’s multi-skilled members and shaping the structure of staff’s competences to maximize their mutual substitutability in processes typical for a multi-item lot-size production. Its impact on maintaining the skill level of employees is important in cases of an unplanned event, e.g., caused by employee absenteeism and/or a change in the priorities of orders carried out, disrupting the task of software companies.
The challenges posed by the next stages of the industrial revolution, in particular Industry 4.0 and Industry 5.0, highlight the need for a transition to a sustainable, human-centered and robust industry [1
]. The drive towards human-centered production, which is visible, among other aspects, in the tendency to integrate a human-in-the loop concept with technologies, shows the emerging paradigm of a system focused on sustainable human development [4
]. The expectations associated with this force the development of competence skills (i.e., the preparation of trained professionals who have competences and skills in new reprogrammable technologies), ensuring the diversity of employees in terms of experience, efficiency and physical abilities that guarantee the competitiveness of modern enterprises [5
]. For example, support for systems such as SAP, ORACLE or JDA is required as core competences are expected from the ERP implementers’ sector.
Unfortunately, the availability of multi-skilled employees necessary in the conditions of short-run or unit multi-assortment production [6
], as well as the need to guarantee robustness toward employee absenteeism, are significant limitations here. These limitations are also compounded by various factors determining workers’ productivity, including ergonomic conditions of workplaces (exposure to noise and vibration), levels of perceived fatigue and boredom, as well as risks related to the reduction of qualification levels caused by forgetfulness [8
]. The last of these factors becomes particularly noticeable in the case of the multi-task dynamic planning of software projects (e.g., scheduling of a portfolio of IT projects) [11
], defined as a Dynamic Software Project Scheduling (DSPS) [12
]. Here, when assigning employees with many qualifications, both the impact of the learning effect and the forgetting effect on the effectiveness of employee skills must be taken into account. The presented conditions, as well as the need to develop new and/or to extend (improve) existing qualifications, forces the planning of an appropriate job rotation.
The rotation of workplaces requires an appropriate schedule of sequences, matching work requirements and environment to the employees enforced by new orders, while guaranteeing the maintenance of their competences at a fixed (or not lower than assumed) level. In general, this issue also applies to the Hierarchical Worker Assignment Problem (HWAP) [14
]. It is worth noting that the problem of job rotation understood in this way can be reconstructed as a dynamic matching problem (appearing in many issues occurring at the intersection of economics, operations research and computer science) [16
] known to be NP-complete.
Since each job requires certain performance-specific skills from the employee assigned to it, in order to reduce the impact of possible employee absenteeism, each assignment of a suitable employee (with appropriate abilities) should be accompanied by care to ensure that they duplicate their duties as a team member. This means that in order to maximize mutual substitutability, when shaping the structure of staff competences, it is necessary to ensure the periodic refreshment of competences of a team’s multi-skilled members. The search for an appropriate job rotation is the essence of the Personnel Competence Maintenance Problem (PCMP) [18
The aforementioned problems overlap and permeate each other. Assuming that the purpose of planning many concurrently implemented projects (undertakings) is such that the management of limited resources (in particular, human resources) guarantees their timely completion, it is easy to notice that various additional restrictions imply different generalizations and/or extensions of the considered dynamic management of concurrently executed order portfolios. The considered problem of the resource-constrained portfolio management observed in this context basically boils down to answering the question of whether there is a non-empty set of solutions (i.e., allocations of employees with the required qualifications) that meet the imposed limitations while following other constraints. An example of such a situation is the adoption of a restriction imposing on the employees’ certain qualifications (e.g., nominal level of qualification) and the requirement to maintain their current level of qualifications that are not used (during employment). These restrictions generally result in either the absence of any acceptable solutions or solutions that are not robust toward disruptions related to access to the resources used (e.g., related to cases of employee absenteeism). Of course, there are also further generalizations of the above-presented problem, e.g., extending it to the problem of dynamically scheduling jobs related to the introduction (or exchange) of new resources (e.g., hiring additional employees) or accepting (started in parallel with those still being implemented) new orders.
It seems that an appropriate framework enabling the analytic implementation of that Dynamic Multi-skill Resource-constrained Multi-project Scheduling Problem (DMRPSP), as well as the processes occurring in it of a various nature and character (e.g., learning and forgetting curves and uncertain values of decision variables), will ensure only the adoption of the declarative modeling paradigm. This is because, in the considered class of broadly understood discrete event systems, declarative models allow the representation of nonlinear decision problems (described by logical formulas, algebraic operations, inequalities, etc.) as well as the formulation of decision-making versions of both the problem of analysis (seeking an answer to the question of whether there is a solution that meets the given expectations) and synthesis (seeking an answer to the question under which assumptions there is a solution that meets the given expectations). The presented advantages, combined with the possibility of building models with an open structure implemented in the constraint programming (CP) environment [19
], make this representation an attractive alternative to building dedicated DSS class systems.
2. Project Portfolio Planning Taking into Account the Effect of Loss of Competences of Project Team Members
Human resources and the related intellectual potential, as well as the skillful sustainable management of them, determine the success of Industry 4.0, and in particular Industry 5.0 [21
]. The methods of staff planning, tasks and staff allocation, as well as job rotation, play a key role in this respect. Job rotation plays an especially important role in positions filled by multi-skilled staff [22
]. Noting that temporarily delegating an employee to perform tasks consistent with other qualifications or requiring new skills from them enables the gathering of a new experience that extends the existing qualifications [24
]. In this context, staffing planning boils down to matching the requirements of the workplace (operation time and competence degree) to the competence and skills in order to maximize work efficiency while maintaining or developing the possessed professional skills and avoiding the boredom of doing the same type of job.
Problems related to employment planning determine the competitiveness of IT companies. In general, the typical software project scheduling problem of assigning the right employee to the right activity at the right time grows into the problem of scheduling the assignment of multi-skill programmers to a portfolio of concurrently implemented projects [25
]. Assuming the multi-competence of team members, it is natural to distinguish different levels of competences. Assuming, in turn, that a programmer with a higher level of competence can replace another team member with a lower level of this competence, it is possible to plan substitutions, which is already the subject of the hierarchical worker assignment problem [14
These problems, in turn, naturally extend to the dynamic multi-skill resource-constrained multi-project scheduling problem, in which new orders are taken up during the execution of orders started earlier, as soon as the resources necessary for their implementation become available. Its other extensions, e.g., taking into account the effects of learning and forgetting, make it possible to formulate questions regarding the conditions guaranteeing the maintenance of the level of competence of the employed team [27
]. All the problems of staffing, personnel allocation and job assignment, as well as the job rotation scheduling presented above, are instances of a more general problem, which is the dynamic matching problem [28
Many works have been devoted to the staff assignment problem taking into account learning and forgetting effects [29
]. Learning and forgetting curves illustrate the correlations between learning outcomes (e.g., the level of skills acquired) and the frequency of repetition to achieve them. Thus, according to the learning curve theory, the more often an individual repeats a process or activity, the more adept they become at that activity [31
]. In turn, according to the forgetting curve theory, individuals quickly lose the knowledge they have acquired. This means that in order to preserve the acquired knowledge, they must refresh it by actively reviewing the previously learned material. Consequently, cultivating acquired skills, especially in multi-skilled teams, requires their systematic verification and refreshment. The relevant capability maintenance schedule can be established on the basis of appropriate learning and forgetting curve formulas. Of course, in order to personify them appropriately, this process should be preceded by an experimental identification of the functions’ describing curves. Thus, it is worth noting that activities focused on cultivating skills (i.e., maintaining a given level of competence) can find their practical expression in job rotation schedules, used by multi-skilled teams during the implementation of a project’s portfolio.
Staffing multi-skilled workers increases the company’s robustness (e.g., to employees’ absenteeism), but makes it difficult to perform the related project portfolio scheduling and staff assignment. These difficulties increase even more when assigning multi-skilled workers, taking into account the effect of learning and forgetting on their effectiveness. Problems of this type usually occur during the scheduling of an IT project’s portfolio. These problems, emphasizing various issues such as software multi-project resource scheduling [32
], activity scheduling in the dynamic, multi-project setting [33
], human resource allocation in a multi-project [36
] or Resource Constrained Project Scheduling Problem (RCPSP) [37
] are part of the dynamic resource constrained multi-project management; in other words, in DMRPSP. Consequently, since RCPSP is NP-hard, so is DMRPSP.
The diversity of models and methods used to solve the above-mentioned problems results from their nature and related specificity. They include stochastic models (aimed at, e.g., risk assessment) [40
], operational research models (e.g., based on integer or mixed-integer programming, dynamic programming, etc.) [41
], simulation models (e.g., based on the multi-agent concept) [42
] and artificial intelligence models and fuzzy models (using, e.g., population algorithms, metaheuristics, fuzzy logic algorithms, etc.) [43
]. Formal representations of these models implemented in the relevant methods of imperative programming are useful in solving the so-called “situation analysis problem”, i.e., related to the search for an answer to the question of whether a given set of decision variables guarantee a specific (extreme) value of the objective function. This limitation is not introduced by the declarative programming paradigm. In addition to the possibility of formulating and solving issues such as the “situation analysis problem”, it also allows for the “situation synthesis problem”. The problem of the so-called situation synthesis, in turn, allows for the search for decision variables domains at which a given value of the objective function holds.
Models implementing the declarative programming paradigm have the greatest chance of meeting these expectations. The constraints’ programming strategies used in them enable both the formulation of analysis and synthesis problems, which result from their nature, i.e., because these models inherently have open structures.
Unfortunately, the declarative approach is very rarely used either for modeling or solving DMRPSP-like problems. This deficiency is visible in, among others, the lack of studies resulting in the development of conditions, the fulfillment of which guarantees the existence of acceptable solutions while covering problems of dynamic staffing and tasks allocation, job rotation scheduling guaranteeing the maintenance of staff competences at assumed level, dynamic multi-project scheduling, etc. The proposed declarative model makes it possible to determine whether any solution to the admissible problem formulated in it exists. In the absence of solutions (meeting the given constraints), it enables for determining the change of the relevant constraints to such that the set of admissible solutions is not empty. The presented research gap is confirmed by the relatively few studies [45
]. It is easy to observe that filling this gap will contribute to the creation of systems supporting the software project manager in the dynamic planning of resource-constrained multi-projects in the IT environment.
This entry is adapted from the peer-reviewed paper 10.3390/app13127165