Fuzzy Emotional COCOMO II Software Cost Estimation (FECSCE) using Multi-Agent Systems
Introduction
One of the most critical tasks in managing software projects is software cost estimation [1]. The software industry is very competitive to establish the market with accurate cost estimation [2]. It can help industries to better analyze the feasibility of a project and to effectively manage the software development process [3]. There is no approach proven to have effectively and consistently predicted software output metrics [3]. There are a number of methods used to estimate the cost of various projects. COCOMO is known as a popular method in this respect.
Having an agile team is a significant element for the success of a complex software project. A project is the same as a social system where personal and cooperative characteristics play a key role in achieving goals. The members of any projects have emotions such as anger, fear, joy, sadness and surprise [4]. These emotions are positive or negative at the start of the project [4]. The positive emotion is related to the joy of having an interesting assignment, meeting new people and working in a new team. The negative emotion is related to the fear of a new challenge in a new work and new responsibility in a team. Emotions, the degree of cooperation and the suitability of the assigned tasks with the capability of team members are parameters affecting project properties (e.g. cost) [5]. By using simulation tools, we can simulate the operations of a team in a given project to estimate its cost [6].
In the previous cost estimations, only the project characteristics have been considered. In this paper a novel emotional COCOMO II model has been proposed. We present the FECSCE, Fuzzy Emotional COCOMO II Software Cost Estimation. The major difference between this model and previous ones is that the FECSCE incorporates characteristics of team members (i.e. communication skills, personality, mood and capabilities) into the COCOMO II model. In this study, fuzzy agents and Multi-Agent Systems have been used to simulate personal characteristics and interactions in a team.
This study has been inspired from a web-based digital library project in which all team members were students and the authors were involved in. The authors could view the effect of personality and emotional factors in the productivity of team members. Since the data of this project was available, we used it as the pilot test for the configuration of fuzzy sets and membership functions, and the definition of the internal variables of a team member.
Section 2 of the paper, describes the background of the study including the COCOMO model, fuzzy systems, software agents, personality, mood, and emotion, and related work; Section 3 describes the FECSCE model. In Section 4, the design of the FECSCE is discussed. Section 5 presents the implementation and evaluation of the FECSCE and finally Section 6 presents the conclusion and the perspective of future works.
Section snippets
The COCOMO
The COnstructive COst MOdel, COCOMO, was introduced by Boehm [7]. It has become one of the most widely used software cost estimation models in the industry. To support new life cycles and capability, it has evolved into a more comprehensive estimation model, called COCOMO II [8], [9].
For the COCOMO II models, three different sizing options are available: object points, function points, and lines of source code. The COCOMO II application composition model uses object points. Object Point
FECSCE: Fuzzy Emotional COCOMO II Software Cost Estimation model
The main goal of the FECSCE model considers team characteristics in such a way as to render the COCOMO II project cost estimation more accurate. There are two kinds of agent in FECSCE: “Team Member Agent” (TMA) and “Simulator Agent” (SA). TMA is a fuzzy agent for the simulation of a team member. Multi-TMA can simulate a team and TMAs communications can reflect intra-communication of the team. In this model, only the direction of communications is considered not the quality of the communications
FECSCE fuzzy inference
We have utilized the Tsukamoto fuzzy inference system in the three elements of each TMA. Tsukamoto aggregates each rule's output by the method of weighted average and the output is always crisp even when the inputs are fuzzy [16]. Considering that the transition of Gaussian MF in the intervals is smoother and more natural than triangular MF, we have utilized Gaussian MF in the variables of COCOMO [31] (prod and problem difficulty). For the variables, which need superior transition, we have
FECSCE simulator
The FECSCE simulator uses FuzzyJ package [47] to implement the fuzzy inference system and JADE4 [48] to implement the Multi-Agent System (MAS). The developed software includes screens for team members’ characteristics, project information, simulation results, and the team relationship graph. A sample screen shot of team members’
Conclusion
Accurate cost estimation is important for effective project management. Most of previous studies utilized fuzzy systems, Multi-Agent Systems and CMMI to improve cost estimation. One of the problems of the previous cost estimation studies is that they only considered project's characteristics not team members’ characteristics. The FECSCE was discussed as a novel cost estimation model, which includes the team members’ characteristics as another factor in project cost estimation. This novel model
Acknowledgements
We appreciate IRISA and FASA Companies, which permitted us to access their teams’ and projects’ information.
References (50)
- et al.
Identification of fuzzy models of software cost estimation
Fuzzy Sets and Systems
(2004) - et al.
Improving the COCOMO model using a neuro-fuzzy approach
Applied Soft Computing
(2007) Fuzzy sets
Information and Control
(1965)- et al.
An experiment in linguistic synthesis with a fuzzy logic controller
International Journal of Man–Machine Studies
(1975) - et al.
Structure identification of fuzzy model
Fuzzy Sets and Systems
(1988) - et al.
A domain-independent framework for modeling emotion
Cognitive Systems Research
(2004) - et al.
Modeling the cognitive antecedents and consequences of emotion
Cognitive Systems Research
(2009) - et al.
Multi-agent system for cost estimation
Computers & Industrial Engineering
(1996) - et al.
Ontology-based intelligent decision support agent for CMMI project monitoring and control
International Journal of Approximate Reasoning
(2008) - et al.
Cognitive complexity and dynamic personality in agent simulation
Computers in Human Behavior
(2007)