Keywords

1 Introduction

1.1 Computer Ethics and Social Impact

The use of computers has become ubiquitous and spread out to every part of our personal lives and businesses. The deployment of computers and the associated data communications technologies and data storage devices have had an immense social impact. The exploitation of these technologies has changed the environment in which computers are used. It has changed the landscape, and the functioning, of the economy, health, education, industry, agriculture, the arts, and many other spheres of human activity. In doing so, the development and deployment of computers, has given rise to questions of right and wrong.

Moor [1] defined Computer Ethics as: “…. The analysis of the nature and the social impact of computer technology and the corresponding formulation and justification of policies for the ethical use of such technology”. The computer ethicist uses the phrase computer technology to take the subject matter of the field broadly to encompass computers and associated technology: including concerns about software as well as hardware and concerns about networks connecting computers as well as computers themselves.

Johnson [2] defines the study of computer ethics as: “…. The study of the ethical questions that arise as a consequence of the development and deployment of computers and computing technologies. It involves two activities. One is identifying and bringing into focus the issues and problems that fall within its scope, raising awareness of the ethical dimension of a particular situation. The second is providing an approach to these issues, a means of advancing our understanding of, and suggesting ways of reaching wise solutions to these problems”.

Thus, the social impact of computers must be analysed. Through this process, justifiable policies can be developed to allow for ethical development and deployment of systems, technologies and software that are socially beneficial. A study of computer ethics can permit the identification of the dilemma, choices and standards faced by computing professionals.

1.2 SPI

Software Process Improvement (SPI) is a methodology comprising of a sequence of tasks, tools, and techniques. These can be utilised to plan and implement improvement activities to achieve specific goals, for example, increasing development speed, achieving higher product quality or reducing costs. SPI allows inefficiencies in the software development lifecycle to be detected and resolved. This is achieved through process re-engineering/change management project where the process should be mapped and aligned with organizational goals and change drivers to have real value to the organization [3].

1.3 Manifesto

Munro [4] defines a manifesto as “a document publicly declaring the position or program of its issuer”. This declaration advances a “set of ideas, opinions, or views, but it can also lay out a plan of action”. Munro argues that generally manifestos concern art, literature, or politics, authored in the name of a group sharing a common perspective, ideology, or purpose. In software engineering, the Agile Manifesto [5] and the Software Process Improvement (SPI) Manifesto [6] both developed by groups of academics and practitioners, aimed to improve the software produced, through improving the process, the attitudes of software engineers, and the organisational culture and practices.

The argument postulated in this paper is that we, as SPI professionals, need to, in addition to fulfilling duties to the Organisation, Business, Employees who participate in SPI, People who will be most affected, broaden our obligations to the wider society. The impact of developed and deployed software systems is often beyond the organisation and affects the daily lives and activities of citizens in society. Currently, the SPI manifesto comprises of three values: 1) must involve people actively and affect their daily activities; 2) is what you do to make business successful; and 3) is inherently linked with change. The corresponding ten principles that are fleshed out, based on these three values, serve as foundations for action. This paper argues for the inclusion of a fourth value titled Society, along with six corresponding principles. In doing so, the revised SPI manifesto would explicitly espouse the notion of serving the public interest. It will likely help SPI professionals to remember that working in the public interest is also important in and for Software Process Improvement, thus, making the duty to society clear and explicit.

In Sect. 2 of this paper, we will present a selection of software engineering manifestos, including the SPI and Agile. In Sect. 3 the authors make the case for computing and software engineers to have at the core of their daily practice the idea of serving the public interest, i.e., their duty to Society. Alongside this argument is a presentation of six traditional moral and ethical concepts. These will become the six Principles that constitute the Society value that is being proposed, in this paper, for the SPI manifesto. In Sect. 4, the Society value is introduced. The context and problem, an explanation and hints and examples for the value are presented. The six principles for the Society value are also explained.

2 Software Engineering Manifestos

2.1 Agile Manifesto

In February 2001, seventeen people (representatives from Extreme Programming, SCRUM, DSDM, Adaptive Software Development, Crystal, Feature-Driven Development, Pragmatic Programming, and others, i.e., the Agile Alliance) met in Utah, U.S. to discuss the future of software development. What emerged was the Agile “Software Development” Manifesto.

