Change search
Link to record
Permanent link

Direct link
BETA
Publications (10 of 40) Show all publications
Cito, J., Wettinger, J., Lwakatare, L., Borg, M. & Li, F. (2019). Feedback from operations to software development—a devops perspective on runtime metrics and logs. In: Lect. Notes Comput. Sci.: . Paper presented at DEVOPS 2018: Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment (pp. 184-195).
Open this publication in new window or tab >>Feedback from operations to software development—a devops perspective on runtime metrics and logs
Show others...
2019 (English)In: Lect. Notes Comput. Sci., 2019, p. 184-195Conference paper, Published paper (Refereed)
Abstract [en]

DevOps achieve synergy between software development and operations engineers. This synergy can only happen if the right culture is in place to foster communication between these roles. We investigate the relationship between runtime data generated during production and how this data can be used as feedback in the software development process. For that, we want to discuss case study organizations that have different needs on their operations-to-development feedback pipeline, from which we abstract and propose a more general, higher-level feedback process. Given such a process, we discuss a technical environment required to support this process. We sketch out different scenarios in which feedback is useful in different phases of the software development life-cycle.

Keywords
DevOps, Feedback, Software engineering, Computer software, Life cycle, Development and operations, Feedback process, Run-time data, Runtimes, Software development life cycle, Software development process, Technical environments, Software design
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-37755 (URN)10.1007/978-3-030-06019-0_14 (DOI)2-s2.0-85061095685 (Scopus ID)9783030060183 (ISBN)
Conference
DEVOPS 2018: Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment
Available from: 2019-02-13 Created: 2019-02-13 Last updated: 2019-02-13Bibliographically approved
Helali Moghadam, M., Saadatmand, M., Borg, M., Bohlin, M. & Lisper, B. (2019). Machine Learning to Guide Performance Testing: An Autonomous Test Framework. In: ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 2019: . Paper presented at ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 22 Apr 2019, Xi’an, China.
Open this publication in new window or tab >>Machine Learning to Guide Performance Testing: An Autonomous Test Framework
Show others...
2019 (English)In: ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 2019, 2019Conference paper, Published paper (Refereed)
Abstract [en]

Satisfying performance requirements is of great importance for performance-critical software systems. Performance analysis to provide an estimation of performance indices and ascertain whether the requirements are met is essential for achieving this target. Model-based analysis as a common approach might provide useful information but inferring a precise performance model is challenging, especially for complex systems. Performance testing is considered as a dynamic approach for doing performance analysis. In this work-in-progress paper, we propose a self-adaptive learning-based test framework which learns how to apply stress testing as one aspect of performance testing on various software systems to find the performance breaking point. It learns the optimal policy of generating stress test cases for different types of software systems, then replays the learned policy to generate the test cases with less required effort. Our study indicates that the proposed learning-based framework could be applied to different types of software systems and guides towards autonomous performance testing.

Keywords
performance requirements, performance testing, test case generation, reinforcement learning, autonomous testing, Engineering and Technology, Teknik och teknologier, Computer Systems, Datorsystem
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39327 (URN)10.1109/ICSTW.2019.00046 (DOI)2-s2.0-85068406208 (Scopus ID)
Conference
ICST Workshop on Testing Extra-Functional Properties and Quality Characteristics of Software Systems ITEQS'19, 22 Apr 2019, Xi’an, China
Available from: 2019-07-04 Created: 2019-07-04 Last updated: 2019-08-08Bibliographically approved
Modeus, G., Sandgren, P., Borg, M., Andersson, F., Wiel-Berggren, G. & Rosendahl, M. (2019). Mjukvara är Sveriges nya infrastruktur: här är nästa steg.
Open this publication in new window or tab >>Mjukvara är Sveriges nya infrastruktur: här är nästa steg
Show others...
2019 (Swedish)Report (Other academic)
Abstract [en]

