Anas Dakkak

dblp:249/2412 · DBLP profile ↗
← Back
14ranked-venue papers
11as first author
12since 2021 · last 2025
0000-0002-3308-6037ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 14 · 11 first-author · 12 since 2021Applied, interdisciplinary, general and emerging computing · 8 · 8 first-author · 8 since 2021
YearPublicationVenuePosition
2025 What Makes Customers Reluctant to Deploy Frequent Software Releases? A Case Study from the Telecommunications Domain
Anas Dakkak, Piero Daniele, Caroline Muzikants, Fredric Ryttegård
SEAA (2)1
2024 Towards Continuous Deployment at Scale in Software-Intensive Embedded Systems: A Maturity Model from the Telecommunications Domain
abstract
Continuous deployment aims to reduce the deployment cycle of new software, enabling software development companies to deliver new and improved functionalities to customers faster and more frequently. In software-intensive embedded systems, continuous deployment is often introduced as a subsequent step to continuous integration. While several empirical studies explored the transition from continuous integration to continuous deployment from several aspects, such as challenges, benefits, and success factors, these studies remain limited as they focus on applying continuous deployment to a small subset of the entire customer base. However, as software-intensive embedded systems are often high-volume products used and operated by many different customers, scaling continuous deployment becomes important to ensure that all customers perceive its benefits while at the same time enabling the software development organization to have one release and deployment cycle applicable to the entire customer base. Thus, to further understand the progression of continuous deployment from introduction to scaling, we conducted a longitudinal case study at a multinational telecommunications company producing complex telecommunications software-intensive embedded systems. Our results show that continuous deployment passes through four phases: R&D experiment, R&D core practice, as a service, and finally, continuous deployment supporting a result-oriented business model. Based on the results, we inductively derive a maturity model for continuous deployment, which we discuss based on the four dimensions of the BAPO framework (Business, Architecture, Process, and Organization).
Anas Dakkak, Jan Bosch, Helena Olsson
COMPSAC1
2024 DevOps Value Flows in Software-Intensive System of Systems
abstract
DevOps has become a widely adopted approach in the software industry, especially among companies developing web-based applications. The main focus of DevOps is to address social and technical bottlenecks along the software flow, from the developers' code changes to delivering these changes to the production environments used by customers. However, DevOps does not consider the software flow's content, e.g., new features, bug fixes, or security patches, and the customer value of each content. In addition, DevOps assumes that a streamlined software flow leads to a continuous value flow, as customers use the new software and extract value-adding content intuitively. However, in a Software-intensive System of Systems (SiSoS), customers need to understand the content of the software flow to validate, test, and adopt their operation procedures before using the new software. Thus, while DevOps has been extensively studied in the context of web-based applications, its adoption in SiSoS is a relatively unexplored area. Therefore, we conducted a case study at a multinational telecommunications provider focusing on 5G systems. Our findings reveal that DevOps has three sub-flows: legacy, feature, and solution. Each sub-flow has distinct content and customer value, requiring a unique approach to extracting it. Our findings highlight the importance of understanding the software flow's content and how each content's value can be extracted when adopting DevOps in SiSoS.
Anas Dakkak, Piero Daniele, Jan Bosch, Helena Olsson
SEAA1
2024 Towards AIOps enabled services in continuously evolving software-intensive embedded systems
abstract
Abstract Continuous deployment has been practiced for many years by companies developing web‐ and cloud‐based applications. To succeed with continuous deployment, these companies have a strong collaboration culture between the operations and development teams. In addition, these companies use AI, analytics, and big data to assist with time‐consuming postdeployment activities such as continuous monitoring and fault identification. Thus, the term AIOps has evolved to highlight the importance and difficulty of maintaining highly available applications in a complex and dynamic environment. In contrast, software‐intensive embedded systems often provide customer product‐related services, such as maintenance, optimization, and support. These services are critical for these companies as they provide significant revenue and increase customer satisfaction. Therefore, the objective of our study is to gain an in‐depth understanding of the impact of continuous deployment on product‐related services provided by software‐intensive embedded systems companies. In addition, we aim to understand how AIOps can support continuous deployment in the context of software‐intensive embedded systems. To address this objective, we conducted a case study at a large and multinational telecommunications systems provider focusing on the radio access network (RAN) systems for 4G and 5G networks. The company provides RAN products and three complementing services: rollout, optimization, and customer support. The results from the case study show that the boundaries between product‐related services become blurry with continuous deployment. In addition, product‐related services, which were conducted in sequence by independent projects, converge with continuous deployment and become part of the same project. Further, AIOps platforms play an important role in reducing costs and increasing postdeployment activities' efficiency and speed. These results show that continuous deployment has a profound impact on the software‐intensive system's provider service organization. The service organization becomes the connection between the R&D organization and the customer. In order to cope with the increased speed of releases, deployment and postdeployment activities need to be largely automated. AIOps platforms are seen as a critical enabler in managing the increasing complexity without increasing human involvement.
Anas Dakkak, Jan Bosch, Helena Olsson
J. Softw. Evol. Process.1
2023 DevServOps: DevOps For Product-Oriented Product Service Systems
abstract
Companies producing software-intensive products do not only offer products to customers but Product Service Systems (PSS), a combination of the products and services that address customers’ needs. Further, product-related services are key in ensuring customer satisfaction as the service organization represents the company’s interface toward its customers, who operate and use the products. Therefore, while DevOps has been widely adopted in companies developing web-based applications aiming to streamline the Development and Operations activities, the projecting of DevOps as applied in web-based applications to PSS is difficult without considering the role of services. Therefore, based on a two years participant observation case study conducted at a multinational telecommunications systems provider, we propose a new and novel approach called Development-Services-Operations (DevServOps) which incorporates services as a key player facilitating an end-to-end software flow toward customers in one direction and feedback toward developers in the other direction.
Anas Dakkak, Jan Bosch, Helena Olsson
SEAA1
2023 Continuous deployment in software-intensive system-of-systems
Anas Dakkak, Jan Bosch, Helena Olsson, David Issa Mattos
Inf. Softw. Technol.1
2023 The HURRIER process for experimentation in business-to-business mission-critical systems
abstract
Abstract Continuous experimentation (CE) refers to a set of practices used by software companies to rapidly assess the usage, value, and performance of deployed software using data collected from customers and systems in the field using an experimental methodology. However, despite its increasing popularity in developing web‐facing applications, CE has not been studied in the development process of business‐to‐business (B2B) mission‐critical systems. By observing the CE practices of different teams, with a case study methodology inside Ericsson, we were able to identify the different practices and techniques used in B2B mission‐critical systems and a description and classification of the four possible types of experiments. We present and analyze each of the four types of experiments with examples in the context of the mission‐critical long‐term evolution (4G) product. These examples show the general experimentation process followed by the teams and the use of the different CE practices and techniques. Based on these examples and the empirical data, we derived the HURRIER process to deliver high‐quality solutions that the customers value. Finally, we discuss the challenges, opportunities, and lessons learned from applying CE and the HURRIER process in B2B mission‐critical systems.
David Issa Mattos, Anas Dakkak, Jan Bosch, Helena Olsson
J. Softw. Evol. Process.2
2022 Customer Support In The Era of Continuous Deployment: A Software-Intensive Embedded Systems Case Study
abstract
Supporting customers after they acquire the prod-uct is essential for companies producing and selling software-intensive embedded systems products. Generally, customer sup-port is the first interaction point between the product users and the product vendor. Customer support is often engaged with answering customers' questions, troubleshooting, fault identification, and fixing product faults. While continuous deployment advocates for closer cooperation between the ones operating the software and the ones developing it, the means of such collaboration in general and the role of customer support, in particular, has not been addressed in the context of software-intensive embedded systems. Therefore, to better understand the impact that continuous deployment has on customer support and the role customer support should play in this context, we conducted a case study at a multinational company developing and selling telecommunications networks infrastructure. We focused on the 4th and 5th Generation (4G and 5G) Radio Access Networks (RAN) products, which can be considered a high volume product as they cover more than 80% of the world's population. Our study reveals that customer support needs to transition from a transaction-based and passive function triggered by customer support requests, to take an active role characterized by being proactive and preemptive to cope with the shorter operational time of a software version introduced by continuous deployment. In addition, customer support plays an essential role in making the feedback actionable by aggregating and consolidating feedback data to the R&D organization.
Anas Dakkak, Aiswarya Raj Munappy, Jan Bosch, Helena Olsson
COMPSAC1
2022 The Role Of Post-Release Software Traceability in Release Engineering: A Software-Intensive Embedded Systems Case Study From The Telecommunications Domain
abstract
Modern release engineering practices such as continuous integration and delivery have allowed software development companies to transition from a long release cycle to a shorter one. The shorter release cycle has led to more software releases available to customers. At the same time, companies developing high-volume software-intensive embedded systems often deliver patch releases and maintenance releases on top of major and minor releases to customers who pick and choose what releases apply to them and decide when to upgrade the system, if to upgrade at all. While release engineering has been studied before in web-based, desktop-based, and embedded software, the focus has been on pre-release activities. Few studies have investigated what happens after the release, particularly the role of tracing software from release to deployment in high-volume software-intensive embedded systems. To address this gap, we conducted a qualitative case study at a multi-national telecommunications systems provider focusing on Radio Access Network (RAN) software. RAN software is a complex and large-scale embedded software used in mobile networks Base Stations (BS), providing software functionality for RAN mobile technologies ranging from 2G to 5G. Our study shed light on post-release software traceability and how it is used in the release engineering process.
Anas Dakkak, Jan Bosch, Helena Olsson
SEAA1
2021 Towards Continuous Data Collection from In-service Products: Exploring the Relation Between Data Dimensions and Collection Challenges
abstract
Data collected from in-service products play an important role in enabling software-intensive embedded systems suppliers to embrace data-driven practices. Data can be used in many different ways such as to continuously learn and improve the product, enhance post-deployment services, reduce operational cost or create a better user experience. While there is no shortage of possible use cases leveraging data from in-service products, software-intensive embedded systems companies struggle to continuously collect data from their in-service products. Often, data collection is done in an ad-hoc way and targeting specific use cases or needs. Besides, few studies have investigated data collection challenges in relation to the data dimensions, which are the minimum set of quantifiable data aspects that can define software-intensive embedded product data from a collection point of view. To help address data collection challenges, and to provide companies with guidance on how to improve this process, we conducted a case study at a large multinational telecommunications supplier focusing on data characteristics and collection challenges from the Radio Access Networks (RAN) products. We further investigated the relations of these challenges to the data dimensions to increase our understanding of how data dominions contribute to the challenges.
Anas Dakkak, Hongyi Zhang 0001, David Issa Mattos, Jan Bosch, Helena Olsson
APSEC1
2021 Perceived benefits of Continuous Deployment in Software-Intensive Embedded Systems
abstract
Continuous Deployment (CD) advocates for quick and frequent deployments of software to production. The goal is to bring new functionality as early as possible to users while learning from their usage. CD has emerged from web-based applications where it has been gaining traction over the past years. While CD is appealing for many software development organizations, empirical evidence on perceived benefits in software-intensive embedded systems is scarce. The objective of this paper is to identify perceived benefits after transitioning to continuous deployment from a long-cycle release and deployment process. To do that, a case study at a multinational telecommunication company was conducted focusing on large and complex embedded software; the Third Generation (3G) Radio Access Network (RAN) software.
Anas Dakkak, David Issa Mattos, Jan Bosch
COMPSAC1
2021 Success Factors when Transitioning to Continuous Deployment in Software-Intensive Embedded Systems
abstract
Continuous Deployment is the practice to deploy software more frequently to customers and learn from their usage. The aim is to introduce new functionality and features in an additive way to customers as soon as possible. While Continuous Deployment is becoming popular among web and cloud-based software development organizations, the adoption of continuous deployment within the software-intensive embedded systems industry is still limited.In this paper, we conducted a case study at a multinational telecommunications company focusing on the Third Generation Radio Access Network (3G RAN) embedded software. The organization has transitioned to Continuous Deployment where the software’s deployment cycle has been reduced to 4 weeks from 24 weeks. The objective of this paper is to identify what does success means when transitioning to continuous deployment and the success factors that companies need to attend to when transitioning to continuous deployment in a large-scale embedded software.
Anas Dakkak, David Issa Mattos, Jan Bosch
SEAA1
2020 Experimentation for Business-to-Business Mission-Critical Systems: A Case Study
abstract
Continuous experimentation (CE) refers to a group of practices used by software companies to rapidly assess the usage, value and performance of deployed software using data collected from customers and the deployed system. Despite its increasing popularity in the development of web-facing applications, CE has not been discussed in the development process of business-to-business (B2B) mission-critical systems.
David Issa Mattos, Anas Dakkak, Jan Bosch, Helena Olsson
ICSSP2
2020 From Ad-Hoc Data Analytics to DataOps
abstract
The collection of high-quality data provides a key competitive advantage to companies in their decision-making process. It helps to understand customer behavior and enables the usage and deployment of new technologies based on machine learning. However, the process from collecting the data, to clean and process it to be used by data scientists and applications is often manual, non-optimized and error-prone. This increases the time that the data takes to deliver value for the business. To reduce this time companies are looking into automation and validation of the data processes. Data processes are the operational side of data analytic workflow.
Aiswarya Raj Munappy, David Issa Mattos, Jan Bosch, Helena Olsson, Anas Dakkak
ICSSP5