Highsmith [7] states that the aim of the Agile manifesto is to uncover better ways of developing software by doing it and helping others do it. The manifesto makes four core statements on value: 1. Individuals and interactions over processes and tools; 2. Working software over comprehensive documentation; 3. Customer collaboration over contract negotiation; and 4. Responding to change over following a plan. Following on from the four statements on value are twelve Principles that constitute the Agile Manifesto [5].

2.2 SPI Manifesto

In September 2009, Software Process Improvement (SPI) professionals convened at a EuroSPI Conference hosted by the Universidad de Alcalá, Spain. Attending a workshop, the SPI experts shared their expertise and wisdom from their many years of process improvement experience. Guided by Jan Pries-Heje and Jorn Johansen, workshop participants brainstormed core values and principles, specifically focused on process improvement, that led to the SPI manifesto being developed.

The Software Process Improvement (SPI) Manifesto is centred on three basic values: people, business focus and organisational change underpinning the philosophy of SPI. In turn, these values bring up to date certain SPI principles serving as a foundation for action in software development. Three values and ten principles, constitute an expression to state-of-the-art knowledge on SPI. To better facilitate the necessary corresponding change in an organisation, these stated values and principles must be embraced in the planning of a SPI project [8,9,10,11,12].

Fig. 1.
figure 1

Three values and ten principles of the SPI Manifesto (Change, 2010).

2.3 Commonalities of the Agile and SPI Manifestos

Georgiadou et al. [13] presents a comparison of the Agile and SPI manifestos, studying the similarities and differences of the two, concluding that the focus of both manifestos has been in standardising knowledge and experience borrowing from guiding principles and values that can bring about reforms and improvements to a current state of practice.

Both the SPI and Agile manifestos declare values and principles that refer to multiple participants and stakeholders in the software engineering process. There are references to Customers, Businesspeople, Developers, the Organisation, Business, and People who will be most affected. Strikingly, what is absent from both manifestos is the allusion to Society and its citizens. Declarations on an obligation and duty to develop software that is alongside beneficial for a wider audience is absent. The following section states the case for computer professionals to not only have respect for working in the public interest but to have their daily professional lives be guided by such notions.

3 Societal Values

3.1 Influences on Society from Computers, ICTs and SPI Implementations

Information and Communication Technologies (ICTs) are not socially neutral; they affect and are affected by society. Computers and ICTs have changed the way people relate to one another and their living environment, as well as how humans organise their work, their communities, and their time. Professionals in any field, such as business, medicine, engineering etc. have in recent years drastically changed their working habits and working patterns due to the use of computers and ICTs in their daily work. Decision making has improved since large amounts of information required to take a decision is provided in the form required by the computer in seconds. Management becomes less dependent on low level staff, which improves efficiency and benefits the organisation and ultimately affects the society positively. In common life services at airports, hospitals, banks, departmental stores are increasingly computerised for improved and personalised service. New fields of employment have been created in the field of designing, manufacturing, teaching etc. The negative impact of computers and ICTs on the society relate to privacy, safety, and security issues as well as dependency and access difficulties for older and disabled people who may not be digitally literate. Computer and internet addiction is expressed by persistent excessive or compulsive use of computers, smart phones, and the internet, despite potential serious negative consequences. Also, cyber bullying through diverse social networking sites is increasingly happening to harass, threaten or intimidate someone [14].

ISO 26000:2010 is increasingly viewed as a way of assessing the commitment of an organisation to society, environment, and sustainable development, as well as its overall performance. Söderberg et al. [15] claim that ISO 26000:2010 deals with “responsibility of an organization for the impacts of its decisions and activities on society and the environment, through transparent and ethical behaviour that

  • contributes to sustainable development, including health and the welfare of society;

  • takes into account the expectations of stakeholders;

  • is in compliance with applicable law and consistent with international norms of behaviour;

  • is integrated throughout the organisation and practised in its relationships”.

Similarly, Messnarz et al. [10] claim that social responsibility aspects support the success of SPI by describing the core subjects an organisation should consider when implementing social responsibility according to ISO26000:2010. They argue that values and principles of the SPI Manifesto have a relationship with the social responsibility issues described in the ISO 26000 and illustrate the steps taken in an industry group to exchange best practices about how social strategies can be used to achieve higher acceptance and sustainability of SPI initiative.

