Institutional-Repository, University of Moratuwa.  

Service oriented code generator for fast prototyping:based on requirement definition schema

Show simple item record

dc.contributor.advisor Wijesiriwardana, C Hewage, DUI 2017-12-13T19:22:00Z 2017-12-13T19:22:00Z
dc.description.abstract With the rise of the latest web technologies, it has now become the mostly used software solution for lots of business areas. Because of its flexibility and easy connections between the clients and the server made via clouds, it’s the most popular technology solution provider for the industry. Having said that, new and faster approaches for programming, planning, deploying and testing are being introduced at a rapid speed. As a result of this, large number of new tools and technologies are popping up in the industry. Even though they have introduced these tools and technologies to ease up development work, still there are some areas which are time consuming and costly for the management. To be specific Database Designing, Initial Project setup, Authentication module coding, Coding the User Interfaces, Writing CRUD functions covering every use case of the applications, setting up deploying mechanism, writing test cases, and many more tasks are still done manually or taken from a previous project. Even if they have taken it from a previous project they still have to code the CRUD operations and some other things which are not automated yet. Goal of this research is to find out a proper automating mechanism for most of the tasks which are not yet automated using available open source projects and to combine a set of task specific automating tools to act as a complete solution. Although there are some systems available which developers are using to reduce repetitive work, and can manage their work using these systems, it can be improved further and save days to weeks from their development time. This way it can avoid concerns over the cost involved with the implementation because of the time spent on these repetitive tasks. This project proposes a customized solution for avoiding repetitive tasks in software implementation. Reducing the time spent on these tasks is the main objective of this project which ultimately leads to a software prototyping application. Since the modern approach of software implementation is model driven, proposed system will also consist the model driven approach with its solution. The proposed system is capable of source code generation. Pre-generated source code can reduce the time spent on coding, use a model driven approach, automate validations, maintain coding standards as well as the generate UI elements which are required to display data on frontend. Using only 2 schema files written in JSON format which describes the flow of the application, models and validation systems are capable of understanding and generating code based on these definition files. Since the application is using a very high level of definition of the user requirement, it is a forward engineering approach. Keeping in mind of the latest technologies and the mobile technology evolvement, the generated code will consist of 2 sections, namely the Front-end and the Back-end. Front end consists of the UI information and the flow of the application which the final client or the customer will experience. Back end is consisting of a highly customizable REST API which supports mobile implementation as well. To ease up the implementation of this project, project is using set of open-source projects such as angular-seed, expressjs. And the solution is provided using NodeJs. Model-Driven Application Prototyping and Code Generation using Forward Engineering System (FES) supports code generating in multiple languages and supports multiple DBMSs such as MySql, SQL, MongoDB, etc. I have tested the system with the collogues at my work place which all of them are developers. And currently using the system for generating first and second level prototypes. Finally, I have achieved the task of implementing a software solution which generates model driven, initial project setup, reusable and testable code, supports multiple databases and greatly reduce time spent on repetitive work. And in the first phase of the most web application projects in can reduce the project setup time by nearly 1.5 weeks as well as 4-10 hours of 1 module of the code. en_US
dc.language.iso en en_US
dc.subject CRUD automation en_US
dc.subject Code generation en_US
dc.subject Model driven en_US
dc.subject Prototyping en_US
dc.subject Multi-language en_US
dc.subject Forward engineering en_US
dc.title Service oriented code generator for fast prototyping:based on requirement definition schema en_US
dc.title.alternative Software tool providing easy prototyping ability for web applications en_US
dc.type Thesis-Abstract en_US
dc.identifier.faculty IT en_US MSc in Information Technology. en_US
dc.identifier.department Department of Information Technology en_US 2017-05
dc.identifier.accno TH3382 en_US

Files in this item

This item appears in the following Collection(s)

Show simple item record