CODER Co-Design, Experimentation and Innovation with User Experiences


Ahmed Seffah, P.Eng., Ph.D, HDR

Professor of Human-centric Software Engineering,

Jari Porras, DSc.

Professor of Computer Science Lappeenranta University of Technology, Finland,




1. Living Lab description

CODER is an ICT-enabled living lab entirely dedicated to the innovation, development and validation of software systems, products and services with a human mind-set. The Lab’s philosophy and methodological approach are based on the original living lab concept proposed by Prof. William Mitchell (MIT Media Lab and School of Architecture and City Planning). It combines a physical smart environment that motivates open innovation, a cloud-based toolbox and equipment to develop and validate a wide range of user experience-centric software products, systems and services, as well as the large network of stakeholders and technology partners that provide the best business and technical competence and mentoring to the drivers of software technology innovation. 

The lab aims to be a place for effective and efficient engagement of a large pool of user communities and all stakeholders in all the stages of the software development and innovation lifecycle while supporting the five keys activities that are the essence of living labs:

1. User research (understanding who are the users and stakeholders)

2. Co-design/co-creation

3. Evaluation before the development and deployment

4. Open innovation

5. The alignment of these activities with the sustainability development challenges

The CODER living lab approach is dedicated specifically for understanding how software technology can support sustainability development to mainly educate, persuade and increase the awareness of citizen regarding for example environmental sustainability concerns. CODER is the place also for changing the human mind-set using software products, systems and services.

The CODER living lab enables researchers, industry developers and public institutions to explore the four dimensions of human and sustainability aspects in software products, systems and services:

• Technical. How sustainability and human aspects such as usability, trust and privacy can be integrated in software products, systems and services development? Sustainability and human aspects are considered here as a quality attributes of software and systems.

• Environmental: How to develop sustainable, yet usable and secure software systems, products and services? Like any product and systems, software should also be designed in way that it consumes less resources including energy, among others.

• Societal/cultural. How ICT and software systems can help to educate and make citizen more aware about their impacts on the environment. Software has the capacity to engage, persuade citizen, and change their mindset.

• Economical. How to ensure that the digital World, the software eco-systems, created by very large, multi-purpose software-intensive systems will endure (sustain)? Sustainability here is seen as the ultimate and most critical quality attribute of the biggest business eco-systems we have never created, the software-intensive eco-system.

The CODER is at the cross-roads of software development communities and approaches. It bridges the gaps between silos created by software engineering, computer science, management of information systems, design and service sciences. It offers a unique platform for innovation by design, design thinking and user research as a holistic approach for sustainable, yet secure and usable software-intensive systems. CODER lab is a unique place for investigating innovation from three perspectives of interaction between:

(1)       Users and stakeholders (Is the software system easy to use, accessible, yet secure for the widest population of users and stakeholders?),

(2)       Technology (What is the right technology to use and is the technology right?),

(3)       Business (Are software products, systems and services viable, sustainable and profitable?).


2. Projects

The lab is being used in various projects including for educational purposes. Examples of use includes:

• Erasmus+ PwDPhD (A platform and a program for training Ph.Ds in software engineering. CODER will be used for conducting user research by Ph.Ds from the 11 participating universities from Europe, Russia and Jordan

• Erasmus Mundus PERCCOM (The Erasmus Mundus Joint Master Degree (EMJMD) in Pervasive Computing and Communications for Sustainable Development (PERCCOM) aims at combining advanced Information and Communication Technologies (ICT) with environmental awareness to enable world-class education and unique competences for ICT professionals who can build cleaner, greener, more resource and energy efficient cyber-physical systems

• IDRIS (Interdisciplinary Design Research and Innovation for Software-Intensive Systems) where CODER is being use to address the following questions while building a common, intra-disciplinary notion of software design in living, its constituent parts and practices:

• How software design is or can be defined, and how is it is perceived by software engineers, end-users, stakeholders as well as by other related design communities?

• What are the major drawbacks of the design methods in the software engineering community, and how can design and design methods developed by other communities supplement and be integrated into the software engineering design toolbox?

• What kind of cross-pollination bridges can be developed over the current gaps between different software design approaches and communities

• Is there a common ground and a body of knowledge beyond the diversity of design methods and practices that exist today in the Cloud services?

• Usability/user experiences versus security in Cloud. The lab is used to answers questions how often usability quantities are in conflict with security attributes? What are the industry practices of developing, using and managing usable, yet secure access control and identity management services? How to capture and disseminate these practices to the benefits of the ICT development industry and their users from private corporations, public and governmental agencies?

• Digi-Users, a research platform being developed at LUT to study the massive digitalization phenomena and the emerging trends in the development and innovation of smart services including for energy consumption and environmental sustainability


3. Living Lab methods and tools

CODER as an open ICT-Enabled Living lab is usable and sustainable, yet accessible for everyone, from everywhere and at any time. The following are pillars that support the openness concept of CODER, “from anywhere, for everywhere and at any time” (See Figure):

• CODER is a Cloud Computing-Enabled Living Lab, which allows us to remotely record, store and retrieve all the data related to our user research experiments from any location. All data are stored in a central database and made available for researchers.

• CODER uses a business process modelling approach that support openness while allowing us to model and adapt easily the underlying methodology to our living lab. We have defined a generic business process and a platform for its automation using PBMN (business Process Modelling Notation). This allows us to accommodate the needs of a large range of partner and projects. 

• The lab uses also the concept of design patterns as a medium to capture and share the best practices of using living lab and conducting experiments that engage humans. Over years, we have developed a large catalog of patterns for making software products, systems and services usable, accessible, yet secure.

• The lab also supports the coordination of the development, user experience research and innovation processes concurrently. Openness at this level means that many interdependent activities need be coordinated to professionalize the co-creation and innovation in living lab. Coordinating product development and user-driven research with innovation brings the worlds of engineering and business closer together. CODER aims to be this platform for creating add-value.




Figure 1: CODER Living Lab and Platform

4. Your living lab or project in a box

CODER is a Cloud-based living lab designed to help understanding human aspects and sustainability in software products, systems and services. It creates a trusted software eco-system where software developers, end-users and a large business stakeholders can meet, co-create and test out innovative software products, services, and systems.