I Sverige bedriver hela 35 procent av företagen egen mjukvaruutveckling.1 Data och mjukvarahar kommit att genomsyra i stort sett hela näringslivet och den offentliga sektorn – både iden operativa driften, men även i utvecklings- och innovationsarbetet.Det här är en utveckling som har gått mycket snabbt, vilket illustreras väl av att utgifter förmjukvara hos företag i Sverige har fördubblats från 25 miljarder kr år 2014 till 50 miljarder kr år2019.2 Men samtidigt som digitaliseringen accelererar och efterfrågan på mjukvaruutvecklingoch nya datatjänster blir allt större så kräver en fortsatt hög innovationstakt att lagstiftningenoch utbildningsväsendet anpassar sig efter det fält där en allt större del av svensk tillväxt skapas

Publisher
p. 20
Series
Teknikföretagen Swedsoft
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39333 (URN)
Available from: 2019-07-05 Created: 2019-07-05 Last updated: 2019-07-05Bibliographically approved
Trubiani, C., Jamshidi, P., Cito, J., Shang, W., Jiang, Z. M. & Borg, M. (2019). Performance Issues?: Hey DevOps, Mind the Uncertainty!. IEEE Software, 36(2), 110-117, Article ID 8501933.
Open this publication in new window or tab >>Performance Issues?: Hey DevOps, Mind the Uncertainty!
Show others...
2019 (English)In: IEEE Software, ISSN 0740-7459, E-ISSN 1937-4194, Vol. 36, no 2, p. 110-117, article id 8501933Article in journal (Refereed) Published
Abstract [en]

DevOps is a novel trend that aims to bridge the gap between software development and operation teams. When applied to the performance evaluation process, it brings new challenges since developers need to be aware of the deployment settings and application runtime characteristics. At the operational stage, several uncertainties, e.g., workload fluctuations and resource availability, may affect the performance analysis. The goal of this paper is to identify the uncertain parameters and quantify their propagation to performance analysis results, in order to bring upfront the main system criticisms. To this end, we make use of a popular big data system showing that the sources of uncertainty may span on different characteristics and the performance analysis results can be heavily affected by these uncertainties. The paper contributes as an experience report aiming to better identify performance uncertainties through a case study. It provides a step-by-step guide to practitioners for controlling system uncertainties.

Keywords
DevOps, Performance Analysis, Software Development, Uncertainty, Big data, Software design, Software engineering, Development and operations, Performance evaluations, Resource availability, Sources of uncertainty, Uncertain parameters, Uncertainty analysis
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-36541 (URN)10.1109/MS.2018.2875989 (DOI)2-s2.0-85055138945 (Scopus ID)
Available from: 2018-11-27 Created: 2018-11-27 Last updated: 2019-07-01Bibliographically approved
Borg, M., Englund, C., Wnuk, K., Duran, B., Levandowski, C., Gao, S., . . . Törnqvist, J. (2019). Safely Entering the Deep: A Review of Verification and Validation for Machine Learning and a Challenge Elicitation in the Automotive Industry. Journal of Automotive Software Engineering, 1(1), 1-13
Open this publication in new window or tab >>Safely Entering the Deep: A Review of Verification and Validation for Machine Learning and a Challenge Elicitation in the Automotive Industry
Show others...
2019 (English)In: Journal of Automotive Software Engineering, Vol. 1, no 1, p. 1-13Article in journal (Refereed) Published
Abstract [en]

Deep neural networks (DNNs) will emerge as a cornerstone in automotive software engineering. However, developing systems with DNNs introduces novel challenges for safety assessments. This paper reviews the state-of-the-art in verification and validation of safety-critical systems that rely on machine learning. Furthermore, we report from a workshop series on DNNs for perception with automotive experts in Sweden, confirming that ISO 26262 largely contravenes the nature of DNNs. We recommend aerospace-to-automotive knowledge transfer and systems-based safety approaches, for example, safety cage architectures and simulated system test cases.

