SEMAT Accelerator (a.k.a. SematAcc) is a web positioning system for SEMAT Essence Theory of Software Engineering.
!(/uploads/sematacc-nologin.png) *SematAcc Home Page* SematAcc Home Page
SematAcc is a response to the lack of practicability of the Essence Theory of Software Engineering. It provides practical ways to learn the Essence theory, as it enables a web positioning system to represent a software system status using Essence Kernel (currently, only the Concerns, Alphas and the States are supported).
The tool itself serves for multiple use cases. In short, it is an awareness creator, self-positioning system, discussion generator as well as visualization of your project’s current state. SematAcc was also developed with research in mind. It enables research on Essence by logging the events on each State change. It might be employed as a valuable tool for controlled experiments and case studies.
SematAcc is open-source and welcomes contributions.
Essence Theory of Software Engineering
SEMAT Essence Theory of Software Engineering aims to:
Refound software engineering based on a solid theory, proven principles and best practices that: -Include a kernel of widely-agreed elements, extensible for specific uses -Addresses both technology and people issues -Are supported by industry, academia, researchers and users -Support extension in the face of changing requirements and technology
A simple introduction to the Essence theory can be found in the materials of my special lecture held at the Free University of Bozen-Bolzano. Useful references to complete materials are available there, as well.
!(/uploads/sematacc-projects.png) *SematAcc Project Dashboard* SematAcc Project Dashboard
SematAcc lets a user create a Project and “accelerate” it using the Essence Kernel. Each Project has an associated Kernel, defining the so called Concerns, Alphas, and States. The Kernel elements are described using the original OMG submission of the Essence theory. The user will therefore find very familiar terminology in SematAcc. To further help the process of learning Essence, SematAcc provides ways to position the project in terms of Alphas and Concerns, by displaying graphs. SematAcc can be employed in empirical experiment on Essence theory, because it registers the events triggered by its usage. The events can be downloaded for research purposes.
!(/uploads/sematacc-graphs.png) *SematAcc - The Kernel and the Graphs* SematAcc - The Kernel and the Graphs
A live version of SematAcc runs on Meteor servers at http://sematacc.herokuapp.com for demo and testing purposes. Although we try to keep the data stored on there, please do not heavily rely on it.
In order to deploy SematAcc as a private instance on Meteor’s servers, issue the following command:
meteor deploy your-chosen-name.meteor.com
You can clone/download SematAcc on GitHub: https://github.com/s4fs/sematacc. You can download “stable” releases as gzipped tars on the Tag page: https://github.com/s4fs/sematacc/tags. You can report issues either on the issue tracker: https://github.com/s4fs/sematacc/issues?page=1&state=open.