Automated build and deployment system for a large-scale web application with Maven

Faced with the challenges of new requirements and change, software developers are required to constantly review, tweak or even overhaul existing software. The objective of the project is to create an automated build and deployment system with Apache Maven to ensure that software quality factors a...

وصف كامل

محفوظ في:
التفاصيل البيبلوغرافية
المؤلف الرئيسي: Loo, Kian Heng.
مؤلفون آخرون: Wong Ee Kian
التنسيق: Final Year Project
اللغة:English
منشور في: 2009
الموضوعات:
الوصول للمادة أونلاين:http://hdl.handle.net/10356/16963
الوسوم: إضافة وسم
لا توجد وسوم, كن أول من يضع وسما على هذه التسجيلة!
الوصف
الملخص:Faced with the challenges of new requirements and change, software developers are required to constantly review, tweak or even overhaul existing software. The objective of the project is to create an automated build and deployment system with Apache Maven to ensure that software quality factors are met. The importance of the system is to eliminate packaging and runtime errors, which prevents wastage of resources. The existing architecture of the web application does not allow the source codes to be tested. Therefore, code refactoring needs to be implemented in order to incorporate a test jig to perform unit testing. Reverse engineering from the source code to UML Class Diagram is done as the first step to achieve the objective of automation. This is to understand which are the main classes, its roles and responsibilities and the level of coupling and cohesion. Then, by performing forward engineering together with the application of good design principles, a web application using refactored codes is produced. High degree of confidence is observed when automated system is utilized. There is a significant reduction in building time from thirty minutes to four minutes. The process can be repeated with no instance of failed deployment after each attempt. The results suggested significant cost reduction when tasks can be completed within few minutes with minimum resources and no human intervention. In addition, reports with detailed information can be generated easily by Maven in multi-languages making project training and handover as seamless as possible.