Presentation is loading. Please wait.

Presentation is loading. Please wait.

Modeling Software Sustainability W. Christopher Lenhardt RENCI – UNC, Chapel Hill, NC.

Similar presentations


Presentation on theme: "Modeling Software Sustainability W. Christopher Lenhardt RENCI – UNC, Chapel Hill, NC."— Presentation transcript:

1 Modeling Software Sustainability W. Christopher Lenhardt RENCI – UNC, Chapel Hill, NC

2 Papers Towards a Software Product Sustainability Model –Coral Calero, M. Angeles Moraga, Manuel F. Bertoa. The Blind Men and the Elephant: Towards a Software Sustainability Architectural Evaluation Framework –Colin C. Venters, Lydia Lau, Michael K. Griffiths, Violeta Holmes, Rupert R. Ward, Jie Xu. Sustainable Cyberinfrastructure Software Through Open Governance –Marlon Pierce, Suresh Marru, Chris Mattmann. A Framework for Discussing e-Research Infrastructure Sustainability –Daniel S. Katz, David Proctor. Data Management Lifecycle and Software Lifecycle Management in the Context of Conducting Science –Christopher Lenhardt, Stanley Ahalt, Brian Blanton, Laura Christopherson, Ray Idaszak. Niche Modeling: Ecological Metaphors for Sustainable Software in Science –Nicholas Weber, Andrea Thomer, Michael Twidale.

3 Towards a Software Product Sustainability Model Draws parallels between ideas of software sustainability and environmental sustainability Sustainability is part of software quality Notion of designing into the software requirements for environmental sustainability ISO/IEC 25010 - Systems and software engineering -- Systems and software Quality Requirements and Evaluation (SQuaRE) -- System and software quality models –Product quality model –Data quality model –Quality in use model Suggest adding the following sustainability characteristics to the quality model of ISO 25010 –Energy consumption –Reserouce optimization –Perdurability Coral Calero, M. Angeles Moraga, Manuel F. Bertoa.

4 The Blind Men and the Elephant: Towards a Software Sustainability Architectural Evaluation Framework What does software sustainability mean –It “is a rather ambiguous concept….” Lack of an accepted definition gets in the way of integrating the concept into software engineering Sustainability as a non-functional requirement Quality of software architectures determines sustainability Propose sustainability is a measure of central quality attributes –Extensibility –Interoperability –Maintainability –Portability –Reusability –Scalability Develop an architecture evaluation framework based on scenarios which help to illuminate how to measure quality/sustainability at the architectural level Colin C. Venters, Lydia Lau, Michael K. Griffiths, Violeta Holmes, Rupert R. Ward, Jie Xu.

5 Sustainable Cyberinfrastructure Software Through Open Governance Draws a link between sustainable software and a community which supports it Software fulfills a community need Authors’ contention that ‘much of…open source principles have been inadequately applied or misapplied by the research community.” Also focus on “cyberinfrastructure software” –“Network accessible services that supports large scale distributed computing and scientific data management” –Ideal CI software includes mutually supporting contributions from three areas scientific collaboration, escience research, operations and support Under this approach sustainability comes from community support and governance Authors argue for open governance a la Apache Software Foundation as opposed to the benevolent dictator approach Apache provides a community of communities and much cross-pollination Also see to extend community-led open governance model to concept of ‘open operations’ Marlon Pierce, Suresh Marru, Chris Mattmann.

6 A Framework for Discussing e-Research Infrastructure Sustainability Focus on e-research infrastructure (aka cyberinfrastructure) Identify three dimensions that define the e-research infrastructure space –Temporal duration –Spatial extent (i.e. department, school, etc.) –Purpose of the infrastructure Creating not necessarily the challenge, path to sustainability not clear Clarifying the notion of sustainability –Provide same functionality going forward even if environment changes –Is functionality and usability clear –Will functionality be correct going into the future even if environment changes –Is the functionality desired by current and future users –Can it incorporate new things as they develop Models for creation of infrastructure –Open source –Closed partnership –For profit –Foundation/Government Models to Sustain –All of the above, plus –Open source with paid support Suggest an analysis of what models work best along which of the axes Daniel S. Katz, David Proctor.

7 Data Management Lifecycle and Software Lifecycle Management in the Context of Conducting Science Authors suggest there are distinct parallels between science data management life cycle and software life cycle Goals of data management are similar to software sustainability, e.g. discovery, use, re-use Data management life cycle connected to data quality In the context of science software and data are intimately connected Christopher Lenhardt, Stanley Ahalt, Brian Blanton, Laura Christopherson, Ray Idaszak.

8 Niche Modeling: Ecological Metaphors for Sustainable Software in Science Ask whether or not using the concept of ecology and ecosystems can be a useful metaphor as applied to sustainable software Using this approach allows us –to look at multiple pieces of software rather than on a single application –Consider the interaction as and interdependencies of components –Potentially better insight into the dynamics of introduction and extinction –Look at how software evolves and co-evolves –“Understanding collaborative bricolage and tinkering” Argue to focus on the software niche –Niche equates to the set of technical requirements, organizational conditions and culture that support maintenance and use Nicholas Weber, Andrea Thomer, Michael Twidale.

9 Comparison Across Papers Short TitleAuthorsSoftwareSustainabilityApproach to Understand or Evaluate Sustainability Sustainability and Quality (ISO & env sustain.) Calero, et al General notion of software. Not explicitly defined. Sustainability is linked to quality. Add to ISO Blind Men and Elephant Venters, et al Software as science software; increasingly complex; service- oriented computing Extensibility, interoperability, maintainability, portability, reusability, scalability, efficiency Use various architecture evaluation approaches to assess sustainability Governance ≈ Sustainability Pierce, et al Cyberinfrastructure software Sustainable to the extent to which there is a community to support it Open community governance E-Research Sustainability Framework Katz and Proctor E-research infrastructures (i.e. cyberinfrastructure) Persisting over time, meeting original needs and projected needs Equates models for the creation of software with sustaining software Data Management Life Cycle Lenhardt, et al Broadly defined as software supporting science Re-use; reproducible science Comparing data management life cycle to software development life cycle Niche Modeling / Ecological Metaphors Weber, et al Software broadly defined; a software ecosystem Software nichesEcological analysis and ecosystem

10 Some Common Themes Definitional Issues –What do we mean by software? Talk about a range of software Trying to unpack what sustainability means –Ties to what is the end goal (e.g. reproducible science, persistence, quality, etc.) Quality a key component related to sustainability Look at sustainability at key junctures, i.e. architecture, engineering, design Question of measuring success - sustainability / metrics


Download ppt "Modeling Software Sustainability W. Christopher Lenhardt RENCI – UNC, Chapel Hill, NC."

Similar presentations


Ads by Google