Keywords
Deep learning, Safety-critical systems, Machine learning, Verification and validation, ISO 26262
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39335 (URN)10.2991/jase.d.190131.001 (DOI)
Available from: 2019-07-05 Created: 2019-07-05 Last updated: 2019-07-05Bibliographically approved
Borg, M., Chatzipetrou, P., Wnuk, K., Alégroth, E., Gorschek, T., Papatheocharous, E., . . . Axelsson, J. (2019). Selecting component sourcing options: A survey of software engineering's broader make-or-buy decisions. Information and Software Technology, 112, 18-34
Open this publication in new window or tab >>Selecting component sourcing options: A survey of software engineering's broader make-or-buy decisions
Show others...
2019 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 112, p. 18-34Article in journal (Refereed) Published
Abstract [en]

Context: Component-based software engineering (CBSE) is a common approach to develop and evolve contemporary software systems. When evolving a system based on components, make-or-buy decisions are frequent, i.e., whether to develop components internally or to acquire them from external sources. In CBSE, several different sourcing options are available: (1) developing software in-house, (2) outsourcing development, (3) buying commercial-off-the-shelf software, and (4) integrating open source software components. Objective: Unfortunately, there is little available research on how organizations select component sourcing options (CSO) in industry practice. In this work, we seek to contribute empirical evidence to CSO selection. Method: We conduct a cross-domain survey on CSO selection in industry, implemented as an online questionnaire. Results: Based on 188 responses, we find that most organizations consider multiple CSOs during software evolution, and that the CSO decisions in industry are dominated by expert judgment. When choosing between candidate components, functional suitability acts as an initial filter, then reliability is the most important quality. Conclusion: We stress that future solution-oriented work on decision support has to account for the dominance of expert judgment in industry. Moreover, we identify considerable variation in CSO decision processes in industry. Finally, we encourage software development organizations to reflect on their decision processes when choosing whether to make or buy components, and we recommend using our survey for a first benchmarking.

Place, publisher, year, edition, pages
Elsevier B.V., 2019
Keywords
Component-based software engineering, Decision making, Software architecture, Sourcing, Survey, Decision support systems, Open systems, Software design, Surveying, Surveys, Commercial off-the-shelf softwares, Industry practices, Make-or-buy decisions, Online questionnaire, Software development organizations, Software Evolution, Open source software
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-38474 (URN)10.1016/j.infsof.2019.03.015 (DOI)2-s2.0-85064013176 (Scopus ID)
Note

 Funding details: Stiftelsen för Kunskaps- och Kompetensutveckling; Funding text 1: The work is partially supported by a research grant for the ORION project (reference number 20140218 ) from The Stiftelsen för Kunskaps- och Kompetensutveckling in Sweden. The authors have no competing interests to declare.

Available from: 2019-05-03 Created: 2019-05-03 Last updated: 2019-07-01Bibliographically approved
Wnuk, K., Borg, M. & Gorschek, T. (2019). Towards new ways of evaluating methods of supporting requirements management and traceability using signal-to-noise ratio. In: ENASE 2019 - Proceedings of the 14th International Conference on Evaluation of Novel Approaches to Software Engineering: . Paper presented at 14th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2019, 4 May 2019 through 5 May 2019 (pp. 330-339). SciTePress
Open this publication in new window or tab >>Towards new ways of evaluating methods of supporting requirements management and traceability using signal-to-noise ratio
2019 (English)In: ENASE 2019 - Proceedings of the 14th International Conference on Evaluation of Novel Approaches to Software Engineering, SciTePress , 2019, p. 330-339Conference paper, Published paper (Refereed)
Abstract [en]

