Change search
ExportLink to record
Permanent link

Direct link
BETA

Project

Project type/Form of grant
Project grant
Title [en]
SHADE- A value-oriented strategy for managing the degradation of software assets
Abstract [en]
This research focuses on raising awareness about Asset Value degradation, which is the consequence of suboptimal decisions that are taken due to the need for the speed in today’s software development environments. We aim at going one step forward from the Techincal Debt (TD) concept which is too limiting as it does not cover the chronological perspective of degradation, nor propagation effects of sub-optimal design from one asset to other technical, as well as non-technical (e.g. process), assets. As such, TD is only a sub-category of Asset Degradation, the more generic concept that we address in this project.The main goal is to provide with mechanisms that companies can use to identify different types of asset degradation, and to measure, monitor, and predict the degradation, as well as define mechanisms for its effective mitigation.
Publications (10 of 12) Show all publications
Zabardast, E., Gonzalez-Huerta, J., Gorschek, T., Šmite, D., Alégroth, E. & Fagerholm, F. (2023). A taxonomy of assets for the development of software-intensive products and services. Journal of Systems and Software, 202, Article ID 111701.
Open this publication in new window or tab >>A taxonomy of assets for the development of software-intensive products and services
Show others...
2023 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 202, article id 111701Article in journal (Refereed) Published
Abstract [en]

Context:Developing software-intensive products or services usually involves a plethora of software artefacts. Assets are artefacts intended to be used more than once and have value for organisations; examples include test cases, code, requirements, and documentation. During the development process, assets might degrade, affecting the effectiveness and efficiency of the development process. Therefore, assets are an investment that requires continuous management.

Identifying assets is the first step for their effective management. However, there is a lack of awareness of what assets and types of assets are common in software-developing organisations. Most types of assets are understudied, and their state of quality and how they degrade over time have not been well-understood.

Methods:We performed an analysis of secondary literature and a field study at five companies to investigate and identify assets to fill the gap in research. The results were analysed qualitatively and summarised in a taxonomy.

Results:We present the first comprehensive, structured, yet extendable taxonomy of assets, containing 57 types of assets.

Conclusions:The taxonomy serves as a foundation for identifying assets that are relevant for an organisation and enables the study of asset management and asset degradation concepts.

Place, publisher, year, edition, pages
Elsevier, 2023
Keywords
Assets in software engineering, Asset management in software engineering, Assets for software-intensive products or services, Taxonomy
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-24426 (URN)10.1016/j.jss.2023.111701 (DOI)000984121100001 ()2-s2.0-85152899759 (Scopus ID)
Funder
Knowledge Foundation, 20170176Knowledge Foundation, 20180010
Available from: 2023-04-11 Created: 2023-04-11 Last updated: 2023-06-02Bibliographically approved
Šmite, D., Moe, N. B., Floryan, M., Gonzalez-Huerta, J., Dorner, M. & Sablis, A. (2023). Decentralized decision-making and scaled autonomy at Spotify. Journal of Systems and Software, 200, Article ID 111649.
Open this publication in new window or tab >>Decentralized decision-making and scaled autonomy at Spotify
Show others...
2023 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 200, article id 111649Article in journal (Refereed) Published
Abstract [en]

While modern software companies strive to increase team autonomy to enable them to successfully operate the piece of software they develop and deploy, efficient ways to orchestrate the work of multiple autonomous teams working in parallel are still poorly understood. In this paper, we report how team autonomy is maintained at Spotify at scale, based on team retrospectives, interviews with team managers and archival analysis of corporate databases and work procedures. In particular, we describe how managerial authority is decentralized through various workgroups with collective authority, what compromises are made to team autonomy to ensure alignment and which team-related factors can further hinder autonomy. Our findings show that scaled autonomy at Spotify does not mean anarchy, or unlimited permissiveness. Instead, squads are expected to take responsibility for their work and coordinate, communicate and align their actions with others, and comply with a few enabling constraints. Further, squads take many decisions independently without management control or due to collective efforts that bypass formal boundary structures. Mechanisms and strategies that enable self-organization at Spotify are related to effective sharing of the codebase, achieving alignment, networking and knowledge sharing, and are described to guide other companies in their efforts to scale autonomy. © 2023 The Author(s)

