Progen, or Dogen v2

masd_logo.png

This site contains all of the product documentation for Progen. Progen is the second incantation of Dogen, the Model Assisted Software Development (MASD) code generator. MASD is a methodology to develop software systems1 based on MDE - Model Driven Development. Throughout this site you will find all the information needed to make sense of these and many other terms, as well as the rationale for the existence of Progen. This project makes heavy use of the org-roam approach, though if you are consuming it from within a web-browser, it should not make much difference.

Content

General Pages

Page Description
Readme The project README in github.
Progen Details of the project itself.

Domain Concepts

This project was originally part of an academic research project, so a lot of documentation was created describing the domain which it covers. The sections that follow contain an overview of the main pages, which are then weaved together using the org-roam approach. To access the original material, see MASD Academic Papers.

Model Driven Engineering

MASD is based on Model Driven Engineering (MDE), so its important to understand the basic concepts of this field and why we found it necessary to extend it.

Page Description
Acronyms List of commonly used TLAs.
Towards a Definition of MDE Exploration of the literature towards attaining a definition of this term.
Models and Transformations Definition of MDE's core concepts, and rationale for their usage.
From Problem Space to Solution Space Characterisation of problem space and solution space.
MDE and the Software Development Process How MDE integrates with SDMs.
MDE and Variability Modeling How MDE integrates with variability modeling approaches.
Survey of Special Purpose Code Generators Survey of FOSS tools dedicated to special purpose code generation
Experience Report of Industrial Adoption Experience report analysing MDD techniques applied to financial sector.
State of the Art in Code Generation Analysis on the importance of code generation and existing methodologies.
The State of MDE Adoption Analysis of the practicalities of MDE adoption.
Requirements for a new Methodology Requirements for the MASD methodology.
The MASD Methodology Definition of the MASD methodology.

Models

Contains all of MASD's base models.

Page Description
masd Core meta-model.
model.name  

Theme

This site uses "CSS for Org-exported HTML" by Zhitao Gong.

Footnotes:

1

MASD was developed as part of my PhD thesis. See MASD Academic Papers.