Developing contemporary software solutions requires many processes and people working in synergy to achieve a common goal. Any misalignment between parts of the software production cycle can severely impede the quality of the development process and its resulting products. In this paper, we focus on improving means for measuring the quality of methods used to support finding similarities between software product artifacts, especially requirements. We propose a new set of measures, Signal-to-Noise ratios which extends the commonly used precision and recall measures. We test the applicability of all three types of SNR on two methods for finding similar requirements: the normalized compression distance (NCD) originating from the domain of information theory, and the Vector Space Model originating from computer linguistics. The results obtained present an interesting property of all types of SNR, all the values are centered around 1 which confirms our hypothesis that the analyzed methods can only limit the search space for the analysis. The analyst may still have difficulties in manually assessing the correct links among the incorrect ones.

Place, publisher, year, edition, pages
SciTePress, 2019
Keywords
Information Distance, Information Retrieval, Requirements Management, Traceability, Requirements engineering, Software engineering, Vector spaces, Development process, Normalized compression distance, Precision and recall, Software production, Vector space models, Signal to noise ratio
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39279 (URN)10.5220/0007717203300339 (DOI)2-s2.0-85067445428 (Scopus ID)9789897583759 (ISBN)
Conference
14th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2019, 4 May 2019 through 5 May 2019
Available from: 2019-07-03 Created: 2019-07-03 Last updated: 2019-08-14Bibliographically approved
Henriksson, J., Berger, C., Borg, M., Tornberg, L., Englund, C., Sathyamoorthy, S. & Ursing, S. (2019). Towards Structured Evaluation of Deep Neural Network Supervisors. In: Proceedings - 2019 IEEE International Conference on Artificial Intelligence Testing, AITest 2019: . Paper presented at 1st IEEE International Conference on Artificial Intelligence Testing, AITest 2019, 4 April 2019 through 9 April 2019 (pp. 27-34). Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>Towards Structured Evaluation of Deep Neural Network Supervisors
Show others...
2019 (English)In: Proceedings - 2019 IEEE International Conference on Artificial Intelligence Testing, AITest 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 27-34Conference paper, Published paper (Refereed)
Abstract [en]

Deep Neural Networks (DNN) have improved the quality of several non-safety related products in the past years. However, before DNNs should be deployed to safety-critical applications, their robustness needs to be systematically analyzed. A common challenge for DNNs occurs when input is dissimilar to the training set, which might lead to high confidence predictions despite proper knowledge of the input. Several previous studies have proposed to complement DNNs with a supervisor that detects when inputs are outside the scope of the network. Most of these supervisors, however, are developed and tested for a selected scenario using a specific performance metric. In this work, we emphasize the need to assess and compare the performance of supervisors in a structured way. We present a framework constituted by four datasets organized in six test cases combined with seven evaluation metrics. The test cases provide varying complexity and include data from publicly available sources as well as a novel dataset consisting of images from simulated driving scenarios. The latter we plan to make publicly available. Our framework can be used to support DNN supervisor evaluation, which in turn could be used to motive development, validation, and deployment of DNNs in safety-critical applications.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
Keywords
Automotive perception, Deep neural networks, Out-of-distribution, Robustness, Supervisor, Artificial intelligence, Robustness (control systems), Safety engineering, Statistical tests, Supervisory personnel, Evaluation metrics, High confidence, Performance metrices, Safety critical applications, Safety-related products, Simulated driving, Structured evaluation
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-39270 (URN)10.1109/AITest.2019.00-12 (DOI)2-s2.0-85067113703 (Scopus ID)9781728104928 (ISBN)
Conference
1st IEEE International Conference on Artificial Intelligence Testing, AITest 2019, 4 April 2019 through 9 April 2019
Note

Funding details: Fellowships Fund Incorporated; Funding details: AI; Funding details: Knut och Alice Wallenbergs Stiftelse; Funding text 1: ACKNOWLEDGMENTS This work was carried out within the SMILE II project financed by Vinnova, FFI, Fordonsstrategisk forskning och; Funding text 2: innovation under the grant number: 2017-03066, and partially supported by the Wallenberg AI, Autonomous Systems and Software Program (WASP) funded by Knut and Alice Wal-lenberg Foundation.

