Journal article 24473 views 712 downloads
Software sustainability: Research and practice from a software architecture viewpoint
Colin C. Venters,
Rafael Capilla,
Stefanie Betz,
Birgit Penzenstadler,
Tom Crick ,
Steve Crouch,
Elisa Yumi Nakagawa,
Christoph Becker,
Carlos Carrillo
Journal of Systems and Software, Volume: 138, Pages: 174 - 188
Swansea University Author: Tom Crick
-
PDF | Accepted Manuscript
Download (700.32KB)
DOI (Published version): 10.1016/j.jss.2017.12.026
Abstract
ContextModern societies are highly dependent on complex, large-scale, software-intensive systems that increasingly operate within an environment of continuous availability, which is challenging to maintain and evolve in response to the inevitable changes in stakeholder goals and requirements of the...
Published in: | Journal of Systems and Software |
---|---|
ISSN: | 01641212 |
Published: |
Elsevier
2018
|
Online Access: |
Check full text
|
URI: | https://cronfa.swan.ac.uk/Record/cronfa43519 |
first_indexed |
2018-08-18T19:41:51Z |
---|---|
last_indexed |
2023-01-11T14:20:08Z |
id |
cronfa43519 |
recordtype |
SURis |
fullrecord |
<?xml version="1.0"?><rfc1807><datestamp>2022-12-18T17:30:10.3086988</datestamp><bib-version>v2</bib-version><id>43519</id><entry>2018-08-18</entry><title>Software sustainability: Research and practice from a software architecture viewpoint</title><swanseaauthors><author><sid>200c66ef0fc55391f736f6e926fb4b99</sid><ORCID>0000-0001-5196-9389</ORCID><firstname>Tom</firstname><surname>Crick</surname><name>Tom Crick</name><active>true</active><ethesisStudent>false</ethesisStudent></author></swanseaauthors><date>2018-08-18</date><deptcode>SOSS</deptcode><abstract>ContextModern societies are highly dependent on complex, large-scale, software-intensive systems that increasingly operate within an environment of continuous availability, which is challenging to maintain and evolve in response to the inevitable changes in stakeholder goals and requirements of the system. Software architectures are the foundation of any software system and provide a mechanism for reasoning about core software quality requirements. Their sustainability – the capacity to endure in changing environments – is a critical concern for software architecture research and practice.ProblemAccidental software complexity accrues both naturally and gradually over time as part of the overall software design and development process. From a software architecture perspective, this allows several issues to overlap including, but not limited to: the accumulation of technical debt design decisions of individual components and systems leading to coupling and cohesion issues; the application of tacit architectural knowledge resulting in unsystematic and undocumented design decisions; architectural knowledge vaporisation of design choices and the continued ability of the organization to understand the architecture of its systems; sustainability debt and the broader cumulative effects of flawed architectural design choices over time resulting in code smells, architectural brittleness, erosion, and drift, which ultimately lead to decay and software death. Sustainable software architectures are required to evolve over the entire lifecycle of the system from initial design inception to end-of-life to achieve efficient and effective maintenance and evolutionary change.MethodThis article outlines general principles and perspectives on sustainability with regards to software systems to provide a context and terminology for framing the discourse on software architectures and sustainability. Focusing on the capacity of software architectures and architectural design choices to endure over time, it highlights some of the recent research trends and approaches with regards to explicitly addressing sustainability in the context of software architectures.ContributionThe principal aim of this article is to provide a foundation and roadmap of emerging research themes in the area of sustainable software architectures highlighting recent trends, and open issues and research challenges.</abstract><type>Journal Article</type><journal>Journal of Systems and Software</journal><volume>138</volume><journalNumber/><paginationStart>174</paginationStart><paginationEnd>188</paginationEnd><publisher>Elsevier</publisher><placeOfPublication/><isbnPrint/><isbnElectronic/><issnPrint>01641212</issnPrint><issnElectronic/><keywords>Software architecture, Software sustainability, Longevity, Evolution</keywords><publishedDay>30</publishedDay><publishedMonth>4</publishedMonth><publishedYear>2018</publishedYear><publishedDate>2018-04-30</publishedDate><doi>10.1016/j.jss.2017.12.026</doi><url/><notes/><college>COLLEGE NANME</college><department>Social Sciences School</department><CollegeCode>COLLEGE CODE</CollegeCode><DepartmentCode>SOSS</DepartmentCode><institution>Swansea University</institution><apcterm/><funders/><projectreference/><lastEdited>2022-12-18T17:30:10.3086988</lastEdited><Created>2018-08-18T15:19:55.4773721</Created><path><level id="1">Faculty of Humanities and Social Sciences</level><level id="2">School of Social Sciences - Education and Childhood Studies</level></path><authors><author><firstname>Colin C.</firstname><surname>Venters</surname><order>1</order></author><author><firstname>Rafael</firstname><surname>Capilla</surname><order>2</order></author><author><firstname>Stefanie</firstname><surname>Betz</surname><order>3</order></author><author><firstname>Birgit</firstname><surname>Penzenstadler</surname><order>4</order></author><author><firstname>Tom</firstname><surname>Crick</surname><orcid>0000-0001-5196-9389</orcid><order>5</order></author><author><firstname>Steve</firstname><surname>Crouch</surname><order>6</order></author><author><firstname>Elisa Yumi</firstname><surname>Nakagawa</surname><order>7</order></author><author><firstname>Christoph</firstname><surname>Becker</surname><order>8</order></author><author><firstname>Carlos</firstname><surname>Carrillo</surname><order>9</order></author></authors><documents><document><filename>0043519-11092018221841.pdf</filename><originalFilename>JSSOverviewonArchitectureSustainability-submitted.pdf</originalFilename><uploaded>2018-09-11T22:18:41.7900000</uploaded><type>Output</type><contentLength>688984</contentLength><contentType>application/pdf</contentType><version>Accepted Manuscript</version><cronfaStatus>true</cronfaStatus><embargoDate>2018-12-20T00:00:00.0000000</embargoDate><copyrightCorrect>true</copyrightCorrect><language>eng</language></document></documents><OutputDurs/></rfc1807> |
spelling |
2022-12-18T17:30:10.3086988 v2 43519 2018-08-18 Software sustainability: Research and practice from a software architecture viewpoint 200c66ef0fc55391f736f6e926fb4b99 0000-0001-5196-9389 Tom Crick Tom Crick true false 2018-08-18 SOSS ContextModern societies are highly dependent on complex, large-scale, software-intensive systems that increasingly operate within an environment of continuous availability, which is challenging to maintain and evolve in response to the inevitable changes in stakeholder goals and requirements of the system. Software architectures are the foundation of any software system and provide a mechanism for reasoning about core software quality requirements. Their sustainability – the capacity to endure in changing environments – is a critical concern for software architecture research and practice.ProblemAccidental software complexity accrues both naturally and gradually over time as part of the overall software design and development process. From a software architecture perspective, this allows several issues to overlap including, but not limited to: the accumulation of technical debt design decisions of individual components and systems leading to coupling and cohesion issues; the application of tacit architectural knowledge resulting in unsystematic and undocumented design decisions; architectural knowledge vaporisation of design choices and the continued ability of the organization to understand the architecture of its systems; sustainability debt and the broader cumulative effects of flawed architectural design choices over time resulting in code smells, architectural brittleness, erosion, and drift, which ultimately lead to decay and software death. Sustainable software architectures are required to evolve over the entire lifecycle of the system from initial design inception to end-of-life to achieve efficient and effective maintenance and evolutionary change.MethodThis article outlines general principles and perspectives on sustainability with regards to software systems to provide a context and terminology for framing the discourse on software architectures and sustainability. Focusing on the capacity of software architectures and architectural design choices to endure over time, it highlights some of the recent research trends and approaches with regards to explicitly addressing sustainability in the context of software architectures.ContributionThe principal aim of this article is to provide a foundation and roadmap of emerging research themes in the area of sustainable software architectures highlighting recent trends, and open issues and research challenges. Journal Article Journal of Systems and Software 138 174 188 Elsevier 01641212 Software architecture, Software sustainability, Longevity, Evolution 30 4 2018 2018-04-30 10.1016/j.jss.2017.12.026 COLLEGE NANME Social Sciences School COLLEGE CODE SOSS Swansea University 2022-12-18T17:30:10.3086988 2018-08-18T15:19:55.4773721 Faculty of Humanities and Social Sciences School of Social Sciences - Education and Childhood Studies Colin C. Venters 1 Rafael Capilla 2 Stefanie Betz 3 Birgit Penzenstadler 4 Tom Crick 0000-0001-5196-9389 5 Steve Crouch 6 Elisa Yumi Nakagawa 7 Christoph Becker 8 Carlos Carrillo 9 0043519-11092018221841.pdf JSSOverviewonArchitectureSustainability-submitted.pdf 2018-09-11T22:18:41.7900000 Output 688984 application/pdf Accepted Manuscript true 2018-12-20T00:00:00.0000000 true eng |
title |
Software sustainability: Research and practice from a software architecture viewpoint |
spellingShingle |
Software sustainability: Research and practice from a software architecture viewpoint Tom Crick |
title_short |
Software sustainability: Research and practice from a software architecture viewpoint |
title_full |
Software sustainability: Research and practice from a software architecture viewpoint |
title_fullStr |
Software sustainability: Research and practice from a software architecture viewpoint |
title_full_unstemmed |
Software sustainability: Research and practice from a software architecture viewpoint |
title_sort |
Software sustainability: Research and practice from a software architecture viewpoint |
author_id_str_mv |
200c66ef0fc55391f736f6e926fb4b99 |
author_id_fullname_str_mv |
200c66ef0fc55391f736f6e926fb4b99_***_Tom Crick |
author |
Tom Crick |
author2 |
Colin C. Venters Rafael Capilla Stefanie Betz Birgit Penzenstadler Tom Crick Steve Crouch Elisa Yumi Nakagawa Christoph Becker Carlos Carrillo |
format |
Journal article |
container_title |
Journal of Systems and Software |
container_volume |
138 |
container_start_page |
174 |
publishDate |
2018 |
institution |
Swansea University |
issn |
01641212 |
doi_str_mv |
10.1016/j.jss.2017.12.026 |
publisher |
Elsevier |
college_str |
Faculty of Humanities and Social Sciences |
hierarchytype |
|
hierarchy_top_id |
facultyofhumanitiesandsocialsciences |
hierarchy_top_title |
Faculty of Humanities and Social Sciences |
hierarchy_parent_id |
facultyofhumanitiesandsocialsciences |
hierarchy_parent_title |
Faculty of Humanities and Social Sciences |
department_str |
School of Social Sciences - Education and Childhood Studies{{{_:::_}}}Faculty of Humanities and Social Sciences{{{_:::_}}}School of Social Sciences - Education and Childhood Studies |
document_store_str |
1 |
active_str |
0 |
description |
ContextModern societies are highly dependent on complex, large-scale, software-intensive systems that increasingly operate within an environment of continuous availability, which is challenging to maintain and evolve in response to the inevitable changes in stakeholder goals and requirements of the system. Software architectures are the foundation of any software system and provide a mechanism for reasoning about core software quality requirements. Their sustainability – the capacity to endure in changing environments – is a critical concern for software architecture research and practice.ProblemAccidental software complexity accrues both naturally and gradually over time as part of the overall software design and development process. From a software architecture perspective, this allows several issues to overlap including, but not limited to: the accumulation of technical debt design decisions of individual components and systems leading to coupling and cohesion issues; the application of tacit architectural knowledge resulting in unsystematic and undocumented design decisions; architectural knowledge vaporisation of design choices and the continued ability of the organization to understand the architecture of its systems; sustainability debt and the broader cumulative effects of flawed architectural design choices over time resulting in code smells, architectural brittleness, erosion, and drift, which ultimately lead to decay and software death. Sustainable software architectures are required to evolve over the entire lifecycle of the system from initial design inception to end-of-life to achieve efficient and effective maintenance and evolutionary change.MethodThis article outlines general principles and perspectives on sustainability with regards to software systems to provide a context and terminology for framing the discourse on software architectures and sustainability. Focusing on the capacity of software architectures and architectural design choices to endure over time, it highlights some of the recent research trends and approaches with regards to explicitly addressing sustainability in the context of software architectures.ContributionThe principal aim of this article is to provide a foundation and roadmap of emerging research themes in the area of sustainable software architectures highlighting recent trends, and open issues and research challenges. |
published_date |
2018-04-30T04:35:13Z |
_version_ |
1821378728263942144 |
score |
11.04748 |