Proceedings of the 2009 Winter Simulation Conference M. D. Rossetti, R. R. Hill, B. Johansson, A. Dunkin and R. G. Ingalls, eds. A SIMPLE EXAMPLE OF SYSML-DRIVEN SIMULATION Leon McGinnis Volkan Ustun Sch. of Industrial & Systems Engineering Sch. of Industrial & Systems Engineering Georgia Institute of Technology Georgia Institute of Technology Atlanta, GA 3032-0205, USA Atlanta, GA 3032-0205, USA ABSTRACT The successful practice of simulation requires a number of capabilities; two key capabilities are creating a conceptual model of the system to be simulated, and translating the conceptual model to a computational process or simulation program. We describe how OMG’s new graphical systems modeling language, OMG SysML™ (OMG 2009), can be used to create a con- ceptual model, and how this conceptual model can be translated automatically to a simulation program. In demonstrating the process, we use Arena™ as the target simulation language, but the concepts presented are quite general. 1 INTRODUCTION The practice of simulation requires a set of technical skills, capabilities, and processes. A number of authors have described simulation practice in terms of a set of steps or processes that must be executed. One example of such a description is sum- marized in Table 1, which is based on (Nubile, Ambrose and Mackarel 2004). Table 1: Modeling and simulation workflow 1. Problem Definition. Clearly defining the goals of the study so that we know the purpose, 2. Project Planning. Being sure that we have sufficient and appropriate resources to do the job. 3. System Definition. Determining the boundaries and restrictions 4. Conceptual Model Formulation. Developing a preliminary model either graphically or in pseudo-code to define the components, and interactions (logic) that constitute the system. 5. Preliminary Experimental Design. Selecting the factors to be varied, and the 6. Input Data preparation. Identifying and collecting the input data 7. Model Translation. Formulating the model in an appropriate simulation language 8. Verification. Does the simulation correctly represent the data inputs and outputs? 9. Validation. Can the model be substituted for the real system for the purposes of experimentation? 10. Final Experimental Design. Designing an experiment that will yield the desired information 11. Experimentation. Executing the simulation to generate the desired data and sensitivity analysis. 12. Analysis and Interpretation. Drawing inferences from the data generated by the simulation runs. 13. Implementation and Documentation. Reporting the results, putting the results to use, Clearly, the practice of simulation is not as simple as the linear execution of these thirteen steps—there usually is consi- derable iteration. Our focus is on steps 4 and 7, formulating the conceptual model which describes the relevant aspects of the system to be simulated, and translating the conceptual model to a suitable simulation language for computation. Traditional- ly, both these steps have been taught and viewed as the “art” or “craft” of simulation, i.e., as skills that are difficult to teach because there are few systematic tools to support them. There is good reason to believe this situation could change. In the software engineering community, model driven archi- tecture, or MDA, is transforming the way software systems are designed and implemented. Wikipedia describes MDA as providing “a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of software systems.” In other words, the MDA ap- 1703 978-1-4244-5771-7/09/$26.00 ©2009 IEEE