sprint smes a fuzzy linguistic 2 tuple recommendation
play

SPRINT SMEs: A Fuzzy Linguistic 2-Tuple Recommendation Approach for - PowerPoint PPT Presentation

20th Conference of the International Federation of Operational Research Societies, IFORS 2014, 13-18 July 2014, Barcelona, Spain SPRINT SMEs: A Fuzzy Linguistic 2-Tuple Recommendation Approach for Allocating human Resources in Software Projects


  1. 20th Conference of the International Federation of Operational Research Societies, IFORS 2014, 13-18 July 2014, Barcelona, Spain SPRINT SMEs: A Fuzzy Linguistic 2-Tuple Recommendation Approach for Allocating human Resources in Software Projects Vassilis C. Gerogiannis Associate Professor, Department of Business Administration, Technological Education Institute of Thessaly, Larissa, Greece (gerogian@teilar.gr) Pandelis Ipsilandis Professor, Department of Business Administration, Technological Education Institute of Thessaly, Larissa, Greece ARCHIMEDES III Research Programme http://sprint.teilar.gr/

  2. SPRINT-SMEs project • SPRINT-SMEs (Dec 2012 - Dec 2015) project is funded by the R&D programme ARCHIMEDES III (Greek Ministry of Education) • Research in Software PRocess ImprovemeNT Methodologies for Greek Small & Medium sized Software Development Enterprises (http://sprint.teilar.gr/) Project objective: Suggest a framework of methods for the improvement of software development in SW SMEs

  3. Research problem & aim • Introduce a systematic approach for evaluating suitability of human resources to each software development task that consists of multiple activities. • Group-based evaluation from multiple evaluators (project managers). • Decision-recommendation has to be made under multiple subjective criteria. • Evaluate tasks’ requirements with respect to skills of the available resources. • Recommending the “best” human resource is not always optimal. Example: • If a task demands “a high skill level for Java” and also “medium experience with C++”, then we should address both requirements considering their respective required levels of competencies. • A resource who matches exactly these criteria is more suitable to the task than another resource who has very high experience in both Java and C++ (we would waste a resource that could be assigned to a more demanding task). • Consider skill-relationships (how previous knowledge on various related skills contributes to learning required skills).

  4. Research background and related work • F. Herrera and L. Martinez, “A 2-tuple fuzzy linguistic representation model for computing with words,” IEEE Transactions on Fuzzy Systems, vol. 8(6), 2000, pp. 746-752. • V. C. Gerogiannis, A. Karageorgos, L. Liu and C. Tjortjis, “ Personalised Fuzzy Recommendation for High Involvement Products,” IEEE SMC 2013, pp. 4884-4890. • X. Liao, Y. Li and B. Lu, “A model for selecting an ERP system based on linguistic information processing,” Information Systems, vol. 32(7), 2007, pp. 1005-1017. • M. Li, L. Liu and C-B. Li, “An approach to expert recommendation based on fuzzy linguistic method and fuzzy text classification in knowledge management systems,” Expert Systems with Applications, vol. 38(7), 2011, pp. 8586-8596. • L. D. Otero, G. Centeno, A. J. Ruiz-Torres and C. E. Otero, “A systematic approach for resource allocation in software projects”, Computers & Industrial Engineering, 56(4), 2009, pp. 1333 – 1339. • L. D. Otero and C. E. Otero, “A fuzzy expert system architecture for capability assessments in skill-based environments”, Expert Systems with Applications, 39(1), 2012, pp. 654 – 662. • D. A. Callegari and R. M. Bastos, “ A Multi-criteria Resource Selection Method for Software Projects Using Fuzzy Logic ”, Enterprise Information Systems, Lecture Notes in Business Information Processing, Vol. 24, 2009, pp. 376-388. • M. Ande, M. G. Baldoqu ν n and S. T. Acu ρ a, “ Formal model for assigning human resources to teams in software projects ”, Information and Software Technology, 53(3), 2011, pp. 259 – 275.

  5. Our solution in SPRINT-SMEs • Adoption of a fuzzy linguistic description approach based on 2- tuple fuzzy linguistic representation / computation approach. • The 2-tuple fuzzy linguistic approach is a continuous model that carries out “computing with words”, namely it processes descriptions without losing information. • The solution adopts a group and similarity degree-based aggregation algorithm to obtain an objective aggregation of the ratings of required task related skills and provided skills from the available human resources. • The suggested solution also evaluates and handles skill relationships as 2- tuple fuzzy linguistic terms.

  6. SPRINT-SMEs approach for evaluating / allocating human resources in SW development tasks Group-based linguistic evaluation of required skills (by using 2-tuple fuzzy variables) 1. 2. Aggregation of different skills’ evaluations (by following a similarity degree -based technique) 3. Calculation of an aggregated rating of importance for each required skill 4. Evaluation of task requirements (with respect to the required skills) 5. Linguistic evaluation of the capabilities (suitability) of available human resources Consideration of skills’ relationships 6. Re- evaluation of the capabilities of human resources (by considering the skills’ relationships) 7.

  7. Step 1: 2-tuple fuzzy linguistic evaluation of required skills for each task activity • We assume that a sw development task is comprising of a set of activities. • Project managers define levels of skills required for each task activity. Skill requirements are expressed in qualitative form (by utilizing 2-tuple fuzzy linguistic terms). • A 2-tuple linguistic variable is denoted as ( s i , a i ). s i corresponds to the central value of the i th linguistic term in a term set and a i  [-0.5,0.5) is the distance from s i . • Managers may use a common label set s = { s 0 , s 1 , …, s g }. • By using the transformation function θ for 2-tuple fuzzy terms the linguistic evaluations of skills are transformed into 2-tuples of the form ( s i , 0): • In case of using different label sets, evaluations can be transformed into a homogeneous linguistic term set.

  8. Example Required skills/competencies Evaluator - project manager (weight of importance) Activities OO design C++ VB Java ε 1 (1/3) X 1 H(4,0) L(2,0) VL(1,0) VVH(6,0) X 2 VL(1,0) VL(1,0) VH(5,0) VL(1,0) X 3 VH(5,0) VH(5,0) L(2,0) L(2,0) X 4 L(2,0) VVH(6,0) VL(1,0) VL(1,0) Activities OO design C++ VB Java ε 2 (1/3) X 1 VVH(6,0) VL(1,0) M(3,0) VH(5,0) X 2 VVL(0,0) VL(1,0) VVH(6,0) L(2,0) X 3 VVH(6,0) M(3,0) L(2,0) VL(1,0) X 4 H(4,0) VH(5,0) VL(1,0) VL(1,0) Activities OO design C++ VB Java ε 3 (1/3) X 1 VVH(6,0) VVL(0,0) M(3,0) M(3,0) X 2 VL(1,0) L(2,0) VH(5,0) L(2,0) X 3 VVH(6,0) VVH(6,0) L(2,0) VL(1,0) X 4 VH(5,0) VH(5,0) L(2,0) VVL(0,0)

  9. Step 2: Similarity degree- based aggregation of skills’ assessments • The aim is to derive an objective assessment for required skills. • We have to consider not only the relative importance level ε k of each project manager, but also similarities in managers’ evaluations.

  10. Step 2.1: Calculate of the similarity degree  (0,1] is calculated between any two skills’ k l A similarity degree value sim ( X ij ,X ) ij assessments provided by any two managers e k and e l ( k ≠ l , k = 1,2…, K , l = 1,2…, K ) for an activity X i ( i = 1,2,…, m ) with respect to the skill/competency c j ( j = 1,2,…, n ). k l To calculate the similarity degree value, the distance between x and X evaluations is ij ij computed:      1 k 1 l ( X ) ( X ) ij ij The closer the similarity degree to 1, the more similar are the evaluations of any two managers for the same activity with respect to a particular skill. k l The similarity degree value is computed ( g is the granularity of the used sim ( X ij ,X ) ij linguistic term set):      1 k 1 l ( X ) ( X ) ij ij k l sim ( X ij ,X ) =1 - ij g

  11. Basic terminology for 2-tuple fuzzy linguistic variables   is the reverse function (of a translation function) that transforms a 2-tuple linguistic 1 variable into its equivalent numerical value. Given a linguistic term set S ={ s 0 , s 1 ,… ,s g }, β  [0, g ] is a number representing the aggregation result of a symbolic aggregation operation. Let i = round ( β ) and α = β - i be two values such that i  [0, g ] and a  [-0.5,0.5), respectively. The number a is called a symbolic translation. The 2-tuple that expresses the equivalent information with β results from the translation function Δ :     : [ 0 , g ] S [ 0 . 5 , 0 . 5 )    s , i round ( )     i  ( ) ( s , a )   i       i, a - 0.5.05 A 2-tuple linguistic variable can be transformed into an equivalent number β  [0, g ]   : 1 by the reverse function     : S [ 0 . 5 , 0 . 5 ) [ 0 , g ]        1 ( , ) s a i i

  12. Example Ratings of Skills Project Manager Activity OO Design ( c 1 ) e 1 X 2 VL(VL,0)=(1,0) e 2 X 2 VVL(VVL,0)=(0,0) e 3 X 2 VL(VL,0)=(1,0)       1 1 1 2 1 0 ( X ) ( X )     1 2  21 21 1 0 . 83 sim ( X 21 ,X ) 1 21 6 g  g 6

Recommend


More recommend