UML软件工程组织

Modeling the Sea BASS in the UML
 Introduction to the Sea BASS

The Certificate Based Authorization Simulation System (CBASS or Sea BASS) is a system consisting of an emulated CBASS Environment and Applications. The system was built with Java 1.2.2 and Java interface to PROLOG provided in SICStus Prolog 3.8.5 upon the Solaris 5.7 environment. Authorization for the CBASS users and applications is based on the CBASS certification mechanism, instead of the Access Control List mechanism provided by traditional operating system such as Unix. The design allows Legacy applications to use traditional access control mechanisms.      The Sea BASS system was implemented to be one package, seabass, which consists of three sub-packages: appssystem, and cbass. The apps package consists of CBASS-ed applications including Cat, Clock, and CM, which provide interfaces to the end user to display directories and files, report the system time, and control certificates. The system package has CBASS-ed FS, Machine, and User classes, which are used to emulate the file management, machine and user of an operating system. The cbass package consists of common CBASS API classes, which are used to build CBASS-ed applications and systems. The cbass package has Cbass, CbassInterface, CBException, CD, Cert, CI, RemoteCBass, and Request classes.

Modeling the Sea BASS in UML

    We modeled the Sea BASS in UML with the Rational Rose 2000e, and the XMI Toolkit 1.1.5 from the IBM alphaWorks through reverse engineering. As we are not sure how different the two automatically generated UML models would be, and also how the generated Java skeletons from the UML models would be different from each other, we conducted following experiment to try to understand the modeling and conversion functions in each of the tools through manually comparing the generated skeleton and the models and checking the information that might be lost during the transformation from one form to another.     In the above mapping figure, there are three levels. The top level is the Sea BASS source code, which is used to generate the second level of the UML models through reverse engineering. The second level is further converted to the third Java skeleton level through forward engineering.

    With the Rational Rose 2000e, we modeled the entire seabass package with UML in a file called SeabassRose.mdl. Then we generated the Java skeletons from the UML model with the Rational Rose into the RoseRoseJava and the XMI Toolkit into the XMIRoseJava.
 

    With XMI Toolkit 1.1.5 from IBM alphaWorks, we converted the entire seabass package with UML in a file called SeabassXMI.mdl. Then we also generate the Java skeletons from the UML model with the XMI Toolkit into XMIXMIJava and the Rational Rose into the RoseXMIJava.

    Meanwhile unlike Rational Rose, XMI Toolkit 1.1.5 generate the intermediate XMI expression for each conversion.

  • Textbased JavaXMI representation for the Sea BASS source code, java.zip
  • Textbased JavaXMI representation for the XMIRoseJava skeleton, java.zip
  • Textbased JavaXMI representation for the XMIXMIJava skeleton, java.zip
  • Textbased UMLXMI representation for the SeabassXMI.mdl, uml_old.zip and  uml.zip
  • Textbased UMLXMI representation for the SeabassRose.mdl, uml.zip

 

 

版权所有:UML软件工程组织