Software Sustainability: Strategies for Long-Lasting and Usable Software
Permanent URI for this collection
1 - 3 of 3
ItemThe Architecture of Complexity Revisited: Design Primitives for Ultra-Large-Scale Systems( 2023-01-03)As software-intensive systems continue to grow in scale and complexity the techniques that we have used to design and analyze them in the past no longer suffice. In this paper we look at examples of existing ultra-large-scale systems—systems of enormous size and complexity. We examine instances of such systems that have arisen spontaneously in nature and those that have been human-constructed. We distill from these example systems the design primitives that underlie them. We capture these design primitives as a set of tactics— fundamental architectural building-blocks—and argue that to efficiently build and analyze such systems in the future we should strongly consider employing such building-blocks.
ItemDesign and Implementation of Web APIs for Supporting Data Product Visualization and Dissemination In Science Gateways( 2023-01-03)In the pursuit to develop an online data portal for visualizing and downloading climatological data from around Hawaiʻi, a need to compile and generate large amounts of data was identified. While some tools are available for handling and distributing this data, they were not sufficient for several core features required of the project, including generating and emailing users zipped packages of requested data. To fulfill the requirements of this project and provide programmatic access to the data, an API was developed. This paper will introduce the endpoints and functions made available through this API and describe its implementation and potential for adoption by other projects.