Modeling and simulation driven software development

Modeling and simulation takes significant efforts and the results of these efforts are often underutilized in the subsequent phases of software development. In particular, the code generated in the simulation model can be a basis for further software development. In this paper, we discuss a theoretical and conceptual framework for software development based on the codes generated in a simulation environment. As business process modeling plays a departure role, in this paper, we pay attention to both conventional process modeling, i.e., imperative modeling based on explicit control flow, and unstructured process handling. i.e., declarative modeling based on circumstantial information. Since a simulation environment has the advantage of conducting experiments in regard to certain aspects or characteristics of a system, we also discus robustness and resilience of system performance in relation to fluctuating input, utilization of resources, and environmental uncertainties. A robust system is one that can withstand environmental disturbance without substantially losing ability to perform its operational mission, while a resilient system has the capability to rapidly recover its optimal performance.

[1]  M Maja Pesic,et al.  Constraint-based workflow management systems : shifting control to users , 2008 .

[2]  Michael Jackson,et al.  Problem frames and software engineering , 2005, Expert Syst. J. Knowl. Eng..

[3]  Hajo A. Reijers,et al.  Declarative versus imperative process modeling languages : the issue of understandability , 2009, BPMDS 2009.

[4]  Keith D. Swenson,et al.  Mastering the Unpredictable: How Adaptive Case Management Will Revolutionize the Way That Knowledge Workers Get Things Done , 2010 .

[5]  Mohsen Modarres,et al.  Predicting and Improving Complex Business Processes: Values and Limitations of Modeling and Simulation Technologies , 2006, Proceedings of the 2006 Winter Simulation Conference.

[6]  Selmin Nurcan,et al.  The Old Therapy for the New Problem: Declarative Configurable Process Specifications for the Adaptive Case Management Support , 2010, Business Process Management Workshops.

[7]  Daniel Jackson,et al.  Software Abstractions - Logic, Language, and Analysis , 2006 .

[8]  Niklaus Wirth,et al.  Program development by stepwise refinement , 1971, CACM.

[9]  John Mylopoulos,et al.  Understanding "why" in software process modelling, analysis, and design , 1994, Proceedings of 16th International Conference on Software Engineering.

[10]  Jan L. G. Dietz,et al.  Enterprise ontology - theory and methodology , 2006 .

[11]  Keith Phalp,et al.  Deriving requirements from process models via the problem frames approach , 2005, Inf. Softw. Technol..

[12]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[13]  Hans Eriksson,et al.  Business Modeling With UML: Business Patterns at Work , 2000 .

[14]  Tok Wang Ling,et al.  Model-based support for business re-engineering , 1996, Inf. Softw. Technol..

[15]  Nicholas R. Jennings,et al.  The Gaia Methodology for Agent-Oriented Analysis and Design , 2000, Autonomous Agents and Multi-Agent Systems.