Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • apa.csl
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Integrated Source Code and Architectural Quality Analysis Using Neo4j Graph Database
Karlstad University, Faculty of Health, Science and Technology (starting 2013), Department of Mathematics and Computer Science (from 2013).
2024 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesisAlternative title
Integrerad källkod och arkitektonisk kvalitetsanalys med hjälp av Neo4jGraph Database (Swedish)
Abstract [en]

In the realm of software engineering, understanding the architecture and measuringthe quality of a source code is essential for maintaining and enhancing softwaresystems. However, many existing tools fall short in evaluating architectural aspects,such as detecting architectural erosion or addressing architecture-related metrics andconstraints tailored to the unique context of their systems or organisations. Thisdeficiency restricts proactive architecture governance and hinders the mitigation ofarchitecture-related risks, creating a critical gap in the analysis of software sourcecode.

This thesis presents a novel approach to tackle these challenges. It proposes a graphdatabase as a data structure for analysing the source code and architecture quality andcalculating various architectural metrics of interest. The tool developed in this thesisrepresents the source code structural elements and their relationships in the graphdatabase, enabling an intuitive analysis of the source code architecture.

The tool also integrates different code quality metrics parsed from Visual Studiocode metrics results, mapped to their correspondent nodes to assess the source codeoverall quality and identify potential areas of improvement. This empowers softwareengineers and developers to make informed decisions regarding refactoring, codeoptimisation, and architectural enhancements.

Furthermore, the tool allows users to define the intended architecture in terms ofmodules to reveal any Architecture erosion (AEr). It also provides the flexibility toestablish custom constraints and metrics through tailored queries, accommodating theunique requirements of their system and company.

A case study conducted on a real-world software project validates the effectivenessand usefulness of the proposed approach. The case study demonstrates how the toolanalysis reveals valuable insights into the source code health and identifies patternsthat can impact maintainability and scalability. The results of this research showcasethe potential of our tool as a powerful instrument for analysing the code qualityand architecture of source code, fostering more resilient and sustainable softwaresystems.

Place, publisher, year, edition, pages
2024. , p. 92
Keywords [en]
Architecture, Codebase, Neo4j, Graph database, Metric analysis, Code complexity, Roslyn API, Code quality.
National Category
Information Systems Other Computer and Information Science Computer Sciences
Identifiers
URN: urn:nbn:se:kau:diva-99319OAI: oai:DiVA.org:kau-99319DiVA, id: diva2:1851736
Subject / course
Computer Science
Educational program
Engineering: Computer Engineering (300 ECTS credits)
Presentation
2024-04-03, Karlstad, 16:03 (English)
Supervisors
Examiners
Available from: 2024-04-18 Created: 2024-04-15 Last updated: 2024-04-19Bibliographically approved

Open Access in DiVA

Integrated Source Code and Architectural Quality Analysis Using Neo4j Graph Database(3854 kB)61 downloads
File information
File name FULLTEXT01.pdfFile size 3854 kBChecksum SHA-512
9222aabf21e859fb41aec1f4b58d1e545cf19354543513c1f4ed7bcd126ee8acd5701edf83b4bd4344915f91cf061a22e93328de659e94c905e12e0fa6f54e5c
Type fulltextMimetype application/pdf

By organisation
Department of Mathematics and Computer Science (from 2013)
Information SystemsOther Computer and Information ScienceComputer Sciences

Search outside of DiVA

GoogleGoogle Scholar
Total: 61 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 182 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • apa.csl
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf