Page - 138 - in The Future of Software Quality Assurance
Image of the Page - 138 -
Text of the Page - 138 -
138 I. Schieferdecker
Software companies were responsible for an average of 1.8% of total jobs in the
sevenEU countries in this study.”
By that, software leaves the pure technical system management and control
and serves today increasingly for decision support and decision control in socially
critical contexts. The questions that arise are which processes are necessary, how
to make the software comprehensible and who bears the responsibility. And how
can companies ensure the reliability, quality and security of software in these
increasinglycomplexenvironments?
Even further,notonly in the use, even in the productionanddistributionof soft-
ware, the expectations of customers are exhaustive. Hence, software development
is to go faster and faster, the product at the same time getting better and better.
Andthisexpectationisnotnecessarilyparadoxical.Inmanycases,DevOps’holistic
approachcanactually increaseboththespeedofdeliveryandthequality.Where the
word“deliver” in timesofcloudcomputingdoesnot reallycharacterize theprocess
anymore. After all, the customer no longer buys a product, but instead access to a
service.Even—andespecially—suchaservicewillonlybeacceptedifusers trust it.
Important elements in establishing trust are so-called testbeds for field exper-
iments and experimental environments for co-innovation. Traceability and trans-
parency should be part of software development. Because the complexity of
software-based systems continues to grow, and because data retention and use is
oftendifficult tounderstand, trust in software is still oftenfragile.Hence,principles
ofanti-fragility in softwarehave tobeadded,whichaddfault resilienceandrobust-
ness at run time [2]. Also, the traceability of goals, features and responsibilities
needtobecomepartofanysoftwareengineeringanddocumentation.Whythis is so
important is explained in this quote from computer scientist Joseph Weizenbaum:
“Acomputerwilldowhatyoutell it todo,but thatmaybemuchdifferentfromwhat
you had in mind”. And although methods and tools for high-quality, reliable and
securesoftwaredevelopmentareavailable in largenumbers, theyare tobeextended
toaddress runtimefaultsaswell [3].
The chapter starts with a general consideration of software and current pressing
issues. This is followed by a review of the current understanding of ethical
principles in software engineering and draws conclusions towards responsible
softwareengineering.A summaryandoutlookcomplete thechapter.
2 Software andRecent Software QualityRequirements
Software is basically a set of instructions that tells a computer, embedded control
systems or a (micro-)processor what to do and how to do it. Software is not just a
programmingcodeonfirmware,operatingsystem,middlewareorapplication level.
Italsoconsistsofdata thatrepresentthecontentmanagedbytheprogramsaswellas
data that train or steer the programs [4]. In addition, it encompassesmeta-data that
represent informationanddocumentationof thesoftware [5].Accordingto ISO[6],
software is a “fundamental term for all or part of the programs, procedures, rules,
back to the
book The Future of Software Quality Assurance"
The Future of Software Quality Assurance
- Title
- The Future of Software Quality Assurance
- Author
- Stephan Goericke
- Publisher
- Springer Nature Switzerland AG
- Location
- Cham
- Date
- 2020
- Language
- English
- License
- CC BY 4.0
- ISBN
- 978-3-030-29509-7
- Size
- 15.5 x 24.1 cm
- Pages
- 276
- Category
- Informatik