Skip to main content

The Activity-Object World View for DEDS

  • Chapter
  • First Online:
  • 1962 Accesses

Part of the book series: Simulation Foundations, Methods and Applications ((SFMA))

Abstract

In this Chapter the Activity-Object world view, based on object-oriented programming paradigm and recently formulated by one of the authors, is presented. Its specific purpose is to facilitate the transformation of an activity based conceptual model formulated within the ABCmod framework into a simulation model. This world view has been developed using the Java programming environment whose object oriented basis provides a natural context for accommodating both the structural and the behavioural features of an ABCmod conceptual model. The discussion reviews the underlying correspondences between ABCmod conceptual modelling concepts and counterparts within Activity–Object world view. The retention of behaviour constructs of ABCmod in their entirety is stressed. This is an important feature because it enables semantic integrity to be maintained in the transition to a simulation model, a feature that has significant benefits from the perspective of model verification. The simulation model development environment that is outlined to support of the Activity-Object world view is a Java package called ABSmod/J. Included in the package are various classes and methods necessary for the simulation program development using the Activity-Object world view; e.g., entity objects, activity objects, list processing, time management and random variate generation (stochastic features of the simulation program are supported using the CERN Colt Java package). The mapping from ABCmod constructs to their object oriented equivalents in ABSmod/J are outlined in the presentation. The steps involved in carrying out the transition from an ABCmod conceptual model into an Activity-Object simulation model using the ABSmod/J package are illustrated with three examples.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   84.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Initial work on the Activity-Object world view was reported in [1].

  2. 2.

    Recall that the execution of a simulation model can only be accomplished from within a simulation program. Consequently whenever the text within this book suggests that the stimulation model is executing, that execution is taking place as an integral part of the execution of a simulation program.

  3. 3.

    The class attribute is made available by the Java virtual machine for all Java classes used in a program. Details can be found in the Java API documentation that describes Class [8].

  4. 4.

    This class need not be instantiated. The class variables can be referenced using the class name as in Constants.constant1.

  5. 5.

    It is also practical to associate RVP’s, DVP’s and UDP’s with actions and activities when they are used only by the associated action/activity (see the Conveyor Project in Annex 1). When implementing such procedures, they are implemented directly within the action/activity class itself.

  6. 6.

    The sbl variable in the AOSimulation object is of type PriorityList <SBNotice>; and the SBNotice can reference any object which is a subclass of Behaviour.

  7. 7.

    Note that the data collection process for both trajectory sequences and sample sequences uses the same method; both time value and data value are stored for both types of output.

  8. 8.

    Parameters that are entity attributes will be located in the corresponding entity classes.

  9. 9.

    Note that output is initialized as part of its declaration, and thus the Output object is created upon the instantiation of the KojoKitchen class.

  10. 10.

    The keyword this is used with most of the constructors shown. It is a reference variable available in all Java objects; its value is a reference to the object itself.

  11. 11.

    The RVPs class is instantiated in its constructor since a set of seeds are required to initialize the various random variate generators and these are passed to the constructor. The Seeds object provides all required seeds.

  12. 12.

    The type parameter <Customer> present in the declarations determines the type of objects that can be added to the HashSet and ArrayList objects.

  13. 13.

    Notice that the index i and the size of the esbl list num are both decremented because the esbl list is decremented by the unscheduleBehaviour method.

  14. 14.

    It would be possible to apply encapsulation by using getter and setter methods. But this would only mask the issue since the rules (i.e. methods) for modifying the attributes of entities reside in the Behaviour classes.

References

  1. Arbez G, Birta, LG (2010) An activity-object world view for ABCmod conceptual models. In: Proceedings of the summer computer simulation conference, Ottawa, Ontario, July 2010

    Google Scholar 

  2. Banks J, Carson JS II, Nelson B, Nicol DM (2005) Discrete-event system simulation, 4th edn. Prentice-Hall, Upper Saddle River

    Google Scholar 

  3. CERN, The Colt Project (2004) Version 1.2.0. http://dsd.lbl.gov/~hoschek/colt/

  4. Hills PR (1973) An introduction to simulation using SIMULA. Publication No. S55. Norwegian Computing Center, Oslo

    Google Scholar 

  5. Horatmann C (2003) Computing concepts with Java essentials, 3rd edn. Wiley, New York

    Google Scholar 

  6. Liang YD (2017) Introduction to Java programming: fundamentals first, 11th edn. Prentice-Hall, Upper Saddle River

    Google Scholar 

  7. Oracle, Java Development Kit Standard Edition 12.0. http://www.oracle.com/technetwork/java/javase/overview/index.html

  8. Oracle, Java “Package java.lang” API documentation, Java SE 12.0 https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/package-summary.html

  9. Pidd M (2004) Computer simulation in management science, 5th edn. Wiley, Chichester

    MATH  Google Scholar 

  10. Pidd M, Cassel RA (1998) Three phase simulation in Java. In: Proceedings of the 1998 winter simulation conference, Washington DC, USA

    Google Scholar 

  11. Pidd M (1995) Object-orientation, discrete simulation and the three-phase approach. J Oper Res Soc 46(3):362–374

    Article  Google Scholar 

  12. Stevens P, Pooley RJ, Pooley R (2006) Using UML: software engineering with objects and components. Addison-Wesley, New York

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Louis G. Birta .

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Birta, L.G., Arbez, G. (2019). The Activity-Object World View for DEDS. In: Modelling and Simulation. Simulation Foundations, Methods and Applications. Springer, Cham. https://doi.org/10.1007/978-3-030-18869-6_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-18869-6_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-18868-9

  • Online ISBN: 978-3-030-18869-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics