
 
important component of model-driven development. 
In JET, codes are outputted using templates. Models 
can be applicable to various systems by changing 
templates. JET is also useful to raise the reusability 
of models. 
4 PROPOSED METHOD 
This chapter describes a proposed method. The 
method applies the model-driven development 
method to develop the TPS in the model theory 
approach, and cuts down the amount of development 
efforts. A concrete process is as follows: 
(1) Design of Platform Independent Models from 
Requirement Specifications 
(2) Design of Platform Specific Models 
(3) Automatic Generation of Source Codes 
written by Cast from the platform specific 
models 
4.1  Details of the Proposed Method 
To generate Cast codes of the model theory 
approach using the model-driven method needs 
requirement specifications of a system and a model 
of the TPS. The former describes only requirement 
specifications, and it does not include information 
on the TPS. In other words, they are independent 
models on implementing technologies. Therefore, it 
is necessary to use a flexible and general modeling 
language. The proposed method uses UML. On the 
other hand, the latter is a model to be designed and 
developed by the TPS. The proposed method defines 
an original model and uses it for the latter. This 
model will be called a TPS model. For creating the 
model from requirement specifications, the proposed 
method uses UML diagrams to design the TPS 
model, and an automatic code generation method to 
transform the TPS model into Cast codes. 
4.2 Modeling Requirement 
Specifications using UML 
UML is defined as a notation of models in order to 
advance analysis, design, and implementing of a 
system. UML defines only the notation of models, 
but it does not include systems development 
methodology. The latest version is UML2.1 
(UML2.1, n.d.) and it consists of 13 different kinds 
of diagrams. The reason why the proposed method 
uses UML is that it is one of the most widely used 
modeling languages at present. It is important to use 
a modeling language being used widely because 
users and developers can understand their intentions  
 
Figure 4: Inclusion relationship between use cases. 
to each other. The proposed method uses the 
following diagrams to model requirement 
specifications: 
(1) Use Case Diagram. A use case diagram 
expresses functions to be implemented. The 
functions correspond to interface elements I/F of 
Fig. 1, and they are defined by a use case diagram. 
To describe the TPS, you must define functions 
(main use case) whose granularity are comparatively 
large, and indivisible functions (sub use case) that 
are contained in a main use case. This relation of the 
use cases can be expressed by using inclusion 
relation of UML2.1. The inclusion relation between 
a main use case and a sub use case may be in the 
relation of many-to-many. An inclusion relation is 
described using include stereotype. Fig.4 shows this 
situation. 
(2) Class Diagram. A class diagram defines 
attributes of a data file for business. The data file is 
stored in a file system or a database, and 
corresponds to a memory (DB) in Fig. 1. The usage 
of a class diagram in the proposed method is closer 
to an entity in Entity-Relationship diagram than a 
concept of the class in object-oriented development. 
An attribute is defined so that it may be normalized 
in third normal form in a relational database. 
(3) Activity Diagram. An activity diagram expresses 
a process to realize sub use cases and user defined 
functions. An activity diagram is created for every 
sub use case defined by the use case diagram. This 
corresponds to state transition function δ and output 
function λ shown in Fig. 1. A user does not need to 
consider that a movement of the system is an 
automaton, but just to describe them like a 
flowchart.  
A system developer creates these UML diagrams 
at first, and creates specific models for the TPS. Cast 
code generation from the model is performed using 
this TPS model and the activity diagrams. 
4.3  Designing TPS Model for Code 
Generation 
A TPS model is an original defined model of the 
proposed method. We have designed a meta-model 
which defines a TPS model itself. The structure of 
Main 
use case 
Sub  
use case 
KEOD 2010 - International Conference on Knowledge Engineering and Ontology Development
12