Domain Specific Languages
Different aspects of a project are often best described using different terms. For example, possible traits of a customer are commonly described as a set of options, with some interplay between them (e.g. if a customer does not like ice cream, her favorite ice cream flavor has to be none
). The user journey of a customer through a system, on the other hand, is commonly described as a linear user story or a state machine.
The provengo
tool supports multiple DSLs[1], each one focuses on different types of description. There’s one for rule base, another one for user stories, and yet another one for state machines. Together, theses partial description create a full description of the specified system, and its possible tests. Of course, more languages are being developed.
All languages are created on top of a base language: BP-Base. This language allows relatively low-level actions, as well as coordinations between descriptions written in different DSLs. |
Available DSLs:
- BP-Base
-
Base language for BP-Based modeling. This language is available in all other languages, and allows low-level requesting, waiting-for, and blocking of events and event sets.
- Storylines
-
For describing aspects of the system that resemble agile user stories (experimental).
Provengo’s DSLs play well with each other. So you can mix and match languages to create a good description of your system specification and testing model. |