Place, publisher, year, edition, pages
Elsevier, 2023
Keywords
Decision making, Human resource management, Coordination, Decentralized decision-making, Enabling constraint, Large-scale software development, Large-scales, Scaled autonomy, Scaling agile, Scalings, Software company, The spotify model, Software design, Enabling constraints
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-24390 (URN)10.1016/j.jss.2023.111649 (DOI)000992126800001 ()2-s2.0-85149631583 (Scopus ID)
Funder
Knowledge Foundation, 20190087Knowledge Foundation, 20170176The Research Council of Norway, 309344
Available from: 2023-03-23 Created: 2023-03-23 Last updated: 2023-06-19Bibliographically approved
Šmite, D., Moe, N. B., Klotins, E. & Gonzalez-Huerta, J. (2023). From forced Working-From-Home to voluntary working-from-anywhere: Two revolutions in telework. Journal of Systems and Software, 195, Article ID 111509.
Open this publication in new window or tab >>From forced Working-From-Home to voluntary working-from-anywhere: Two revolutions in telework
2023 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 195, article id 111509Article in journal (Refereed) Published
Abstract [en]

The COVID-19 outbreak has admittedly caused interruptions to production, transportation, and mobility, therefore, having a significant impact on the global supply and demand chain's well-functioning. But what happened to companies developing digital services, such as software? How has the enforced Working-From-Home (WFH) mode impacted their ability to deliver software, if at all? This article shares our findings from monitoring the WFH during 2020 in an international software company with engineers located in Sweden, the USA, and the UK. We analyzed different aspects of productivity, such as developer job satisfaction and well-being, activity, communication and collaboration, efficiency and flow based on the archives of commit data, calendar invites, Slack communication, the internal reports of WFH experiences, and 30 interviews carried out in April/May and September 2020. We add more objective evidence to the existing COVID-19 studies the vast majority of which are based on self-reported productivity from the early months of the pandemic. We find that engineers continue committing code and carrying out their daily duties, as their routines adjust to “the new norm”. Our key message is that software engineers can work from home and quickly adjust their tactical approaches to the changes of unprecedented scale. Further, WFH has its benefits, including better work-life balance, improved flow, and improved quality of distributed meetings and events. Yet, WFH is not challenge free: not everybody feels equally productive working from home, work hours for many increased, while physical activity, socialization, pairing and opportunities to connect to unfamiliar colleagues decreased. Information sharing and meeting patterns also changed. Finally, experiences gained during the pandemic will have a lasting impact on the future of the workplace. The results of an internal company-wide survey suggest that only 9% of engineers will return to work in the office full time. Our article concludes with the InterSoft's strategy for work from anywhere (WFX), and a list of useful adjustments for a better WFH. © 2022 The Author(s)

Place, publisher, year, edition, pages
Elsevier, 2023
Keywords
Engineers, Job satisfaction, Productivity, Software engineering, Case-studies, Digital services, Empirical studies, Global supply chain, Production transportation, Software company, Supply and demand chains, Telework, Working from home, Working-from-home, COVID-19, Case study, Empirical study, WFH
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-23761 (URN)10.1016/j.jss.2022.111509 (DOI)000875668800002 ()2-s2.0-85139327922 (Scopus ID)
Funder
Knowledge Foundation, 20190087Knowledge Foundation, 20170176Knowledge Foundation, 20180010The Research Council of Norway, 309344The Research Council of Norway, 267704
Note

open access

