Talk at ICSE 2017 in the Software Engineering in Society track. The original research article is available at https://www.researchgate.net/publication/314238871_Preparing_Research_Projects_for_Sustainable_Software_Engineering_in_Society
Abstract:
With the pervasive need for digitization in modern information society, publicly funded research projects increasingly focus on engineering digital approaches to manage societal processes. Such projects inherently face the challenge of establishing a sustainable software engineering culture. A major challenge thereby is that project consortia need to establish a distributed developer community that effectively and resource-efficiently aligns development efforts with the goals and needs of complex societal constellations beyond project lifetime. In this paper we extract empirical evidence from longitudinal studies in two large-scale research projects to outline typical challenges in such problem contexts and to develop an open source software engineering methodology for research projects, including supportive infrastructure and social instruments of community building and awareness. We thus contribute a comprehensive strategy preparing collaborative research projects for sustainable societal software engineering.
Effective learning in the Age of Hybrid Work - Agile Saturday Tallinn 2024
Preparing Research Projects for Sustainable Software Engineering in Society
1. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
1
Learning
Layers
This slide deck is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Preparing Research Projects for
Sustainable Software Engineering
in Society
Dominik Renzel, István Koren,
Ralf Klamma, Matthias Jarke
Advanced Community Information Systems (ACIS)
RWTH Aachen University, Germany
koren@dbis.rwth-aachen.de
39th International Conference on Software Engineering
May 24, 2017
Buenos Aires, Argentina
2. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
2
Learning
Layers
Agenda
■ Motivation
■ Related Work
■ Empirical Contexts
■ Challenges
■ DevOpsUse
■ Lessons Learned
■ Conclusion
3. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
3
Learning
Layers
Sustainable Projects for
Sustainable Society
Most public research funding aims at
sustainable solutions for societal
processes.
But most project results are not
managed in a way that assists their
own sustainability.
We present a methodology and tool
support to change that.
■ EU FP7 (2007-2013) „benefitting society“
■ EU Horizon 2020 (2014-2020) „tackling
societal challenges“
■ Must be clearly addressed during project
lifetime
■ Lack of methodology and tool support for
distributed teams [Chitchyan et al. 2016]
■ Minimal viable product, open source,
licensing, …
■ Startup, business plan, patenting, ...
4. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
4
Learning
Layers
Related Work
■ Research project context has gained interest in the
last years [Carver 2009]
■ Inherently different characteristics compared to
commercial IT projects [Carver et al. 2007]
– Goals
– Nature of delivered artifacts
– Internal processes
■ „Once-only projects“ expose risk of failing [Huijgens et al. 2014]
■ Need for supporting methodologies and
infrastructures [Ebrahim et al. 2017]
5. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
5
Learning
Layers
Empirical Contexts of Large-Scale
European Research Projects
2009 – 2013, 8.5M Euros
16 partners from Europe and China
Personal Learning Environments
ROLE SDK: Widget-based platform
2012 – 2016, 13M Euros
18 partners from Europe
Modular and flexible technological
layers to support informal learning
Layers Box: Cloud-based deployment
environment with OpenID Connect
6. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
6
Learning
Layers
Software Engineering Challenges in
Large-Scale Research Projects
Early
Decisions
Short Cycles
Sustained
Impact
Distributed
Community
Support
Infrastructure
Licensing
Stakeholder
Engagement
Baseline
Unknown
Territory
Success
Awareness
Decision
Making
7. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
7
Learning
Layers
DevOps and End Users – DevOpsUse
where software
is deployed
conflicts with
traditional process
security and
privacy issues
conflicts with traditional
formative and summative
evaluation in research
lack of experience
lack of tool
support risk of
control loss
Learning
Layers
Learning
Layers
Learning
Layers
Learning
Layers
Learning
Layers
8. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
8
Learning
Layers
Operationalizing DevOpsUse in
Research Project Collaborations
• Developer Taskforce for short-term development issues
• Architecture Board for long-term strategical decisions
Social DevOpsUse Instruments
• Automated collection of usage data
• Awareness on quality and impact
Monitoring and Analysis
• Co-design teams
• Demo sessions & hackathons
External Involvement
10. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
10
Learning
Layers
Social Requirements Engineering
with Requirements Bazaar
■ Traditional RE unsustainable for large-scale research
■ End users conceive issue trackers as intimidating
■ Social Requirements Engineering (SRE) for
requirements negotiation among non-technical end
users and professional developers [Renzel et al. 2013]
à https://requirements-bazaar.org
– Discussion and negotation between stakeholders
– Export to issue tracker
– Keep users aware of development progress
11. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
11
Learning
Layers
Lessons Learned
People
• Give voice to stakeholders
• Trace changes of requirements and priorities
Open Source
Development
• Clarify licensing
• Reach out to OSS communities as integral part of project
dissemination
Automation &
Integration
• Regression test and do automated builds
• Take care of compatibility of tools
Awareness
• Create and sustain awareness of software engineering activities
• Introduce tools for monitoring and analytics
Time
• Start early with providing the development infrastructure
• Use widely used and well-established, industry-strength products
12. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
12
Learning
Layers
Conclusion
■ Research gap of methodologies and technical infrastructures
for sustainable software engineering in research projects
■ Challenges identified in two large-scale empirical contexts
■ DevOpsUse methodology with strong focus on end user
inclusion and awareness
■ Limitations
– Findings project-dependent
– Any software engineering methodology evolves in parallel with
artifacts it produces
13. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
13
Learning
Layers
Outlook
■ Socio-technical systems and development methods
need to be embedded in sustainability strategies for
societal impact
■ Strategies needed beyond funded research projects
■ Adopt end user integration and co-design beyond
software engineering
– Embedding co-design in existing tools
– Requirements Bazaar as societal innovation platform
14. Lehrstuhl Informatik 5
(Information Systems)
Prof. Dr. M. Jarke
14
Learning
Layers
References
[Carver et al. 2007] J. C. Carver, R. P. Kendall, S. E. Squires, and D. E. Post, “Software Development
Environments for Scientific and Engineering Software: A Series of Case Studies,” in Proceedings of the
29th International Conference on Software Engineering. IEEE Computer Society, 2007, pp. 550–559.
[Carver 2009] J. C. Carver, “First International Workshop on Software Engineering for Computational
Science & Engineering,” Computing in Science & Engineering, vol. 11, no. 2, pp. 7–11, 2009.
[Chitchyan et al. 2016] R. Chitchyan, C. Becker, S. Betz, L. Duboc, B. Penzenstadler, N. Seyff, and C. C.
Venters, “Sustainability Design in Requirements Engineering: State of Practice,” in Proceedings of the
38th International Conference on Software Engineering Companion. New York, NY, USA: ACM, 2016, pp.
533–542.
[Ebrahim et al. 2017] N. A. Ebrahim, S. Ahmed, and Z. Taha, “Establishing Virtual R&D Teams: Obliged
Policy. CoRR, abs/1208.0994,” 2012. [Online]. Available: http://arxiv.org/abs/1208.0944 (last access: Feb
2017).
[Huijgens et al. 2014] H.Huijgens,R.vanSolingen,andA.vanDeursen,“Howtobuildagood practice software
project portfolio?” in 36th International Conference on Software Engineering, ICSE ’14, Companion
Proceedings, P. Jalote, L. Briand, and A. van der Hoek, Eds. ACM, 2014, pp. 64–73.
[Renzel et al. 2013] D. Renzel, M. Behrendt, R. Klamma, and M. Jarke, “Requirements Bazaar: Social
Requirements Engineering for Community-Driven In- novation,” in 2013 21st IEEE International
Requirements Engineering Conference (RE) Proceedings. Los Alamitos, CA, USA: IEEE Com- puter
Society, 2013, pp. 326–327.