190 likes | 521 Views
Software Release Planning for Evolving Systems. PhD Candidacy Oral Examination. by Omolade Saliu Supervisor: Dr. Guenther Ruhe Friday, November 25, 2005. Agenda. Introduction Problems & Related work Proposed Solution Summary Future Plans. Resource estimation.
E N D
Software Release Planning for Evolving Systems PhD Candidacy Oral Examination by Omolade Saliu Supervisor: Dr. Guenther Ruhe Friday, November 25, 2005
Agenda • Introduction • Problems & Related work • Proposed Solution • Summary • Future Plans
Resource estimation Technical requirements Set of features DECISION-MAKING Prioritization, selection & assignment of features to releases Decision support requires system Customer requirements Human Intelligence Computational intelligence Evolving system Produces Release 1 Release 2 Release K Background… Introduction
Existing RP Approaches Intuition-Based Formal Model-Based XP Other models Optimization models IFM - Denne & Cleland-Huang 04 OVAC - Jung et al. 98 COVAP - Karlsson & Ryan 97 Provotype - Carlshamre 02 PSERM - Greer 04 NRP - Bagnall et al. 01 ENFEM - Penny 02 FRP - Akker et al. 05 Intuition + Formal Model EVOLVE* - Ruhe & Ngo-The 04 Related Research Analysis • Problem 1:No defined process • Problem 2: No consideration for evolving systems Problem
Related Research- Characterization & Impact Analysis Related Research Mining Change Data Architecture Evaluation Code Decay/Growth Metric-based Questioning Eick et al. 2001 Lehman, M. 1980 Svahnberg et al. 2003 SAAM – Kazman et al 1994 Belady & Lehman 1976 Al-Naeem et al. 2005 ATAM – Kazman et al. 98 Change Pattern/Fault proneness Gall et al. 97, 98; Ohlsson et al. 01 CBAM – Kazman et al 01 Hassan et al. 04; Ying et al. 2004; ALMA – Bengtsson et al . 02 Zimmermann et al. 2005 ARID – Bengtsson & Bosch Impact Analysis Bohner & Arnold 1996 • No release planning consideration • Evaluation based on imagined scenarios • Characterization scheme not generalizable Problem
Research Objectives • Flexible process model that facilitates decision-making • Develop characterization and assessment scheme for evolving system components • Model effects of system constraints in features assignment decisions – involve impact analysis • Extending ReleasePlanner® tool to support RP for evolving systems • Empirical evaluation of results Solution
Project Manager Project Manager Other Stakeholders Other Stakeholders Support Environment Support Environment Group of features P1: Feature elicitation Group of features P1: Feature elicitation Objectives & constraints identified P2: Problem specification Objectives & constraints identified P3: Stakeholders voting Priorities assigned to features by stakeholders P2: Problem specification Priorities assigned to features by stakeholders P3:Stakeholders voting Difficulty of modification for all components P4: Component modifiability assessment Impacted components & extent of modification P5: Feature-driven impact analysis Resource estimates P4: Resource estimation P6: Impact quantification System constraints based on impact P5: Release plan generation P7: Resource estimation Resource estimates Shortage of resources P6: Evaluation of plan alternatives P8: Release plan generation Release plan alternatives New/evolving features Shortage of resources P9: Evaluation of plan alternatives Release plan alternatives Most appropriate release plans New/evolving features Scenarios for re-planning Most appropriate release plans Scenarios for re-planning Implementation Implementation Decision-centric process model S-EVOLVE* Solution
Expert 2 Expert 1 Expert Q S-EVOLVE*: Components characterization and Assessment DoM Factors Components Size Complexity COMP-1 Difficulty of Modification (DoM) Health COMP-2 Understandability … … Criticality COMP-M Functionality Solution
Features f(i) C(1) C(3) Impact C(M) C(4) C(2) C(5) S-EVOLVE*: System constraints using impact information • Perform expert-based impact analysis • Determine eXtent of Modification (XoM) System constraint = function(DoM and XoM) Solution
S-EVOLVE*: Empirical validation • Questionnaires on current practices • Initial case study investigating feasibility of our approach • Participants: ReleasePlanner® Technical Team • Feasibility subjectively assessed based on observation & feedback (ease of use & intuitiveness) • Experimented with an extension of EVOLVE* to study effects of system constraints Summary
Expected Contributions Following Mary Shaw[ICSE’03] classification of research contributions in Software engineering: • Method: • The S-EVOLVE* method • Method for Analysis and Evaluation: • Expert-based systematic evaluation of system components • Generalization: • Extending the scope of release planning to evolving systems • Feasibility Study: • Empirical studies for validation & improvement Summary
Future Plans • The decision-centric process model is completed Decision-centric Process model Characterization Assessment Research Objectives Effect of System constraint ReleasePlanner® Extension Empirical evaluation Future Plans
Future Plans • Refine and improve the assessment scheme based on case studies results(Apr-Sept 2006) • How to account for new components due to feature implementation • Investigate effect of change type • Focus on developing taxonomy scheme for features Decision-centric Process model Characterization Assessment Research Objectives Effect of System constraint ReleasePlanner® Extension Empirical evaluation Future Plans
Future Plans • Investigate other ways to incorporate system constraint in RP decision model (Jan – Sept 2006) Decision-centric Process model Characterization Assessment Research Objectives Effect of System constraint ReleasePlanner® Extension Empirical evaluation Future Plans
Future Plans Empirical validation (8 months): • Stage 1: ReleasePlanner® Team • Sample Goal: Investigate DoM attributes for completeness • Sample Goal: Investigate the utility of S-EVOLVE* over regular RP • Sample Goal: Investigate DoM assessment for consistency • Period: Jan – Apr 2006 (4 months) • Stage 2: Fraunhofer-Centre, Maryland (FC-MD) • Sample Goal: Investigate DoM attribute for completeness • Sample Goal: Investigate DoM assessment for applicability • Period: Apr- Aug 2006 (3-4 months) • Stage 3: Industrial case study – Chartwell ??? Decision-centric Process model Characterization Assessment Research Objectives Effect of System constraint ReleasePlanner® Extension Empirical evaluation Future Plans
Future Plans • Implement further extended components to augment ReleasePlanner® based on improvements in modeling(Apr – Sept 2006) Decision-centric Process model Characterization Assessment Research Objectives Effect of System constraint ReleasePlanner® Extension Empirical evaluation Future Plans
List of Related Publications… Journal Publications: • Saliu, O. and Ruhe, G., (2005) “Software Release Planning for Evolving Systems”, Innovations in Systems and Software Engineering: a NASA Journal, 1(2), September, pp. 189-204. • Ruhe, G. and Saliu, M. O., (2005) “The Art and Science of Software Release Planning", IEEE Software, 26(6), November/December, pp. 47-53. Refereed Conferences: • Saliu, O. and Ruhe, G. (2005) "Supporting Software Release Planning Decisions for Evolving Systems", 29th IEEE/NASA Software Eng. Workshop (SEW-29), Greenbelt, USA, Apr 6-7, pp. 14-26. • Ngo-The, A. and Saliu, M. O., (2005) "Measuring Dependency Constraint Satisfaction in Software Release Planning using Dissimilarity of Fuzzy Graphs", 4th IEEE International Conference on Cognitive Informatics (ICCI'05), Irvine, California, USA, Aug. 8-10, pp. 301-307. • Ngo-The, A. and Saliu, M. O., (2005) "Fuzzy Structural Dependency Constraints in Software Release Planning", IEEE International Conference on Fuzzy Systems (FUZZ-IEEE 2005), Reno, NV, USA, May 22-25, pp. 442-447. • Ruhe, G., Saliu, O., Bhawnani, P., Momoh, J. and Ngo-The, A. (2005) "Decision Support for Software Release Planning - Methods, Tools, and Practical Experience", (Tutorial) 29th IEEE/NASA Software Engineering Workshop (SEW-29), Greenbelt, MD, USA, April 3 & 8, pp. 217-250. Book Chapter: • Maurice, S., Ruhe, G., Saliu, O., Ngo-The, A., and Brassard, R., (2005) "Decision Support for Value-Based Software Release Planning", in: S. Biffl, A. Aurum, B. Boehm, H. Erdogmus, P. Grünbacher (Eds.), Value-Based Software Engineering Management, Springer, September. Poster: • Saliu, O.(2005) "S-EVOLVE* - A Decision Support Method for Planning Releases of Evolving Software Systems", Students Poster Competition, Informatics Circle of Research Excellence(iCORE) Summit, Banff, Canada, Aug 31 - Sep 2. In-preparation Conference Paper: • Saliu, O., (2006) “A Systematic Approach for Assessing Components and Planning Releases of Evolving Software Systems” (Doctoral Symposium) 28th International Conference on Software Engineering (ICSE 2006), Shanghai, China, May 20-28 (submitted).
Questions ???