Download - Domain specific modelling (DSM)
TIME SCHEDULING SYSTEM USING
DOMAIN SPECIFIC MODELING
TIME SCHEDULING
SYSTEM USING
DOMAIN SPECIFIC
MODELING
PROJECT GUIDE: DR. A. MARTIN
MEMBERS:
CHANCHAL JAYARAJ
(12MC0115)
MAHESH.C
(12MC0131)
RAJASEKAR
(12MC0150)
What is a domain?
• Domain is a field of study that defines a set of common
requirements terminology and functionality or any
software program constructed to solve a problem in that
field.
INTRODUCTION-DSM
• Domain-specific modelling (DSM) is a higher level of CASE.
• It consist of a way to model data structures and logic in Domain concepts.
• It independent from programming languages and thus also syntax details.
INTRODUCTION-DSM c o n t …
• The final source code in a desired programming language
is derived automatically
• DSM is a high abstraction models by using specific
language generators.
• The basis for DSM is Language Engineering allowing to
define and to use various Domain Specific Languages.
LITERATURE SURVEY
• Most importantly, making the models is much faster than
writing the code by hand.
• In Industrial experiences at leading-edge players like Nokia
and NASA have consistently shown development becoming
five to ten times faster
SURVEY
SURVEY RELATED WITH MetaEdit+
• Domain-specific modeling language and editor
• Domain-specific code generator
• Domain-specific component library
• Domain-Specific Framework
SURVEY-tools used
PROBLEM DEFINITION
• Software development concept consist of a huge importantand bizarre part is code writing
• The coding part will be implemented using programmersand it will take lots of time and cost for developing asoftware.
• The coding will be done by using software programmers byspending the major time of their session and efforts.
PROBLEM DEFINITION
• Domain Specific modeling is replacing the all aboveworks, so DSM tools undertaking the coding parts as itsown properties.
• That is the coding parts as its own properties, it reduces thetime and expenses of developing a software the manualprocessing.
EXISTING
• The unified modeling language (UML) is a general-purposemodeling language for software Intensive system that is designedto support mostly object oriented programming.
• Experience of using UML as a modelling language is widespreadand so using UML to express what is required in a system andgenerating code from that is acceptable for many organizations.
METHODOLOGY
•DSM (Domain Specific Modeling)
•MetaEdit+ (Tool)
Domain-specific modelling
• Domain-specific modeling is a specific type of software
engineering methodology or modeling language for designing
and developing.
• A modeling language is any artificial language that can be
used to express information or knowledge or systems in a
structure that is defined by a consistent set of rules.
CONT….
• Domain-specific languages are a
“natural extension to code
libraries and frameworks”, making
their use faster, easier and more
consistent..
Domain-specific modelling Benefits
• Industrial experiences from domain-specific methods
consistently show major improvements in productivity,
time-to-market responsiveness.
• DSM Tools sped up the programming into many folds.
• DSM Increase the Quality and Hiding the complexity.
Benefits
• DSM is high-level languages specific to a particular application or
set of tasks.
• DSM are closer to the problem domain and concepts.
• Domain-Specific Modelling allows faster development, based on
models of the product rather than on models of the code.
• It can shows 5-10 times faster than current practices.
DSM - Benefits
DSM – Domain’s
Problem Domain
• Telecom services
• Insurance products
• Business processes
• Industrial automation
• Medical device configuration
• SIM card profiles
• eCommerce marketplaces
Solution Domain/Generation Target
• Configuration scripts
• J2EE
• Rule engine language
• 3 GL
• XML
• Configuration scripts andparameters
• J2EE, XML
DSM – Domain’sProblem Domain
• Household appliance features
• Handheld device applications
• Phone UI applications
Solution Domain/Generation Target
• 3 GL
• 3 GL
• C++,C
DSM – Tools (Commercial Environments)Tools
• MetaEdit+
• DSL Tools
• Obeo Designer
• Poseidon for DSLs
Vendor
• MetaCase
• Microsoft Visual Studio
Professional
• Obeo
• Gentleware
DSM – Tools (Research Tools and Prototypes)
Tools
• DOME
• GME
Institute
• Honeywe
• Vanderbilt University ll Labs
DSM – Tool (MetaEdit+)
• MetaEdit+ is an environment for creating and
using Domain-Specific Modeling languages.
• MetaEdit+ is an integrated, repository-based tool set for
creating and using modeling languages and code
generators.
• MetaEdit+ provides the tool support for different modeling
languages by configuring the generic tool set with
metamodels
Tools-MetaEdit+
• For defining metamodels, MetaEdit+ employs the GOPPRR
metamodeling language.
• Several modelling languages can be used simultaneously and
there can be links and references between different
languages.uages and code generators.
Architecture-MetaEdit+
MetaEdit+ is an
integrated,
repository-based
tool set for creating
and using modeling
languages and code
generators
MetaEdit+-Best Choice:
• Support several integrated languages
• Graphical and form-based metamodeling: no
programming needed
• Integrated metamodeling and modeling
• Models update automatically when a metamodel
changes
Cont..• Multiple concurrent metamodels
• WYSIWYG symbol editor for defining representations for
metamodel elements
• SVG and bitmap importing for symbols
• Code generation using templates and multiple streams and
debugger
• Generate any language and output format
• Metamodel import and export XML
• Large metamodel library available
• Generators and metamodels integrated
EXPERIMENTATION
• DSM makes a difference the level of concept forcurrent programming languages by specifying thesolution directly using problem domain concepts.
• The final products are than generated from these highlevel specification.
SEQUENTIAL PROCESS
• MetaEdit+ Workbench allows you to build your own modeling
tool without having to write a single line of code.
CODE GENRATOR
Generator translates the models into the required output. The
code and model combined which produce generator
(code + model=generator)
• Simple text Model checking
• Documentation Xml
• Flow machine State machine
CODE GENERATOR cont….
IMPLEMENTAION
• Implementation is the stage of the project when the
theoretical design is turned out into a working system
• MetaEdit+, which is a fully functional CASE
environment with wide modelling language support,
documentation reports and code generators.
• This manual provides information about MetaEdit+
Implementation
IMPLEMENTAION CONCEPT
IMPLEMENTATION FOR DIGITAL WATCH
Drawbacks of Existing System
• User interface is not very easy to use. - Rational and UML is to support the design of the data to support poor on the links between different model also cannot support. Therefor from the user to not convenient
• The Existing System will not support the same product in the different directions to do the analysis, design and development.
Features of Proposed System– MetaEdit+
• Domain Specific Modelling (MetaEdit+) deals with the specialty of less time consumption low cost and fast computing.
• In a development of a software consist of lot of procedure and designing procedure.
• Manual programming was seen as too costly, time – consuming, and leading.
• The Company was seeking an efficient way to capture and implement .
PRINCIPLE OF DIGITAL WATCH
• Domain-specific modeling (DSM) often also includes the idea
of code generation-automating the creation of executable source
code directly from the domain-specific language models
C O N T ….
ARCHITECTURE OF DIGITAL WATCH
• Watch architecture
consist of three parts:
a modeling language,
a code generator and
a domain framework.
DEVELOPING GENERATOR
• MetaEdit+ delivers your language and generator immediately to
the developers of your team.
• The created development tool support your modeling language,
generates your code the way you want, and produces documents.
• MetaEdit+ provides the necessary functionality for creating and
debugging generation script, and it guides the expert to access the
concepts in the metamodel.
RESULT
• MetaEdit+ delivers your language and generator immediately to thedevelopers of your team.
• The created development tool support your modeling language,generates your code the way you want, and produces documents.
• MetaEdit+ provides the necessary functionality for creating anddebugging generation script, and it guides the expert to access theconcepts in the metamodel
Result Expected
RESULT
TOOL COMPARISON
• MetaEdit+ is a tool with a proprietary metamodelling paradigm andgenerator definition language.
• Since MetaEdit+ tool is not tied to UML in any way, it offers veryflexible possibilities for DSML definition.
• The definition of DSML does not require any manual coding and thecode generation support is very good.
TOOLS:
DSL tools GME GEMS MetaEdit+
Provider Microsoft Vanderbilt university Eclipse GMT project MetaCase
Platform Windows Windows Java-enabled platform Windows, Linux, Mac, HP, Solaris
License Commercial GME license EPL Commercial
User’s Guide Yes Yes Yes Yes
Tutorial Yes Yes Yes Yes
Instructions for the Code Generator Yes Yes Yes Yes
E-Mail Support Yes Yes Yes Yes
Metamodeling Language Object-oriented Based on UML Ecore GOPPRR
Constraint Definition Language C# OCL Many languages Restricted set of constraint definition
possibilities
Generator Definition Language Templates for generating C++,Visual Basic, COM enabled
languages
Java MERL language
Output Language Visual Basic, C# Any language Any language Any language
CONCLUSION
• Domain-specific Modeling enhance quality,
productivity, reliability, maintainability, portability
and reusability.
• In future this Tool can be used in developing more
useful and attractive.
REFERENCE
kellys,s.,pohjonen,R.worst practice for Domain-Specific modeling,IEEE software
,Jul/Aug,2011.
Safa, The making of user-Interface Designer: AProprietary DSM Tool, oopala workshop on
Domain-Specific Modeling, 2010.
Pohjonen, R., Kelly, S., “Domain-Specific Modeling,” Dr. Dobbs Journal, August 2011.
http://DSMbook.com.
www.DSMforum.com
MetaEdit+ Reference Manual
http://en.wikipedia.org/
http://www.metacase.com/papers/DrDobbs_Domain-Specific_Modeling.html
http://www.metacase.com
Nokia, www.metacase.com/papers/MetaEdit_in_Nokia.pdf
THANKS