Repository logo
 

Software Design Change Artifacts Generation through Software Architectural Change Detection and Categorisation

dc.contributor.committeeMemberGokaraju, Ramakrishna
dc.contributor.committeeMemberCodabux, Zadia
dc.contributor.committeeMemberMondal, Manishankar
dc.contributor.committeeMemberYoshida, Norihiro
dc.creatorMondal, Amit Kumar
dc.date.accessioned2023-01-26T19:22:06Z
dc.date.available2023-01-26T19:22:06Z
dc.date.copyright2022
dc.date.created2023-01
dc.date.issued2023-01-26
dc.date.submittedJanuary 2023
dc.date.updated2023-01-26T19:22:06Z
dc.description.abstractSoftware is solely designed, implemented, tested, and inspected by expert people, unlike other engineering projects where they are mostly implemented by workers (non-experts) after designing by engineers. Researchers and practitioners have linked software bugs, security holes, problematic integration of changes, complex-to-understand codebase, unwarranted mental pressure, and so on in software development and maintenance to inconsistent and complex design and a lack of ways to easily understand what is going on and what to plan in a software system. The unavailability of proper information and insights needed by the development teams to make good decisions makes these challenges worse. Therefore, software design documents and other insightful information extraction are essential to reduce the above mentioned anomalies. Moreover, architectural design artifacts extraction is required to create the developer’s profile to be available to the market for many crucial scenarios. To that end, architectural change detection, categorization, and change description generation are crucial because they are the primary artifacts to trace other software artifacts. However, it is not feasible for humans to analyze all the changes for a single release for detecting change and impact because it is time-consuming, laborious, costly, and inconsistent. In this thesis, we conduct six studies considering the mentioned challenges to automate the architectural change information extraction and document generation that could potentially assist the development and maintenance teams. In particular, (1) we detect architectural changes using lightweight techniques leveraging textual and codebase properties, (2) categorize them considering intelligent perspectives, and (3) generate design change documents by exploiting precise contexts of components’ relations and change purposes which were previously unexplored. Our experiment using 4000+ architectural change samples and 200+ design change documents suggests that our proposed approaches are promising in accuracy and scalability to deploy frequently. Our proposed change detection approach can detect up to 100% of the architectural change instances (and is very scalable). On the other hand, our proposed change classifier’s F1 score is 70%, which is promising given the challenges. Finally, our proposed system can produce descriptive design change artifacts with 75% significance. Since most of our studies are foundational, our approaches and prepared datasets can be used as baselines for advancing research in design change information extraction and documentation.
dc.format.mimetypeapplication/pdf
dc.identifier.urihttps://hdl.handle.net/10388/14448
dc.language.isoen
dc.subjectArchitectural change
dc.subjectcategories
dc.subjectdesign document
dc.subjectautomated technique
dc.titleSoftware Design Change Artifacts Generation through Software Architectural Change Detection and Categorisation
dc.typeThesis
dc.type.materialtext
thesis.degree.departmentComputer Science
thesis.degree.disciplineComputer Science
thesis.degree.grantorUniversity of Saskatchewan
thesis.degree.levelDoctoral
thesis.degree.nameDoctor of Philosophy (Ph.D.)

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
MONDAL-DISSERTATION-2023.pdf
Size:
2.19 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
LICENSE.txt
Size:
2.27 KB
Format:
Plain Text
Description: