ADAM: External dependency-driven architecture discovery and analysis of quality attributes

This article introduces the Architecture Discovery and Analysis Method (ADAM). ADAM supports the discovery of module and runtime views as well as the analysis of quality attributes, such as testability, performance, and maintainability, of software systems. The premise of ADAM is that the implementa...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on software engineering and methodology 2014-03, Vol.23 (2), p.1-51
Hauptverfasser: Ganesan, Dharmalingam, Lindvall, Mikael
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 51
container_issue 2
container_start_page 1
container_title ACM transactions on software engineering and methodology
container_volume 23
creator Ganesan, Dharmalingam
Lindvall, Mikael
description This article introduces the Architecture Discovery and Analysis Method (ADAM). ADAM supports the discovery of module and runtime views as well as the analysis of quality attributes, such as testability, performance, and maintainability, of software systems. The premise of ADAM is that the implementation constructs, architecture constructs, concerns, and quality attributes are all influenced by the external entities (e.g., libraries, frameworks, COTS software) used by the system under analysis. The analysis uses such external dependencies to identify, classify, and review a minimal set of key source-code files supported by a knowledge base of the external entities. Given the benefits of analyzing external dependencies as a way to discover architectures and potential risks, it is demonstrated that dependencies to external entities are useful not only for architecture discovery but also for analysis of quality attributes. ADAM is evaluated using the NASA's Space Network Access System (SNAS). The results show that this method offers systematic guidelines for discovering the architecture and locating potential risks (e.g., low testability and decreased performance) that are hidden deep inside the system implementation. Some generally applicable lessons for developers and analysts, as well as threats to validity are also discussed.
doi_str_mv 10.1145/2529998
format Article
fullrecord <record><control><sourceid>crossref</sourceid><recordid>TN_cdi_crossref_primary_10_1145_2529998</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>10_1145_2529998</sourcerecordid><originalsourceid>FETCH-LOGICAL-c187t-4dfd3c26506d0b04ab10203f4185842726724ec869e89e75e4f6ec972168bd853</originalsourceid><addsrcrecordid>eNotjstqwkAUQAdRMI3iZ3Q17b137ryWIX0oKG4U3IVkMgNKSyXjxr-3pVmdszocIVYIL4isX0mT995NRIFaW2mVp-mvA3upFJ7m4innCwAqIC7EtHqrdgsxS-1XjsuRpTh-vB_qtdzuPzd1tZUBnb1J7lOvAhkNpocOuO0QCFRidNoxWTKWOAZnfHQ-Wh05mRi8JTSu651WpXj-74bhJ-chpuY6nL_b4d4gNH_zzTivHldxMig</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>ADAM: External dependency-driven architecture discovery and analysis of quality attributes</title><source>Access via ACM Digital Library</source><creator>Ganesan, Dharmalingam ; Lindvall, Mikael</creator><creatorcontrib>Ganesan, Dharmalingam ; Lindvall, Mikael</creatorcontrib><description>This article introduces the Architecture Discovery and Analysis Method (ADAM). ADAM supports the discovery of module and runtime views as well as the analysis of quality attributes, such as testability, performance, and maintainability, of software systems. The premise of ADAM is that the implementation constructs, architecture constructs, concerns, and quality attributes are all influenced by the external entities (e.g., libraries, frameworks, COTS software) used by the system under analysis. The analysis uses such external dependencies to identify, classify, and review a minimal set of key source-code files supported by a knowledge base of the external entities. Given the benefits of analyzing external dependencies as a way to discover architectures and potential risks, it is demonstrated that dependencies to external entities are useful not only for architecture discovery but also for analysis of quality attributes. ADAM is evaluated using the NASA's Space Network Access System (SNAS). The results show that this method offers systematic guidelines for discovering the architecture and locating potential risks (e.g., low testability and decreased performance) that are hidden deep inside the system implementation. Some generally applicable lessons for developers and analysts, as well as threats to validity are also discussed.</description><identifier>ISSN: 1049-331X</identifier><identifier>EISSN: 1557-7392</identifier><identifier>DOI: 10.1145/2529998</identifier><language>eng</language><ispartof>ACM transactions on software engineering and methodology, 2014-03, Vol.23 (2), p.1-51</ispartof><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c187t-4dfd3c26506d0b04ab10203f4185842726724ec869e89e75e4f6ec972168bd853</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Ganesan, Dharmalingam</creatorcontrib><creatorcontrib>Lindvall, Mikael</creatorcontrib><title>ADAM: External dependency-driven architecture discovery and analysis of quality attributes</title><title>ACM transactions on software engineering and methodology</title><description>This article introduces the Architecture Discovery and Analysis Method (ADAM). ADAM supports the discovery of module and runtime views as well as the analysis of quality attributes, such as testability, performance, and maintainability, of software systems. The premise of ADAM is that the implementation constructs, architecture constructs, concerns, and quality attributes are all influenced by the external entities (e.g., libraries, frameworks, COTS software) used by the system under analysis. The analysis uses such external dependencies to identify, classify, and review a minimal set of key source-code files supported by a knowledge base of the external entities. Given the benefits of analyzing external dependencies as a way to discover architectures and potential risks, it is demonstrated that dependencies to external entities are useful not only for architecture discovery but also for analysis of quality attributes. ADAM is evaluated using the NASA's Space Network Access System (SNAS). The results show that this method offers systematic guidelines for discovering the architecture and locating potential risks (e.g., low testability and decreased performance) that are hidden deep inside the system implementation. Some generally applicable lessons for developers and analysts, as well as threats to validity are also discussed.</description><issn>1049-331X</issn><issn>1557-7392</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2014</creationdate><recordtype>article</recordtype><recordid>eNotjstqwkAUQAdRMI3iZ3Q17b137ryWIX0oKG4U3IVkMgNKSyXjxr-3pVmdszocIVYIL4isX0mT995NRIFaW2mVp-mvA3upFJ7m4innCwAqIC7EtHqrdgsxS-1XjsuRpTh-vB_qtdzuPzd1tZUBnb1J7lOvAhkNpocOuO0QCFRidNoxWTKWOAZnfHQ-Wh05mRi8JTSu651WpXj-74bhJ-chpuY6nL_b4d4gNH_zzTivHldxMig</recordid><startdate>20140301</startdate><enddate>20140301</enddate><creator>Ganesan, Dharmalingam</creator><creator>Lindvall, Mikael</creator><scope>AAYXX</scope><scope>CITATION</scope></search><sort><creationdate>20140301</creationdate><title>ADAM</title><author>Ganesan, Dharmalingam ; Lindvall, Mikael</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c187t-4dfd3c26506d0b04ab10203f4185842726724ec869e89e75e4f6ec972168bd853</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2014</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Ganesan, Dharmalingam</creatorcontrib><creatorcontrib>Lindvall, Mikael</creatorcontrib><collection>CrossRef</collection><jtitle>ACM transactions on software engineering and methodology</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Ganesan, Dharmalingam</au><au>Lindvall, Mikael</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>ADAM: External dependency-driven architecture discovery and analysis of quality attributes</atitle><jtitle>ACM transactions on software engineering and methodology</jtitle><date>2014-03-01</date><risdate>2014</risdate><volume>23</volume><issue>2</issue><spage>1</spage><epage>51</epage><pages>1-51</pages><issn>1049-331X</issn><eissn>1557-7392</eissn><abstract>This article introduces the Architecture Discovery and Analysis Method (ADAM). ADAM supports the discovery of module and runtime views as well as the analysis of quality attributes, such as testability, performance, and maintainability, of software systems. The premise of ADAM is that the implementation constructs, architecture constructs, concerns, and quality attributes are all influenced by the external entities (e.g., libraries, frameworks, COTS software) used by the system under analysis. The analysis uses such external dependencies to identify, classify, and review a minimal set of key source-code files supported by a knowledge base of the external entities. Given the benefits of analyzing external dependencies as a way to discover architectures and potential risks, it is demonstrated that dependencies to external entities are useful not only for architecture discovery but also for analysis of quality attributes. ADAM is evaluated using the NASA's Space Network Access System (SNAS). The results show that this method offers systematic guidelines for discovering the architecture and locating potential risks (e.g., low testability and decreased performance) that are hidden deep inside the system implementation. Some generally applicable lessons for developers and analysts, as well as threats to validity are also discussed.</abstract><doi>10.1145/2529998</doi><tpages>51</tpages></addata></record>
fulltext fulltext
identifier ISSN: 1049-331X
ispartof ACM transactions on software engineering and methodology, 2014-03, Vol.23 (2), p.1-51
issn 1049-331X
1557-7392
language eng
recordid cdi_crossref_primary_10_1145_2529998
source Access via ACM Digital Library
title ADAM: External dependency-driven architecture discovery and analysis of quality attributes
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-01T02%3A21%3A50IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-crossref&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=ADAM:%20External%20dependency-driven%20architecture%20discovery%20and%20analysis%20of%20quality%20attributes&rft.jtitle=ACM%20transactions%20on%20software%20engineering%20and%20methodology&rft.au=Ganesan,%20Dharmalingam&rft.date=2014-03-01&rft.volume=23&rft.issue=2&rft.spage=1&rft.epage=51&rft.pages=1-51&rft.issn=1049-331X&rft.eissn=1557-7392&rft_id=info:doi/10.1145/2529998&rft_dat=%3Ccrossref%3E10_1145_2529998%3C/crossref%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true