 |

contact |
| Dr. Guenther Ruhe |
Software Engineering Decision Support Laboratory
University of Calgary
2500 University Drive NW
Calgary, Alberta T2N 1N4
Tel (403) 220 7692 Fax (403)284 4707
Email: ruhe@ucalgary.ca
|
| BOOK AVAILABLE |

|
|
 |

G. Boetticher, G. Ruhe (eds.): Information and Software Technology DOI information, Special Section on Best Papers PROMISE 2009, 10.1016/j.infsof.2010.06.007. http://dx.doi.org/10.1016/j.infsof.2010.06.007
G. Ruhe: Product Release Planning: Methods, Tools and Applications,
CRC Press, ISBN 10: 0849326206, publication date June 17, 2010, 336 pages.
M. O. Saliu, G. Ruhe, M. Lindvall
and C. Ackermann: Evaluating the Modifiability of Software Architecture
Using Expert Judgment, Advances in Computers, Vol. 77 (2009), pp 243 – 297.
D.
Pfahl, G. Ruhe, K. Lebsanft, M. Stubberich: Software Process
Simulation with System Dynamics. New Trends in Software Process
Modeling (N. Juristo, S.T. Acuna, eds.), World Scientific 2006,
pp 57-90.
A. Ngo-The, G. Ruhe (eds.): Proceedings
Workshop Requirements Engineering Decision Support (REDECS’2005),
September 2005, Paris, 54 pages.
S. Maurice, G. Ruhe, A. Ngo-The, O.
Saliu: Decision Support for Value-based Software Release Planning.
Value-based Software Engineering (S. Biffl et al., eds.), Springer
2005, pp 247-262.
B. H. Far, G. Ruhe: Prescriptive Decision
Support based on Software Agent Interaction, Decision Support
in Agent Mediated Environments (G. Phillips-Wren and L. Jain,
Eds..), Knowledge-Based Intelligent Engineering Systems Series,
2005, Chapter 7, pp. 161-186.
G. Ruhe: Software Release Planning. Handbook
of Software Engineering and Knowledge Engineering Vol. 3 (S.K.
Chang, Ed.), World Scientific 2005, pp 365-394.
D. Pfahl, G. Ruhe: System Dynamics and Goal-Oriented Measurement.
Handbook of Software Engineering and Knowledge Engineering Vol.
3 (S.K. Chang, Ed.), World Scientific 2005, pp 429-454.
An Ngo-The, G. Ruhe: Decision Support in Requirements Engineering,
Engineering and Managing Software Requirements (Ed. By A. Aurum
and C. Wohlin), Springer 2005, pp 267-286.
G. Ruhe (Guest Editor): Software Engineering
Decision Support, Special Issue International Journal of Software
Engineering and Knowledge Engineering, Vol. 13, No. 5, Oct 2003.
G. Ruhe: Software Engineering Decision
Support - Methodology and Applications. In: Innovations in Decision
Support Systems (Ed. by Tonfoni and Jain), International Series
on Advanced Intelligence, Volume 3, 2003, pp 143-174.
G. Ruhe: Learning Software Organisation. Handbook of Software
Engineering and Knowledge Engineering. World Scientific 2001.
G. Ruhe: Special issue on the 11th International Conference
on Software Engineering and Knowledge Engineering (SEKE'99).
International Journal of Software Engineering and Knowledge
Engineering, Vol. 11, No. 5, Oct 2000.
G. Ruhe and F. Bomarius (eds.): Learning Software Organization
- Methodology and Applications. Springer-Verlag. Lecture Notes
in Computer Science, Volume 1756, Springer Verlag, 2000.
S. Morasca, G. Ruhe: Special Issue on: Knowledge Discovery from
Empirical Software Engineering Data. International Journal of
Software Engineering and Knowledge Engineering, Vol. 9, No.
5 (Oct 1999), pp 495-498.

A. Mohamed, G. Ruhe, A. Eberlein:
Mismatch handling for COTS selection: a case study. Software Maintenance and Evolution: Theory and Practice, Journal of Software Maintenance and Evolution: Research and Practice, Wiley, Vol.23 (2011), pp. 145-178,
http://onlinelibrary.wiley.com/doi/10.1002/smr.493/full

E. Paikari, G. Ruhe, M. Richter: Defect prediction using case-based reasoning: An attribute weighting technique based upon sensitivity analysis in neural networks, Journal on Software Engineering and Knowledge Engineering, 2011 December (in press).
M. I. Ullah, X. Wei, B. R. Nault, G. Ruhe: Balancing Business and Technical Objectives for Supporting Software Product Evolution, accepted for International Journal of Software Engineering and Computing, Vol. 2 (2010), pp. 75-93.

M. I. Ullah, G. Ruhe, V. Garousi: Decision support for moving from a single product to a product portfolio in evolving software systems, Journal of Systems and Software, Vol. 83 (2010), pp. 2496-2512.

J. McElroy, G. Ruhe: When-to-release Decisions for Features with Time-dependent Value Functions, Requirements Engineering Journal, Requirements Engineering, Vol. 15 (2010), pp. 337-358.

G. Du, G. Ruhe: Two Machine-learning Techniques for Mining Solutions of the ReleasePlanner™ Decision Support System, Information Science (Elsevier), Reference: INS8521, Published online: 18. January 2010.

A. Al-Emran, P. Kapur, D. Pfahl, G. Ruhe: A Method for Studying the Impact of Uncertainty on Make-span in Operational Release Planning, Information and Software Technology 52 IST Journal (Elsevier), (2010) 446–461.

A. Ngo-The, G. Ruhe, Optimized Resource Allocation for Software Release Planning, IEEE Transactions on Software Engineering, Volume 35 (2009), pp 109-123.

P. Kapur, A. Ngo-The, G. Ruhe, A. Smith, Optimized staffing for product
releases and its application at Chartwell Technology, Journal of
Software Maintenance and Evolution, Vol.20 (2008), pp 365-386.
A. Ngo-The, G. Ruhe, A Systematic Approach for Solving the Wicked Problem of Software Release Planning. Soft Computing 2008, Vol. 12 (1), pp. 95-108.
A. Mohamed, G. Ruhe, A. Eberlein: MiHOS – An Approach to Support
Handling Mismatches between Requirements and COTS Products, Requirements Engineering 2008, Vol. 12 (3), pp. 127-143.

A. Mohamed, G. Ruhe, A. Eberlein: Sensitivity analysis in the process of COTS mismatch-handling, Requirements Engineering 2008, Vol. 13 (2), pp. 147-165.

A. Mohamed, G. Ruhe, A. Eberlein: Optimized mismatch resolution for COTS selection, Software Process Improvement and Practice 2008, Vol. 13 (2), pp. 157-169.

J. Li, G. Ruhe: Software effort estimation by analogy using attribute
selection based on rough set analysis, International Journal of Software Engineering and Knowledge Engineering 2008, 18 (1), pp. 1-23.

J. Li, G. Ruhe: Analysis of attribute weighting heuristics for
analogy-based software effort estimation method AQUA+, Empirical Software Engineering 2008, 13 (1), pp. 63-96.

Al-Emran, A., Pfahl, D. and Ruhe, G., A method for re-planning of
software releases using discrete-event simulation, Software Process
Improvement and Practice 13 (2008), pp. 19-33.

D. Pfahl, A.
Al-Emran, and G. Ruhe: A System Dynamics Simulation Model for
Analyzing the Stability of Software Release Plans, Journal Software
Process Improvement and Practice, Vol. 12 (2007), pp. 475-490.
J.
Li, G. Ruhe, A. Al-Emran, M. M. Richter, A Flexible Method for
Effort Estimation by Analogy, Journal Empirical Software Engineering,
Volume 12(2007), No 1, pp 65-106.
Y.
Wang, G. Ruhe: The Cognitive Process of Decision Making, Int’l
Journal of Cognitive Informatics and Natural Intelligence, 1(2),
April-June 2007, 73-85.
G.
Du, M. M. Richter, G. Ruhe: An Explanation Oriented Dialogue
Approach and its Application to Wicked Planning Problems, Journal
of Computing and Informatics, 25 (2006), 1001-1027.
J.
Momoh, G. Ruhe: Release
planning process improvement - an industrial case study, Software
Process: Improvement and Practice Volume 11, Issue 3, 2006,
pp 295-307.
G.
Ruhe, O. Saliu: The Art and Science of Software Release Planning.
IEEE Software, Issue 6/2005, Vol.22 (2005), No 6, pp 47-53.
O.
Saliu and G. Ruhe: Software Release Planning for Evolving Systems.
Innovations in Systems and Software Engineering - A NASA Journal,
Vol 1 (2005), Issue 2, pp 189-204.

J.
Denzinger, G. Ruhe: Decision Support for Software Release Planning
Using e-Assistants. Journal of Decision Support Systems, Vol
13 - No. 4/2004, pp 399-421.

G.
Ruhe, A. Ngo-The: Hybrid Intelligence in Software Release Planning.
International Journal of Hybrid Intelligent Systems, Vol 1(2004),
pp 99-110.
D. Greer, G. Ruhe: Software Release Planning: An Evolutionary
and Iterative Approach. Information and Software Technology,
Vol 46 (2004), pp 243-253.
G. Ruhe, A. Eberlein, D. Pfahl: Trade-off Analysis for Requirements
Selection. International Journal on Software Engineering and
Knowledge Engineering, Vol. 13 (2003), pp 345-366.
D. Pfahl, O. Laitenberger, G. Ruhe, J. Dorsch: An Externally
Replicated Experiment for Evaluating the Learning Effectiveness
of Using Simulations in Software Project Management Education.
International Journal on Empirical Software Engineering (Kluwer),
Vol 8 (2003), pp 367-395.
D. Pfahl, G. Ruhe: IMMoS: A Methodology for Integrated Measurement,
Modeling, and Simulation. International Journal of Software
Process Improvement and Practice, Wiley, Vol. 7 (2003), pp 189-210.
D. Pfahl, O. Laitenberger, G. Ruhe, J. Dorsch, T. Krivobokova:
Evaluating the Learning Effectiveness of Using Simulations in
Software Project Management Education: Results from a Two Times
Replicated Experiment. Information and Software Technology (Elsevier),
Vol 46 (2004), pp 81-147.


Tian, Y., Y. Wang, M. Gavrilova, G. Ruhe, " A Formal Knowledge Representation System for the Cognitive Learning Engine", Proceedings ot the 10th IEEE International Conference on Cognitive Informatics and Cognitive Computing (ICCI*CC 2011), Banff, Canada, August.
A. Al-Emran, D. Pfahl, G. Ruhe, "Decision Support for Product Release Planning Based on Robustness Analysis," Requirements Engineering, IEEE International Conference, pp. 157-166.
E. Paikari, M. M. Richter, G. Ruhe, "A Comparative Study of Attribute Weighting Techniques for Software Defect Prediction Using Case-based Reasoning", in Proceeding of 22nd International Conference on Software Engineering and Knowledge Engineering SEKE 2010, pp. 380 - 386.
E. Livani and G. Ruhe, “Decision Support for Staffing of the Next Software Product Release”, Proceedings of the 22nd International Conference on Software Engineering and Knowledge Engineering SEKE 2010, pp 634-639.
A. Al-Emran, A. Jadallah, E. Paikari, D. Pfahl, G. Ruhe, “Application of Re-estimation in Re-planning of Software Product Releases”, in Proceeding of International Conference on Software Processes ICSP 2010, pp. 260-272.
Md. M. Rahman, S.M. Sohan, F. Maurer, G. Ruhe: Evaluation of Optimized Staffing for Feature Development and Bug Fixing, Proceedings Conference on Empirical Software Engineering and Measurement ESEM 2010.
V. Heikkila, A. Jadallah, K. Rautiainen, G. Ruhe: Rigorous Support for Flexible Planning of Product Releases - A Stakeholder-Centric Approach and Its Initial Evaluation, Proceeding HICSS 2010, 43rd Hawaii International Conference on System Sciences, pp.1-10.
I. Ullah, G. Ruhe, V. Garousi: Towards design and architectural evaluation of product variants: A case study on an open source software system, Proceedings SEKE 2009.
J. McElroy, G. Ruhe: A Layered Approach for Planning Releases under Uncertain Capacities, Proceedings SEKE 2009.
G. Ruhe: Decision Processes for Trustworthy Software, Proceedings ICSP 2009 (Keynote), Vancouver, May 2009, Lecture Notes in Computer Science Vol. 5543, p. 2.
A. Jadallah, A. Al-Emran, M. Moussavi, G. Ruhe: The How? When? And What? for the Process of Re-planning Product Releases, Proceedings ICSP 2009, Vancouver, May 2009, Lecture Notes in Computer Science Vol. 5543, pp 24-37.
A.
Al-Emran, P. Kapur, D. Pfahl, G. Ruhe: Simulating worst case scenarios
and analyzing their combined effect in operational release planning,
Lecture Notes in Computer Science LNCS Vol. 5007, pp. 269-281.
J. Li, G. Ruhe: Multi-criteria decision analysis for
customization of estimation by analogy method AQUA+, ICSE 2008
Workshops: Fourth International Workshop on Predictor Models in Software Engineering, PROMISE 2008, pp. 55-62.
G. D. Boetticher, T. Menzies, T. J. Ostrand, G. Ruhe: 4th international
workshop on predictor models in SE (PROMISE 2008). ICSE Companion 2008,
pp 1061-1062.
G. Du, T. Zimmerman, G. Ruhe: Explaining Product Release Planning Results using Concept Analysis, SEKE 2008, pp. 137-142.
J. Li, B. Mackas, M. M. Richter, G. Ruhe: Cases, Predictions, and Accuracy Learning and Its Application to Effort Estimation, Proceeding European Conference on CBR 2008, pp. 299-31.
M.
Omolade Saliu, G. Ruhe: Bi-objective release planning for evolving
software systems, Proceedings of the 6th joint meeting of the
european software engineering conference and the 14th ACM SIGSOFT
symposium on Foundations of software engineering, September
03-07, 2007, pp. 105–114.
A.
Al-Emran, K. Khosrovian, D. Pfahl, G. Ruhe, Simulation-Based
Uncertainty Analysis for Planning Parameters in Operational
Product Management, Proceedings IDPT 2007.
A. Al-Emran, D. Pfahl, G. Ruhe, DynaReP: A Discrete Event Simulation
Model for Re-planning of Software Releases, ICSP 2007, LNCS
4470-0246.
A. Mohamed, G. Ruhe, and A. Eberlein, Decision Support for Handling
Mismatches between COTS Products and System Requirements, 6th
IEEE International Conference on COTS-based Software Systems
(ICCBSS'07), Banff, Canada, 2007, pp. 63-72.
A. Mohamed, G. Ruhe, and A. Eberlein, COTS Selection: Past,
Present, and Future, 14th IEEE International Conference and
Workshop on the Engineering of Computer Based Systems (ECBS'07),
Tucson, Arizona, 2007.
J. Li, G. Ruhe, Decision Support Analysis for Software Effort
Estimation by Analogy, PROMISE 2007 (in conjunction with ICSE
2007).
A. Al-Emran, D. Pfahl, G. Ruhe, DynaReP: A Discrete Event Simulation
Model for Re-planning of Software Releases, International Conference
on Software Process 2007 (ICSP 2007).
A. Mohamed, A. Eberlein, G. Ruhe, COTS Selection: Past, Present,
and Future, 14th Annual IEEE International Conference and Workshop
on the Engineering of Computer Based Systems ECBS2007.
A. Mohamed, G. Ruhe, A. Eberlein: Decision Support for Handling
Mismatches between COTS Products and System Requirements, International
Conference on COTS-based Software Systems, ICCBSS’2007.
J. Li, G. Ruhe, A Comparative Study of Attribute Weighting Strategies
for Effort Estimation by Analogy, Proceedings of the Fifth ACM-IEEE
International Symposium on Empirical Software Engineering (ISESE06),
September 2006.
J. McElroy, G. Ruhe, Decision Support for Resource Centric Software
Release Planning, International Conference on Software Engineering
and Knowledge Engineering (SEKE), San Francisco, July 2006,
pp 132 – 137.
G. Du, J. McElroy, G. Ruhe, A Family of Empirical Studies to
Compare Informal and Optimization-based Planning of Software
Releases. ACM-IEEE International Symposium on Empirical Software
Engineering (ISESE), Rio de Janeiro, Brazil, September 2006.
G. Du, J. McElroy, G. Ruhe, Ad hoc versus Systematic Planning
of Software Releases - A Three-Staged Experiment. 7th International
Conference on Product Focused Software Process Improvement (PROFES),
Amsterdam, The Netherlands, June 2006.
O. Saliu and G. Ruhe, Software Release Planning via Systematic
Impact Analysis, 14th IEEE Int’l Requirements Eng. Conf.
(RE’06) Doctoral Symposium, Minneapolis, USA, Sept. 12,
2006 .
G. Ruhe and O. Saliu, Art and Science of System Release Planning,
(Tutorial) 7th Int’l Conf. on Product Focused Software
Process Improvement (PROFESS 2006), Amsterdam, LNCS 4034, June
12-14, 2006, pp. 458-461.
D.
Pfahl, A. Al-Emran, G. Ruhe: Simulation-Based Stability Analysis
for Software Release Plans, Lecture Notes in Computer Science,
Publisher: Springer Berlin / Heidelberg, ISSN: 0302-97,
Volume 3966 / 2006, Title: Software Process Change: International
Software Process Workshop and International Workshop on Software
Process Simulation and Modeling, SPW/ProSim 2006, Shanghai,
China, May 20-21, 2006. Proceedings, ISBN: 3-540-34199-4, pp. 262-273.
P.
Bhawnani, G. Ruhe, F. Kudorfer, L. Meyer: Intelligent Decision
Support for Road Mapping - A Technology Transfer Case Study
with Siemens Corporate Technology, Workshop on Technology Transfer
in Software Engineering, Shanghia, China, 2006, pp 35-40.
P.
Bhawnani, B.H. Far, G. Ruhe: Explorative Study to Provide Decision
Support for Software Release Decisions, Proceedings of the 21st
IEEE International Conference on Software Maintenance, Budapest
Hungary, September 25-30, 2005, pp. 617-620.
P. Bhawnani, G. Ruhe: ReleasePlanner® - Planning new Releases
for Software Maintenance and Evolution, Industrial Proceedings
of the 21st IEEE International Conference on Software Maintenance,
Budapest, Hungary, September 25-30, 2005, pp. 73-76.
G.
Ruhe: Intelligent Decision Support for the Design of Distributed
Multi-Media Systems (Keynote), Proceedings of the 11th International
Conference on Distributed Multimedia Systems, Banff, Canada,
September 2005, page 1.
O.
Saliu and G. Ruhe: Supporting Software Release Planning Decisions
for Evolving Systems, Proceedings of the 29th IEEE/NASA Software
Engineering Workshop, Greenbelt, MD, USA, April 2005, pp. 14-24.
G.
Du, M. M. Richter, G. Ruhe:Identification of Question and Answer
Types for an Explanation Component in Software Release Planning.
3rd International Conference on Knowledge Capture, October 2-5,
2005, The Banff Centre, Banff, pp 193-194.
G. Du, M. M. Richter, G. Ruhe: A Dialogue Approach for Solving
Wicked Planning Problems, AAAI International Symposium on Explanation-aware
Computing, Washington, D.C., November 3-6, 2005, pp 62-75.
J. Momoh, G. Ruhe: Process Improvement through Evaluation of
Operational Feasibility of Strategic Release Plans. Accepted
for European Software Process Improvement and Innovation Conference,
November 2005, Budapest, 12 pages.
Z.
Li, G. Ruhe: Uncertainty Handling in Tabular-based Requirements
Using Rough Sets. Accepted paper for The Tenth International
Conference on Rough Sets, Fuzzy Sets, Data Mining, and Granular
Computing, RSFDGrC 2005, September 1-3, 2005, pp 678-687.
A.
Mohamed, G. Ruhe, A. Eberlein: Decision Support for Customization
of the COTS Selection Process, 2nd International Workshop on
Models and Processes for the Evaluation of COTS Components (MPEC'05),
27th International Conference on Software Engineering, ICSE’2005,
USA, ACM SIGSOFT Software Engineering Notes, Volume 30 Issue
4, pp 1-4.
Y.
Wang, G. Ruhe: Staffing for Software Inspections, Proceedings
of Software Engineering as part of the 23rd IASTED International
Multi-Conference on Applied Informatics", ISBN: 0-88986-464-0,
ISSN: 1027-2666, pp 400-407.
A.
Mohamed, G. Ruhe, A. Eberlein: Towards a Customizable Approach
for COTS Selection, Proceedings of The 8th IASTED International
Conference on Software Engineering and Applications (SEA'04),
Cambridge, MA, USA, 2004, pp 665-671.
G. Ruhe, J. Momoh: Strategic release planning and evaluation
of operational feasibility. Proceedings HICSS-38 (Mini-Track
on Strategic Software Engineering), IEEE Computer Society.
G. Ruhe, G. Du: Strategic Planning of Enterprise Application
Integration. Banff Summit on Enterprise Application Integration,
Banff, Canada, May 2004, pp 193-203.
Y. Wang, D. Liu, G. Ruhe: Formal Description of the Cognitive
Process of Decision Making, Proceedings 3rd IEEE International
Conference on Cognitive Informatics ICCI’04, August 2004,
pp 124-130.
A. Ngo-The, G. Ruhe, W. Shen: Release Planning under Fuzzy Effort
Constraint, Proceedings 3rd IEEE International Conference on
Cognitive Informatics ICCI’04, August 2004, pp 168-175.
A.
Mohamed, T. Watanaya, G. Ruhe, A. Eberlein, B. Far: COTS Evaluation
Supported by Knowledge Proceedings International Workshop on
Learning Software Organizations. Banff, June 21, 2004, LNCS
Vol. 3096, pp 43-54.
A.
Amandeep, G. Ruhe, M. Stanford: Intelligent Support for Software
Release Planning, 5th International Conference on Product Focused
Software Process Improvement (Profes), April 5 - 8, Kansai Science
City, LNCS Vol. 3009, pp 248-262.
S. Maurice, G. Ruhe, A. Mohamed, A. Amandeep, J. Momoh: How
to create a Win-Win Relationship between Industry and Software
Engineering Graduate Education, Proceedings Canadian Conference
on Computer and Software Engineering Education, Calgary, March
2004, pp 147-154.
G.
Ruhe, J. Li: Software Process Improvement Education from an
Industrial Perspective. Proceedings Canadian Conference on Computer
and Software Engineering Education, Calgary, March 2004, pp
117-122.
G. Ruhe: Software Engineering Decision Support and Empirical
Investigations - A Proposed Marriage, Empirical Studies in Software
Engineering, Vol.2, pp 25-34.
J. Li, G. Ruhe: Web-Based Decision Support for Software Release
Planning, Proceedings of WI/IAT 2003 Workshop on Applications,
Products and Services of Web-based Support Systems, Halifax,
2003, pp 13-20.
A. Ngo-The, G. Ruhe: Requirements Negotiation under Incompleteness
and Uncertainty. Proceedings SEKE'03, June 2003, San Francisco
Bay, pp 586-593.
G. Ruhe: "Intelligent Support for Selection of COTS Products,"
In: Web, Web-Services, and Database Systems, Lecture Notes in
Computer Science, Vol 2593, Springer 2003, pp 34-45.
G. Ruhe: Software Engineering Decision Support - A New Paradigm
for Learning Software Organizations. Advances in Learning Software
Organization. Lecture Notes In Computer Science Vol. 2640, Springer
2003, pp. 104-115.
D. Pfahl, G. Ruhe: Goal-Oriented Measurement plus System Dynamics
- A Hybrid and Evolutionary Approach. ProSim 2003, May 3-4,
2003 Portland.
D. Pfahl, G. Ruhe: IMMoS: A Methodology for Integrated Measurement,
Modelling, and Simulation, Proceedings of the ProSim'03 Workshop,
May 3-4, 2003, Portland.
G. Ruhe, D. Greer: Quantitative Studies in Software Release
Planning under Risk and Resource Constraints. Proceedings of
2003 International Symposium on Empirical Software Engineering,
Roma, pp 262-271.
G. Ruhe, A. Eberlein, D. Pfahl: Quantitative WinWin –
A New Method for Decision Support in Requirements Negotiation,
Proceedings 14th International Conference on Software Engineering
and Knowledge Engineering (SEKE'2002), Ischia, pp 159-166.
D. Pfahl, N. Angkasaputra, C. Differding, G. Ruhe: CORONET-Train:
A Method for Web-Based Collaborative Learning in Software Organisations,
Proceedings LSO Workshop PROFES 2001, September 2001, Kaiserslautern.
D. Pfahl, N. Koval, G. Ruhe: An Experiment for Evaluating the
Effectiveness of Using a System Dynamics Simulation Model in
Software Project Management Education. In: IEEE Computer Society:
7th International Software Metrics Symposium. Metrics'01 - Proceedings
Los Alamitos : IEEE Computer Society, 2001, S. 97-109.
D. Pfahl, G. Ruhe: System Dynamics as an Enabling Technology
for Learning in Software Organisations. In: 13th International
Conference on Software Engineering and Knowledge Engineering.
SEKE'2001, pp 355-362.
D. Pfahl, M. Klemm, G. Ruhe, Using System Dynamics Simulation
Models for Software Project Management Education and Training,
Proceedings of the 3rd Process Simulation Modeling Workshop
(ProSim-2000), London, United Kingdom, 12-14 June, 2000.
N. R. Mead, H. Saiedian, G. Ruhe, D.J. Bagert: Shortages of
Qualified Software Engineering Faculty and Practitioners: Challenges
in Breaking the Cycle. Proceedings ICSE 2000, Limerick, Ireland,
June 4-11, 2000, pp 665 - 668.
J. Järvinnen, S. Komi-Sirviö, G. Ruhe: The Making
of the PROFES Improvement Methodology – History and Design
Rationale. Proceedings PROFES 2000, Oulu, Finland, June 20-22,
2000, pp 257 - 270.
B. Freimuth, B. Klein, O. Laitenberger, G. Ruhe: Measurable
Software Quality Improvement through Innovative Software Inspection
Technologies at Allianz Life Assurance. 11th European Software
Control and Metrics Conference (ESCOM), Munich, April 2000,
pp 345-354.
G. Ruhe: Experience Factory-Based Professional Education and
Training, Proceedings 12th Conference on Software Engineering
Education and Training, March 22-24, 1999 New Orleans, pp 62-73.
L. Briand, B. Freimut, O. Laitenberger, G. Ruhe, B. Klein: Quality
Assurance Technologies for the EURO Conversion – Industrial
Experience at Allianz Life Assurance. Proceedings of the 2nd
Quality Week Europe, November 9-13, 1998, Brussels.
G. Ruhe, S. Hartkopf, F. Leippert: How To Make Sense Of Empirical
Software Engineering Data-An Integrate Approach. Proceedings
of the Tenth International Conference on Software Engineering
and Knowledge Engineering (SEKE’98), San Francisco Bay,
pp 209-218.
A. Birk, R. Kempkens, D. Rombach, and G. Ruhe: Systematic Improvement
of Software Engineering Processes. Proceedings Frühjahrstagung
Wirtschaftsinformatik 1998 (WI’98), February 26/27, 1998,
Hamburg, Germany.

E. Paikari, G. Ruhe, M. Richter: Defect prediction using case-based reasoning: An attribute weighting technique based upon sensitivity analysis in neural networks, Journal on Software Engineering and Knowledge Engineering, 2011 December (in press), FS = CRD1 (SAP) 2009, C = Richter, P = 30%.
Software defect prediction is an acknowledged approach used to achieve better product quality and to better utilize resources needed for that. One known method for predicting the number of defects is applying case-based reasoning (CBR). In this paper, different attribute weighting techniques for CBR-based defect prediction are analyzed. The first weighting technique used in this work called SANN (Sensitivity Analysis based on Neural Networks) is based on sensitivity analysis of the impact of attributes as part of neural network analysis. Artificial neural network is an applicable method when there are non-linear and complicated relationships among the attributes. Since weighting can play a key role in the CBR model, using an efficient method can change the results. The results of SANN are compared with the case of applying uniform weights and weights gained from multiple linear regression called MLR. Evaluation of the accuracy of the overall method for applying the three different weighting techniques is done over five data sets comprising in total about 5000 modules from NASA. Two quality measures are applied: Average absolute error AAE and average relative error ARE. In addition to the variation of weighting techniques, the impact of varying the number of nearest neighbors is studied. The three main results of the empirical analysis are: (i) In the majority of cases, SANN achieves the most accurate results, (ii) uniform weighting performs better than the MLR-based weighting heuristic, and (iii) there is no significant preference pattern for the different number of similar objects applied in CBR.
A. Mohamed, G. Ruhe, A. Eberlein:
Mismatch handling for COTS selection: a case study.
http://onlinelibrary.wiley.com/doi/10.1002/smr.493/full
Using Commercial Off-The-Shelf (COTS) products to build software systems requires the evaluation of 9 existing COTS products, the selection of the COTS that best fit system requirements, and the integration of the selected COTS into the system. During this process, it is inevitable to encounter two types of 11 mismatches: (1) COTS mismatches, which are encountered during COTS selection between requirements and COTS features, due to an excess or shortage of COTS features, and (2) architectural mismatches, 13 which arise when integrating multiple COTS products that do not fit well together. This paper focuses on the 'COTS mismatch' problem. The paper describes a real-world case study of a single COTS selection 15 with the aid of a method called MiHOS (Mismatch Handling for COTS Selection) to handle the COTS mismatches. MiHOS runs on top of existing COTS selection models in order to properly address COTS 17 mismatches with limited resources. The case study was conducted in the e-service domain. The goal was to validate MiHOS and to answer two key questions: (1) How useful is decision support during different 19 phases in the process mismatch handling? And (2) what is the effort vs benefit of using MiHOS? The results are promising and illustrate the potential benefits of using MiHOS.
A. Mohamed, G. Ruhe, A. Eberlein: MiHOS – An Approach to Support Handling Mismatches between Requirements and COTS Products, Requirements Engineering 2008, Vol. 12 (3), pp. 127-143.
Abstract
In the process of selecting Commercial Off-The-Shelf (COTS) products,
it is inevitable to encounter mismatches between system requirements
and COTS products. These mismatches occur as a result of an excess or
shortage of the COTS attributes. This paper proposes a decision support
approach, called MiHOS (Mismatch Handling for COTS Selection), that
aims at addressing COTS mismatches during and after the selection
process. MiHOS can be integrated with existing COTS selection methods
at two points: (1) For evaluating COTS candidates:
MiHOS estimates the anticipated fitness of the candidates if their
mismatches are resolved. This helps to base our COTS selection
decisions on the fitness that the candidates will eventually have if
selected. (2) Mismatch resolution after selecting a COTS product:
MiHOS suggests alternative plans for resolving the most appropriate
mismatches using suitable actions, such that the most important risk,
technical, and resource constraints are met. A case-study is used to
illustrate MiHOS and to discuss its added value.
A. Mohamed, G. Ruhe, A. Eberlein: Sensitivity analysis in the process of COTS mismatch-handling, Requirements Engineering 2008, Vol. 13 (2), pp. 147-165.
Abstract
During the selection of commercial off-the-shelf (COTS) products,
mismatches encountered between stakeholders’ requirements and features
offered by COTS products are inevitable. These mismatches occur as a
result of an excess or shortage of functionality offered by the COTS. A
decision support approach, called mismatch handling for COTS selection
(MiHOS), was proposed earlier to help address mismatches while
considering limited resources. In MiHOS, several input parameters need
to be estimated such as the level of mismatches and the resource
consumptions and constraints. These estimates are subject to
uncertainty and therefore limit the applicability of the results. In
this paper, we propose sensitivity analysis for MiHOS (MiHOS-SA), an
approach that aims at helping decision makers gain insights into the
impact of input uncertainties on the validity of MiHOS’ results.
MiHOS-SA draws on existing sensitivity analysis techniques to address
the problem. A case study from the e-services domain was conducted to
illustrate MiHOS-SA and discuss its added value.
A. Mohamed, G. Ruhe, A. Eberlein: Optimized mismatch resolution for COTS selection, Software Process Improvement and Practice 2008, Vol. 13 (2), pp. 157-169.
Abstract
The use of Commercial Off-The-Shelf (COTS) products in the software
development process requires the evaluation of existing COTS products,
and then selecting the one that best fits system requirements. In this
process, it is inevitable to encounter mismatches between COTS features
and system requirements. Mismatches occur as a result of an excess or
shortage of COTS capabilities. Many of these mismatches are resolved
after selecting a COTS product. Existing COTS-selection approaches fail
to properly consider these mismatches. This article presents MiHOS
(Mismatch Handling for COTS Selection), an approach that aims at
addressing mismatches while considering limited resources. MiHOS can be
integrated with existing COTS-selection methods at two points: (i)When
evaluating COTS candidates in order to estimate the anticipated fitness
of the candidates if their mismatches are resolved. This helps to base
our COTS-selection decisions on the fitness that the COTS candidates
will eventually have if selected. (ii) After selecting a COTS product
in order to plan the resolution of the most appropriate mismatches
using suitable actions, such that the most important risk, technical,
and resource constraints are met. A case study from the e-services
domain is used to illustrate the method and to discuss its added value.
Copyright © 2008 John Wiley & Sons, Ltd.
J. Li, G. Ruhe: Software effort estimation by analogy using attribute selection based on rough set analysis, International Journal of Software Engineering and Knowledge Engineering 2008, 18 (1), pp. 1-23.
Abstract
Estimation by analogy (EBA) predicts effort for a new project by
learning from the performance of former projects. This is done by
aggregating effort information of similar projects from a given
historical data set that contains projects, or objects in general, and
attributes describing the objects. While this has been successful in
general, existing research results have shown that a carefully selected
subset, as well as weighting, of the attributes may improve the
performance of the estimation methods.
In order to improve the estimation accuracy of our former proposed EBA
method AQUA, which supports data sets that have non-quantitative and
missing values, an attribute weighting method using rough set analysis
is proposed in this paper. AQUA is thus extended to AQUA+ by
incorporating the proposed attribute weighting and selection method.
Better prediction accuracy was obtained by AQUA+ compared to AQUA for
five data sets. The proposed method for attribute weighting and
selection is effective in that (1) it supports data sets that have
non-quantitative and missing values; (2) it supports attribute
selection as well as weighting, which are not supported simultaneously
by other attribute selection methods; and (3) it helps AQUA+ to produce
better performance.
J. Li, G. Ruhe: Analysis of attribute weighting heuristics for analogy-based software effort estimation method AQUA+, Empirical Software Engineering 2008, 13 (1), pp. 63-96.
Abstract
Estimation by analogy (EBA) predicts effort for a new project by
aggregating effort information of similar projects from a given
historical data set. Existing research results have shown that a
careful selection and weighting of attributes may improve the
performance of the estimation methods. This paper continues along that
research line and considers weighting of attributes in order to improve
the estimation accuracy. More specifically, the impact of weighting
(and selection) of attributes is studied as extensions to our former
EBA method AQUA, which has shown promising results and also allows
estimation in the case of data sets that have non-quantitative
attributes and missing values. The new resulting method is called
AQUA+. For attribute weighting, a qualitative analysis pre-step using
rough set analysis (RSA) is performed. RSA is a proven machine learning
technique for classification of objects. We exploit the RSA results in
different ways and define four heuristics for attribute weighting.
AQUA+ was evaluated in two ways: (1) comparison between AQUA+ and AQUA,
along with the comparative analysis between the proposed four
heuristics for AQUA+, (2) comparison of AQUA+ with other EBA methods.
The main evaluation results are: (1) better estimation accuracy was
obtained by AQUA+ compared to AQUA over all six data sets; and (2)
AQUA+ obtained better results than, or very close to that of other EBA
methods for the three data sets applied to all the EBA methods. In
conclusion, the proposed attribute weighing method using RSA can
improve the estimation accuracy of EBA method AQUA+ according to the
empirical studies over six data sets. Testing more data sets is
necessary to get results that are more statistical significant.
Al-Emran,
A., Pfahl, D. and Ruhe, G., A method for re-planning of software
releases using discrete-event simulation, Software Process Improvement
and Practice 13 (2008), pp. 19-33.
Abstract
Software release planning can be described as a process consisting of
the following three phases: (i) strategic release planning, i.e. the
assignment of features to subsequent releases, (ii) operational release
planning, i.e. the allocation of resources to tasks within each
individual release, and (iii) dynamic re-planning, i.e. the revision of
plans to handle unexpected changes imposed on product-project managers
responsible for the realization of individual releases. Example changes
include the addition or removal of features and-or developers,
adjustments due to over-estimated developer productivity, or
under-estimated work volume of feature-specific tasks, and adjusted
degrees of task dependencies. The research presented in this article
mainly focuses on phase (iii), in conjunction with phase (ii), of the
release planning process, assuming that phase (i) has already been
completed. For that purpose, we present a hybrid intelligence
decision-support method PRP (Planning-Re-planning), and as its integral
part a discrete-event simulation model called DynaReP (Dynamic
Re-planner). The applicability, effectiveness, and efficiency of the
proposed method and model are illustrated through a series of typical
release planning and re-planning scenarios on operational level.
Copyright © 2008 John Wiley & Sons, Ltd.
A.
Ngo-The, G. Ruhe: Optimized Resource Allocation for Software Release
Planning, IEEE TSE, DOI Bookmark:
http://doi.ieeecomputersociety.org/10.1109/TSE.2008 (Online).
Abstract
Release planning for incremental software development assigns features
to releases such that technical, resource, risk and budget constraints
are met. Planning of software releases and allocation of resources
cannot be handled in isolation. A feature can be offered as part of a
release only if all its necessary tasks are done before the given
release date. We assume a given pool of human resources with different
degrees of productivity to perform different types of tasks. To address
the inherent difficulty of this process, we propose a two-phased
optimization approach that combines the strength of two existing
solution methods. The industrial applicability of the approach is
primarily directed towards mature organizations having systematic
development and measurement processes in place. The expected practical
benefit of the planning method is to provide release plan solutions
that achieve a better overall business value (e.g., expressed by the
degree of stakeholder satisfaction) by better allocation of resources.
Without ignoring the importance of the human expert in this process,
the contributions of the paper are seen in making the overall process
more objective and the resulting decisions more transparent.
P.
Kapur, A. Ngo-The, G. Ruhe, A. Smith, Optimized staffing for product
releases and its application at Chartwell Technology, Journal of
Software Maintenance and Evolution, Vol.20 (2008), pp 365-386.
Abstract
Release planning for incremental software development assigns features
to releases such that technical, resource, risk and budget constraints
are met. Each feature offers a piece of functionality. A feature can be
offered as part of a release only if all its necessary tasks are done
before the given release date. These tasks require different skills.
Staffing for product releases as considered in this paper is the
process of assigning human resources from a given pool of developers
who might have varying levels of skill to perform different tasks. In
addition to that, we consider time windows of absence of the
developers. The primary goal of staffing is to provide product releases
of best quality where quality means offering the most attractive
features to customers in a timely manner. We call the problem
STAFF-PRO. The problem is known to be NP-complete. Consequently, we
have to be satisfied with solutions that are sufficiently good, but not
necessarily optimal in the case of mid-sized or large problems.
Search-based methods relying on meta-heuristics have been proven to be
successful in similar contexts. In this research, a focused search (FS)
method is presented. This refers to a two-phased solution approach
where Phase 1 applies integer linear programming to a relaxed version
of the full problem. Its solution is used as a starting point to
perform FS in a reduced search space in Phase 2. The search itself is
conducted by a genetic algorithm. It generates a solution that fulfills
all the stated resource and scheduling constraints and is of a proven
degree of optimality. We performed an empirical analysis of the
proposed solution approach by comparing FS and unfocused search (UFS)
(without Phase 1) for a series of 200 test examples. On average, FS
performs about 15% better than UFS. The whole method was applied as an
industrial case study performed at Chartwell Technology. The case study
demonstrates that application of the FS method to STAFF-PRO (i) allows
a reduction in the time needed for generating acceptable staffing
plans, (ii) generates plans of proven quality that are better than
manual plans and (iii) supports the various types of re-planning
necessary for varying parameters, budgets and resource. Copyright ©
2008 John Wiley & Sons, Ltd.
A. Ngo-The, G. Ruhe, A Systematic Approach for Solving the Wicked Problem of Software Release Planning. Soft Computing 2008, Vol. 12 (1), pp. 95-108.
Abstract
Release planning is known to be a cognitively and computationally
difficult problem. Different kinds of uncertainties make it hard to
formulate and solve the problem. Our solution approach called EVOLVE+
mitigates these difficulties by (i) an evolutionary problem solving
method combining rigorous solution methods to solve the actual
formalization of the problem combined with the interactive involvement
of the human experts in this process, (ii) provision of a portfolio of
diversified and qualified solutions at each iteration of the solution
process, and (iii) the application of a multi-criteria decision aid
method (ELECTRE IS) to assist the selection of the final solution from
a set of qualified solutions. At the final stage of the process, an
outranking relation is established among the qualified candidate
solutions to address existing soft constraints or objectives. A case
study is provided to illustrate and initially evaluate the given
approach. The proposed method and results are not limited to software
release planning, but can be adapted to a wider class of wicked
planning problems.
G.
Ruhe, O. Saliu: The Art and Science of Software Release Planning.
IEEE Software, Issue 6/2005, Vol.22 (2005), No 6, pp 47-53.
Abstract
Release planning (RP) addresses decisions related to the selection
and assignment of features to a sequence of consecutive product
releases such that the most important technical, resource, budget
and risk constraints are met. Release planning is an important
and integral part of any type of incremental product development.
Poor release planning decisions can result in: (i) unsatisfied
customers not getting what they expect, (ii) release unlikely
to be delivered within a given schedule, (iii) release not meeting
effort constraints, and (iv) release not offering the best business
value for the investment.
The
objective of this paper is to describe and position the 'art
and science' of software release planning. The "art of
release planning" refers to relying on human intuition,
communication and capabilities to negotiate between conflicting
objectives and constraints. The "science of release planning"
refers to emphasizing formalization of the problem and applying
computational algorithms to generate best solutions. Both art
and science are important for achieving meaningful release planning
results. We investigate the release planning process and propose
a hybrid planning approach that integrates the strength of computational
intelligence with the knowledge and experience of human experts.
O.
Saliu and G. Ruhe: Software Release Planning for Evolving Systems.
Innovations in Systems and Software Engineering - A NASA Journal,
Vol 1 (2005), Issue 2, pp 189-204.
Abstract
Software release planning addresses the
issues involved with assigning features to releases of a system
undergoing an incremental release schedule. The issues become
highly complex even for medium sized systems, due to involvement
of multiple stakeholders (and their priorities) and from resource
consumption considerations necessary for the realization of
features. The situation becomes even more complex for evolving
software systems where the different components of the system
have their own history and status in terms of size, complexity,
component health, criticality and understandability.
In
this paper, we present the foundations for handling release
planning for evolving systems more rigorously. Based on a formalized
problem description, and following the paradigm of software
engineering decision support, we extend the solution approach
called EVOLVE* (Evolve Star). From analyzing and comparing different
characteristics of the target components where the features
will be implemented, we obtain a more detailed perspective of
the potential impact of implementing one feature or another.
As part of this analysis, we have applied the analytic hierarchy
process to define weighting factors for component modifiability.
The information gained is used for designing release plans based
on thresholds for the relative degree of modifiability acceptable
for a release. A case study is performed to demonstrate the
added value of the approach. The evolving system under consideration
is the intelligent decision support tool ReleasePlannerR. We
compare and discuss results for planning future releases for
the cases (i) with and (ii) without consideration of system
constraints.
J.
Denzinger, G. Ruhe: Decision Support for Software Release Planning
Using e-Assistants. Journal of Decision Support Systems, Vol
13 - No. 4/2004, pp 399-421.
Abstract
Incremental software development replaces monolithic-type development
by offering a series of releases with additive functionality.
The problem under investigation is to find 'most appropriate'
requirements for a sequence of releases. The problem is 'wicked'
in the sense that the objective is 'to maximize the benefit',
but it is difficult to give a measurable definition of 'benefit'.
In addition to that, the problem encounters uncertainty in its
main parameters. such as effort estimates as well as urgency
and value evaluations done by the involved stakeholders.
In
this paper, uncertainty and incompleteness of available information
is addressed by a more flexible planning procedure including
e-assistants. We are proposing a hybrid approach called e-release
planning combining the strengths of computational intelligence
with human intelligence supported. The e-assistants provide
support to generate the most promising sequence of problem instances
to be solved. They interact with the human stakeholder and project
manager to elicit their implicit preferences based on their
individual evaluation of the proposed solutions. During the
iterative approach, we incrementally fix requirements to their
most favorable assignment to a release. This decision is based
on analyzing concordance and non-discordance of assignments
of requirements to releases between the candidate solutions.
The intelligent decision support tool ReleasePlannerR is used
as the underlying 'solution generation engine'. For any generated
problem instance, it generates a set of most promising release
plans satisfying the explicitly given objectives and constraints.
All concepts and the whole solution approach is illustrated
by a case study example from the area of enterprise application
integration.
G.
Ruhe, A. Ngo-The: Hybrid Intelligence in Software Release Planning.
International Journal of Hybrid Intelligent Systems, Vol 1(2004),
pp 99-110.
Abstract
There is a growing recognition that an incremental approach
to software development is often more suitable and less risky
than the traditional waterfall approach. Delivering software
in an incremental fashion suggests better customer satisfaction
and reduces many of the risks associated with delivering large
software projects. In this paper, we consider the problem of
deciding which requirements should be assigned to which release.
A. Ngo-The, G. Ruhe, A Systematic Approach for Solving the Wicked Problem of Software Release Planning. Soft Computing 2008, Vol. 12 (1), pp. 95-108.
The
proposed hybrid approach called EVOLVE* improves existing methods
for release planning by combining the strength of mathematical
models with the subtleness of experts' knowledge and judgment.
It makes use of different computationally intelligent techniques
such as evolutionary computing and principles of multi-criteria
decision aid. This is combined with appropriate involvement
of human intelligence. EVOLVE* consists of three main phases
called modeling, exploration, and consolidation. Different from
former algorithms of the EVOLVE family, our new approach plans
only two releases in advance, i.e., each requirement is assigned
to one of the following three categories: "next release",
"next but one release", "not yet assigned".
EVOLVE* aims to achieve maximum stakeholder satisfaction. Our
iterative procedure allows intelligent search of most promising
solutions under the competing criteria of time, benefit and
quality as described by the "magic triangle". The
complete approach is illustrated by a case study example.
D.
Greer, G. Ruhe: Software Release Planning: An Evolutionary and
Iterative Approach. Information and Software Technology, Vol
46 (2004), pp 243-253.
Abstract
To achieve higher flexibility and to better satisfy actual customer
requirements, there is an increasing tendency to develop and
deliver software in an incremental fashion. In adopting this
process, requirements are delivered in releases and so a decision
has to be made on which requirements should be delivered in
which release. Three main considerations that need to be taken
account of are the technical precedences inherent in the requirements,
the typically conflicting priorities as determined by the representative
stakeholders, as well as the balance between required and available
effort. The technical precedence constraints relate to situations
where one requirement cannot be implemented until another is
completed or where one requirement is implemented in the same
increment as another one.
Stakeholder preferences may be based on the perceived value
or urgency of delivered requirements to the different stakeholders
involved. The technical priorities and individual stakeholder
priorities may be in conflict and difficult to reconcile. This
paper provides i) a method for optimally allocating requirements
to increments; ii) a means of assessing and optimizing the degree
to which the ordering conflicts with stakeholder priorities
within technical precedence constraints; iii) a means of balancing
required and available resources for all increments; and iv)
an overall method called EVOLVE aimed at the continuous planning
of incremental software development. The optimization method
used is iterative and essentially based on a genetic algorithm.
A set of the most promising candidate solutions is generated
to support the final decision. The paper evaluates the proposed
approach using a sample project.
G.
Ruhe, A. Eberlein, D. Pfahl: Trade-off Analysis for Requirements
Selection. International Journal on Software Engineering and
Knowledge Engineering, Vol. 13 (2003), pp 345-366.
Abstract
Evaluation, prioritization and selection of candidate requirements
are of tremendous importance and impact for subsequent software
development. Effort, time as well as quality constraints have
to be taken into ac-count. Typically, different stakeholders
have conflicting priorities and the requirements of all these
stake-holders have to be balanced in an appropriate way to ensure
maximum value of the final set of requirements. Trade-off analysis
is needed to proactively explore the impact of certain decisions
in terms of all the criteria and constraints.
The
proposed method called Quantitative WinWin uses an evolutionary
approach to provide support for requirements negotiations. The
novelty of the presented idea is four-fold. Firstly, it iteratively
uses the Analytical Hierarchy Process (AHP) for a stepwise analysis
with the aim to balance the stakeholders' preferences related
to different classes of requirements. Secondly, requirements
selection is based on predicting and re-balancing its impact
on effort, time and quality. Both prediction and rebalancing
uses the simulation model prototype GENSIM. Thirdly, alternative
solution sets offered for decision-making are developed incremen-tally
based on thresholds for the degree of importance of requirements
and heuristics to find a best fit to con-straints. Finally,
trade-off analysis is used to determine non-dominated extensions
of the maximum value that is achievable under resource and quality
constraints. As main result, quantitative WinWin proposes a
small number of possible sets of requirements from which the
actual decision-maker finally can select the most appropriate
solution.
D.
Pfahl, O. Laitenberger, G. Ruhe, J. Dorsch: An Externally Replicated
Experiment for Evaluating the Learning Effectiveness of Using
Simulations in Software Project Management Education. International
Journal on Empirical Software Engineering (Kluwer), Vol 8 (2003),
pp 367-395.
Abstract
The increasing demand for software project
managers in industry requires strategies for the development
of the management-related knowledge and skills of the current
and future software workforce. Although several approaches help
teach the required skills in a university setting, few empirical
studies are currently available to characterise and compare
their effects. This paper presents results of an externally
replicated controlled experiment that evaluates the learning
effectiveness of using a process simulation model for educating
computer science students in software project management. While
the experimental group applies a System Dynamics simulation
model, the control group uses the well-known COCOMO model as
a predictive tool for project planning.
The
results of the empirical study indicate that students using
the simulation model gain a better understanding about typical
behaviour patterns of software development projects. The combination
of the results from the initial experiment and the replication
corroborates this finding. Additional analysis shows that the
observed effect can mainly be attributed to the use of the simulation
model in combination with a web-based role-play scenario. This
finding is strongly supported by information gathered from the
debriefing questionnaires of subjects in the experimental group.
They consistently rated the simulation-based role-play scenario
as a very useful approach for learning about issues in software
project management.
D.
Pfahl, G. Ruhe: IMMoS: A Methodology for Integrated Measurement,
Modeling, and Simulation. International Journal of Software
Process Improvement and Practice, Wiley, Vol. 7 (2003), pp 189-210.
Abstract
One reason for the still relative small number of real-world
applications of simulation in software engineering is the existing
lack of guidance in creating and formulating the related models
and in the isolated usage of associated techniques. In order
to support both strategic and project management in software
organisations, a framework for Integrated Measurement, Modelling,
and Simulation (IMMoS) has been developed and validated. The
hybrid approach integrates the individual strengths of its inherent
methodological elements and concepts. The IMMoS framework supports
managers to cope with the dynamic complexity of software development
by providing guidance on building and using quantitative simulation
models as a source for learning and improvement.
The
core element of IMMoS is the simulation modelling method System
Dynamics (SD), which integrates quantitative dynamic models
with quantitative and qualitative static models in a natural
way. The novelty of IMMoS is twofold. Firstly, it enhances existing
guidance for SD model development by adding a component that
enforces goal-orientation, and by providing a refined process
model with detailed description of activities, products, and
roles involved in SD modelling and simulation. Secondly, it
describes how to integrate SD modelling with goal-oriented measurement
and descriptive process modelling and how to make synergy out
of that. IMMoS has been successfully applied in industrial software
organisations. The effectiveness and efficiency of IMMoS is
supported with empirical evidence from two industrial case studies
and one controlled experiment.
D.
Pfahl, O. Laitenberger, G. Ruhe, J. Dorsch, T. Krivobokova:
Evaluating the Learning Effectiveness of Using Simulations in
Software Project Management Education: Results from a Two Times
Replicated Experiment. Information and Software Technology (Elsevier),
Vol 46 (2004), pp 81-147.
Abstract
The increasing demand for software project managers in industry
requires strategies for the development of the management-
related knowledge and skills of the current and future software
workforce. Although several approaches help teach the required
skills in a university setting, few empirical studies are currently
available to characterise and compare their effects. This paper
presents results of a two times replicated experiment that evaluates
the learning effectiveness of using a process simulation model
for educating computer science students in software project
management. While the experimental group applies a System Dynamics
simulation model, the control group uses the well-known COCOMO
model as a predictive tool
for project planning.
The results of the individual empirical studies indicate that
students using the simulation model gain a better understanding
about typical behaviour patterns of software development projects.
The meta-analysis that combines the results from the initial
experiment and two replications corroborates this finding. Additional
analysis shows that the observed effect can mainly be attributed
to the use of the simulation model in combination with a web-based
role-play scenario. This finding is strongly supported by information
gathered from the debriefing questionnaires of subjects in the
experimental group. They consistently rated the simulation-based
role-play scenario as a very useful approach for learning about
issues in software project management.
J.
Momoh, G. Ruhe: Release
planning process improvement - an industrial case study, Software
Process: Improvement and Practice Volume 11, Issue 3, 2006,
pp 295-307.
Abstract
Planning of software releases is accomplished
by the assignment of requirements to releases where effort,
finance and risk constraints are considered in order to determine
strategic release plans. Planning and re-planning of releases
has an impact on time-to-market, customer satisfaction, and
stability of the development process. This paper presents an
industrial case study of the release planning process improvement
as performed at Trema Laboratories, Inc. The baseline situation
is compared against improvement gained from the introduction
of a more systematic process defined by a decision support tool
called ReleasePlanner, and an accompanying methodology. The
new process was designed and implemented as part of a trial
project performed at Trema. The paper describes main findings
of this trial. The study shows that the process improvement
introduced has added significant value to the overall business.
G.
Du, M. M. Richter, G. Ruhe: An Explanation Oriented Dialogue
Approach and its Application to Wicked Planning Problems, Journal
of Computing and Informatics, 25 (2006), 1001-1027.
Abstract
In this paper we consider an interactive and explanation based
dialogue approach to complex and ‘wicked’ planning
problems. Wicked problems are essentially imprecisely formulated
problems having no clearly defined goals and constraints. The
dialogue approach is aimed at reducing the problem complexity
during interaction with the human expert. The involved software
agents are mostly optimization procedures. The approach contains
the following steps: (1) Selection
of a specific concern in a proposed solution; (2) Calculation
of a stakeholder defined ideal plan; and (3) Comparing the actually
generated plan and the prototype based on a similarity measure.
The comparison of the actual and the ideal plan looks ataspects
of interest for the stakeholder such as resource consumptions
or structural properties of the plan.
The proposed approach is generic and was applied and customized
to three classes of wicked problems: release planning, investment
planning, and urban planning. All three applications are described
and illustrated in the paper.
Y. Wang,
G. Ruhe: The Cognitive Process of Decision Making, Int’l
Journal of Cognitive Informatics and Natural Intelligence, 1(2),
April-June 2007, 73-85.
Abstract
Decision making is one of the basic cognitive
processes of human behaviors by which a preferred option or
a course of actions is chosen from among a set of alternatives
based on certain criteria. Decision theories are widely applied
in many disciplines encompassing cognitive informatics, computer
science, management science, economics, sociology, psychology,
political science, and statistics. A number of decision strategies
have been proposed from different angles and application domains
such as the maximum expected utility and Bayesian method. However,
there is still a lack of a fundamental and mathematical decision
model and a rigorous cognitive process for decision making.
This article presents a fundamental cognitive decision making
process and its mathematical model, which is described as a
sequence of Cartesian-product based selections. A rigorous description
of the decision process in real-time process algebra (RTPA)
is provided. Real-world decisions are perceived as a repetitive
application of the fundamental cognitive process. The result
shows that all categories of decision strategies fit in the
formally described decision process. The cognitive process of
decision making may be applied in a wide range of decision-based
systems such as cognitive informatics, software agent systems,
expert systems, and decision support systems.
J.
Li, G. Ruhe, A. Al-Emran, M. M. Richter, A Flexible Method for
Effort Estimation by Analogy.
Abstract
Effort estimation by analogy uses information
from former similar
projects to predict the effort for a new project. Existing analogy-based
methods are limited by their inability to handle non-quantitative
data and missing values. The accuracy of predictions needs improvement
as well. In this paper, we propose a new flexible method called
AQUA that is able to overcome the limitations of former methods.
AQUA combines ideas from two known analogy-based estimation
techniques: case-based reasoning and collaborative filtering.
The method is applicable to predict effort related to any object
at the requirement, feature, or project levels. Which are the
main contributions of AQUA when compared to other
methods? First, AQUA supports non-quantitative data by defining
similarity measures for different data types. Second, it is
able to tolerate missing values.
Third, the results from an explorative study in this paper shows
that the prediction accuracy is sensitive to both the number
N of analogies (similar objects) taken for adaptation and the
threshold T for the degree of similarity, which is true especially
for larger data sets. A fixed and small number of analogies,
as assumed in existing analogy-based methods, may not produce
the best accuracy of prediction. Fourth, a flexible mechanism
based on learning of existing data is proposed for etermining
the appropriate values of N and T likely to offer the best accuracy
of prediction. New criteria to measure the quality of prediction
are proposed. AQUA was validated against two internal and one
public domain data sets with non-quantitative attributes and
missing values. The obtained results are encouraging. In addition
a comparative analysis with existing analogy-based estimation
methods was conducted using three publicly available data sets
that were used by these methods. In two of the three cases,
AQUA outperformed all other methods.
D.
Pfahl, A. Al-Emran, and G. Ruhe, A System Dynamics Simulation
Model for Analyzing the Stability of Software Release Plans.
Abstract
Release planning for incremental software development assigns
features to releases such that most important technical, resource,
risk and budget constraints are met. The research presented
in this paper is an element of a three staged procedure. In
addition to an existing method for (i) strategic release planning
that maps requirements to subsequent releases and (ii) a more
fine-grained planning that defines resource allocations for
each individual release, we propose a third step, i.e., (iii)
stability analysis, which analyzes fine-grained plans of individual
releases with regards to their sensitivity to planning errors.
Planning errors can relate to alterations in expected personnel
availability and productivity, feature and task specific work
volume, and degree of task dependency. The focus of this paper
is on stability analysis of proposed release plans. We present
the simulation model REPSIM-1 (Release Plan Simulator, Version
1) and illustrate its usefulness for stability analyses with
the help of a case example.
A. Al-Emran, P. Kapur, D. Pfahl, G. Ruhe: A Method for Studying the Impact of Uncertainty on Make-span in Operational Release Planning.
Context: Uncertainty is an unavoidable issue in software engineering and an important area of investigation.
This paper studies the impact of uncertainty on total duration (i.e., make-span) for implementing all
features in operational release planning.
Objective: The uncertainty factors under investigation are: (1) the number of new features arriving during
release construction, (2) the estimated effort needed to implement features, (3) the availability of
developers, and (4) the productivity of developers.
Method: An integrated method is presented combining Monte-Carlo simulation (to model uncertainty in
the operational release planning (ORP) process) with process simulation (to model the ORP process steps
and their dependencies as well as an associated optimization heuristic representing an organization-specific
staffing policy for make-span minimization). The method allows for evaluating the impact of uncertainty
on make-span. The impact of uncertainty factors both in isolation and in combination are studied
in three different pessimism levels through comparison with a baseline plan. Initial evaluation of the
method is done by an explorative case study at Chartwell Technology Inc. to demonstrate its applicability and its usefulness.
Results: The impact of uncertainty on release make-span increases – both in terms of magnitude and variance – with an increase of pessimism level as well as with an increase of the number of uncertainty factors.
Among the four uncertainty factors, we found that the strongest impact stems from the number of
new features arriving during release construction. We have also demonstrated that for any combination
of uncertainty factors their combined (i.e., simultaneous) impact is bigger than the addition of their individual
impacts.
Conclusion: The added value of the presented method is that managers are able to study the impact of
uncertainty on existing (i.e., baseline) operational release plans pro-actively.
J. McElroy, G. Ruhe: When-to-release Decisions for Features with Time-dependent Value Functions, submitted to Requirements Engineering Journal.
Abstract
Release planning is of key importance for incremental software product development. With the increasing size and complexity of software products, as well as with the growing demands for transparency and objectivity of decision-making, intuition alone is no longer sufficient for release planning. EVOLVE+ is a systematic method for release planning, which combines the strengths of formalization and computational efficiency with the expertise of the human experts. From a given set of candidate features, the most attractive ones are selected and assigned to a sequence of releases. In this paper, we consider three extensions to the current systematic planning approach EVOLVE+: (a) value functions describing the estimated value of the feature are continuous functions of time, (b) the actual release dates are no longer fixed but can be varied in some pre-defined interval. As a consequence, the available resource capacities are also functions of time. (c) Calculation of trade-off solutions balancing the risk with the potential additional value of early release. All three extensions substantially increase the complexity of the release planning problem. We have developed a solution method using genetic algorithms that is able to accommodate the additional complexity of the advanced model. A hypothetical case study is conducted as a proof-of-concept for the applicability of the method. The applicability of the method is demonstrated by analyzing six detailed planning scenarios.
G. Du, G. Ruhe: Two machine-learning techniques for mining solutions of the ReleasePlanner™ decision support system, Information Science.
Abstract
Decision support systems (DSSs) perform complex computations to provide suggestions regarding decision-making and problem solving. Quite often, the DSS solutions are not fully accepted by users because DSSs work as a black box so that the users cannot fully understand where the results came from and how they were derived. Explanations of the generated DSSs solutions are expected to mitigate this situation.
In this paper, two machine-learning techniques, called rough set analysis (RSA) and dependency network analysis (DNA), are proposed for mining DSS solutions. The mining results are provided to the users as explanations for those solutions. Two parts of research results are described. First, a framework applying RSA and DNA for generating explanations for DSS solutions is presented. This framework is generic and applicable to many other DSSs. Second, as a proof-of-concept, the applications of RSA and DNA techniques are demonstrated through a case study of mining patterns from input-output pairs of ReleasePlanner™, a specific DSS for product release planning. Our evaluation indicates that the explanations generated by RSA and DNA improve the overall user acceptance of results provided by this specific DSS.
M. I. Ullah, G. Ruhe, V. Garousi: Decision support for moving from a single product to a product portfolio in evolving software systems, Journal of Systems and Software.
Abstract
Successful software systems continuously evolve to accommodate ever changing needs of customers. Accommodating the feature requests of all the customers in a single product increases the risks and costs of software maintenance. A possible approach to mitigate these risks is to transition the evolving software system (ESS) from a single system to a portfolio of related product variants, each addressing a specific customers' segment. This evolution should be conducted such that the extent of modifications required in ESS's structure is reduced. The proposed method COPE+ uses preferences of customers on product features to generate multiple product portfolios each containing one product variant per segment of customers. Recommendations are given to the decision maker to update the product portfolios based on structural analysis of ESS. Product portfolios are compared with the ESS using statechart representations to identify the level of similarity in their behaviors. A proof of concept is presented by application to an open source text editing system. Structural and behavioral analysis of candidate portfolios helped the decision maker to select one portfolio out of three candidates.
M. I. Ullah, X. Wei, B. R. Nault, G. Ruhe: Balancing Business and Technical Objectives for Supporting Software Product Evolution, accepted for International Journal of Software Engineering and Computing.
Abstract
Context:Successful software systems continuously evolve to accommodate feature requests of a diverse customer-base. At some point during this evolution, the variety of customer needs and increased system complexity suggests the consideration of a software product line (SPL).
Aim: The goal of this research is to support the decision maker facing the enhancement of an evolving software system (ESS) by determining the most appropriate product line design (out of a given set of candidate SPL portfolios) to minimize the technical risk and maximize the business value.
Method: The proposed method called OPTESS is aimed at finding an evolution plan for the ESS which optimizes both the given technical and business objectives. Business analysis using a value-based pricing mechanism is applied to a set of initially proposed SPL portfolios (for enhancing the ESS) such that profit is maximized. Technical analysis is applied to the same initially proposed SPL portfolios to minimize the risk of failure of ESS due to implementation of new features. Business and technical analyses improve the performance of solutions for their respective objectives by modifying the feature sets of candidate SPL portfolios. OPTESS helps the decision maker select a plan for enhancement of an ESS by performing trade-off analysis between economic and technical objectives.
Results: The method was initially evaluated through a case study for a set of 9 new candidate features to be added to an open source text editing system called jEdit. OPTESS helped the decision maker to identify 3 non-dominated solutions judged to be the best contenders for addition when considering both technical and economic criteria.

A. Jadallah, M. Galster, M. Moussavi, G. Ruhe, How to Address Modifiability Concerns in the Process of Planning for the Next Release –
A Trade-off Method and its initial Evaluation.
TR
Number: 084/2009
TOP |