Refactoring the anemic domain model using pattern of enterprise application architecture and its impact on maintainability: A case study

Research output: Contribution to journalArticlepeer-review

1 Citation (Scopus)

Abstract

Design pattern is a set of solutions that is used to solve software development common problems. The purpose of design pattern utilization is to improve software quality. Various design patterns have been proposed. One of them is Patterns of Enterprise Application Architecture (PoEAA) which are specified for enterprise application. However, there are lacks of literature that discuss these patterns. This research conducts a quantitative study to assess the impact of design pattern on software maintainability. We use Academic Information System of Institut Teknologi Sepuluh Nopember as a case study. It is an enterprise software which has Anemic Domain Model. We perform refactoring into the existing systems using suitable PoEAA. We measure its maintainability using C&K and three additional metrics, prior and after the refactoring process. The measurement results are then evaluated to obtain the impact. Based on the experiments, we clearly observe that PoEAA utilization could significantly restructure the anemic domain model of AIS. The maintainability is increased especially in presentation layer. PoEAA also eliminates duplicated methods in service and repository layer of the existing version of AIS. However, there are several drawbacks of the improvements.

Original languageEnglish
Pages (from-to)275-290
Number of pages16
JournalIAENG International Journal of Computer Science
Volume46
Issue number2
Publication statusPublished - 1 May 2019

Keywords

  • Academic information system
  • Design patterns
  • Maintainability
  • Software evolution
  • Software metrics

Fingerprint

Dive into the research topics of 'Refactoring the anemic domain model using pattern of enterprise application architecture and its impact on maintainability: A case study'. Together they form a unique fingerprint.

Cite this