Hence, we understand that a SPI professional needs to be aware of new technology trends and their impact on society, including basic awareness of legal responsibilities, ethical obligations, and professional conduct. Issues relating to sustainable development, health, and safety in the workplace of an information society are particularly critical issues that need to be taken into consideration. A SPI professional needs to commit to some main elements of ethical behaviour, such as integrity, competence, professional responsibility, work responsibility and societal responsibility by maintaining technical competence, avoiding injury to others, their property, reputation, or employment as well as rejecting bribes, kickbacks, etc. With increased use of contemporary approaches of ICTs and the internet, new cyber privacy, security, and safety threats are occurring for businesses, civic institutions, and the whole society. Today the Industry 4.0 approach increasingly uses a complex network of cyber-physical systems, including Internet of Things (IOT), Industrial Internet of Things (IIOT), digital twins etc. Technology not only transforms business, but it also transforms society and presents new challenges and raises new questions.

3.2 Duty of SPI Professionals to Society

Loui and Miller [16] argue that computing professionals have ethical obligations to clients, employers, other professionals, and the public, in fulfilling their professional duties. These obligations are stated in codes of ethics, which can be used to help arrive at ethical decisions. They conclude that with regards to these obligations to different stakeholders, the most important duty is to ensure the safety, health, and welfare of the public, i.e., society.

For individuals, concerned with the matter of designing, developing, and deploying technology, to become more responsible computer professionals it is of paramount importance that they are consciously aware of their duty, to amongst other things, Society. The British Computer Society (BCS), The Chartered Institute of IT) state that their code of conduct must be abided by all members because it defines the characteristics that are shared by all, as practitioners serious about building a responsible computing profession [17]. But more importantly, by heeding to the code, members demonstrate their commitment to working in the public interest.

The Association for Computing Machinery (ACM) Code of Ethics and Professional Conduct expresses “the conscience of the profession” [18]. At the very heart of the code is the notion that computing professionals must understand, and be driven by, the principle that the public good is the paramount consideration. The Institute of Electrical and Electronics Engineers (IEEE) Code of Ethics recognises the importance of how technologies affect the quality of life throughout the world [19]. This technical professional organisation acknowledges that the safety, health, and welfare of the public is of paramount importance.

Therefore, at the very core of these codes is the saliency of public interest, i.e., the duty to society. This overrides the personal obligation to the profession, its members, clients and other stakeholders.

3.3 The US Content Subcommittee of the Impact CS Steering Committee

At the inaugural ETHICOMP conference in 1995, delegates considered computer ethics, conceived broadly, to include philosophical, professional, and practical aspects of the field. At this conference the US Content Subcommittee of the Impact CS Steering Committee stated the importance in individuals becoming responsible computer professionals that were knowingly aware of their wider societal duties in their everyday practice. To expedite this, six traditional moral and ethical concepts were advocated, namely Quality of Life, Use of Power, Risks and Reliability, Property Rights, Privacy and Equity and Access [20].

Table 1 below presents a summary for each these of traditional and moral concepts in terms of personal and professional responsibility.

Table 1. Traditional moral and ethical concepts suggested by the US content subcommittee of the impact CS steering committee

These six traditional moral and ethical concepts can possibly serve as the six Principles that support the Society value that is advocated in the Sect. 4, below.

4 Revised SPI Manifesto

4.1 Introducing the Fourth Value: Society

The SPI Manifesto states that a “value is something that deserves to be held up because of its importance or worth” [6]. In addition to People, Business focus and Organisational change, which are the current core values to be prioritised in SPI, this paper advocates the introduction of a fourth value: Society. The case for computing and software engineers to have at the core of their daily practice the idea of serving the public interest, i.e., their duty to Society was made in Sect. 3. For this proposed fourth value the context and problem, an explanation, hints and examples for the value are presented, as follows.

Context and Problem

The SPI activities that improve the way of creating and implementing software must consider not only those people who will be most affected, such as customers, software engineers and other staff within an organisation. It must also, cast its net wider to encompass all citizens in society. SPI professionals must be aware of their moral duty to public interest and obligation to society.

Value Explained

The process should not only bring value, competitiveness, to the business but must also bring value to a wider audience, i.e., Society. To have success with SPI we must ensure that the improvement recommendations for business are concurrently paired with the benefits that can be provided to citizens in wider society. The words and actions should communicate the unity of the two – not the decoupling.

Hints and Examples

Design values are principles or beliefs that are espoused by system and software designers to direct their work. Human Values in the Design of Information Systems and Technology, commonly referred to as Values in Design (VID), is an effort, in traditional requirements engineering, demanding that individual and social values are considered, and are as equally important inputs to the technology design process [21]. For example, Privacy by Design is the practice of embedding information privacy in the design of technology. In essence, it is an obligation to integrate or ‘bake in’ data protection into processing activities, business practices, including software development, from the design stage right through the lifecycle [22].

