Identifying and quantifying architectural debt and decoupling level: a metric for architectural maintenance complexity

US11422800B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11422800-B2
Application numberUS-201616063501-A
CountryUS
Kind codeB2
Filing dateDec 19, 2016
Priority dateDec 18, 2015
Publication dateAug 23, 2022
Grant dateAug 23, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Groups of architecturally connected files may incur and accumulate high maintenance costs as architectural debts. To quantify such debts, architectural debt, which is a term used herein, may be identified, quantified, measured, and modeled. A history coupling probability matrix for this purpose may search for architecture debts through the lens of 4 patterns of prototypical architectural flaws shown to correlate with reduced software quality. Further, a new architecture maintainability metric—Decoupling Level (DL)—measures how well the software can be decoupled into small and independently replaceable modules. The DL metric opens the possibility of quantitatively comparing maintainability between different projects, as well as monitoring architecture decay throughout software evolution. Decoupling Level may be the only software maintainability metric that bears similarity with other metrics used in everyday life, such as the centimeter, in that it allows managers to monitor, evaluate, and compare software projects and their evolution.

First claim

Opening claim text (preview).

The invention claimed is: 1. A computer-implemented method for improving a computer program's quality, the computer-implemented method comprising: identifying the computer program's quality corresponding to a measure of the computer program's maintainability, wherein the computer program's maintainability is measured using a decoupling level metric corresponding to how the computer program can be decoupled into small and independently replaceable modules, wherein the decoupling level metric for the computer program is automatically computed based on at least two inputs: (1) a dependency file comprising dependency relations among modules of the computer program; and (2) a clustering file that contains design rule hierarchy (DRH) clustering information for the modules of the computer program, wherein the DRH clustering information for the modules of the computer program comprises information regarding the small and independently replaceable modules in a layer within a hierarchical structure of the DRH, wherein the decoupling level metric for the computer program is automatically computed for a layer within the hierarchical structure of the DRH based on all the small and independently replaceable modules within the layer of the hierarchical structure of the DRH, and wherein the decoupling level metric for the computer program depends on a size of the small and independently replaceable modules; generating the dependency file and the clustering file as the at least two inputs to automatically compute the decoupling level metric for the computer program; monitoring degradation of an architecture of the computer program over time based on the decoupling level metric for the computer program; and performing maintainability tasks for the computer program to avoid degradation of the architecture of the computer program over time. 2. The computer-implemented method of claim 1 , wherein improved maintainability corresponds with a higher number of the small and independently replaceable modules than a number of the small and independently replaceable modules absent the improved maintainability. 3. The computer-implemented method of claim 1 , wherein improved maintainability corresponds with a smaller file size of the small and independently replaceable modules than a file size of the small and independently replaceable modules absent the improved maintainability. 4. The computer-implemented method of claim 1 , wherein the decoupling level metric corresponding to how the computer program can be decoupled into the small and independently replaceable modules is defined as a decoupling level and the small and independently replaceable modules are separated into layers, and wherein the decoupling level is a sum of all decoupling levels of the separated layers. 5. The computer-implemented method of claim 1 , wherein the dependency file is a design structure matrix (DSM) file. 6. The computer-implemented method of claim 1 , wherein the dependency file is generated from a computer program source code. 7. The computer-implemented method of claim 6 , wherein the computer program source code is reverse engineered. 8. The computer-implemented method of claim 1 , wherein the decoupling level metric for the computer program comprises a sum of decoupling level metrics for layers within the computer program. 9. The computer-implemented method of claim 1 , further comprising: measuring maintainability of a plurality of different computer programs; comparing maintainability of the plurality of different computer programs; and determining a health status of a specific computer program among the plurality of different computer programs based on a result of the comparison.

Assignees

Inventors

Classifications

  • Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling · CPC title

  • Matrix or vector computation {, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization (matrix transposition G06F7/78)} · CPC title

  • Workflow analysis · CPC title

  • Prevention of errors by analysis, debugging or testing of software · CPC title

  • using software metrics · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11422800B2 cover?
Groups of architecturally connected files may incur and accumulate high maintenance costs as architectural debts. To quantify such debts, architectural debt, which is a term used herein, may be identified, quantified, measured, and modeled. A history coupling probability matrix for this purpose may search for architecture debts through the lens of 4 patterns of prototypical architectural flaws …
Who is the assignee on this patent?
Univ Drexel, Univ Hawaii
What technology area does this patent fall under?
Primary CPC classification G06Q10/06395. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 23 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).