Phone Book with Object Composition *

Phone Book MVC GUI This version of the Phone Book MVC application extends the Simple Phone Book case study with object composition. The specification includes LSC-trees, hierarchies of modal scenarios induced by the system model's object composition hierarchy.  LSC-trees are created by allowing lifelines to be decomposed into part-scenarios.  Semantically, part-scenarios are indeed parts; i.e., not only do they specify the interaction between part objects, but in addition their lifespan (as scenario instances) and scope (in terms of binding and unification) are restricted by the parent scenario.

The Phone Book was constructed using the S2A compiler. For more information about S2A, visit the Scenarios in Action website.

* The original simple phone book example (without object composition) was inspired by an example given in an IBM tutorial document for Rational Software Architect written by Tinny Ng, available from http://www.ibm.com/developerworks/.

Last updated: Oct. 10, 2007.

Running the Phone Book with Object Composition

To run the Phone Book with object composition and the original GUI, download and extract this zip file. The zip contains the following files: aspectjrt.jar, musdrt.jar, and phonebook.jar.  

To run the Phone Book with object composition and extended GUI, download and extract this zip file. The zip contains the following files: aspectjrt.jar, musdrt.jar, and phonebook.jar

Note: The Phone Book was developed and tested on Windows platform. We have not tested it on other OS platforms.

Note: Like any other S2A program, running the Phone Book requires Java 1.5 runtime environment.

Source Code etc.

The complete UML model, source and generated code, with the original GUI, can be downloaded here. We recommend viewing the project using Eclipse 3.2 after installing Eclipse/uml2 and Eclipse/ajdt (see links on S2A website).

The complete UML model, source and generated code, with the extended GUI, can be downloaded here. We recommend viewing the project using Eclipse 3.2 after installing Eclipse/uml2 and Eclipse/ajdt (see links on S2A website).

The IBM RSA 7.0.0 model can be downloaded here.