Figure 2 shows a revised SPI Manifesto, which introduces Society as a fourth value.

Fig. 2.
figure 2

Introduction of a fourth value to a revised SPI manifesto

4.2 The Six Principles Under the Society Value

In the current SPI Manifesto the three values are further elaborated into ten principles. The manifesto states: “A principle is something that can serve as a foundation for action. You can use the ten principles to govern your personal behaviour in relation to Software Process Improvement work” [6].

The six traditional moral and ethical concepts advocated in Huff et al. [20], presented in Table 1, above, are used as proposed principles. Thus, the Society value has the half dozen principles as consequence, see Fig. 3. Table 1 presented a summary for each of these proposed principles. The summaries in Table 1 are the basis for explanations of each principle in terms of personal and professional responsibility.

Fig. 3.
figure 3

The six principles for the society value of the revised SPI manifesto

For the six proposed principles highlighted in Fig. 3 the authors provide the following explanation for each.

Principle 1. Ensure That All Technology Improves the Quality of Life for all Users

When implementing SPI, it is crucial to consider the concept of Quality of Life (QoL). Tasks, techniques, and tools can be used to plan and implement improvement activities so that specific goals, for example, increasing development speed, achieving higher product quality, or reducing costs can be achieved. But do these goals come at a cost to the QoL for the users at a societal level?

For example, are these goals at the cost of developing technology and reengineering processes that compensates users with impairments or enhances Green IT? Theodosi and Siakas [23] argue that the move towards Green IT is achieved by applying a conscious “green” approach to all activities in the organisation, but also with the use of “green” products and services. The approach of Green IT aims to provide improved Quality of Life both for the organisation and the society. QoL demands that these issues do not go unconsidered in both development and implementation of SPI solutions.

Principle 2. Respect the Use of Power by Safeguarding Solutions from Demarcating the Powerful and the Less Powerful

As SPI professionals, and software engineers, it is important to ask yourself whether you are blinded from viewing the full spectrum, i.e., the problem is not always in the code on the screen that is in front of you. The problem could be the requirement itself or the description of it, which itself is imbued with the expectations, including norms and values of the user/client. Remember that each line of code authored is an exercise in power. It is more than syntax and semantics. Values are being encoded. SPI Professionals need to visualize the entire process and think of the person using their system and those, in a wider context, that are affected by its deployment. As a result of the SPI solution there may well be those that become more, or less powerful.