Available from: 2022-10-21 Created: 2022-10-21 Last updated: 2022-12-13Bibliographically approved
Šmite, D., Moe, N. B., Hildrum, J., Gonzalez-Huerta, J. & Mendez, D. (2023). Work-from-home is here to stay: Call for flexibility in post-pandemic work policies. Journal of Systems and Software, 195, Article ID 111552.
Open this publication in new window or tab >>Work-from-home is here to stay: Call for flexibility in post-pandemic work policies
Show others...
2023 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 195, article id 111552Article in journal (Refereed) Published
Abstract [en]

In early 2020, the Covid-19 pandemic forced employees in tech companies worldwide to abruptly transition from working in offices to working from their homes. During two years of predominantly working from home, employees and managers alike formed expectations about what post-pandemic working life should look like. Many companies are experimenting with new work policies that balance employee- and manager expectations regarding where, when and how work should be done in the future. In this article, we gather experiences of the new trend of remote working based on the synthesis of 22 company-internal surveys of employee preferences for WFH, and 26 post-pandemic work policies from 17 companies and their sites, covering 12 countries in total. Our results are threefold. First, through the new work policies, all companies formally give employees more flexibility regarding working time and location. Second, there is a great variation in how much flexibility the companies are willing to yield to the employees. The paper details the different formulations that companies adopted to document the extent of permitted WFH, exceptions, relocation permits and the authorisation procedures. Third, we document a change in the psychological contract between employees and managers, where the option of working from home is converted from an exclusive perk that managers could choose to give to the few, to a core privilege that all employees feel they are entitled to. Finally, there are indications that as the companies learn and solicit feedback regarding the efficiency of the chosen strategies, we will see further developments and changes in the work policies concerning how much flexibility to work whenever and from wherever they grant. Through these findings, the paper contributes to a growing literature about the new trends emerging from the pandemic in tech companies and spells out practical implications onwards. © 2022 The Author(s)

Place, publisher, year, edition, pages
Elsevier, 2023
Keywords
Human resource management, Managers, Authorization procedure, Hybrid workplace, Post-pandemic, Psychological contracts, Remote work, Remote working, Work from anywhere, Work from home, Working life, Working time, Surveys, Survey
National Category
Work Sciences
Identifiers
urn:nbn:se:bth-24019 (URN)10.1016/j.jss.2022.111552 (DOI)000906907300004 ()2-s2.0-85142142102 (Scopus ID)
Funder
Knowledge Foundation, 20190087Knowledge Foundation, 20180010Knowledge Foundation, 20170176The Research Council of Norway, 309344The Research Council of Norway, 321477
Note

open access

Available from: 2022-12-02 Created: 2022-12-02 Last updated: 2023-02-02Bibliographically approved
Palma, F., Olsson, T., Wingkvist, A. & Gonzalez-Huerta, J. (2022). Assessing the linguistic quality of REST APIs for IoT applications. Journal of Systems and Software, 191, Article ID 111369.
Open this publication in new window or tab >>Assessing the linguistic quality of REST APIs for IoT applications
2022 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 191, article id 111369Article in journal (Refereed) Published
Abstract [en]

Internet of Things (IoT) is a growing technology that relies on connected ‘things’ that gather data from peer devices and send data to servers via APIs (Application Programming Interfaces). The design quality of those APIs has a direct impact on their understandability and reusability. This study focuses on the linguistic design quality of REST APIs for IoT applications and assesses their linguistic quality by performing the detection of linguistic patterns and antipatterns in REST APIs for IoT applications. Linguistic antipatterns are considered poor practices in the naming, documentation, and choice of identifiers. In contrast, linguistic patterns represent best practices to APIs design. The linguistic patterns and their corresponding antipatterns are hence contrasting pairs. We propose the SARAv2 (Semantic Analysis of REST APIs version two) approach to perform syntactic and semantic analyses of REST APIs for IoT applications. Based on the SARAv2 approach, we develop the REST-Ling tool and empirically validate the detection results of nine linguistic antipatterns. We analyse 19 REST APIs for IoT applications. Our detection results show that the linguistic antipatterns are prevalent and the REST-Ling tool can detect linguistic patterns and antipatterns in REST APIs for IoT applications with an average accuracy of over 80%. Moreover, the tool performs the detection of linguistic antipatterns on average in the order of seconds, i.e., 8.396 s. We found that APIs generally follow good linguistic practices, although the prevalence of poor practices exists.

