DocumentCode :
266250
Title :
A model and system for applying Lean Six sigma to agile software development using hybrid simulation
Author :
Ghane, Kamran
Author_Institution :
Anagira, Inc., USA
fYear :
2014
fDate :
12-15 June 2014
Firstpage :
1
Lastpage :
4
Abstract :
Software quality control and quality assurance have close ties with predictability, speed/time, and cost of software development. Process improvement has essential impact on these factors that drive the quality of software project outcomes. While stochastic design and process improvement methodologies based on the Lean Six Sigma can greatly help with process design and improvement, software development processes are substantially different from the processes in the other disciplines such as manufacturing or service operations that produce same/similar product/services. It´s not feasible to quantify software processes in a discrete manner that is required by the Six Sigma methodologies. The discrete simulation that is used in operations such as car manufacturing relies on the fact that system activities change state at discrete time points. However this cannot be applied to software development as the activities are not repetitive and they have time estimates at best. The continuous simulation approach lacks the discrete simulation advantage of identifying inefficiencies and improving the processes along the line. Then the discrete simulation has the shortcoming of detecting consequences of improvements late in the process. The model and system introduced in this paper applies Six Sigma methodologies to software processes using hybrid simulation. It uses the relatively detailed empirical data - which the lean software development and agile methodologies produce - to simulate future activities. Such predictions are used as the baseline measurement data to assess the actual results of the continuous improvement activities. The Monte Carlo simulation is used to eliminate dependency on assumption of a specific distribution function for software development activities. The System also includes a framework for collecting process data and creating the empirical knowledge base that optimizes simulation, analytics and data mining. The System collects empirical data on proce- s actors and uses them in simulation to provide estimations that incorporate the human factor that has substantial role in software processes. Over time the System effectively uses machine learning to improve estimation and in some cases to recommend actions to improve performance. The resulted data can be used not only for process improvement but also for evaluating impacts of factors such as outsourcing, geographical base cost, and time zone difference on the process quality.
Keywords :
Monte Carlo methods; data mining; digital simulation; human factors; learning (artificial intelligence); project management; six sigma (quality); software process improvement; software prototyping; software quality; Monte Carlo simulation; agile software development; continuous simulation approach; data mining; discrete simulation; empirical data; human factor; hybrid simulation; lean six sigma; machine learning; process actors; process improvement methodologies; software project outcome quality; software quality assurance; software quality control; stochastic design; Capability maturity model; Estimation; Monte Carlo methods; Six sigma; Software; Software measurement;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Technology Management Conference (ITMC), 2014 IEEE International
Conference_Location :
Chicago, IL
Type :
conf
DOI :
10.1109/ITMC.2014.6918594
Filename :
6918594
Link To Document :
بازگشت