Start! helps new MDriven users choose a practical learning path from their first model to testing, user-interface work, and deployment.
What Start! is
MDriven is a model-driven development platform. You define the information in your system and the rules that govern it in a model, then use that model while developing and testing the system.
Start! is the introductory orientation for MDriven. Use it when you are new to MDriven Designer or when you need to understand how the main parts of the platform fit together before you begin a project.
For example, a system that manages people can begin with a Person class and a Name attribute. You can run the model, create Person objects, and inspect them in the debugger before you build a larger application.
Choose your starting point
| Your goal | Start here | What you will do |
|---|---|---|
| Understand the platform and prepare your development environment | Getting Started with MDriven | Learn the platform overview and follow the available installation and environment setup guidance. |
| Build and run a first model in MDriven Designer | Bootcamp, Chapter 1 | Create a class, add an attribute, press Play, create objects, and inspect the result in the debugger. |
| Learn the MDriven Designer areas in more depth | MDriven Designer documentation | Explore modeling, associations, ViewModels, actions, persistence, and testing topics. |
| Query model data and learn expression syntax | OCL documentation | Learn Object Constraint Language (OCL), the expression language used to query and navigate model data. |
| Create and operate a Turnkey application | MDriven Turnkey documentation | Follow guidance for Turnkey site setup, architecture, deployment, and troubleshooting. |
| Install and manage server-side capabilities | MDriven Server documentation | Learn about installing, configuring, and managing MDrivenServer. |
Recommended first session
Use this short path to verify that you can model, execute, and inspect information.
- Follow the setup guidance in Getting Started.
- Open Bootcamp, Chapter 1 and create a new empty model.
- Add a class named
Person. - Add a string attribute named
NametoPerson. - Save the model. During modeling, use
Ctrl+Sregularly. - In MDriven Designer, select the Play button at the left side of the top menu. Choose XML persistence, then select Start system and Show debugger.
- In a debugger Expression box, enter
person.allinstances. Before you create objects, the result is empty. - Open a Seeker, select Create New, and create two Person objects. Open each object and provide a value for
Name. - Save the created objects from the debugger, then run
person.allinstancesagain. The result now contains the two Person objects.
This exercise demonstrates the core feedback loop: change the model, run it, create or inspect data, and evaluate the result. For an introduction to the expression used in the exercise, continue with OCL and OCL Common Expressions.
Concepts you will meet
| Term | Meaning in this learning path | Example |
|---|---|---|
| Model | The definition of the information and structure in your system. | A model contains the Person class.
|
| Class | A definition of a kind of object. | Person defines the kind of objects you create for people.
|
| Attribute | A named value on a class. | Name is a string attribute on Person.
|
| OCL | Object Constraint Language; an expression language for querying and navigating model data. | person.allinstances retrieves all Person instances in the running model.
|
| ViewModel | A model used for user-interface behavior and presentation. | After the first modeling exercise, use the MDriven Designer documentation to continue with ViewModels and UI modeling. |
| EAL | Executable Action Language; the action-language area of the MDriven documentation. | Use OCL documentation to continue to the EAL overview when you are ready to work with actions. |
| MDrivenServer | The server component documented in the MDriven Server area. | Use MDriven Server documentation when you need server installation, configuration, or server-side job guidance. |
Learn in layers
Do not try to learn every MDriven Designer option before you make a small model work. Start with classes, attributes, and associations. Run the model and inspect the data. Then add expressions, ViewModels, actions, persistence, and deployment as your application needs them.
The Bootcamp is designed as a progressive, hands-on route. If you lose your place, return to the step that matches the part you are currently working on and continue from there.
For the broader design rationale, The MDriven Book introduction distinguishes the enduring business information and rules in a system from implementation technologies that change over time.
Where to go next
After completing the first-session exercise:
- Continue with Bootcamp, Chapter 1 for guided modeling and debugger work.
- Use MDriven Designer documentation when you need a topic-based reference for modeling, ViewModels, actions, data, or testing.
- Study OCL before writing more involved expressions.
- Move to MDriven Turnkey documentation when your work requires a Turnkey site, or MDriven Server documentation for MDrivenServer setup and operation.
See also
- Getting Started with MDriven
- Bootcamp, Chapter 1
- MDriven Designer documentation
- OCL documentation
- MDriven Turnkey documentation
- MDriven Server documentation
What model-driven development means
MDriven is a model-driven development tool: you define a model for an application’s data, business logic, and user interface, and use that model as the backbone of the application.
What model-driven development means
Model-driven development (MDD) is an approach in which a model is the primary blueprint for an application. In MDriven, UML-like models can define business entities, their attributes and relationships, business rules, and application behavior.
For example, an order-management model might include Customer, Order, and OrderLine classes. The model can describe the relationships between those classes, define validation rules, and represent an order lifecycle with states and transitions.
How MDriven applies the model
MDriven Designer is used to create models. MDriven can use those models to generate user interfaces and database structures, and it supports executable models that can be run and tested.
| Part | Purpose | Order-management example |
|---|---|---|
| Model | Defines data, relationships, business rules, and behavior. | Define Customer, Order, and OrderLine and their relationships.
|
| MDriven Designer | Create and work with the application model. | Model the order classes and their workflow states. |
| ViewModel | Defines how an application looks and behaves for a use case. | Provide an order-entry view for an order, its customer, and its order lines. |
| OCL | Provides expressions for data retrieval, data manipulation, and business rules. | Calculate a value from order lines or validate an order rule. |
| MDriven Server | Executes models and manages application data as a back-end platform. | Run and manage the order-management application. |
A ViewModel defines how an application looks and behaves. It is backed by OCL (Object Constraint Language) expressions, which can provide logic for retrieving and manipulating data and for business rules.
MDriven also provides AutoForms, which generate forms from data structures and ViewModels while allowing customization. State machines can represent workflows as states and transitions.
When the model changes
When requirements change, update the model. MDriven supports automatic database and user-interface generation from models, and its data-management features include schema generation and database synchronization based on evolving models.
Next steps
- Read How does MDriven work for an overview of models, ViewModels, OCL, AutoForms, and MDriven Server.
- Read MDriven Developer's Guide: Model-Driven Development Simplified for a developer-focused overview.
- Read MDriven features and benefits for further feature details.
See also
- Documentation:How does MDriven work
- Documentation:MDriven Developer's Guide: Model-Driven Development Simplified
- Documentation:MDriven features and benefits
Start with MDriven
Start with MDriven
MDriven is a model-driven development platform for creating business applications. It is intended to support rapid, efficient, and flexible application creation, including automation, integration, and scalability.
MDriven Designer is MDriven's visual modeling tool. Use it to define classes, attributes, relationships, behaviors, and business rules. Its class diagrams support entities and their relationships, including inheritance, associations, and derived attributes; state-machine diagrams map entity lifecycles and event-triggered transitions.
MDriven models are executable. You can place business logic in models with Object Constraint Language (OCL) and declarative rules, generate customizable user interfaces with Autoforms, and have MDriven generate SQL database schemas. As requirements change, update the model; MDriven Designer can regenerate the system with those changes.
Getting started
The Getting Started documentation provides initial resources for learning MDriven, setting up an environment, and becoming familiar with its core concepts. It includes links to introductory material, installation guidance, and an onboarding path.
See also
- Documentation:Why You Should Choose MDriven
- Documentation:Introduction to MDriven Designer
- Documentation:GettingStarted
Your first runnable model
You can use this first exercise to create and run a small model in MDriven Designer if you are new to MDriven.
Create and test a Person model
This exercise models two people, starts the model with XML persistence, and uses OCL (Object Constraint Language) to find the created objects.
Before you begin, install and start MDriven Designer as described in Documentation:MDriven designer overview Part 1.
- Create a new empty model.
- Save the model. For example, save it as
c:\temp\MDrivenEducation\Start.modlr. - Create a class named
Person. - Add an attribute named
NametoPersonand set its type tostring. - Save the model with
Ctrl+S. Continue to save after each change. - Press the Play button on the left side of the top menu.
- Choose XML persistence, select Start system, and then select Show debugger.
- In a Debugger Expression box, enter the following OCL expression and execute it:
person.allinstances
The result list is empty because no Person objects exist yet.
- In the Debugger, open a Seeker. The search is empty.
- Select Create New twice to create two
Personobjects. - Open each object and enter a value for
Name. For example, enterAnnafor the first person andSamfor the second. - Save the created objects with the Debugger save button.
- Run
person.allinstancesagain. The result now contains two rows.
The XML file is saved in the same location as the model file. Open it in a text editor and confirm that the names you entered are present.
What this exercise shows
The Person class defines information in the model. The Debugger lets you create instances of that class and evaluate OCL expressions against them. In this example, person.allinstances returns every saved Person object.
Continue with Bootcamp Chapter 1 for the next guided steps, including basic modeling, classes, associations, and testing.