Available from: 2019-07-03 Created: 2019-07-03 Last updated: 2019-07-03Bibliographically approved
Borg, M., Garousi, V., Mahmoud, A., Olsson, T. & Stalberg, O. (2019). Video Game Development in a Rush: A Survey of the Global Game Jam Participants. IEEE Transactions on Games
Open this publication in new window or tab >>Video Game Development in a Rush: A Survey of the Global Game Jam Participants
Show others...
2019 (English)In: IEEE Transactions on Games, ISSN 2475-1502Article in journal (Refereed) Epub ahead of print
Abstract [en]

Video game development is a complex endeavor, often involving complex software, large organizations, and aggressive release deadlines. Several studies have reported that periods of “crunch time” are prevalent in the video game industry, but there are few studies on the effects of time pressure. We conducted a survey with participants of the Global Game Jam (GGJ), a 48-hour hackathon. Based on 198 responses, the results suggest that: (1) iterative brainstorming is the most popular method for conceptualizing initial requirements; (2) continuous integration, minimum viable product, scope management, version control, and stand-up meetings are frequently applied development practices; (3) regular communication, internal playtesting, and dynamic and proactive planning are the most common quality assurance activities; and (4) familiarity with agile development has a weak correlation with perception of success in GGJ. We conclude that GGJ teams rely on ad hoc approaches to development and face-to-face communication, and recommend some complementary practices with limited overhead. Furthermore, as our findings are similar to recommendations for software startups, we posit that game jams and the startup scene share contextual similarities. Finally, we discuss the drawbacks of systemic “crunch time” and argue that game jam organizers are in a good position to problematize the phenomenon.

Keywords
Software engineering, game development, game jam, time pressure, opinion survey
National Category
Natural Sciences
Identifiers
urn:nbn:se:ri:diva-38591 (URN)10.1109/TG.2019.2910248 (DOI)
Available from: 2019-05-09 Created: 2019-05-09 Last updated: 2019-05-09Bibliographically approved
Helali Moghadam, M., Saadatmand, M., Borg, M., Bohlin, M. & Lisper, B. (2018). Adaptive Run-time Response Time Control in PLC-based Real-Time Systems using Reinforcement Learning. In: : . Paper presented at 13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (pp. 217-223).
Open this publication in new window or tab >>Adaptive Run-time Response Time Control in PLC-based Real-Time Systems using Reinforcement Learning
Show others...
2018 (English)Conference paper, Published paper (Refereed)
Abstract [en]

Timing requirements such as constraints on response time are key characteristics of real-time systems and violations of these requirements might cause a total failure, particularly in hard real-time systems. Runtime monitoring of the system properties is of great importance to check the system status and mitigate such failures. Thus, a runtime control to preserve the system properties could improve the robustness of the system with respect to timing violations. Common control approaches may require a precise analytical model of the system which is difficult to be provided at design time. Reinforcement learning is a promising technique to provide adaptive model-free control when the environment is stochastic, and the control problem could be formulated as a Markov Decision Process. In this paper, we propose an adaptive runtime control using reinforcement learning for real-time programs based on Programmable Logic Controllers (PLCs), to meet the response time requirements. We demonstrate through multiple experiments that our approach could control the response time efficiently to satisfy the timing requirements.

Keywords
adaptive response time contro, lPLC-based real-time programs, reinforcement learning, runtime monitoring
National Category
Software Engineering
Identifiers
urn:nbn:se:ri:diva-34197 (URN)10.1145/3194133.3194153 (DOI)2-s2.0-85051555083 (Scopus ID)9781450357159 (ISBN)
Conference
13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Available from: 2018-07-13 Created: 2018-07-13 Last updated: 2019-04-05Bibliographically approved
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0001-7879-4371

Search in DiVA

Show all publications
v. 2.35.7