Place, publisher, year, edition, pages
Elsevier, 2022
Keywords
REST APIs, IoT applications, Linguistic quality, Pattern, Antipattern, Detection
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-23126 (URN)10.1016/j.jss.2022.111369 (DOI)000814741100004 ()
Funder
Knowledge Foundation, 20170176
Note

open access

Available from: 2022-06-14 Created: 2022-06-14 Last updated: 2022-08-08Bibliographically approved
Zabardast, E., Frattini, J., Gonzalez-Huerta, J., Mendez, D., Gorschek, T. & Wnuk, K. (2022). Assets in Software Engineering: What are they after all?. Journal of Systems and Software, 193, Article ID 111485.
Open this publication in new window or tab >>Assets in Software Engineering: What are they after all?
Show others...
2022 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 193, article id 111485Article, review/survey (Refereed) Published
Abstract [en]

During the development and maintenance of software-intensive products or services, we depend on various artefacts. Some of those artefacts, we deem central to the feasibility of a project and the product's final quality. Typically, these central artefacts are referred to as assets. However, despite their central role in the software development process, little thought is yet invested into what eventually characterises as an asset, often resulting in many terms and underlying concepts being mixed and used inconsistently. A precise terminology of assets and related concepts, such as asset degradation, are crucial for setting up a new generation of cost-effective software engineering practices. In this position paper, we critically reflect upon the notion of assets in software engineering. As a starting point, we define the terminology and concepts of assets and extend the reasoning behind them. We explore assets’ characteristics and discuss what asset degradation is as well as its various types and the implications that asset degradation might bring for the planning, realisation, and evolution of software-intensive products and services over time. We aspire to contribute to a more standardised definition of assets in software engineering and foster research endeavours and their practical dissemination in a common, more unified direction. © 2022 The Authors

Place, publisher, year, edition, pages
Elsevier, 2022
Keywords
Asset degradation, Asset management, Assets, Software artefacts, Technical debt, Cost effectiveness, Cost engineering, Software design, Asset, Assets management, Cost effective, Position papers, Product and services, Software development process, Software engineering practices, Technical debts, Terminology
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-23601 (URN)10.1016/j.jss.2022.111485 (DOI)000967989300022 ()2-s2.0-85136495111 (Scopus ID)
Funder
Knowledge Foundation, 20170176Knowledge Foundation, 20180010
Note

open access

Available from: 2022-09-12 Created: 2022-09-12 Last updated: 2023-05-08Bibliographically approved
Zabardast, E., Bennin, K. E. & Gonzalez-Huerta, J. (2022). Further Investigation of the Survivability of Code Technical Debt Items. JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 34(2), Article ID e2425.
Open this publication in new window or tab >>Further Investigation of the Survivability of Code Technical Debt Items
2022 (English)In: JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, ISSN 2047-7473, Vol. 34, no 2, article id e2425Article in journal (Refereed) Published
Abstract [en]

Context: Technical Debt (TD) discusses the negative impact of sub-optimal decisions to cope with the need-for-speed in software development. Code Technical Debt Items (TDI) are atomic elements of TD that can be observed in code artifacts. Empirical results on open-source systems demonstrated how code-smells, which are just one type of TDIs, are introduced and "survive" during release cycles. However, little is known about whether the results on the survivability of code-smells hold for other types of code TDIs (i.e., bugs and vulnerabilities) and in industrial settings.Goal: Understanding the survivability of code TDIs by conducting an empirical study analyzing two industrial cases and 31 open-source systems from Apache Foundation. Method: We analyzed 144,476 code TDIs (35,372 from the industrial systems) detected by Sonarqube (in 193,196 commits) to assess their survivability using survivability models.Results: In general, code TDIs tend to remain and linger for long periods in open-source systems, whereas they are removed faster in industrial systems. Code TDIs that survive over a certain threshold tend to remain much longer, which confirms previous results. Our results also suggest that bugs tend to be removed faster, while code smells and vulnerabilities tend to survive longer.

