Application Modelling PreviousNext
Data Distribution Service (DDS) Forum > DDS FAQ >
Next message Gurpreet Singh  posted on Friday, January 16, 2009 - 07:12 am
can anyone explain application modelling with example.

Next message Hans van 't Hag  posted on Tuesday, January 20, 2009 - 03:59 pm
Hi Gurpreet,

In the FAQ 'how-to-begin' thread I've explained a littlebit the differences between information/application/deployment modeling within a DDS-based system.

Application-modeling would then be the effort to create a single DDS-application based upon an existing information-model (i.e. the information that this application will subscribe too and/or will publish) and without worrying on where/when this application will be deployed in a properly configured target system. So basically its about creating a piece of business-logic.

In MDE (Model Driven Engineering) terminology, this modeling is about 1) a language to express your problem in, 2) an editor that understands this language and 3) a code-generator that can convert the (high-level)language into something that can eventually be executed.

For our OpenSplice DDS productline, we support this MDE-based application-modeling by providing a modeling-tool (OpenSplice PowerTools) that allows an application-developer to graphically visualize/model his application in terms of the 'DDS-language' of applications/participants/publishers/writers/subscribers/readers/filters/queries/listners, etc. The MDE tool 'understands' this DDS-domain specific language and allows the application developer to fully concentrate on the business-logic without having to worry about most of the DDS-specification details.

As an example, I've attached a snapshot of this eclipse-based tool where a simple sine-generator is modeled graphically: a sine-generator-applications that contains a DDS domainParticipant that has a publisher to write samples of SineTopic information. The complete applicationn-code is also listed and as you can see, there's only 3 DDS-related lines in the program: 1) initialize all DDS_entities as modeled by calling 'start', 2) create a writer-object by calling 'getDataWriter' and 3) write the information into DDS by calling 'write'.

This simple example shows the value of a good application-modeling tool since it provides a graphical editor that 'understands' the DDS-language and allows for powerful code-generation (the tool automatically generates the code for the start/getDataWriter/Write methods)

Hope this helps a little,


Next message Gurpreet Singh  posted on Wednesday, January 28, 2009 - 09:39 am
Thanks for answering.
Back to top
Add Your Message Here
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Options: Post as "Anonymous"
Enable HTML code in message
Automatically activate URLs in message