0000000000040377
AUTHOR
Kai-kristian Kemell
How Do Software Companies Deal with Artificial Intelligence Ethics? : A Gap Analysis
The public and academic discussion on Artificial Intelligence (AI) ethics is accelerating and the general public is becoming more aware AI ethics issues such as data privacy in these systems. To guide ethical development of AI systems, governmental and institutional actors, as well as companies, have drafted various guidelines for ethical AI. Though these guidelines are becoming increasingly common, they have been criticized for a lack of impact on industrial practice. There seems to be a gap between research and practice in the area, though its exact nature remains unknown. In this paper, we present a gap analysis of the current state of the art by comparing practices of 39 companies that …
Business Model Canvas Should Pay More Attention to the Software Startup Team
Business Model Canvas (BMC) is a tool widely used to describe startup business models. Despite the various business aspects described, BMC pays a little emphasis on team- related factors. The importance of team-related factors in software development has been acknowledged widely in literature. While not as extensively studied, the importance of teams in software startups is also known in both literature and among practitioners. In this paper, we propose potential changes to BMC to have the tool better reflect the importance of the team, especially in a software startup environment. Based on a literature review, we identify various components related to the team, which we then further suppor…
How to Write Ethical User Stories? : Impacts of the ECCOLA Method
AbstractArtificial Intelligence (AI) systems are increasing in significance within software services. Unfortunately, these systems are not flawless. Their faults, failures and other systemic issues have emphasized the urgency for consideration of ethical standards and practices in AI engineering. Despite the growing number of studies in AI ethics, comparatively little attention has been placed on how ethical issues can be mitigated in software engineering (SE) practice. Currently understanding is lacking regarding the provision of useful tools that can help companies transform high-level ethical guidelines for AI ethics into the actual workflow of developers. In this paper, we explore the i…
Internal Software Startups - A Multiple Case Study on Practices, Methods, and Success Factors
Startups are often seen as drivers of innovation. In an attempt to leverage this potential, larger business organizations have founded internal startups as a subset of internal corporate ventures (ICV). These smaller organizations are intended to be more agile than the parent organization, in order to produce new service and product innovations using their own methods and practices independently of the organizational culture and methods of the parent organization. However, our understanding of ICVs is still lacking in terms of processes and success factors, and especially the more recent internal startups have scarcely been studied thus far. To approach this novel area of research, we take …
Initial Coin Offering (ICO) as a Fundraising Strategy : A Multiple Case Study on Success Factors
Cryptocurrencies and Initial Coin Offerings (ICO) are some of the more prominent examples of currently used blockchain technology applications. Especially software startups have leveraged ICOs to gain funding early on in their lifecycles, going on to develop and create new blockchain based applications. Recently, larger companies such as Facebook have also begun to show interest in cryptocurrency, although thus far not for funding purposes in the form of ICOs. In this paper, we investigate factors that positively affect the abilities of companies to meet their fundraising goals via ICOs. We first identify a set of factors from extant literature and then seek to further confirm the effect of…
StartCards — A method for early-stage software startups
Publisher Copyright: © 2023 The Author(s) Context: Software startups are important drivers of economy on a global scale, and have become associated with innovation and high growth. However, the overwhelming majority of startups ends in failure. Many of these startup failures ultimately stem from software engineering issues, and requirements engineering (RE) ones in particular. Despite the emphasis placed on the importance of RE activities in the startup context, many startups continue to develop software without a clear market or customer, having never had meaningful contact with their would-be customer. Objective: We develop a method aimed at early-stage startups that is intended to help s…
COVID-19 Remote Work : Body Stress, Self-Efficacy, Teamwork, and Perceived Productivity of Knowledge Workers
Due to COVID-19, companies were forced to adopt new work processes, and reduce modern work environments such as collaboration spaces. Professionals from many fields were forced to work remotely, almost overnight. Little is known about the impact of such non-volunteer remote work on productivity, stress, and other key aspects of work performance. To further our understanding of the impacts of this situation and remote work in general, we conducted an exploratory study by studying 28 knowledge work professionals (researchers, software developers, interior designers, service designers, and development consultants) from the viewpoint of perceived productivity and aspects affecting it in this un…
Software Startup ESSENCE : How Should Software Startups Work?
Software startups need to work in a systematic fashion just like mature organizations. However, existing software engineering methods and practices are not aimed at software startups. They do not account for the business aspect of startups and may not be well suited for software startups in general. The Lean Startup Methodology on the other hand contains some useful practices for software startups but is nonetheless impractical, offering little in the way of telling you what to do. Software startups are thus required to tailor their own method. Currently, many software startups simply work ad hoc or use various Agile methods and practices. In terms of Agile methods and practices, little con…
Implementing AI Ethics in Practice: An Empirical Evaluation of the RESOLVEDD Strategy
As Artificial Intelligence (AI) systems exert a growing influence on society, real-life incidents begin to underline the importance of AI Ethics. Though calls for more ethical AI systems have been voiced by scholars and the general public alike, few empirical studies on the topic exist. Similarly, few tools and methods designed for implementing AI ethics into practice currently exist. To provide empirical data into this on-going discussion, we empirically evaluate an existing method from the field of business ethics, the RESOLVEDD strategy, in the context of ethical system development. We evaluated RESOLVEDD by means of a multiple case study of five student projects where its use was given …
The Current State of Industrial Practice in Artificial Intelligence Ethics
As Artificial Intelligence (AI) systems become increasingly widespread, we have begun to witness various failures highlighting issues in these systems. These incidents have sparked public discussion related to AI ethics and further accelerated the on-going academic discussion in the area. High-level guidelines and tools for managing AI ethics have been introduced to help industry organizations make more ethical AI systems, but we currently know little about the state of industrial practice. Have these guidelines been adopted by the software industry for developing AI solutions? Are these failures that make the news just the tip of the iceberg? We provide insights into the current state of p…
Technical Briefing: Hands-On Session on the Development of Trustworthy AI Software
Following various real-world incidents involving both purely digital and cyber-physical Artificial Intelligence (AI) systems, AI Ethics has become a prominent topic of discussion in both research and practice, accompanied by various calls for trustworthy AI systems. Failures are often costly, and many of them stem from issues that could have been avoided during development. For example, AI ethics issues, such as data privacy are currently highly topical. However, implementing AI ethics in practice remains a challenge for organizations. Various guidelines have been published to aid companies in doing so, but these have not seen widespread adoption and may feel impractical. In this technical …
A Tool-Based Approach for Essentializing Software Engineering Practices
Software Engineers work using highly diverse methods and practices, and general theories in software engineering are lacking. A recent attempt at creating a common ground in the area of software engineering methodologies has been the Essence Theory of Software Engineering. Essence is a method-agnostic progress management framework and a meta-method for Software Engineering (SE). However, tooling for Essence is still lacking. Without dedicated tools and other instruments, a meta-method such as Essence is cumbersome to utilize by practitioners and students. Indeed, Essence currently suffers from a lack of widespread practitioner adoption. In this paper, we thus present an Open Source tool for…
Startup Metrics That Tech Entrepreneurs Need to Know
Metrics can be used by firms to make more objective decisions based on data. Software startups in particular are characterized by the uncertain or even chaotic nature of the contexts in which they operate. Using data in the form of metrics can help software startups to make the right decisions amid uncertainty and limited resources. However, whereas conventional business metrics and software metrics have been studied in the past, metrics in the specific context of software startups have not been studied. In this chapter, we present the results of a multivocal literature review to offer you 118 metrics practitioner experts think software startups should measure. These metrics can give you id…
Exploring Virtual Reality as an Integrated Development Environment for Cyber-Physical Systems
Cyber Physical Systems (CPS) development approaches tend to start from the physical (hardware) perspective, and the software is the final element in the process. However, this approach is unfit for the more software-intensive world that is increasingly iterative, connected, and constantly online. Many constraints prevent the application of iterative, incremental, and agile development methodologies, which now are the norm for many other fields of software. Time-consuming system validation can only start when both hardware and software components are ready, which implies that the software delivery and quality is almost always the final bottleneck in the CPS development and integration. Also …
Software startup education: gamifying growth hacking
Startups seek to create highly scalable business models. For startups, growth is thus vital. Growth hacking is a marketing strategy advocated by various startup practitioner experts. It focuses on using low cost practices while utilizing existing platforms in creative ways to gain more users for the service. Though topics related to growth hacking such as marketing on a general level have been extensively studied in the past, growth hacking as a practitioner-born topic has not seen much interest among the academia. To both spark interest in growth hacking, and to facilitate teaching growth hacking in the academia, we present two board games intended to serve as an engaging introduction to g…
Implementing Ethics in AI: Initial Results of an Industrial Multiple Case Study
Artificial intelligence (AI) is becoming increasingly widespread in system development endeavors. As AI systems affect various stakeholders due to their unique nature, the growing influence of these systems calls for ethical considerations. Academic discussion and practical examples of autonomous system failures have highlighted the need for implementing ethics in software development. However, research on methods and tools for implementing ethics into AI system design and development in practice is still lacking. This paper begins to address this focal problem by providing elements needed for producing a baseline for ethics in AI based software development. We do so by means of an industri…
Technology acceptance of digital historical record database systems among historians
As information technology (IT) becomes increasingly prevalent in our society, academic research, too, makes increasingly extensive use of it. IT has influenced the work of historians in various ways. Especially the digitization of old historical records and the inception of born-digital records have changed the research practices of historians considerably. These digital records are uploaded into various information systems for public use, by historians among other users. This development has been studied mainly from the point of view of the digitization of old historical records, and primarily by historians and archival organizations. On the other hand, this topic remains largely unstudied…
Amidst Uncertainty–or Not? : Decision-Making in Early-Stage Software Startups
It is commonly claimed that the initial stages of any startup business are dominated by continuous, extended uncertainty, in an environment that has even been described as chaotic. Consequently, decisions are made in uncertain circumstances, so making the right decision is crucial to successful business. However, little currently exists in the way of empirical studies into this supposed uncertainty. In this paper, we study decision-making in early-stage software startups by means of a single, in-depth case study. Based on our data, we argue that software startups do not work in a chaotic environment, nor are they characterized by unique uncertainty unlike that experienced by other firms. pe…
The Startup Scratch Book – Opening the Black Box of Startup Education
Teaching entrepreneurship and startups is a challenging task. Approaches using real or simulated entrepreneurship as a teaching method are also common in startup education. However, as educators and researchers, we typically only observe the outcomes of the startup journey between weekly lectures and other meetings, whereas the actions taken by the student teams can seldom be observed. This makes the process a black box. All valuable learnings, realizations, and big ideas happen in the students’ minds, and little evidence exists to say what happened during the course. As a result, we are entirely missing out on the most critical elements of the learning process. To remedy this issue, we pro…
ECCOLA : a Method for Implementing Ethically Aligned AI Systems
Various recent Artificial Intelligence (AI) system failures, some of which have made the global headlines, have highlighted issues in these systems. These failures have resulted in calls for more ethical AI systems that better take into account their effects on various stakeholders. However, implementing AI ethics into practice is still an on-going challenge. High-level guidelines for doing so exist, devised by governments and private organizations alike, but lack practicality for developers. To address this issue, in this paper, we present a method for implementing AI ethics. The method, ECCOLA, has been iteratively developed using a cyclical action design research approach. The method aim…
ECCOLA : a method for implementing ethically aligned AI systems
Artificial Intelligence (AI) systems are becoming increasingly widespread and exert a growing influence on society at large. The growing impact of these systems has also highlighted potential issues that may arise from their utilization, such as data privacy issues, resulting in calls for ethical AI systems. Yet, how to develop ethical AI systems remains an important question in the area. How should the principles and values be converted into requirements for these systems, and what should developers and the organizations developing these systems do? To further bridge this gap in the area, in this paper, we present a method for implementing AI ethics: ECCOLA. Following a cyclical action res…
Utilizing User Stories to Bring AI Ethics into Practice in Software Engineering
AI ethics is a research area characterized by a prominent gap between research and practice. With most studies in the area being conceptual in nature or focused on technical ML (Machine Learning) solutions, the link between AI (Artificial Intelligence) ethics and SE (Software Engineering) practice remains thin. Establishing this link, we argue, is vital going forward. While conceptual discussion is required to define AI ethics, much progress has already been made in this regard. Similarly, though technical ML solutions are also required for practical implementation, ML systems are ultimately still software, and thus SE cannot be forgotten. In this paper, we propose one way of bringing AI et…
A Deployment Model to Extend Ethically Aligned AI Implementation Method ECCOLA
There is a struggle in Artificial intelligence (AI) ethics to gain ground in actionable methods and models to be utilized by practitioners while developing and implementing ethically sound AI systems. AI ethics is a vague concept without a consensus of definition or theoretical grounding and bearing little connection to practice. Practice involving primarily technical tasks like software development is not aptly equipped to process and decide upon ethical considerations. Efforts to create tools and guidelines to help people working with AI development have been concentrating almost solely on the technical aspects of AI. A few exceptions do apply, such as the ECCOIA method for creating ethic…
Gamifying the Escape from the Engineering Method Prison
Software Engineering is an engineering discipline but lacks a solid theoretical foundation. One effort in remedying this situation has been the SEMAT Essence specification. Essence consists of a language for modeling Software Engineering (SE) practices and methods and a kernel containing what its authors describe as being elements that are present in every software development project. In practice, it is a method agnostic project management tool for SE Projects. Using the language of the specification, Essence can be used to model any software development method or practice. Thus, the specification can potentially be applied to any software development context, making it a powerful tool. Ho…
The Essence Theory of Software Engineering – Large-Scale Classroom Experiences from 450+ Software Engineering BSc Students
Software Engineering as an industry is highly diverse in terms of development methods and practices. Practitioners employ a myriad of methods and tend to further tailor them by e.g. omitting some practices or rules. This diversity in development methods poses a challenge for software engineering education, creating a gap between education and industry. General theories such as the Essence Theory of Software Engineering can help bridge this gap by presenting software engineering students with higher-level frameworks upon which to build an understanding of software engineering methods and practical project work. In this paper, we study Essence in an educational setting to evaluate its usefuln…
Essencery - A Tool for Essentializing Software Engineering Practices
Software Engineering practitioners work using highly diverse methods and practices, and general theories in software engineering are lacking. One attempt at creating a common ground in the area of software engineering methodologies has been the Essence Theory of Software Engineering, which can be considered a method-agnostic project management tool for software engineering. Essence supports the use of any development practices and provides a framework for building a suitable method for any software engineering context. However, Essence presently suffers from low practitioner adoption that is partially considered to be caused by a lack of proper tooling. In this paper, we present Essencery, …
AI Ethics in Industry: A Research Framework
Artificial Intelligence (AI) systems exert a growing influence on our society. As they become more ubiquitous, their potential negative impacts also become evident through various real-world incidents. Following such early incidents, academic and public discussion on AI ethics has highlighted the need for implementing ethics in AI system development. However, little currently exists in the way of frameworks for understanding the practical implementation of AI ethics. In this paper, we discuss a research framework for implementing AI ethics in industrial settings. The framework presents a starting point for empirical studies into AI ethics but is still being developed further based on its pr…
Ethically Aligned Design: An empirical evaluation of the RESOLVEDD-strategy in Software and Systems development context
Use of artificial intelligence (AI) in human contexts calls for ethical considerations for the design and development of AI-based systems. However, little knowledge currently exists on how to provide useful and tangible tools that could help software developers and designers implement ethical considerations into practice. In this paper, we empirically evaluate a method that enables ethically aligned design in a decision-making process. Though this method, titled the RESOLVEDD-strategy, originates from the field of business ethics, it is being applied in other fields as well. We tested the RESOLVEDD-strategy in a multiple case study of five student projects where the use of ethical tools was…
Software Startup Practices -- Software Development in Startups through the Lens of the Essence Theory of Software Engineering
Software startups continue to be important drivers of economy globally. As the initial investment required to found a new software company becomes smaller and smaller resulting from technological advances such as cloud technology, increasing numbers of new software startups are born. Typically, the main argument for studying software startups is that they differ from mature software organizations in various ways, thus making the findings of many existing studies not directly applicable to them. How, exactly, software startups really differ from other types of software organizations as an on-going debate. In this paper, we seek to better understand how software startups differ from mature so…
Startup Metrics That Tech Entrepreneurs Need to Know
Metrics can be used by firms to make more objective decisions based on data. Software startups in particular are characterized by the uncertain or even chaotic nature of the contexts in which they operate. Using data in the form of metrics can help software startups to make the right decisions amid uncertainty and limited resources. However, whereas conventional business metrics and software metrics have been studied in the past, metrics in the specific context of software startups have not been studied. In this chapter, we present the results of a multivocal literature review to offer you 118 metrics practitioner experts think software startups should measure. These metrics can give you id…
“This is Just a Prototype”: How Ethics Are Ignored in Software Startup-Like Environments
Artificial Intelligence (AI) solutions are becoming increasingly common in software development endeavors, and consequently exert a growing societal influence as well. Due to their unique nature, AI based systems influence a wide range of stakeholders with or without their consent, and thus the development of these systems necessitates a higher degree of ethical consideration than is currently carried out in most cases. Various practical examples of AI failures have also highlighted this need. However, there is only limited research on methods and tools for implementing AI ethics in software development, and we currently have little knowledge of the state of practice. In this study, we expl…
Does Self-efficacy Matter? On the Correlation of Self-efficacy and Creativity in IT Education
Self-efficacy belief affects humans in life, action and work. Higher self-efficacy enables stronger contribution in fulfilling tasks, helping others in a team, and survive when facing obstacles and failures. Also creativity correlates to higher self-efficacy. At the same time, design is a powerful skill in note-making, improving the student’s understanding of the undergoing topic in a class. Note-making, when consisting of recorded writings, self-drawn images and other supportive subjects like structural analyses, charts, ad-hoc notes, detailed features and verbal links to related themes, forms a fundamental skill and ability in learning and applying new motifs and patterns. We executed dur…
The entrepreneurial logic of startup software development : A study of 40 software startups
Context: Software startups are an essential source of innovation and software-intensive products. The need to understand product development in startups and to provide relevant support are highlighted in software research. While state-of-the-art literature reveals how startups develop their software, the reasons why they adopt these activities are underexplored. Objective: This study investigates the tactics behind software engineering (SE) activities by analyzing key engineering events during startup journeys. We explore how entrepreneurial mindsets may be associated with SE knowledge areas and with each startup case. Method: Our theoretical foundation is based on causation and effectuatio…
Governance of Ethical and Trustworthy Al Systems: Research Gaps in the ECCOLA Method
Advances in machine learning (ML) technologies have greatly improved Artificial Intelligence (AI) systems. As a result, AI systems have become ubiquitous, with their application prevalent in virtually all sectors. However, AI systems have prompted ethical concerns, especially as their usage crosses boundaries in sensitive areas such as healthcare, transportation, and security. As a result, users are calling for better AI governance practices in ethical AI systems. Therefore, AI development methods are encouraged to foster these practices. This research analyzes the ECCOLA method for developing ethical and trustworthy AI systems to determine if it enables AI governance in development process…