Place, publisher, year, edition, pages
John Wiley & Sons, 2022
Keywords
bugs, code smells, code technical debt items, survivability, vulnerabilities
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-21269 (URN)10.1002/smr.2425 (DOI)000740993400001 ()2-s2.0-85122929311 (Scopus ID)
Funder
Knowledge Foundation, 2017/0176Knowledge Foundation, 2018/010
Note

open access

Available from: 2021-03-19 Created: 2021-03-19 Last updated: 2023-04-11Bibliographically approved
Zabardast, E., Gonzalez-Huerta, J. & Tanveer, B. (2022). Ownership vs Contribution: Investigating the Alignment between Ownership and Contribution. In: IEEE 19th International Conference on Software Architecture Companion, ICSA-C 2022: . Paper presented at 2022 IEEE 19th International Conference on Software Architecture Companion, ICSA-C, Honolulu, 12 March 2022 through 15 March 2022 (pp. 30-34). Institute of Electrical and Electronics Engineers (IEEE)
Open this publication in new window or tab >>Ownership vs Contribution: Investigating the Alignment between Ownership and Contribution
2022 (English)In: IEEE 19th International Conference on Software Architecture Companion, ICSA-C 2022, Institute of Electrical and Electronics Engineers (IEEE), 2022, p. 30-34Conference paper, Published paper (Refereed)
Abstract [en]

Software development is a collaborative endeavour. Organisations that develop software assign modules to different teams, i.e., teams own their modules and are responsible for them. These modules are rarely isolated, meaning that there exist dependencies among them. Therefore, other teams might often contribute to developing modules they do not own. The contribution can be, among other types, in the form of code authorship, code review, and issue detection. This research presents a model to investigate the alignment between module ownership and contribution and the preliminary results of an industrial case study to evaluate the model in practice. Our model uses seven metrics to assess teams' contributions. Initial results suggest that the model correctly identifies misalignment between ownership and contribution. The detection of misalignment between ownership and contribution is the first step towards investigating the impact it might have on the faster accumulation of Technical Debt. © 2022 IEEE.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers (IEEE), 2022
Keywords
Measurement, Codes, Software architecture, Conferences, Refining, Collaboration, Software
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-23320 (URN)10.1109/ICSA-C54293.2022.00013 (DOI)000838715700009 ()2-s2.0-85132145417 (Scopus ID)9781665494939 (ISBN)
Conference
2022 IEEE 19th International Conference on Software Architecture Companion, ICSA-C, Honolulu, 12 March 2022 through 15 March 2022
Funder
Knowledge Foundation, 20170176Knowledge Foundation, 20180010
Note

open access

Available from: 2022-06-27 Created: 2022-06-27 Last updated: 2023-04-11Bibliographically approved
Ljung, K. & Gonzalez-Huerta, J. (2022). “To Clean Code or Not to Clean Code” A Survey Among Practitioners. In: Taibi D., Kuhrmann M., Mikkonen T., (Ed.), Product-Focused Software Process Improvement: . Paper presented at 23rd International Conference on Product-Focused Software Process Improvement, PROFES 2022, Jyväskylä, 21-23 November 2022 (pp. 298-315). Springer Science+Business Media B.V.
Open this publication in new window or tab >>“To Clean Code or Not to Clean Code” A Survey Among Practitioners
2022 (English)In: Product-Focused Software Process Improvement / [ed] Taibi D., Kuhrmann M., Mikkonen T.,, Springer Science+Business Media B.V., 2022, p. 298-315Conference paper, Published paper (Refereed)
Abstract [en]

Context: Writing code that is understandable by other collaborators has become crucial to enhancing collaboration and productivity. Clean Code has become one of the most relevant software craftsmanship practices and has been widely embraced as a synonym for code quality by software developers and software development organizations all over the world. However, very little is known regarding whether developers agree with Clean Code principles and how they apply them in practice.

