Abstract:
Software applications play a critical role in current business world; hence it is necessary to design a
quality and a sound architecture which facilitates it to become a scalable, extensible and highly available
solution. In terms of designing and developing software applications, software engineering community
has started shifting towards serverless-microservices instead of building large monolith applications.
It requires high experience and expertise to understand each business scenario along with considering
non-functional requirements too to design a high-level software architecture which would be the ground
point for a software application. The traditional manual process of doing the above is tedious as well as
can be error prone when architecture designing is done without proper experience and expertise, which
could eventually degrade the quality of the software application.
We introduce TheArchitect, a rule-based system providing a tool-based support in order to design the
best fitted high-level architecture containing serverless microservices, preserving the identified nonfunctional
requirements too, for any given application. Furthermore, TheArchitect provides the ability
to a software engineer also to generate a high-quality high-level architecture even without an
experienced software architect. Considering the increasing tendency within the software engineering
community to move away from monolith application development towards microservices-serverless
based application development, TheArchitect has also been developed focusing on generating highlevel
application architecture designs based on serverless-microservices.
TheArchitect was used to generate architecture designs for restaurant management domain. System
generated architecture designs for two real world applications and how experienced architects’
modifications are incorporated as modified rules for future designs have been discussed. Further a
performance evaluation is conducted on TheArchitect to provide an analysis on the time it takes to
process the requirements and design the architecture for various real-world systems along with an
industry user study is presented evaluating the usability of TheArchitect.
Citation:
Perera, K.J.P.G. (2019). A rule - based toolkit for automated generation of microservices architecture [Master’s theses, University of Moratuwa]. Institutional Repository University of Moratuwa. http://dl.lib.uom.lk/handle/123/16943