lnu.sePublications
Change search
Refine search result
1234567 1 - 50 of 368
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Rows per page
  • 5
  • 10
  • 20
  • 50
  • 100
  • 250
Sort
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
Select
The maximal number of hits you can export is 250. When you want to export more records please use the Create feeds function.
  • 1.
    Abbas, Nadeem
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Designing Self-Adaptive Software Systems with Reuse2018Doctoral thesis, comprehensive summary (Other academic)
    Abstract [en]

    Modern software systems are increasingly more connected, pervasive, and dynamic, as such, they are subject to more runtime variations than legacy systems. Runtime variations affect system properties, such as performance and availability. The variations are difficult to anticipate and thus mitigate in the system design.

    Self-adaptive software systems were proposed as a solution to monitor and adapt systems in response to runtime variations. Research has established a vast body of knowledge on engineering self-adaptive systems. However, there is a lack of systematic process support that leverages such engineering knowledge and provides for systematic reuse for self-adaptive systems development. 

    This thesis proposes the Autonomic Software Product Lines (ASPL), which is a strategy for developing self-adaptive software systems with systematic reuse. The strategy exploits the separation of a managed and a managing subsystem and describes three steps that transform and integrate a domain-independent managing system platform into a domain-specific software product line for self-adaptive software systems.

    Applying the ASPL strategy is however not straightforward as it involves challenges related to variability and uncertainty. We analyzed variability and uncertainty to understand their causes and effects. Based on the results, we developed the Autonomic Software Product Lines engineering (ASPLe) methodology, which provides process support for the ASPL strategy. The ASPLe has three processes, 1) ASPL Domain Engineering, 2) Specialization and 3) Integration. Each process maps to one of the steps in the ASPL strategy and defines roles, work-products, activities, and workflows for requirements, design, implementation, and testing. The focus of this thesis is on requirements and design.

    We validate the ASPLe through demonstration and evaluation. We developed three demonstrator product lines using the ASPLe. We also conducted an extensive case study to evaluate key design activities in the ASPLe with experiments, questionnaires, and interviews. The results show a statistically significant increase in quality and reuse levels for self-adaptive software systems designed using the ASPLe compared to current engineering practices.

    Download full text (pdf)
    Doctoral Thesis (Comprehensive Summary)
    Download (jpg)
    Front Page
  • 2.
    Abbas, Nadeem
    et al.
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM), Department of Computer Science.
    Andersson, Jesper
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM), Department of Computer Science.
    Architectural reasoning for dynamic software product lines2013In: Proceedings of the 17th International Software Product Line Conference co-located workshops, ACM Press, 2013, p. 117-124Conference paper (Refereed)
    Abstract [en]

    Software quality is critical in today's software systems. A challenge is the trade-off situation architects face in the design process. Designers often have two or more alternatives, which must be compared and put into context before a decision is made. The challenge becomes even more complex for dynamic software product lines, where domain designers have to take runtime variations into consideration as well. To address the problem we propose extensions to an architectural reasoning framework with constructs/artifacts to define and model a domain's scope and dynamic variability. The extended reasoning framework encapsulates knowledge to understand and reason about domain quality behavior and self-adaptation as a primary variability mechanism. The framework is demonstrated for a self-configuration property, self-upgradability on an educational product-line.

  • 3.
    Abbas, Nadeem
    et al.
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM), Department of Computer Science.
    Andersson, Jesper
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM), Department of Computer Science.
    ASPLe: a methodology to develop self-adaptive software systems with reuse2017Report (Other academic)
    Abstract [en]

    Advances in computing technologies are pushing software systems and their operating environments to become more dynamic and complex. The growing complexity of software systems coupled with uncertainties induced by runtime variations leads to challenges in software analysis and design. Self-Adaptive Software Systems (SASS) have been proposed as a solution to address design time complexity and uncertainty by adapting software systems at runtime. A vast body of knowledge on engineering self-adaptive software systems has been established. However, to the best of our knowledge, no or little work has considered systematic reuse of this knowledge. To that end, this study contributes an Autonomic Software Product Lines engineering (ASPLe) methodology. The ASPLe is based on a multi-product lines strategy which leverages systematic reuse through separation of application and adaptation logic. It provides developers with repeatable process support to design and develop self-adaptive software systems with reuse across several application domains. The methodology is composed of three core processes, and each process is organized for requirements, design, implementation, and testing activities. To exemplify and demonstrate the use of the ASPLe methodology, three application domains are used as running examples throughout the report.

    Download full text (pdf)
    ASPLe2017
  • 4.
    Abbas, Nadeem
    et al.
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Andersson, Jesper
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Iftikhar, Muhammad Usman
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Weyns, Danny
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Rigorous architectural reasoning for self-adaptive software systems2016In: Proceedings: First Workshop on Qualitative Reasoning abut Software Architectures, QRASA 2016 / [ed] Lisa O'Conner, IEEE, 2016, p. 11-18Conference paper (Refereed)
    Abstract [en]

    Designing a software architecture requires architectural reasoning, i.e., activities that translate requirements to an architecture solution. Architectural reasoning is particularly challenging in the design of product-lines of self-adaptive systems, which involve variability both at development time and runtime. In previous work we developed an extended Architectural Reasoning Framework (eARF) to address this challenge. However, evaluation of the eARF showed that the framework lacked support for rigorous reasoning, ensuring that the design complies to the requirements. In this paper, we introduce an analytical framework that enhances eARF with such support. The framework defines a set of artifacts and a series of activities. Artifacts include templates to specify domain quality attribute scenarios, concrete models, and properties. The activities support architects with transforming requirement scenarios to architecture models that comply to required properties. Our focus in this paper is on architectural reasoning support for a single product instance. We illustrate the benefits of the approach by applying it to an example client-server system, and outline challenges for future work. © 2016 IEEE.

  • 5.
    Abbas, Nadeem
    et al.
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Andersson, Jesper
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Löwe, Welf
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Towards Autonomic Software Product Lines (ASPL) - A Technical Report2011Report (Other academic)
    Abstract [en]

    This report describes a work in progress to develop Autonomic Software Product Lines (ASPL). The ASPL is a dynamic software product line approach with a novel variability handling mechanism that enables traditional software product lines to adapt themselves at runtime in response to changes in their context, requirements and business goals. The ASPL variability mechanism is composed of three key activities: 1) context-profiling, 2) context-aware composition, and 3) online learning. Context-profiling is an offline activity that prepares a knowledge base for context-aware composition. The context-aware composition uses the knowledge base to derive a new product or adapts an existing product based on a product line's context attributes and goals. The online learning optimizes the knowledge base to remove errors and suboptimal information and to incorporate new knowledge. The three activities together form a simple yet powerful variability handling mechanism that learns and adapts a system at runtime in response to changes in system context and goals. We evaluated the ASPL variability mechanism on three small-scale software product lines and got promising results. The ASPL approach is, however, is yet at an initial stage and require improved development support with more rigorous evaluation. 

    Download full text (pdf)
    fulltext
  • 6.
    Abbas, Nadeem
    et al.
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Andersson, Jesper
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Weyns, Danny
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM). Katholieke Univ Leuven, Belgium.
    ASPLe: a methodology to develop self-adaptive software systems with systematic reuse2020In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 167, p. 1-19, article id 110626Article in journal (Refereed)
    Abstract [en]

    More than two decades of research have demonstrated an increasing need for software systems to be self-adaptive. Self-adaptation is required to deal with runtime dynamics which are difficult to predict before deployment. A vast body of knowledge to develop Self-Adaptive Software Systems (SASS) has been established. We, however, discovered a lack of process support to develop self-adaptive systems with reuse. To that end, we propose a domain-engineering based methodology, Autonomic Software Product Lines engineering (ASPLe), which provides step-by-step guidelines for developing families of SASS with systematic reuse. The evaluation results from a case study show positive effects on quality and reuse for self-adaptive systems designed using the ASPLe compared to state-of-the-art engineering practices.

  • 7.
    Abdiju, Kushtrim
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Exploring a New Way of Food Inventory Management in Households Using Modern Technologies to Reduce Food Waste2019Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Food waste is becoming an increasing threat to the environment and the economy. Estimates indicate that annually, a third of the food produced around the world ends up being wasted. Only one-fourth of that food is enough to take nearly a billion people out of starvation. Food waste is especially higher in more developed countries, including most of the states in the European Union and the USA. Sector-wise, food is being lost from field to fork, with households topping the charts. Overbuying, not knowing what already is in the fridge, unaware of the food until it eventually expires, are among the most common reasons that contribute to the food waste. The potential prevention of such massive waste could significantly reduce the amount of greenhouse gas emissions around the world and help the economy of the households including all the parties involved in food production, distributing and retailing.

    On the other hand, technology has progressed in very rapid steps. The advancement of AI, ML, IoT, and voice-enabled devices has revolutionized many industries and has made us more efficient as human beings. Unfortunately, these advancements haven't yet had any significant impact in assisting families with their food choices and in preventing them from overbuying and throwing food away. Most of the proposed solutions addressing this issue, do not get integrated into everyday life. That is because they require a lot of manual input, rely entirely on mobile phones, do not show immediate results to keep users motivated, and on top of all, for the sole fact that modern lives are quite complex, and although an important issue, food waste is not an everyday cause of concern of an average person.

    This thesis takes into account all of the shortcomings of the previous works and aims to create a more sustainable solution by exploring new ways of food inventory management in the households by automating the process so that users don't have to manually enter the data themselves. The proposed solution consists of a device that should be easily mounted into any fridge and acts as an interface between users and their food inventory. The device contains a bar-code scanner for the item input and a back-end that is capable of recognizing the item and can in return show user-friendly and valuable information such as the approximate price of the item, the approximate due date etc. and notifies users when an item is about to expire so that they can take appropriate actions.

    7 out of 9 participants in the final conceptual design study said they would use this solution in their homes. The rest of the results from the designed test cases indicate a clear excitement and interest in participants and a willingness to see the prototype in the finished state, all the comments and insights together with the future work and how the feedback will be used into the next iteration are part of the final discussion of this thesis.

    Download full text (pdf)
    kushtrim-abdiu-thesis
  • 8.
    Achilleos, Achilleas
    et al.
    Frederick University, Cyprus.
    Mettouris, Christos
    University of Cyprus, Cyprus.
    Yeratziotis, Alexandros
    University of Cyprus, Cyprus.
    Papadopoulos, George
    University of Cyprus, Cyprus.
    Pllana, Sabri
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Huber, Florian
    SYNYO GmbH, Austria.
    Jäger, Bernhard
    SYNYO GmbH, Austria.
    Leitner, Peter
    SYNYO GmbH, Austria.
    Ocsovszky, Zsófia
    BioTalentum Ltd, Hungary.
    Dinnyés, András
    BioTalentum Ltd, Hungary.
    SciChallenge: A Social Media Aware Platform for Contest-Based STEM Education and Motivation of Young Students2019In: IEEE Transactions on Learning Technologies, ISSN 1939-1382, E-ISSN 1939-1382, Vol. 12, no 1, p. 98-111Article in journal (Refereed)
    Abstract [en]

    Scientific and technological innovations have become increasingly important as we face the benefits and challenges of both globalization and a knowledge-based economy. Still, enrolment rates in STEM degrees are low in many European countries and consequently there is a lack of adequately educated workforce in industries. We believe that this can be mainly attributed to pedagogical issues, such as the lack of engaging hands-on activities utilized for science and math education in middle and high schools. In this paper, we report our work in the SciChallenge European project, which aims at increasing the interest of pre-university students in STEM disciplines, through its distinguishing feature, the systematic use of social media for providing and evaluation of the student-generated content. A social media-aware contest and platform were thus developed and tested in a pan-European contest that attracted >700 participants. The statistical analysis and results revealed that the platform and contest positively influenced participants STEM learning and motivation, while only the gender factor for the younger study group appeared to affect the outcomes (confidence level – p<.05).

  • 9.
    Alexeeva, Zoya
    et al.
    ABB Corporate Research, Germany.
    Perez-Palacin, Diego
    Politecnico di Milano, Italy.
    Mirandola, Raffaela
    Politecnico di Milano, Italy.
    Design Decision Documentation: A Literature Overview2016In: Software Architecture: 10th European Conference, ECSA 2016, Copenhagen, Denmark, November 28 -- December 2, 2016, Proceedings / [ed] Bedir Tekinerdogan, Uwe Zdun, Ali Babar, Springer, 2016, p. 84-101Conference paper (Refereed)
    Abstract [en]

    Despite the abundance of research on methodologies for the documentation of design decisions and the evidence linking documentation to the improvement in the systems evolution, their practical adoption seems to be sparse. To understand this issue, we have conducted an overview of state-of-the-art on documentation of design decisions. We pursue an identification of characteristics of the different techniques proposed in the literature, such as the final goal of the documentation, the quantity of information attached to each decision documentation, the rigour of the proposed technique or its level of automation. To unveil these, we propose six classification dimensions, relevant for the industrial application, and use them to structure and analyse the review results. This work contributes with a taxonomy of the area, a structured overview covering 96 publications and a summary of open questions, which can be addressed by future research to facilitate practical adoption.

  • 10.
    Ambrosius, Robin
    et al.
    Dezember IT GmbH, Germany.
    Ericsson, Morgan
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Löwe, Welf
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Wingkvist, Anna
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Interviews Aided with Machine Learning2018In: Perspectives in Business Informatics Research. BIR 2018: 17th International Conference, BIR 2018, Stockholm, Sweden, September 24-26, 2018, Proceedings / [ed] Zdravkovic J., Grabis J., Nurcan S., Stirna J., Springer, 2018, Vol. 330, p. 202-216Conference paper (Refereed)
    Abstract [en]

    We have designed and implemented a Computer Aided Personal Interview (CAPI) system that learns from expert interviews and can support less experienced interviewers by for example suggesting questions to ask or skip. We were particularly interested to streamline the due diligence process when estimating the value for software startups. For our design we evaluated some machine learning algorithms and their trade-offs, and in a small case study we evaluates their implementation and performance. We find that while there is room for improvement, the system can learn and recommend questions. The CAPI system can in principle be applied to any domain in which long interview sessions should be shortened without sacrificing the quality of the assessment.

  • 11.
    Andersson, Jesper
    Växjö University, Faculty of Mathematics/Science/Technology, School of Mathematics and Systems Engineering. Datalogi.
    Dynamic Software Architectures2007Doctoral thesis, monograph (Other academic)
    Abstract [en]

    Software architecture is a software engineering discipline that

    provides notations and processes for high-level partitioning of

    systems' responsibilities early in the software design process. This

    thesis is concerned with a specific subclass of systems, systems with a dynamic software architecture. They have practical applications in various domains such as high-availability systems and ubiquitous computing.

    In a dynamic software architecture, the set of architectural elements and the configuration of these elements may change at run-time. These modifications are motivated by changed system requirements or by changed execution environments. The implications of change events may be the addition of new functionality or re-configuration to meet new Quality of Service requirements.

    This thesis investigates new modeling and implementation techniques for dynamic software architectures. The field of Dynamic Architecture is surveyed and a common ground defined. We introduce new concepts and techniques that simplify understanding, modeling, and implementation of systems with a dynamic architecture, with this common ground as our starting point. In addition, we investigate practical use and reuse of quality implementations, where a dynamic software architecture is a

    fundamental design principle.

    The main contributions are a taxonomy, a classification, and a set of architectural patterns for dynamic software architecture. The taxonomy and classification support analysis, while the patterns affect design and implementation work directly. The investigation of practical applications of dynamic architectures identifies several issues concerned with use and reuse, and discusses alternatives and solutions where possible.

    The results are based on surveys, case studies, and exploratory development of dynamic software architectures in different

    application domains using several approaches. The taxonomy,

    classification and architecture patterns are evaluated through several experimental prototypes, among others, a high-performance scientific computing platform.

  • 12.
    Andersson, Jesper
    et al.
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Bencomo, Nelly
    Baresi, Luciano
    Lemos, Rogerio de
    Gorla, Alessandra
    Inverardi, Paola
    Vogel, Thomas
    Software Engineering Processes for Self-adaptive Systems2013In: Software Engineering for Self-Adaptive Systems International Seminar Dagstuhl Castle, Germany, October 24-29, 2010 Revised Selected and Invited Papers / [ed] Rogério Lemos, Holger Giese, Hausi A. Müller, Mary Shaw, Springer, 2013, p. 51-75Chapter in book (Refereed)
    Abstract [en]

    In this paper, we discuss how for self-adaptive systems someactivities that traditionally occur at development-time are moved to runtime. Responsibilities for these activities shift from software engineers tothe system itself, causing the traditional boundary between development time and run-time to blur. As a consequence, we argue how the traditional  software engineering process needs to be reconceptualized to distinguishvboth development-time and run-time activities, and to support designers in taking decisions on how to properly engineer such systems.Furthermore, we identify a number of challenges related to this required reconceptualization, and we propose initial ideas based on process modeling.We use the Software and Systems Process Engineering Meta-Model(SPEM) to specify which activities are meant to be performed o-line andon-line, and also the dependencies between them. The proposed models should capture information about the costs and benets of shifting activitiesto run-time, since such models should support software engineers in their decisions when they are engineering self-adaptive systems.

  • 13.
    Andersson, Jesper
    et al.
    Växjö University, Faculty of Mathematics/Science/Technology, School of Mathematics and Systems Engineering.
    de Lemos, Rogerio
    Malek, Sam
    Weyns, Danny
    Katholieke Universiteit Leuven.
    Reflecting on self-adaptive software systems2009In: Software Engineering for Adaptive and Self-Managing Systems, 2009. SEAMS '09. ICSE Workshop on, 2009, Vol. 0, p. 38-47Conference paper (Refereed)
  • 14.
    Andersson, Jesper
    et al.
    Växjö University, Faculty of Mathematics/Science/Technology, School of Mathematics and Systems Engineering.
    de Lemos, Rogério
    Malek, Sam
    Weyns, Danny
    Katholieke Universiteit Leuven.
    Modeling Dimensions of Self-Adaptive Software Systems2009In: Software Engineering for Self-Adaptive Systems / [ed] Betty H.C. Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi and Jeff Magee, Springer, 2009, Vol. 5525, p. 27-47Chapter in book (Other academic)
  • 15.
    Andersson, Jesper
    et al.
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Grassi, Vincenzo
    University of Roma Tor Vergata, Italy.
    Mirandola, Raffaela
    Polytechnic University of Milan, Italy.
    Perez-Palacin, Diego
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    A Distilled Characterization of Resilience and Its Embraced Properties Based on State-Spaces2019In: Software Engineering for Resilient Systems: 11th International Workshop, SERENE 2019, Naples, Italy, September 17, 2019, Proceedings / [ed] Radu Calinescu & Felicita Di Giandomenico, Springer, 2019, p. 11-25Conference paper (Refereed)
    Abstract [en]

    In recent years, we have observed the increasing interest in the system property resilience. We ascribe this increasing interest to the rapidly growing number of deployed, complex, socio-technical systems, which are facing uncertainty about changes they are expected to experience during their life-cycle and ways to deal with them. This paper contributes to current resilience research by focusing on the different definitions given for this system property, highlighting the risk that, using different terms in different communities, this contributes to create a “tower of Babel” problem, with the consequent difficulty in exchanging ideas and working together towards a common goal. We adopt an extended definition of dependability to define resilience. Based on that, we identify features of resilient systems, capture properties falling under the resilience umbrella, and define a conceptual framework for resilience characterization including how changes affect the system, strategies to design resilience, and discuss metrics for quantifying resilience at design and runtime.

  • 16.
    Andersson, Jesper
    et al.
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Heberle, Andreas
    Kirchner, Jens
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Löwe, Welf
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Service Level Achievements: Distributed Knowledge for Optimal Service Selection2011In: Proceedings - 9th IEEE European Conference on Web Services, ECOWS 2011 / [ed] Gianluigi Zavattaro, Ulf Schreier, and Cesare Pautasso, IEEE, 2011, p. 125-132Conference paper (Refereed)
    Abstract [en]

    In a service-oriented setting, where services are composed to provide end user functionality, it is a challenge to find the service components with best-fit functionality and quality. A decision based on information mainly provided by service providers is inadequate as it cannot be trusted in general. In this paper, we discuss service compositions in an open market scenario where an automated best-fit service selection and composition is based on Service Level Achievements instead. Continuous monitoring updates the actual Service Level Achievements which can lead to dynamically changing compositions. Measurements of real life services exemplify the approach.

  • 17.
    Andersson, Johan
    et al.
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Norrman, Fredrik
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Container Orchestration: the Migration Path to Kubernetes2020Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    As IT platforms grow larger and more complex, so does the underlying infrastructure. Virtualization is an essential factor for more efficient resource allocation, improving both the management and environmental impact. It allows more robust solutions and facilitates the use of IaC (infrastructure ascode). Many systems developed today consist of containerized microservices. Considered the standard of container orchestration, Kubernetes is the natural next step for many companies. But how do we move on from previous solutions to a Kubernetes cluster? We found that there are not a lot of detailed enough guidelines available, and set out to gain more knowledge by diving into the subject - implementing prototypes that would act as a foundation for a resulting guideline of how it can be done.

    Download full text (pdf)
    fulltext
  • 18.
    Anton, Andersson
    et al.
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Runbert, Johan
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Cross-platform Mobile Development and Internet of Things: Developing a cross-platform mobile application using web technologies to interact with smart things2015Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    Today more and more objects in our daily lives are getting connected to the Internet. This phenomenon is called the Internet of Things and is a way for physical things such as cars, buildings or even bus stations to get access and communicate with other objects using the Internet. The problem is that for every Internet of Things device, an application is often needed in order to communicate with these devices. Developing mobile applications in a separate programming language for each operating system can be an expensive and time consuming task.

    In this thesis, we implement and evaluate a cross-platform mobile solution for users to interact with smart things using the advantages of web technologies. To compare previous findings in this area, two literature reviews has been performed to find out which is the state of the art on cross-platform mobile development frameworks and smart-things technologies used for interacting with physical objects. The result is a mobile application developed using PhoneGap and jQuery Mobile that interacts with iBeacons, where students inside a university building can get directions and schedules for different rooms.

    The application received good results from a couple of usability studies, and performed well when measuring its performance. The outcome shows that web technologies that exist today are a viable solution to native mobile applications in terms of interacting with smart things such as tagging technologies.

    Download full text (pdf)
    fulltext
  • 19.
    Ardagna, Danilo
    et al.
    Politecnico di Milano, Italy.
    Bernardi, Simona
    University Center for Defense, Spain.
    Gianniti, Eugenio
    Politecnico di Milano, Italy.
    Aliabadi, Soroush Karimian
    Sharif University of Technology, Iran.
    Perez-Palacin, Diego
    Politecnico di Milano, Italy.
    Requeno, José Ignacio
    University of Zaragoza, Spain.
    Modeling performance of Hadoop applications: A journey from queueing networks to stochastic well formed nets2016In: Algorithms and Architectures for Parallel Processing: 16th International Conference, ICA3PP 2016, Granada, Spain, December 14-16, 2016, Proceedings / [ed] Jesus Carretero, Javier Garcia-Blas, Ryan K.L. Ko, Peter Mueller, Koji Nakano, Springer, 2016, p. 599-613Conference paper (Refereed)
    Abstract [en]

    Nowadays, many enterprises commit to the extraction of actionable knowledge from huge datasets as part of their core business activities. Applications belong to very different domains such as fraud detection or one-to-one marketing, and encompass business analytics and support to decision making in both private and public sectors. In these scenarios, a central place is held by the MapReduce framework and in particular its open source implementation, Apache Hadoop. In such environments, new challenges arise in the area of jobs performance prediction, with the needs to provide Service Level Agreement guarantees to the end-user and to avoid waste of computational resources. In this paper we provide performance analysis models to estimate MapReduce job execution times in Hadoop clusters governed by the YARN Capacity Scheduler. We propose models of increasing complexity and accuracy, ranging from queueing networks to stochastic well formed nets, able to estimate job performance under a number of scenarios of interest, including also unreliable resources. The accuracy of our models is evaluated by considering the TPC-DS industry benchmark running experiments on Amazon EC2 and the CINECA Italian supercomputing center. The results have shown that the average accuracy we can achieve is in the range 9–14%.

  • 20.
    Artac, Matej
    et al.
    XLAB, Slovenia.
    Borovsak, Tadej
    XLAB, Slovenia.
    Di Nitto, Elisabetta
    The Polytechnic University of Milan, Italy.
    Guerriero, Michele
    The Polytechnic University of Milan, Italy.
    Perez-Palacin, Diego
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Tamburri, Damian Andrew
    The Polytechnic University of Milan, Italy.
    Infrastructure-as-code for data-intensive architectures: a model-driven development approach2018In: 2018 IEEE 15th International Conference on Software Architecture (ICSA), IEEE, 2018, p. 156-165Conference paper (Refereed)
    Abstract [en]

    As part of the DevOps tactics, Infrastructure-as- Code (IaC) provides the ability to create, configure, and manage complex infrastructures by means of executable code. Writing IaC, however, is not an easy task, since it requires blending different infrastructure programming languages and abstractions, each specialized on a particular aspect of infrastructure creation, configuration, and management. Moreover, the more the architectures become large and complex (e.g. Data-Intensive or Microservice-based architectures), the more dire the need of IaC becomes. The goal of this paper is to exploit Model- Driven Engineering (MDE) to create language-agnostic models that are then automatically transformed into IaC. We focus on the domain of Data-Intensive Applications as these typically exploit complex infrastructures which demand sophisticated and fine-grained configuration and re-configuration — we show that, through our approach, called DICER, it is possible to create complex IaC with significant amounts of time savings, both in IaC design as well as deployment and re-deployment times.

  • 21.
    Ata-Ul-Nasar, Mansoor
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Modeling Intel® Cilk™ Plus Programs with Unified Modeling Languages2015Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    Recently multi-core processors have become very popular in computer systems. It allows multiple threads to be executed simultaneously. The advantage of multi-core comes by parallelizing codes to expand the work across hardware. Furthermore, this can be done by using a parallel environment developed by M.I.T. called Intel Cilk Plus, which is design to provide an easy and well-structured parallel programming approach.

         Intel Cilk Plus is an extension of C and C++ programming languages that describes data parallelism. This extension is very helpful and easy to use among other languages in this field. It has different features including keywords, reducers and array notations etc. In general, this article describes Intel Cilk Plus and its features. In addition, Unified Modelling Language, activity diagrams are used in term of graphical modelling of Intel Cilk Plus by describing the process of a system, capturing the dynamic behaviour of it and representing the flow from one activity to another using control flow. Later on Intel Cilk Plus keywords and UML diagrams tools will be evaluated, a comparison of different UML modelling tools will also be provided.

    Download full text (pdf)
    fulltext
  • 22.
    Bagheri, Maryam
    et al.
    Sharif University Of Technology, Iran.
    Akkaya, Ilge
    University of California at Berkeley, USA.
    Khamespanah, Ehsan
    University of Tehran, Iran ; Reykjavik University, Iceland.
    Khakpour, Narges
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM), Department of Computer Science.
    Sirjani, Marjan
    Reykjavik University, Iceland ; Mälardalen University.
    Movaghar, Ali
    Sharif University Of Technology, Iran.
    Lee, Edward A.
    University of California at Berkeley, USA.
    Coordinated actors for reliable self-adaptive systems2017In: FACS 2016: The 13th International Conference on Formal Aspects of Component Software, Springer, 2017, p. 241-259Conference paper (Refereed)
    Abstract [en]

    Self-adaptive systems are systems that automatically adapt in response to environmental and internal changes, such as possible failures and variations in resource availability. Such systems are often realized by a MAPE-K feedback loop, where Monitor, Analyze, Plan and Execute components have access to a runtime model of the system and environment which is kept in the Knowledge component. In order to provide guarantees on the correctness of a self-adaptive system at runtime, the MAPE-K feedback loop needs to be extended with assurance techniques. To address this issue, we propose a coordinated actor-based approach to build a reusable and scalable model@runtime for self-adaptive systems in the domain of track-based traffic control systems. We demonstrate the approach by implementing an automated Air Traffic Control system (ATC) using Ptolemy tool.We compare different adaptation policies on the ATC model based on performance metrics and analyze combination of policies in different configurations of the model. We enriched our framework with runtime performance analysis such that for any unexpected change, subsequent behavior of the model is predicted and results are used for adaptation at the change-point. Moreover, the developed framework enables checking safety properties at runtime. © Springer International Publishing AG 2017.

  • 23.
    Bahtiyar, Muhammed Yasin
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    JClone: Syntax tree based clone detection for Java2010Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    An unavoidable amount of money is spent on maintaining existing software systems today. Software maintenance cost generally higher than development cost of the system therefore lowering maintenance cost is highly appreciated in software industry.

    A significant part of maintenance activities is related to repeating the investigation of problems and applying repeated solutions several times. A software system may contain a common bug in several different places and it might take extra effort and time to fix all existences of this bug. This operation commonly increases the cost of Software Maintenance Activities.

    Detecting duplicate code fragments can significantly decrease the time and effort therefore the maintenance cost. Clone code detection can be achieved via analyzing the source code of given software system. An abstract syntax tree based clone detector for java systems is designed and implemented through this study.

    This master thesis examines a software engineering process to create an abstract syntax tree based clone detector for the projects implemented in Java programming language.

    Download full text (pdf)
    FULLTEXT01
  • 24.
    Bahtiyar, Muhammed Yasin
    Växjö University, Faculty of Mathematics/Science/Technology, School of Mathematics and Systems Engineering.
    Software Architecture Checker2008Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    By the increasing needs of software industry, software systems became more complex constructions than ever before. As a result of increasing complexity in software systems, functional decomposition of these systems gains the status of the most important aspect in the software development process. Dividing problems to sub-problems and producing specific solutions for divided parts makes it easier to solve the main problem.

    Component Based Software Engineering is a way of developing software systems that consists of logically or functionally decomposed components which integrated to each other by the help of well-defined interfaces. CBSE relies on architectural design of a software system.

    Planning phase and implementation of a software project may differ time to time. Because of the complexity of software systems, solving specific problems may affect the architecture of the whole system.

    In spite of sophisticated software engineering processes and CASE tools there is still a large gap between the planned and implemented architecture of software systems. Finding deviations from architecture in source code is a non-trivial task requiring tool support.

    Since, matching operation of designed software architecture and implemented software architecture needs to check design documents against implementation code. This manual checking operation is nearly impossible for major software systems. Software Architecture Checker provides a great approach to check the architecture of any software system.

    This bachelor thesis examines the approach behind the Software Architecture Checker.

    Download full text (pdf)
    FULLTEXT01
  • 25.
    Baykal, Emre
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Ad-hoc Data Transfer for Android Devices2012Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Download full text (pdf)
    Emre Baykal - Master Thesis
  • 26.
    Bernardi, Simona
    et al.
    Univ Zaragoza, Spain.
    Gomez, Abel
    Univ Oberta Catalunya UOC, Spain.
    Merseguer, Jose
    Univ Zaragoza, Spain.
    Perez-Palacin, Diego
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Requeno, Jose, I
    Univ Complutense Madrid, Spain.
    DICE simulation: a tool for software performance assessment at the design stage2022In: Automated Software Engineering: An International Journal, ISSN 0928-8910, E-ISSN 1573-7535, Vol. 29, article id 36Article in journal (Refereed)
    Abstract [en]

    In recent years, we have seen many performance fiascos in the deployment of new systems, such as the US health insurance web. This paper describes the functionality and architecture, as well as success stories, of a tool that helps address these types of issues. The tool allows assessing software designs regarding quality, in particular performance and reliability. Starting from a UML design with quality annotations, the tool applies model-transformation techniques to yield analyzable models. Such models are then leveraged by the tool to compute quality metrics. Finally, quality results, over the design, are presented to the engineer, in terms of the problem domain. Hence, the tool is an asset for the software engineer to evaluate system quality through software designs. While leveraging the Eclipse platform, the tool uses UML and the MARTE, DAM and DICE profiles for the system design and the quality modeling.

    Download full text (pdf)
    fulltext
  • 27.
    Boucké, N.
    et al.
    Katholieke University Leuven.
    Weyns, Danny
    Katholieke University Leuven.
    Holvoet, Tom
    Katholieke University Leuven.
    Composition of architectural models: Empirical analysis and language support2010In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 83, no 11, p. 2108-2127Article in journal (Refereed)
    Abstract [en]

    Managing the architectural description (AD) of a complex software system and maintaining consistency among the different models is a demanding task. To understand the underlying problems, we analyse several non-trivial software architectures. The empirical study shows that a substantial amount of information of ADs is repeated, mainly by integrating information of different models in new models. Closer examination reveals that the absence of rigorously specified dependencies among models and the lack of support for automated composition of models are primary causes of management and consistency problems in software architecture. To tackle these problems, we introduce an approach in which compositions of models, together with relations among models, are explicitly supported in the ADL. We introduce these concepts formally and discuss a proof-of-concept instantiation of composition in xADL and its supporting tools. The approach is evaluated by comparing the original and revised ADs in an empirical study. The study indicates that our approach reduces the number of manually specified elements by 29%, and reduces the number of manual changes to elements for several realistic change scenarios by 52%.

  • 28.
    Boucké, Neils
    et al.
    Katholieke Universiteit Leuven.
    Weyns, Danny
    Katholieke Universiteit Leuven.
    Holvoet, Tom
    Katholieke Universiteit Leuven.
    View composition as a first-class concept in architectural descriptions2007Conference paper (Refereed)
    Abstract [en]

    Our position is that architectural descriptions lackcomposition of views, preventing a proper separation of concerns.This position took shape from experiences with buildingseveral complex distributed software systems. Our claim is thatview composition should be a first-class entity in architecturaldescriptions. As a first step, we propose an extension of the conceptualmodel of IEEE Recommended Practice for ArchitecturalDescription of Software-Intensive Systems with view composition.

  • 29.
    Bures, Tomas
    et al.
    Charles Univ Prague, Czech Republic.
    Calinescu, Radu
    Univ York, UK.
    Weyns, Danny
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM). Katholieke Univ Leuven, Belgium.
    Special Issue on software engineering for trustworthy cyber-physical systems2021In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 178, article id 110972Article in journal (Other academic)
  • 30.
    Bures, Tomas
    et al.
    Charles University Prague, Czech Republic.
    Weyns, Danny
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM), Department of Computer Science. Katholieke Univ Leuven, Belgium.
    Berger, Christisian
    Gothenburg University, Sweden.
    Biffl, Stefan
    Technical University Vienna, Austria.
    Daun, Marian
    Universität Duisburg-Essen, Germany.
    Gabor, Thomas
    LMU München, Germany.
    Garlan, David
    Carnegie Mellon University, USA.
    Gerostathopoulos, Ilias
    Charles University Prague, Czech Republic.
    Julien, Christine
    University of Texas, USA.
    Krikava, Filip
    Czech Technical University, Czech Republic.
    Pronios, Nikos
    Innovate, UK.
    Software Engineering for Smart Cyber-Physical Systems - Towards a Research Agenda: Report on the First International Workshop on Software Engineering for Smart CPS2015In: Software Engineering Notes: an Informal Newsletter of The Specia, ISSN 0163-5948, E-ISSN 1943-5843, Vol. 40, no 6, p. 28-32Article in journal (Other academic)
    Abstract [en]

    Cyber-Physical Systems (CPS) are large interconnected softwareintensivesystems that influence, by sensing and actuating, thephysical world. Examples are traffic management and power grids.One of the trends we observe is the need to endow such systemswith the “smart” capabilities, typically in the form of selfawarenessand self-adaptation, along with the traditional qualitiesof safety and dependability. These requirements combined withspecifics of the domain of smart CPS – such as large scale, the roleof end-users, uncertainty, and open-endedness – render traditionalsoftware engineering (SE) techniques not directly applicable; makingsystematic SE of smart CPS a challenging task. This paperreports on the results of the First International Workshop on SoftwareEngineering of Smart Cyber-Physical Systems (SEsCPS2015), where participants discussed characteristics, challenges andopportunities of SE for smart CPS, with the aim to outline anagenda for future research in this important area.

  • 31.
    Bures, Tomás
    et al.
    Charles University Prague, Czech Republic.
    Weyns, DannyLinnaeus University, Faculty of Technology, Department of Computer Science.Klein, MarkSEI, Carnegie Mellon University, USA.Haber, Rodolfo ESpanish Council for Scientific Research, Spain.
    7th IEEE International Conference on  Software Engineering (ICSE), 2015 IEEE/ACM 3 (Volume:2 )2015Conference proceedings (editor) (Refereed)
    Abstract [en]

    Cyber-physical system (CPS) have been recognized as a top-priority in research and development. The innovations sought for CPS demand them to deal effectively with dynamicity of their environment, to be scalable, adaptive, tolerant to threats, etc. -- i.e. they have to be smart. Although approaches insoftware engineering (SE) exist that individually meet these demands, their synergy to address the challenges of smart CPS (sCPS) in a holistic manner remains an open challenge. The workshop focuses on software engineering challenges for sCPS. The goals are to increase the understanding of problems of SE for sCPS, study foundational principles for engineering sCPS, and identify promising SE solutions for sCPS. Based on these goals, the workshop aims to formulate a research agenda for SE of sCPS.

  • 32.
    Buttar, Sarpreet Singh
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Applying Artificial Neural Networks to Reduce the Adaptation Space in Self-Adaptive Systems: an exploratory work2019Independent thesis Advanced level (degree of Master (One Year)), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    Self-adaptive systems have limited time to adjust their configurations whenever their adaptation goals, i.e., quality requirements, are violated due to some runtime uncertainties. Within the available time, they need to analyze their adaptation space, i.e., a set of configurations, to find the best adaptation option, i.e., configuration, that can achieve their adaptation goals. Existing formal analysis approaches find the best adaptation option by analyzing the entire adaptation space. However, exhaustive analysis requires time and resources and is therefore only efficient when the adaptation space is small. The size of the adaptation space is often in hundreds or thousands, which makes formal analysis approaches inefficient in large-scale self-adaptive systems. In this thesis, we tackle this problem by presenting an online learning approach that enables formal analysis approaches to analyze large adaptation spaces efficiently. The approach integrates with the standard feedback loop and reduces the adaptation space to a subset of adaptation options that are relevant to the current runtime uncertainties. The subset is then analyzed by the formal analysis approaches, which allows them to complete the analysis faster and efficiently within the available time. We evaluate our approach on two different instances of an Internet of Things application. The evaluation shows that our approach dramatically reduces the adaptation space and analysis time without compromising the adaptation goals.

    Download full text (pdf)
    fulltext
  • 33.
    Buzo, Amir
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Intelligent Data Layer:: An approach to generating data layer from normalized database model.2012Independent thesis Advanced level (degree of Master (One Year)), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    Model View Controller (MVC) software architecture is widely spread and commonly used in application’s development. Therefore generation of data layer for the database model is able to reduce cost and time. After research on current Object Relational Mapping (ORM) tools, it was discovered that there are generating tools like Data Access Object (DAO) and Hibernate, however their usage causes problems like inefficiency and slow performance due to many connections with database and set up time. Most of these tools are trying to solve specific problems rather than generating a data layer which is an important component and the bottom layer of database centred applications.

    The proposed solution to the problem is an engineering approach where we have designed a tool named Generated Intelligent Data Layer (GIDL). GIDL tool generates small models which create the main data layer of the system according to the Database Model. The goal of this tool is to enable and allow software developers to work only with object without deep knowledge in SQL.

    The problem of transaction and commit is solved by the tool. Also filter objects are constructed for filtering the database. GIDL tool reduced the number of connections and also have a cache where to store object lists and modify them. The tool is compared under the same environment with Hibernate and showed a better performance in terms of time evaluations for the same functions. GIDL tool is beneficial for software developers, because it generates the entire data layer.

    Download full text (pdf)
    Intelligent Data Layer-Amir Buzo
  • 34.
    Börstler, Jürgen
    et al.
    Blekinge Institute of Technology, Sweden.
    Bennin, Kwabena E.
    Wageningen University and Research, The Netherlands.
    Hooshangi, Sara
    Virginia Tech, USA.
    Jeuring, Johan
    Utrecht University, The Netherlands.
    Keuning, Hieke
    Utrecht University, The Netherlands.
    Kleiner, Carsten
    University of Applied Sciences & Arts Hannover, Germany.
    MacKellar, Bonnie
    St John’s University, USA.
    Duran, Rodrigo
    Aalto University, Finland.
    Störrle, Harald
    QAware GmbH, Germany.
    Toll, Daniel
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    van Assema, Jelle
    University of Amsterdam, The Netherlands.
    Developers talking about code quality2023In: Empirical Software Engineering, ISSN 1382-3256, E-ISSN 1573-7616, Vol. 28, no 6, article id 128Article in journal (Refereed)
    Abstract [en]

    There are many aspects of code quality, some of which are difficult to capture or to measure. Despite the importance of software quality, there is a lack of commonly accepted measures or indicators for code quality that can be linked to quality attributes. We investigate software developers’ perceptions of source code quality and the practices they recommend to achieve these qualities. We analyze data from semi-structured interviews with 34 professional software developers, programming teachers and students from Europe and the U.S. For the interviews, participants were asked to bring code examples to exemplify what they consider good and bad code, respectively. Readability and structure were used most commonly as defining properties for quality code. Together with documentation, they were also suggested as the most common target properties for quality improvement. When discussing actual code, developers focused on structure, comprehensibility and readability as quality properties. When analyzing relationships between properties, the most commonly talked about target property was comprehensibility. Documentation, structure and readability were named most frequently as source properties to achieve good comprehensibility. Some of the most important source code properties contributing to code quality as perceived by developers lack clear definitions and are difficult to capture. More research is therefore necessary to measure the structure, comprehensibility and readability of code in ways that matter for developers and to relate these measures of code structure, comprehensibility and readability to common software quality attributes.

    Download full text (pdf)
    fulltext
  • 35.
    Caldas, Ricardo
    et al.
    Chalmers University of Technology, Sweden;University of Gothenburg, Sweden.
    Ghzouli, Razan
    Chalmers University of Technology, Sweden;University of Gothenburg, Sweden.
    Papadopoulos, Alessandro V.
    Mälardalen University, Sweden.
    Pelliccione, Patrizio
    Chalmers University of Technology, Sweden;University of Gothenburg, Sweden.
    Weyns, Danny
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM). KU Leuven, Belgium.
    Berger, Torsten
    Chalmers University of Technology, Sweden;University of Gothenburg, Sweden.
    Towards Mapping Control Theory and Software Engineering Properties using Specification Patterns2021In: Proceedings - 2021 IEEE International Conference on Autonomic Computing and Self-Organizing Systems Companion, ACSOS-C 2021, IEEE, 2021, p. 281-286Conference paper (Refereed)
    Abstract [en]

    A traditional approach to realize self-adaptation in software engineering (SE) is by means of feedback loops. The goals of the system can be specified as formal properties that are verified against models of the system. On the other hand, control theory (CT) provides a well-established foundation for designing feedback loop systems and providing guarantees for essential properties, such as stability, settling time, and steady state error. Currently, it is an open question whether and how traditional SE approaches to self-adaptation consider properties from CT. Answering this question is challenging given the principle differences in representing properties in both fields. In this paper, we take a first step to answer this question. We follow a bottom up approach where we specify a control design (in Simulink) for a case inspired by Scuderia Ferrari (F1) and provide evidence for stability and safety. The design is then transferred into code (in C) that is further optimized. Next, we define properties that enable verifying whether the control properties still hold at code level. Then, we consolidate the solution by mapping the properties in both worlds using specification patterns as common language and we verify the correctness of this mapping. The mapping offers a reusable artifact to solve similar problems. Finally, we outline opportunities for future work, particularly to refine and extend the mapping and investigate how it can improve the engineering of self-adaptive systems for both SE and CT engineers. © 2021 IEEE.

  • 36.
    Calinescu, Radu
    et al.
    Univ York, UK.
    Weyns, Danny
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM). Katholieke Univ Leuven, Belgium.
    Gerasimou, Simos
    Univ York, UK.
    Habli, Ibrahim
    Univ York, UK.
    Architecting Trustworthy Self-adaptive Systems (Tutorial)2019In: 2019 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE COMPANION (ICSA-C 2019), IEEE, 2019, p. 3-4Conference paper (Refereed)
  • 37.
    Calinescu, Radu
    et al.
    University of York, UK.
    Weyns, Danny
    Katholieke Univ Leuven, Belgium.
    Gerasimou, Simos
    University of York, UK.
    Iftikhar, Muhammad Usman
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    Habli, Ibrahim
    University of York, UK.
    Kelly, Tim
    University of York, UK.
    Engineering Trustworthy Self-Adaptive Software with Dynamic Assurance Cases2018In: IEEE Transactions on Software Engineering, ISSN 0098-5589, E-ISSN 1939-3520, Vol. 44, no 11, p. 1039-1069Article in journal (Refereed)
    Abstract [en]

    Building on concepts drawn from control theory, self-adaptive software handles environmental and internal uncertainties by dynamically adjusting its architecture and parameters in response to events such as workload changes and component failures. Self-adaptive software is increasingly expected to meet strict functional and non-functional requirements in applications from areas as diverse as manufacturing, healthcare and finance. To address this need, we introduce a methodology for the systematic ENgineering of TRUstworthy Self-adaptive sofTware (ENTRUST). ENTRUST uses a combination of (1) design-time and runtime modelling and verification, and (2) industry-adopted assurance processes to develop trustworthy self-adaptive software and assurance cases arguing the suitability of the software for its intended application. To evaluate the effectiveness of our methodology, we present a tool-supported instance of ENTRUST and its use to develop proof-of-concept self-adaptive software for embedded and service-based systems from the oceanic monitoring and e-finance domains, respectively. The experimental results show that ENTRUST can be used to engineer self-adaptive software systems in different application domains and to generate dynamic assurance cases for these systems.

  • 38.
    Caporuscio, Mauro
    et al.
    Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).
    De Toma, Marco
    Univ Aquila, Italy.
    Muccini, Henry
    Univ Aquila, Italy.
    Vaidhyanathan, Karthik
    Univ Aquila, Italy.
    A Machine Learning Approach to Service Discovery for Microservice Architectures2021In: Software Architecture, ECSA 2021 / [ed] Biffl, S Navarro, E Lowe, W Sirjani, M Mirandola, R Weyns, D, Springer, 2021, Vol. 12857, p. 66-82Conference paper (Refereed)
    Abstract [en]

    Service discovery mechanisms have continuously evolved during the last years to support the effective and efficient service composition in large-scale microservice applications. Still, the dynamic nature of services (and of their contexts) are being rarely taken into account for maximizing the desired quality of service. This paper proposes using machine learning techniques, as part of the service discovery process, to select microservice instances in a given context, maximize QoS, and take into account the continuous changes in the execution environment. Both deep neural networks and reinforcement learning techniques are used. Experimental results show how the proposed approach outperforms traditional service discovery mechanisms.

  • 39.
    Caporuscio, Mauro
    et al.
    Politecnico di Milano, Italy .
    Funaro, Marco
    Politecnico di Milano, Italy .
    Ghezzi, Carlo
    Politecnico di Milano, Italy .
    Architectural Issues of Adaptive Pervasive Systems2010In: Graph Transformations and Model-Driven Engineering / [ed] Engels, Gregor; Lewerentz, Claus; Schäfer, Wilhelm; Schürr, Andy; Westfechtel, Bernhard, Springer, 2010, Vol. 5765, p. 492-511Chapter in book (Refereed)
    Abstract [en]

    Pervasive systems are often made out of distributed software components that run on different computational units (appliances, sensing and actuating devices, computers). Such components are often developed, maintained, and even operated by different parties. Applications are increasingly built by dynamically discovering and composing such components in a situation-aware manner. By this we mean that applications follow some strategies to self-organize themselves to adapt their behavior depending on the changing situation in which they operate, for example the physical environment. They may also evolve autonomously in response to changing requirements. Software architectures are considered a well-suited abstraction to achieve situational adaptation. In this paper, we review some existing architectural approaches to self-adaptation and propose a high-level meta-model for architectures that supports dynamic adaptation. The meta-model is then instantiated in a specific ambient computing case study, which is used to illustrate its applicability.

  • 40.
    Caporuscio, Mauro
    et al.
    Politecnico di Milano, Italy.
    Funaro, Marco
    Politecnico di Milano, Italy.
    Ghezzi, Carlo
    Politecnico di Milano, Italy.
    RESTful Service Architectures for Pervasive Networking Environments2011In: REST: From Research to Practice / [ed] Wilde, Erik; Pautasso, Cesare, Springer, 2011, p. 401-422Chapter in book (Refereed)
    Abstract [en]

    Computing facilities are an essential part of the fabric of our society, and an ever-increasing number of computing devices is deployed within the environment in which we live. The vision of pervasive computing is becoming real. To exploit the opportunities offered by pervasiveness, we need to revisit the classic software development methods to meet new requirements: (1) pervasive applications should be able to dynamically configure themselves, also benefiting from third-party functionalities discovered at run time and (2) pervasive applications should be aware of, and resilient to, environmental changes. In this chapter we focus on the software architecture, with the goal of facilitating both the development and the run-time adaptation of pervasive applications. More specifically we investigate the adoption of the REST architectural style to deal with pervasive environment issues. Indeed, we believe that, although REST has been introduced by observing and analyzing the structure of the Internet, its field of applicability is not restricted to it. The chapter also illustrates a proof-of-concept example, and then discusses the advantages of choosing REST over other styles in pervasive environments.

  • 41.
    Caporuscio, Mauro
    et al.
    Università dellýAquila, Italy.
    Inverardi, Paola
    Università dellýAquila, Italy.
    Pelliccione, Patrizio
    Università dellýAquila, Italy.
    Compositional Verification of Middleware-Based Software Architecture Descriptions2004In: Proceedings of the 26th International Conference on Software Engineering (ICSE '04), IEEE Press, 2004, p. 221-230Conference paper (Refereed)
    Abstract [en]

    In this paper we present a compositional reasoning to verify middleware-based software architecturedescriptions. We consider a nowadays typical software system development, namely the development of a software application A on a middleware M. Our goal is to efficiently integrate verification techniques, like model checking, in the software life cycle in order to improve the overall software quality. The approach exploits the structure imposed on the system by the software architecture in order to develop an assume-guarantee methodology to reduce properties verification from global to local. We apply the methodology on a non-trivial case study namely the development of a Gnutella system on top of the SIENA event-notification middleware.

  • 42.
    Caporuscio, Mauro
    et al.
    INRIA-Rocquencourt, France.
    Issarny, Valerie
    INRIA-Rocquencourt, France.
    A UML 2.0 Profile for Architecting B3G Applications2007In: Rapid Integration of Software Engineering Techniques / [ed] Guelfi, Nicolas; Buchs, Didier, Springer, 2007, Vol. 4401, p. 18-34Chapter in book (Other academic)
    Abstract [en]

    B3G is an emerging network technology which conceives the convergence of telecommunication and IP-based networks for providing enhanced services able to transfer both voice and non-voice data through wired and wireless networks. Moreover, B3G networks can be no longer considered as “passive” entities which only transport data between end-points, but they must be considered as “active” parties that have their own behavior and provide services. This creates a completely new application domain where applying current software engineering design tools, such as software architectures, fails. In fact, dealing with B3G networks requires to explicit low-level details usually abstracted by the architectural descriptions.

    To this extent, we present an ongoing work on investigating B3G-oriented application modeling. In particular, we propose an enhanced UML profile to define and analyze software architectures that explicitly exploit the B3G domain properties.

  • 43.
    Caporuscio, Mauro
    et al.
    Università dell Aquila, Italy.
    Marco, Antinisca Di
    Università dell Aquila, Italy.
    Inverardi, Paola
    Università dell Aquila, Italy.
    Model-based system reconfiguration for dynamic performance management2007In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 80, no 4, p. 455-473Article in journal (Refereed)
    Abstract [en]

    Recently, growing attention focused on run-time management of Quality of Service (QoS) of complex software systems. In this context, system reconfiguration is considered a useful technique to manage QoS. Several reconfiguration approaches to performance management exist that help systems to maintain performance requirements at run time. However, many of them use prefixed strategies that are in general coded in the application or in the reconfiguration framework.

    In this work we propose a framework to manage performance of software systems at run time based on monitoring and model-based performance evaluation. The approach makes use of software architectures as abstractions of the managed system to avoid unnecessary details that can heavily affect the model evaluation in terms of complexity and resolution time.

  • 44.
    Caporuscio, Mauro
    et al.
    Universitá dell'Aquila, Italy.
    Marco, Antinisca Di
    Universitá dell'Aquila, Italy.
    Inverardi, Paola
    Universitá dell'Aquila, Italy.
    Run-time Performance Management of the Siena Publish/Subscribe Middleware2005In: Proceedings of the 5th International Workshop on Software and Performance (WOSP '05), ACM Press, 2005, p. 65-74Conference paper (Refereed)
    Abstract [en]

    Recently, growing attention is focused on run-time management of Quality of Service (QoS) of complex software systems. In this context, self-adaptation of applications, based on runtime monitoring and dynamic reconfiguration, is considered a useful technique to manage/negotiate QoS. Several defined approaches to dynamic performance management propose the use of on-line model-based evaluation of the managed application in order to choose the new application configuration for improving the QoS. In a previous work we defined a methodology to manage performance of soft-ware system at run-time based on model-based performance evaluation. To avoid unnecessary details the performance model represents the managed application at the Software Architecture level. In this work we apply and implement this approach to dynamic manage the performance of the SIENA publish/subscribe event notification service.

  • 45.
    Caporuscio, Mauro
    et al.
    Linnaeus University, Faculty of Technology, Department of Computer Science.
    Mirandola, Raffaela
    Politecnico di Milano, Italy.
    Trubiani, Catia
    Gran Sasso Science Institute, Italy.
    QoS-based Feedback for Service Compositions2015In: Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures, ACM Press, 2015, p. 37-42Conference paper (Refereed)
    Abstract [en]

    The Service Oriented Architecture is boosting a fast move from developing applications as stand-alone systems, to developing applications as composition of autonomous and heterogeneous services. Service compositions are required to adapt dynamically to changing workloads, scenarios and objectives, and to achieve a certain Quality of Service (QoS). Guaranteeing such requirements is not a trivial task, since run-time variability makes the process of devising service compositions challenging for software designers. In this paper, we exploit the QoS analysis at run time to support software design, highlighting service compositions where QoS predictions are not reliable enough. To this end, we propose a QoS-based feedback framework that makes use of design-time and run-time knowledge to manage QoS data over time, and support software architect while devising a service composition that best fits QoS requirements. We illustrate the feasibility and effectiveness of the approach on a case study from the e-health domain.

  • 46.
    Caporuscio, Mauro
    et al.
    Università dell’Aquila, Italy.
    Muccini, Henry
    Università dell’Aquila, Italy.
    Pelliccione, Patrizio
    Università dell’Aquila, Italy.
    Nisio, Ezio
    Università dell’Aquila, Italy.
    Rapid System Development Via Product Line Architecture Implementation2006In: Rapid Integration of Software Engineering Techniques / [ed] Guelfi, Nicolas; Savidis, Anthony, Springer, 2006, Vol. 3943, p. 18-33Chapter in book (Other academic)
    Abstract [en]

    Software Product Line (SPL) engineering allows designers to reason about an entire family of software applications, instead of a single product, with a strategic importance for the rapid development of new applications. While much effort has been spent so far in understanding and modeling SPLs and their architectures, very little attention has been given on how to systematically enforce SPL architectural decisions into the implementation step.

    In this paper we propose a methodological approach and an implementation framework, based on a plugin component-based development, which allows us to move from an architectural specification of the SPL to its implementation in a systematic way. We show the suitability of this framework through its application to the TOOL one case study SPL.

  • 47.
    Caporuscio, Mauro
    et al.
    INRIA, France.
    Raverdy, Pierre-Guillaume
    INRIA, France.
    Moungla, Hassine
    INRIA, France.
    Issarny, Valerie
    INRIA, France.
    ubiSOAP: A Service Oriented Middleware for Seamless Networking2008In: Service-Oriented Computing “ ICSOC 2008: Proceedings of 6th International Conference, Sydney, Australia, December 1-5, 2008 / [ed] Bouguettaya, Athman; Krueger, Ingolf; Margaria, Tiziana, Springer, 2008, Vol. 5364, p. 195-209Chapter in book (Other academic)
    Abstract [en]

    The computing and networking capacities of today’s wireless portable devices allow for pervasive services, which are seamlessly networked. Indeed, wireless handheld devices now embed the necessary resources to act as both service clients and providers. However, the seamless networking of services remains challenged by the inherent mobility and resource constraints of devices, which make services a priori highly volatile. This paper discusses the design, implementation and experimentation of the ubiSOAP service-oriented middleware, which leverages wireless networking capacities to effectively enable the seamless networking of services. ubiSOAP specifically defines a layered communication middleware that underlies standard SOAP-based middleware, hence supporting legacy services while exploiting nowadays pervasive connectivity.

  • 48.
    Caporuscio, Mauro
    et al.
    Università degli Studi di L’Aquila, Italy.
    Ruscio, Davide
    Università degli Studi di L’Aquila, Italy.
    Inverardi, Paola
    Università degli Studi di L’Aquila, Italy.
    Pelliccione, Patrizio
    Università degli Studi di L’Aquila, Italy.
    Pierantonio, Alfonso
    Università degli Studi di L’Aquila, Italy.
    Engineering MDA into Compositional Reasoning for Analyzing Middleware-Based Applications2005In: Software Architecture: Proceedings of the 2nd European Workshop, EWSA 2005, Pisa, Italy, June 13-14, 2005. / [ed] Morrison, Ron; Oquendo, Flavio, Springer, 2005, Vol. 3527, p. 130-145Chapter in book (Other academic)
    Abstract [en]

    Behavioral analysis of middleware-based applications typically requires the analysis of the middleware and the application, in a monolithic way. In terms of model-checking, this is a complex task and may result in the well known “state-explosion” problem. These considerations led us to investigate a compositional verification approach which decomposes the system in accordance with its Software Architecture. The architectural decomposability theorem we defined in previous work decomposes the system into three logical layer: (i) application components, (ii) proxies and, (iii)middleware. This logical separation allows for reducing the global system validation to the verification of local behaviors.

    In this paper, we engineer the architectural decomposability theorem to the analysis of middleware-based applications by automatically generating the proxies needed by the components in order to properly interact with each other via the middleware. In particular, following the Model Driven Architecture approach and by making use of the Abstract State Machine formalism, we describe a set of transformation rules that allow for deriving correct proxies for using CORBA. By means of the proposed transformations, the correctness of the proxy behavioral models is guaranteed without the need to validate them with respect to the assumptions posed by the theorem.

  • 49.
    Cardoso, Roberto Speicys
    et al.
    INRIA, France.
    Caporuscio, Mauro
    Politecnico di Milano, Italy.
    Exploring Multi-Path Communication in Hybrid Mobile Ad Hoc Networks2010In: International Journal of Ambient Computing and Intelligence (IJACI), ISSN 1941-6237, E-ISSN 1941-6245, Vol. 2, no 4, p. 1-12Article in journal (Refereed)
    Abstract [en]

    Ambient computing requires the integration of multiple mobile heterogeneous networks. Multi-path communication in such scenarios can provide reliability and privacy benefits. Even though the properties of multi-path routing have been extensively studied and a number of algorithms proposed, implementation of such techniques can be tricky, particularly when resource-constrained nodes are connected to each other through hybrid networks with different characteristics. In this paper, the authors discuss the challenges involved in implementing multipath communication on a middleware for hybrid mobile ad hoc networks. The authors present the PLASTIC middleware, several compelling applications of multi-path communication and the main issues concerning their implementation as a primitive middleware-provided communication.

  • 50.
    Carlbring Alm, Jakob
    Linnaeus University, Faculty of Science and Engineering, School of Computer Science, Physics and Mathematics.
    Kontextfaktorbaserade ljudeffekter i hasardroulette online.: Påverkan på utövare.2011Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [sv]

    Denna studie presenterar en ny synvinkel inom ämnet att göra hasardspel online mer realistiska. Fjorton personer spelade i tjugo minuter två versioner av ett välkänt franskt roulettespel där utvalda variabler loggades. Den ena versionen fungerade precis som i ett skarpt läge medan den andra innehöll en implementation av kontextfaktorbaserade ljudeffekter. Utifrån loggningen av variabler, samt en kompletterande enkätundersökning, räknades det sedan ut om det förekom någon skillnad mellan versionerna och, i förlängning, spellupplevelsen.

    Resultatet jag fick fram redovisade förändringar i några av de variabler som hade valts ut och enkätundersökningen indikerade på att det kan ha varit ljudeffekterna som skapat denna förändring.

    Download full text (pdf)
    [fulltext] Kontextfaktorbaserade ljudeffekter i hasardroulette online
1234567 1 - 50 of 368
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf