EventHelix.com: CASE Tools; Real-time and Embedded System Design; Object Oriented Design
  Home  |  EventStudio System Designer 5  |  Features  |  Use Cases  |  Contact Us
bulletGetting Started with EventStudio
bulletIntroduction to FDL
bulletComments, Remarks and Issues
bulletObject Management and Message Parameters
bulletTimer and Resource Management
bulletState Machine Operations, Actions and Environment
bulletDefining Types for Modules, Processors and Objects
bulletMultiple Scenario Support
bulletTutorial Sequence Diagram pdf

Home > EventStudio System Designer > Sequence Diagram Tutorial > Introduction
Introduction to FDL

A very simple FDL program is shown below. It shows modules and processors defined in the system. Message interactions between processors are shown enclosed in the feature-endfeature block. We will be building on this example as we go along with basic and advanced tutorials. 

The following conventions are used in the description:

  • New language concepts will be introduced as statements in bold font. 
  • Lines corresponding to the new statements are numbered and the corresponding description can be found below the file contents.

 

The FDL file and documents generated at each stage are available in the Tutorial directory of the EventStudio installation.

 
Call1.fdl
1.   module : customer, exchange
2.   processor : phone in customer
2.   processor : frontend in exchange, core in exchange
3.   feature "Call Setup"
4.      offhook : phone -> frontend
        dialtone : frontend -> phone
        digits : phone -> frontend
        setup_call : frontend -> core
        setup_complete : core -> frontend
        ringback : core -> phone
     endfeature

 

  1. This program defines the message exchanges between a customer and a telephone exchange. The customer and the exchange have been declared with the module declaration. 
  2. The processor statements in the next two lines define different entities within the customer and the exchange. Here the customer contains a phone and the exchange contains a frontend and a core processor. This relationship is specified using the in keyword.
  3. The feature-endfeature block follows the declarations in FDL. A title for the feature is included in the feature declaration. The feature…endfeature block encloses all the feature interactions between the customer and the exchange.
  4. Message interactions have been enclosed within the feature-endfeature block. The first message interaction in the sequence sends an offhook message from the phone to the frontend processor. This is followed by other message interactions involved in call setup. Messages are represented as arrows from the source to the destination.

Examine the  Call1 section of the final sequence diagram file at this point to see the correspondence between the FDL file and PDF output.

Note: FDL also supports a multicast statement for modeling message interactions where a single message is simultaneously received by multiple entities. This statement has not been covered in this tutorial.

What are Modules, Processors and Objects?
FDL allows you to partition you system into a three level hierarchy. At the highest level are modules. The system consists of modules. Modules contain processors and processors contain eternal and dynamic objects. The selection of modules, processors and object is best explained with examples.

Acme Inc. Recruiting
Modules are Recruiters, Acme_Inc, Media, Other_Company etc.
Processors contained in Acme_Inc are the various departments in the company, e.g. Finance, HR, IT.
Objects contained in the HR department are HR_Secretary, Recruitment_Specialist.

Highway System
Modules are Highways, EntryRamp, TollBooth etc.
Processors contained in Highway are Cars, Trucks, Motorbikes etc.
Object contained in a Car are steering, brakes, engine etc

 

  Home  |  EventStudio System Designer 5  |  Features  |  Use Cases  |  Contact Us
Copyright © 2000-2011 EventHelix.com Inc. All Rights Reserved.