We are told that when implementing SPI, it is crucial to take the organisational culture into consideration to gain commitment and avoid resistance. Nowadays, in Global Software Development (GSD) the life cycle activities in systems development are increasingly dispersed among virtual distributed teams and team members across different locations, with different national, organizational, and professional cultures [24]. Also, customers are globally dispersed and sometime even out of organizational reach. There are several challenges and risks involved in GSD environments that include cultural and communication issues (time zone difference, different cultural impediments, lack of informal communication, etc.), strategic issues (incompatible processes, problem in task allocation and follow-up), technical issues (incompatibility of Information and Communication Technologies (ICTs), and knowledge management (poor knowledge sharing, documentation etc.).

But what if the organisational culture is one that is not aligned with wider societal culture, expectations, and ethics? Such questions must not go unconsidered in both the development and implementation of SPI solutions.

Principle 3. To Acknowledge That All Technology Comes with Inherent Risks and Reliability Issues

Application of risk management is vital in any project, and SPI is no different. Tsiara and Siakas [25] argue that the objective of risk management is to identify potential problems before they occur and to plan and carry out risk-handling activities to mitigate potential risks. Risk management is a continuous, forward-looking process that must be an integral part of day-to-day business activities and processes. Risk management should address issues that could endanger achievement of critical objectives. A continuous risk management approach is applied to effectively anticipate and mitigate the risks that have critical impact on the project. The current SPI manifesto advocates the deployment of project management standards that help in identifying, evaluating, and effectively mitigating the risks of SPI projects.

The software engineer must remember that there is no such a thing as perfect software and must concede the inevitable risks associated with the product. This may well lead to trade-offs in the design and implementation of solutions. But the SPI professional must carefully consider possible mitigations and contingencies to be in place to deal with the fallout of risks encountered not only by the business, client and end users but also in a wider context to those who are affected by the reliability issues of the product/solution.

Principle 4. Have a Respect for Property Rights and Fair Use Provision

In the first instance the SPI professional must honour property rights, protect the integrity of intellectual property, including copyrights, patent trade secrets and the terms of license agreements. Also, copies of software should be made only with proper authorisation. In their daily work they must offer proper credit for intellectual property, even in cases where the work has not been explicitly protected by copyright, patent, etc.

Zompras and Siakas [26] argue that Social Responsibility (SR) concerns the way in which organizations achieve their goals regarding property rights and fair use of provision. Social Responsibility, as defined by ISO 26000, is “the responsibility of an organisation for the impacts of its decisions and activities on society and the environment through transparent and ethical behaviour that contributes to sustainable development, including health and the welfare of the society”. The fundamental characteristics of SR are the willingness of an organisation to incorporate social and environmental considerations in its decision making and to be accountable for the impacts on society and the environment. As stakeholders demand information and transparency from companies, it is imperative for companies to report their environmental, economic, and social impact on the community and society.

Thus, in parallel to the above the SPI professional must also be aware of the balance between the intellectual property interests of authors, publishers, and copyright owners and with society’s need for the free exchange of ideas. Typically, copyright legislations declare fair dealing exceptions to infringement, i.e., fair use provisions that recognise the debate between the protection and relaxation of intellectual property rights. Ultimately, the SPI professional must exercise judgment based on the acknowledgement of the existence of this moral debate.

Principle 5. Ensure the Right to Privacy Is Respected for All Citizens

Privacy in the real and online world is a fundamental basic human right. The SPI professional needs to respect the right of all participants in the SPI to this entitlement but also to ensure that those that are affected by the systems, developed by SPI, in wider society, also have the right to exercise this freedom. In designing and developing SPI, the professional must deploy this human right as a design value, integrating it into all facets of the SPI design and implementation.

The ISO 26000:2010 standard also takes up consumer data protection and privacy [26]. Data privacy concerns the right of a person to determine when, how, and to what extent personal information can be shared with or communicated to others. This personal information can be the name, location, contact information, or online or real-world behaviour.

Principle 6. To Ensure Equity and Access for All Citizens to Technology

The SPI professional needs to consider the extent to which the SPI deployment can possibly divide, the direct users and indirectly those affected by the solution, into those who have access to the use/benefit/exploitation of the technology and those who are denied. There may be numerous factors that have a bearing on the access of users to technology such as: Health and disability, Age, Gender, Class, Race, Educational Achievement, Socio-Economic group, etc. [27].

The SPI professional, in the decisions on design and implementation of the SPI solution, must ground these within the context of equity and access in the Business, and in wider current society.

5 Conclusions

In this paper, the authors have argued that many computing and software engineering societies acknowledge that computing and software engineering professionals have ethical obligations to clients, employers, other professionals, and the public, in fulfilling their professional duties. They conclude that with regards to these obligations to different stakeholders most important duty is to ensure the safety, health, and welfare of the public, i.e., society. This explicit stance is not well defined and strongly avowed in either the Agile or SPI manifestos. Thus, the proposal of a fourth value to be introduced in the SPI manifesto is argued for.

In recent years published papers presented at European System, Software & Service Process Improvement and Innovation (EuroSPI) conferences have dealt with the issue of SPI and ethics [28,29,30]. These papers have referenced the SPI Manifesto, but it is evident that mapping the work presented in these papers, explicitly to a specific value or principle is difficult. Thus, the idea proposed of introducing a new Society value and corresponding set of six principles, should make the mapping of these papers, and more importantly future research and practice, on Ethics and Professionalism far easier.

The six principles that have been proposed need to be evaluated by experts in Software Process Improvement (SPI) from all over the world. It is important that they, using their extensive knowledge and experience, look at each principle in turn and work in editing the respective explanations, and last, but not least, offer examples illustrating or applying the principle.

A tailor will meet their client to stitch a bespoke suit. By analogy a SPI professional, building software and reengineering processes, will need to not only meet but know their client on an intimate level so that a bespoke solution can be delivered. But also note that the SPI professional concurrently needs to know their societal duties because then, and only then, can they tailor a product that is needed in a wider context, a solution that fits the requirements of people in wider society that may be affected by the deployment of the SPI solution. An SPI professional needs to understand the impact of the solutions to wider society and not what they think it should be!