JSD & RUP F21SF October 2014 Assignment 3 Boris Mocialov, Sören Pollakowski, Yernar Akshabayev, Assem Madikenova, Max M Baird Table of Contents 1. 2. 3. 4. History / Context Models / Techniques Structure Evaluation using NIMSAD - Framework HISTORY / CONTEXT JSD • A method for specifying and designing inherently sequential systems • Pays initial attention to the domain of the software then later to the sofware itself • Focuses on event sequencing rather than static data models • JSD‘s domain is the real world – Where entities exhibit concurrent time ordered behavior – The system must model such behavior RUP • Unified Process by Jacobson et al. Rational Unified Process • Object-oriented methodology using modelling techniques (mainly UML) • Software engineering process, not methodology according to Jacobson • use-case driven, architecture centric, iterative and incremental MODELS/TECHNIQUES JSD • Design must begin by describing and modeling the real world • Time ordered model of the real world must itself be time ordered • System is implemented by transforming specification into a set of processes RUP - Based on UML modelling to model “real world” - Models below describe the static structure of the designing process Source: Rational, 2011 STRUCTURE JSD • Modeling Phase – Real world is described in terms of events, entities, roles, event orderings and entity attributes • Network Phase – Previously identified processes are configured into a process network • Implementation Phase – Timing and the implementation of scheduling the processes is considered RUP Source: Rational 2011 RUP Iterative and incremental process Cycles | Phases | Iterations | Workflows | Activities EVALUATING JSD & RUP USING THE NIMSAD FRAMEWORK The Problem Situation JSD RUP • Maps real world onto • Use wide range of unified entities and events using modelling techniques to system specification produce use-case models diagram and distinguish that will aid the creation sequential events that carry and validation of data between entities architecture • Suitable for both structured and ill-structured problems • Concerned with technical side of the problem (Political/cultural aspects are left out) • No assessment of clients perception of ‘reality’ is performed The Problem Solver • • • • None of the current discussed methodologies provide any essential information about their intended problem solvers There are no relevant answers which might be meet questions of NIMSAD framework about value sets, ethical behaviour and ‘mental construct’ of problem solver Economic, cultural and political sides are skipped Experience and knowledge of developer are slightly taken into account The Problem - Solving Process RUP • • • • • • • • Stage 1: modelling business workflow Stage 2: modelling business workflow Stage 3: business vision document Stage 4: requirements workflow Stage 5: analysis & design workflow Stage 6: analysis & design workflow Stage 7: analysis & design workflow Stage 8: Implementation, Test, Deployment workflows 3 supporting workflows Evaluation Differences JSD • Models don’t capture many attributes of real word can’t cope with most of big real world situations because it’s narrowed to sequential processes • Delivers theoretical solution to perceived problems and doesn’t consider the implementation in action world • Promotes thinking about sequential interactions of entities (functions thinking) RUP • Models capture more attributes of real world can cope with complex and ill-structured problem situations • Will deliver blueprint for IS implementation and help managing implementation • Promotes object-oriented thinking Evaluation Commonalities • Might not identify real underlying problems • Adaptive to changes in environment • High Possibility to justify development and decisions • Don’t help to identify the most relevant technical solutions for implementation Summary • • • • • Methodologies History / Overview & Context Tools and techniques used during the process Structure description Methodologies through NIMSAD lens Evaluation using NIMSAD DISCUSSION References • Avison, D. & Fitzgerald, G.: Information Systems Development – Methodologies, Techniques and Tools, 2003, 3rd Edition, McGraw-Hill • Avison, D. & Fitzgerald, G.: Information Systems Development – Methodologies, Techniques and Tools, 2006, 4th Edition, McGraw-Hill • Hunt, J.: Agile Software Construction, 2006, Springer, p. 193-210 • Jackson, M. A.: A System Development Method, 1982, Cambridge University Press • Jackson, M. A.: The Jackson Development Methods, 1992, in Wiley Encyclopaedia of Software Engineering, 1992, edited by Marciniak J. • Jayaratna, N.: Understanding and Evaluating Methodologies: NIMSAD - A Systematic Framework, 1994, McGraw-Hill • Rational, Rational Unified Process: Best Practices for Software Development Teams, 2011, Rational Software White Paper References continued • • • • • • • • Black W.J., Sutcliffe A.G., Loucopoulos P., Layzell P.J.: Translation between pragmatic software development methods, 1987 in: ESEC '87, 1st European Software Engineering Conference Strasbourg, France, September 9–11, 1987 Proceedings, p. 357-365 Fernandes J. M., Duarte, F.: Using RUP for Process-Oriented Organisations, 2004, in: Product Focused Software Process Improvement, 5th International Conference, PROFES 2004, Kansai Science City, Japan, April 5-8, 2004. Proceedings, p. 348-362 Hanssen G. K., Westerheim H., Bjørnson F. O.: Tailoring RUP to a Defined Project Type: A Case Study, 2005, in: Product Focused Software Process Improvement, 6th International Conference, PROFES 2005, Oulu, Finland, June 13-15, 2005. Proceedings, p. 314-327 Hinchey, M. G.: Structured and Formal Methods: An Investigative Framework, 1996, in: Studies of Software Design, ICSE'93 Workshop Maltimore, Maryland, USA, May 17–18, 1993 Selected Papers, p. 151-163 Kherissi F., Meslati D.: ONTO-RUP: A RUP Based Approach for Developing Ontogenetic Software Systems, 2010, in: Bioinspired Models of Network, Information, and Computing Systems, 4th International Conference, BIONETICS 2009, Avignon, France, December 9-11, 2009, Revised Selected Papers, p. 140-151 Letelier P., Canós J. H., Sánchez E.: An Experiment Working with RUP and XP, 2003, in: Extreme Programming and Agile Processes in Software Engineering, 4th International Conference, XP 2003 Genova, Italy, May 25–29, 2003 Proceedings, p. 41-46 Mathiassen L., Munk-Madsen, A., Nielsen P. A., Stage J.: Combining two Approaches to Object-Oriented Analysis, 1994, in: Object-Oriented Methodologies and Systems, International Symposium, ISOOMS '94 Palermo, Italy, September 21–22, 1994 Proceedings, p. 158-170 Salgado C. E., Ricardo J. Machado R. J., Maciel R. S. P.: Using Process-Level Use Case Diagrams to Infer the Business Motivation Model with a RUP-Based Approach, 2014, in: Information System Development, p. 123-134, Springer