Objectives: In this work, we investigated how developers perceive Clean Code principles, whether they believe that helps reading, understanding, reusing, and modifying Clean Code, and how they keep their code clean.

Methods: We conducted a Systematic Literature Review in which we screened 771 research papers to collect Clean Code principles and a survey among 39 practitioners, some of them with more than 20 years of development experience.

Results: So far, the results show a shared agreement with Clean Code principles and their potential benefits. They also show that developers tend to write “messy” code to be refactored later. © 2022, The Author(s), under exclusive license to Springer Nature Switzerland AG.

Place, publisher, year, edition, pages
Springer Science+Business Media B.V., 2022
Series
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 13709
Keywords
Software design, Clean code, Code principle, Code quality, Development experiences, Potential benefits, Research papers, Software developer, Software development organizations, Systematic literature review, Writing codes, Surveys, Survey
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-24062 (URN)10.1007/978-3-031-21388-5_21 (DOI)000897035000021 ()2-s2.0-85142710041 (Scopus ID)9783031213878 (ISBN)
Conference
23rd International Conference on Product-Focused Software Process Improvement, PROFES 2022, Jyväskylä, 21-23 November 2022
Funder
Knowledge Foundation, 20170176Knowledge Foundation, 2018010
Note

Open access

Available from: 2022-12-09 Created: 2022-12-09 Last updated: 2024-01-02Bibliographically approved
Sundelin, A., Gonzalez-Huerta, J., Wnuk, K. & Gorschek, T. (2022). Towards an Anatomy of Software Craftsmanship. ACM Transactions on Software Engineering and Methodology, 31(1), Article ID 6.
Open this publication in new window or tab >>Towards an Anatomy of Software Craftsmanship
2022 (English)In: ACM Transactions on Software Engineering and Methodology, ISSN 1049-331X, E-ISSN 1557-7392, Vol. 31, no 1, article id 6Article in journal (Refereed) Published
Abstract [en]

Context:   The concept of software craftsmanship has early roots in computing, and in 2009, the Manifesto for Software Craftsmanship was formulated as a reaction to how the Agile methods were practiced and taught. But software craftsmanship has seldom been studied from a software engineering perspective.  

Objective:  The objective of this article is to systematize an anatomy of software craftsmanship through literature studies and a longitudinal case study.     

Method:  We performed a snowballing literature review based on an initial set of nine papers, resulting in~18 papers and 11 books.  We also performed a case study following seven years of software development of a product for the financial market, eliciting qualitative and quantitative results.  We used thematic coding to synthesize the results into categories.

Results:  The resulting anatomy is centered around four themes, containing 17 principles and 47 hierarchical practices connected to the principles.  We present the identified practices based on the experiences gathered from the case study, triangulating with the literature results.

Conclusion: We provide our systematically derived anatomy of software craftsmanship with the goal of inspiring more research into the principles and practices of software craftsmanship and how these relate to other principles within software engineering in general.

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM), 2022
Keywords
software craftsmanship, principles of software development, deliberate practice
National Category
Software Engineering
Research subject
Software Engineering
Identifiers
urn:nbn:se:bth-22037 (URN)10.1145/3468504 (DOI)000870650700006 ()
Funder
Knowledge Foundation, 20170213Knowledge Foundation, 20170176Knowledge Foundation, 20180010
Available from: 2021-08-20 Created: 2021-08-20 Last updated: 2023-02-06Bibliographically approved
Principal InvestigatorGonzalez-Huerta, Javier
Coordinating organisation
Blekinge Institute of Technology
Funder
Period
2018-01-01 - 2020-12-31
National Category
Software Engineering
Identifiers
DiVA, id: project:2345Project, id: 20170176

Search in DiVA

Software Engineering

Search outside of DiVA

GoogleGoogle Scholar

Link to external project page

SHADE