1. |
- Chatterjee, Bapi, 1982
(author)
-
Lock-free Concurrent Search
- 2017
-
Doctoral thesis (other academic/artistic)abstract
- The contemporary computers typically consist of multiple computing cores with high compute power. Such computers make excellent concurrent asynchronous shared memory system. On the other hand, though many celebrated books on data structure and algorithm provide a comprehensive study of sequential search data structures, unfortunately, we do not have such a luxury if concurrency comes in the setting. The present dissertation aims to address this paucity. We describe novel lock-free algorithms for concurrent data structures that target a variety of search problems. (i) Point search (membership query, predecessor query, nearest neighbour query) for 1-dimensional data: Lock-free linked-list; lock-free internal and external binary search trees (BST). (ii) Range search for 1-dimensional data: A range search method for lock-free ordered set data structures - linked-list, skip-list and BST. (iii) Point search for multi-dimensional data: Lock-free kD-tree, specially, a generic method for nearest neighbour search. We prove that the presented algorithms are linearizable i.e. the concurrent data structure operations intuitively display their sequential behaviour to an observer of the concurrent system. The lock-freedom in the introduced algorithms guarantee overall progress in an asynchronous shared memory system. We present the amortized analysis of lock-free data structures to show their efficiency. Moreover, we provide sample implementations of the algorithms and test them over extensive micro-benchmarks. Our experiments demonstrate that the implementations are scalable and perform well when compared to related existing alternative implementations on common multi-core computers. Our focus is on propounding the generic methodologies for efficient lock-free concurrent search. In this direction, we present the notion of help-optimality, which captures the optimization of amortized step complexity of the operations. In addition to that, we explore the language-portable design of lock-free data structures that aims to simplify an implementation from programmer’s point of view. Finally, our techniques to implement lock-free linearizable range search and nearest neighbour search are independent of the underlying data structures and thus are adaptive to similar data structures.
|
|
2. |
- Rumman, Nadine Abu, et al.
(author)
-
Skin deformation methods for interactive character animation
- 2017
-
In: Communications in Computer and Information Science. - Cham : Springer International Publishing. - 1865-0937 .- 1865-0929. ; 693, s. 153-174, s. 153-174
-
Conference paper (peer-reviewed)abstract
- Character animation is a vital component of contemporary computer games, animated feature films and virtual reality applications. The problem of creating appealing character animation can best be described by the title of the animation bible: “The Illusion of Life”. The focus is not on completing a given motion task, but more importantly on how this motion task is performed by the character. This does not necessarily require realistic behavior, but behavior that is believable. This of course includes the skin deformations when the character is moving. In this paper, we focus on the existing research in the area of skin deformation, ranging from skeleton-based deformation and volume preserving techniques to physically based skinning methods. We also summarize the recent contributions in deformable and soft body simulations for articulated characters, and discuss various geometric and example-based approaches. © Springer International Publishing AG 2017.
|
|
3. |
- Aramrattana, Maytheewat, 1988-, et al.
(author)
-
Team Halmstad Approach to Cooperative Driving in the Grand Cooperative Driving Challenge 2016
- 2018
-
In: IEEE transactions on intelligent transportation systems (Print). - Piscataway, N.J. : Institute of Electrical and Electronics Engineers Inc.. - 1524-9050 .- 1558-0016. ; 19:4, s. 1248-1261
-
Journal article (peer-reviewed)abstract
- This paper is an experience report of team Halmstad from the participation in a competition organised by the i-GAME project, the Grand Cooperative Driving Challenge 2016. The competition was held in Helmond, The Netherlands, during the last weekend of May 2016. We give an overview of our car’s control and communication system that was developed for the competition following the requirements and specifications of the i-GAME project. In particular, we describe our implementation of cooperative adaptive cruise control, our solution to the communication and logging requirements, as well as the high level decision making support. For the actual competition we did not manage to completely reach all of the goals set out by the organizers as well as ourselves. However, this did not prevent us from outperforming the competition. Moreover, the competition allowed us to collect data for further evaluation of our solutions to cooperative driving. Thus, we discuss what we believe were the strong points of our system, and discuss post-competition evaluation of the developments that were not fully integrated into our system during competition time. © 2000-2011 IEEE.
|
|
4. |
- Bainomugisha, Engineer, et al.
(author)
-
Message from Chairs of SEiA 2018
- 2018
-
In: Proceedings - International Conference on Software Engineering. - New York, NY, USA : ACM. - 0270-5257. ; 2018, s. x-xi
-
Conference paper (other academic/artistic)
|
|
5. |
- Laaber, C., et al.
(author)
-
An Evaluation of Open-Source Software Microbenchmark Suites for Continuous Performance Assessment
- 2018
-
In: MSR '18 Proceedings of the 15th International Conference on Mining Software Repositories. - New York, NY, USA : ACM Digital Library. - 9781450357166 ; , s. 119-130, s. 119-130
-
Book chapter (other academic/artistic)abstract
- Continuous integration (CI) emphasizes quick feedback to developers. This is at odds with current practice of performance testing, which predominantely focuses on long-running tests against entire systems in production-like environments. Alternatively, software microbenchmarking attempts to establish a performance baseline for small code fragments in short time. This paper investigates the quality of microbenchmark suites with a focus on suitability to deliver quick performance feedback and CI integration. We study ten open-source libraries written in Java and Go with benchmark suite sizes ranging from 16 to 983 tests, and runtimes between 11 minutes and 8.75 hours. We show that our study subjects include benchmarks with result variability of 50% or higher, indicating that not all benchmarks are useful for reliable discovery of slow-downs. We further artificially inject actual slowdowns into public API methods of the study subjects and test whether test suites are able to discover them. We introduce a performance-test quality metric called the API benchmarking score (ABS). ABS represents a benchmark suite's ability to find slowdowns among a set of defined core API methods. Resulting benchmarking scores (i.e., fraction of discovered slowdowns) vary between 10% and 100% for the study subjects. This paper's methodology and results can be used to (1) assess the quality of existing microbenchmark suites, (2) select a set of tests to be run as part of CI, and (3) suggest or generate benchmarks for currently untested parts of an API.
|
|
6. |
- Mallozzi, Piergiuseppe, 1990, et al.
(author)
-
A runtime monitoring framework to enforce invariants on reinforcement learning agents exploring complex environments
- 2019
-
In: RoSE 2019, IEEE/ACM 2nd International Workshop on Robotics Software Engineering, p.5-12. - : IEEE. - 9781728122496
-
Conference paper (peer-reviewed)abstract
- © 2019 IEEE. Without prior knowledge of the environment, a software agent can learn to achieve a goal using machine learning. Model-free Reinforcement Learning (RL) can be used to make the agent explore the environment and learn to achieve its goal by trial and error. Discovering effective policies to achieve the goal in a complex environment is a major challenge for RL. Furthermore, in safety-critical applications, such as robotics, an unsafe action may cause catastrophic consequences in the agent or in the environment. In this paper, we present an approach that uses runtime monitoring to prevent the reinforcement learning agent to perform 'wrong' actions and to exploit prior knowledge to smartly explore the environment. Each monitor is de?ned by a property that we want to enforce to the agent and a context. The monitors are orchestrated by a meta-monitor that activates and deactivates them dynamically according to the context in which the agent is learning. We have evaluated our approach by training the agent in randomly generated learning environments. Our results show that our approach blocks the agent from performing dangerous and safety-critical actions in all the generated environments. Besides, our approach helps the agent to achieve its goal faster by providing feedback and shaping its reward during learning.
|
|
7. |
- Sandklef, Henrik, 1971, et al.
(author)
-
Programming with Java
- 2017
-
Book (other academic/artistic)abstract
- Course literature in programming with Java
|
|
8. |
- Scheuner, Joel, 1991, et al.
(author)
-
Performance Benchmarking of Infrastructure-as-a-Service (IaaS) Clouds with CloudWorkBench
- 2019
-
In: ICPE 2019 - Companion of the 2019 ACM/SPEC International Conference on Performance Engineering. - New York, NY, USA : ACM. ; , s. 53-56
-
Conference paper (peer-reviewed)abstract
- The continuing growth of the cloud computing market has led to an unprecedented diversity of cloud services with different performance characteristics. To support service selection, researchers and practitioners conduct cloud performance benchmarking by measuring and objectively comparing the performance of different providers and configurations (e.g., instance types in different data center regions). In this tutorial, we demonstrate how to write performance tests for IaaS clouds using the Web-based benchmarking tool Cloud WorkBench (CWB). We will motivate and introduce benchmarking of IaaS cloud in general, demonstrate the execution of a simple benchmark in a public cloud environment, summarize the CWB tool architecture, and interactively develop and deploy a more advanced benchmark together with the participants.
|
|
9. |
- Chatterjee, Bapi, 1982
(author)
-
Efficient Implementation of Concurrent Data Structures on Multi-core and Many-core Architectures
- 2015
-
Licentiate thesis (other academic/artistic)abstract
- Synchronization of concurrent threads is the central problem in order to design efficient concurrent data-structures. The compute systems widely available in market are increasingly becoming heterogeneous involving multi-core Central Processing Units (CPUs) and many-core Graphics Processing Units (GPUs). This thesis contributes to the research of efficient synchronization in concurrent data-structures in more than one way. It is divided into two parts. In the first part, a novel design of a Set Abstract Data Type (ADT) based on an efficient lock-free Binary Search Tree (BST) with improved amortized bounds of the time complexity of set operations - Add, Remove and Contains, is presented. In the second part, a comprehensive evaluation of concurrent Queue implementations on multi-core CPUs as well as many-core GPUs are presented. Efficient Lock-free BST -To the best of our knowledge, the lock-free BST presented in this thesis is the first to achieve an amortized complexity of O(H(n)+c) for all Set operations where H(n) is the height of a BST on n nodes and c is the contention measure. Also, the presented lock-free algorithm of BST comes with an improved disjoint-access-parallelism compared to the previously existing concurrent BST algorithms. This algorithm uses single-word compare-and-swap (CAS) primitives. The presented algorithm is linearizable. We implemented the algorithm in Java and it shows good scalability. Evaluation of concurrent data-structures - We have evaluated the performance of a number of concurrent FIFO Queue algorithms on multi-core CPUs and many-core GPUs. We studied the portability of existing design of concurrent Queues from CPUs to GPUs which are inherently designed for SIMD programs. We observed that in general concurrent queues offer them to efficient implementation on GPUs with faster cache memory and better performance support for atomic synchronization primitives such as CAS. To the best of our knowledge, this is the first attempt to evaluate a concurrent data-structure on GPUs.
|
|
10. |
- Menghi, Claudio, 1987, et al.
(author)
-
Poster: Property specification patterns for robotic missions
- 2018
-
In: Proceedings - International Conference on Software Engineering. - New York, NY, USA : ACM. - 0270-5257. ; Part F137351, s. 434-435
-
Conference paper (peer-reviewed)abstract
- Engineering dependable software for mobile robots is becoming increasingly important. A core asset in engineering mobile robots is the mission specification-A formal description of the goals that mobile robots shall achieve. Such mission specifications are used, among others, to synthesize, verify, simulate, or guide the engineering of robot software. Development of precise mission specifications is challenging. Engineers need to translate the mission requirements into specification structures expressed in a logical language-A laborious and error-prone task. To mitigate this problem, we present a catalog of mission specification patterns for mobile robots. Our focus is on robot movement, one of the most prominent and recurrent specification problems for mobile robots. Our catalog maps common mission specification problems to recurrent solutions, which we provide as templates that can be used by engineers. The patterns are the result of analyzing missions extracted from the literature. For each pattern, we describe usage intent, known uses, relationships to other patterns, and-most importantly-A template representing the solution as a logical formula in temporal logic. Our specification patterns constitute reusable building blocks that can be used by engineers to create complex mission specifications while reducing specification mistakes. We believe that our patterns support researchers working on tool support and techniques to synthesize and verify mission specifications, and language designers creating rich domain-specific languages for mobile robots, incorporating our patterns as language concepts.
|
|
11. |
- Nguyen, Björnborg, 1992, et al.
(author)
-
Systematic benchmarking for reproducibility of computer vision algorithms for real-time systems: The example of optic flow estimation
- 2019
-
In: IEEE International Conference on Intelligent Robots and Systems. - : IEEE. - 2153-0858 .- 2153-0866. ; , s. 5264-5269
-
Conference paper (peer-reviewed)abstract
- Until now there have been few formalized methods for conducting systematic benchmarking aiming at reproducible results when it comes to computer vision algorithms. This is evident from lists of algorithms submitted to prominent datasets, authors of a novel method in many cases primarily state the performance of their algorithms in relation to a shallow description of the hardware system where it was evaluated. There are significant problems linked to this non-systematic approach of reporting performance, especially when comparing different approaches and when it comes to the reproducibility of claimed results. Furthermore how to conduct retrospective performance analysis such as an algorithm's suitability for embedded real-time systems over time with underlying hardware and software changes in place. This paper proposes and demonstrates a systematic way of addressing such challenges by adopting containerization of software aiming at formalization and reproducibility of benchmarks. Our results show maintainers of broadly accepted datasets in the computer vision community to strive for systematic comparison and reproducibility of submissions to increase the value and adoption of computer vision algorithms in the future.
|
|
12. |
- Peldszus, Sven, et al.
(author)
-
Secure Data-Flow Compliance Checks between Models and Code Based on Automated Mappings
- 2019
-
In: Proceedings - 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems, MODELS 2019. ; , s. 23-33
-
Conference paper (peer-reviewed)abstract
- During the development of security-critical software, the system implementation must capture the security properties postulated by the architectural design. This paper presents an approach to support secure data-flow compliance checks between design models and code. To iteratively guide the developer in discovering such compliance violations we introduce automated mappings. These mappings are created by searching for correspondences between a design-level model (Security Data Flow Diagram) and an implementation-level model (Program Model). We limit the search space by considering name similarities between model elements and code elements as well as by the use of heuristic rules for matching data-flow structures. The main contributions of this paper are three-fold. First, the automated mappings support the designer in an early discovery of implementation absence, convergence, and divergence with respect to the planned software design. Second, the mappings also support the discovery of secure data-flow compliance violations in terms of illegal asset flows in the software implementation. Third, we present our implementation of the approach as a publicly available Eclipse plugin and its evaluation on five open source Java projects (including Eclipse secure storage).
|
|
13. |
- Man, Yemao, 1987
(author)
-
Human-Machine Interface Considerations for Design and Testing in Distributed Sociotechnical Systems
- 2015
-
Licentiate thesis (other academic/artistic)abstract
- The increasing concerns for safety and environmental sustainability create demands on the development of future maritime transportation strategies. One way to meet these demands is the concept of autonomous unmanned vessels for intercontinental voyages. As automation is being introduced onboard and watch keeping operations being migrated to the shore, there is a risk introducing new human factor issues among the various stakeholder groups and add to the complexity of the actors’ roles. This licentiate was based on the context of an EU research project MUNIN (Maritime Unmanned Ship through Intelligence in Networks) about remote monitoring and controlling autonomous unmanned ships where the bridge and engine control room were moved from the ship to a land based control station.Human Machine Interface, as a mediating artefact in the complex system to bridge automation/engine control is of importance for situation awareness, reliability, efficiency, effectiveness, resilience and safety. The purpose of the thesis is to achieve a comprehensive understanding of the complexity of Human Machine Interface in a distributed complex system by exploring the experiences of the human agents during the designing and testing phases of a designed for purpose Human Machine Interface. The results reveal prominent human factor issues related to situation awareness and automation bias within such a complex distributed sociotechnical system, which sheds light on the design considerations of Human Machine Interface. Loss of presence can lead to critical perceptual bottlenecks which could negatively impact upon the operators; the organizational factors also greatly shape individual and team performance. It indicates that the contextual factors in the distributed sociotechnical system must be accommodated by the interface design through a holistic systemic approach. The Human Machine Interface shall not only support data visualization, but also the process and context in which data are utilized and understood for consensus decision-making.
|
|
14. |
- Abbas, Nadeem, 1980-, et al.
(author)
-
ASPLe : a methodology to develop self-adaptive software systems with reuse
- 2017
-
Reports (other academic/artistic)abstract
- 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.
|
|
15. |
- Abbas, Nadeem, 1980-
(author)
-
Designing Self-Adaptive Software Systems with Reuse
- 2018
-
Doctoral thesis (other academic/artistic)abstract
- 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.
|
|
16. |
- Al Sabbagh, Khaled, 1987, et al.
(author)
-
The connections between group maturity, software development velocity, and planning effectiveness
- 2018
-
In: Journal of Software-Evolution and Process. - : Wiley. - 2047-7473 .- 2047-7481. ; 30:1
-
Journal article (peer-reviewed)abstract
- Empirical evidence regarding the connection between group development (maturity) and the success of software development teams is lacking. The purpose of this research is to gain a qualitative and quantitative understanding of how velocity and planning effectiveness of software teams connect to a group development model. The Group Development Questionnaire was given to 19 software developers from 4 work groups to assess their group development maturity. The work groups' responses to the survey were checked for correlation with development velocity and planning effectiveness. Semistructured interviews were conducted with 16 individuals from the same 4 work groups to explore issues about their group maturity and to validate the responses of the interviewees in the Group Development Questionnaire. The measurement of the fourth stage of group development had a strong association with the planning effectiveness measurement, which means that a team with less issues in the fourth phase of group development is more effective in adhering to its plans. On the other hand, group development and velocity showed no significant convergent validity. We conclude that the dynamics within software development teams might correlate to their ability to deliver the expected outcome as planned but not to their ability to develop tasks faster.
|
|
17. |
- Alahyari, Hiva, 1979, et al.
(author)
-
A study of value in agile software development organizations
- 2017
-
In: Journal of Systems and Software. - : Elsevier BV. - 0164-1212 .- 1873-1228. ; 125, s. 271-288
-
Journal article (peer-reviewed)abstract
- The Agile manifesto focuses on the delivery of valuable software. In Lean, the principles emphasise value, where every activity that does not add value is seen as waste. Despite the strong focus on value, and that the primary critical success factor for software intensive product development lies in the value domain, no empirical study has investigated specifically what value is. This paper presents an empirical study that investigates how value is interpreted and prioritised, and how value is assured and measured. Data was collected through semi-structured interviews with 23 participants from 14 agile software development organisations. The contribution of this study is fourfold. First, it examines how value is perceived amongst agile software development organisations. Second, it compares the perceptions and priorities of the perceived values by domains and roles. Third, it includes an examination of what practices are used to achieve value in industry, and what hinders the achievement of value. Fourth, it characterises what measurements are used to assure, and evaluate value-creation activities. (C) 2016 Elsevier Inc. All rights reserved.
|
|
18. |
- Antinyan, Vard, 1984, et al.
(author)
-
A Complexity Measure for Textual Requirements
- 2016
-
In: Proceedings of 2016 Joint Conference of the International Workshop on Software Measurement and the International Conference on Software Process and Product Measurement (Iwsm-Mensura). - : IEEE. - 9781509041473 - 9781509041480
-
Conference paper (peer-reviewed)abstract
- Unequivocally understandable requirements are vital for software design process. However, in practice it is hard to achieve the desired level of understandability, because in large software products a substantial amount of requirements tend to have ambiguous or complex descriptions. Over time such requirements decelerate the development speed and increase the risk of late design modifications, therefore finding and improving them is an urgent task for software designers. Manual reviewing is one way of addressing the problem, but it is effort-intensive and critically slow for large products. Another way is using measurement, in which case one needs to design effective measures. In recent years there have been great endeavors in creating and validating measures for requirements understandability: most of the measures focused on ambiguous patterns. While ambiguity is one property that has major effect on understandability, there is also another important property, complexity, which also has major effect on understandability, but is relatively less investigated. In this paper we define a complexity measure for textual requirements through an action research project in a large software development organization. We also present its evaluation results in three large companies. The evaluation shows that there is a significant correlation between the measurement values and the manual assessment values of practitioners. We recommend this measure to be used with earlier created ambiguity measures as means for automated identification of complex specifications.
|
|
19. |
- Antinyan, Vard, 1984, et al.
(author)
-
Identifying Complex Functions : By Investigating Various Aspects of Code Complexity
- 2015
-
In: Proceedings of 2015 Science and Information Conference (SAI). - : IEEE Press. - 9781479985470 - 9781479985487 - 9781479985463 ; , s. 879-888
-
Conference paper (peer-reviewed)abstract
- The complexity management of software code has become one of the major problems in software development industry. With growing complexity the maintenance effort of code increases. Moreover, various aspects of complexity create difficulties for complexity assessment. The objective of this paper is to investigate the relationships of various aspects of code complexity and propose a method for identifying the most complex functions. We have conducted an action research project in two software development companies and complemented it with a study of three open source products. Four complexity metrics are measured, and their nature and mutual influence are investigated. The results and possible explanations are discussed with software engineers in industry. The results show that there are two distinguishable aspects of complexity of source code functions: Internal and outbound complexities. Those have an inverse relationship. Moreover, the product of them does not seem to be greater than a certain limit, regardless of software size. We present a method that permits identification of most complex functions considering the two aspects of complexities. The evaluation shows that the use of the method is effective in industry: It enables identification of 0.5% most complex functions out of thousands of functions for reengineering.
|
|
20. |
- Bernardy, Jean-Philippe, 1978, et al.
(author)
-
Certified Context-Free Parsing: A formalisation of Valiant's Algorithm in Agda
- 2016
-
In: Logical Methods in Computer Science. - 1860-5974. ; 12:2, s. 28-
-
Journal article (peer-reviewed)abstract
- Valiant (1975) has developed an algorithm for recognition of context free languages. As of today, it remains the algorithm with the best asymptotic complexity for this purpose. In this paper, we present an algebraic specification, implementation, and proof of correctness of a generalisation of Valiant’s algorithm. The generalisation can be used for recognition, parsing or generic calculation of the transitive closure of upper triangular matrices. The proof is certified by the Agda proof assistant. The certification is representative of state-of-the-art methods for specification and proofs in proof assistants based on type-theory. As such, this paper can be read as a tutorial for the Agda system.
|
|
21. |
- de Oliveira Neto, Francisco Gomes, et al.
(author)
-
Challenges of Aligning Requirements Engineering and System Testing in Large-Scale Agile: A Multiple Case Study
- 2017
-
In: 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW), 4-8 Sept. 2017, Lisbon, Portugal. - : IEEE. - 9781538634882
-
Conference paper (peer-reviewed)abstract
- Abstract: As agile methods become more pervasive, agile practices are applied to more large-scale systems with a scope that goes beyond pure software. The expansion of agile in these contexts provides benefits, but creates new challenges. Widespread use of agile has changed the way we must think about practices both in Requirements Engineering (RE) and in System Testing (ST). Our experience shows that many challenges in the application of large-scale agile development relate to either RE or ST, and in particular to the alignment between these areas. In this paper we present large-scale agile-related challenges from a multiple case study which relate to REST alignment. We map our challenges to an existing framework for REST alignment, and make an initial attempt to suggest agile RE practices from the literature which may alleviate these challenges. Our results show that the interviewed companies need to first adopt more agile RE practices to enhance REST alignment and then leverage agile testing. Future work will look more towards evaluating these best practices.
|
|
22. |
- Dybdal, Martin, 1987, et al.
(author)
-
Low-Level Functional GPU Programming for Parallel Algorithms
- 2016
-
In: FHPC 2016- Proceedings of the 5th International Workshop on Functional High-Performance Computing. - New York, NY, USA : ACM. - 9781450344333 ; , s. 31-37
-
Conference paper (peer-reviewed)abstract
- We present a Functional Compute Language (FCL) for low-levelGPU programming. FCL is functional in style, which allows foreasy composition of program fragments and thus easy prototypingand a high degree of code reuse. In contrast with projects such asFuthark, Accelerate, Harlan, Nessie and Delite, the intention is notto develop a language providing fully automatic optimizations, butinstead to provide a platform that supports absolute control of theGPU computation and memory hierarchies. The developer is thusrequired to have an intimate knowledge of the target platform, as isalso required when using CUDA/OpenCL directly.FCL is heavily inspired by Obsidian. However, instead of relyingon a multi-staged meta-programming approach for kernel generationusing Haskell as meta-language, FCL is completely selfcontained,and we intend it to be suitable as an intermediate languagefor data-parallel languages, including data-parallel parts ofhigh-level array languages, such as R, Matlab, and APL.We present a type-system and a dynamic semantics suitablefor understanding the performance characteristics of both FCL andObsidian-style programs. Our aim is that FCL will be useful as aplatform for developing new parallel algorithms, as well as a target languagefor various code-generators targeting GPU hardware.
|
|
23. |
- Granåsen, Magdalena, 1978-
(author)
-
Exploring C2 Capability and Effectiveness in Challenging Situations : Interorganizational Crisis Management, Military Operations and Cyber Defence
- 2019
-
Licentiate thesis (other academic/artistic)abstract
- Modern societies are affected by various threats and hazards, including natural disasters, cyber-attacks, extreme weather events and inter-state conflicts. Managing these challenging situations requires immediate actions, suspension of ordinary procedures, decision making under uncertainty and coordinated action. In other words, challenging situations put high demands on the command and control (C2) capability. To strengthen the capability of C2, it is vital to identify the prerequisites for effective coordination and direction within the domain of interest. This thesis explores C2 capability and effectiveness in three domains: interorganizational crisis management, military command and control, and cyber defence operations. The thesis aims to answer three research questions: (1) What constitutes C2 capability? (2) What constitutes C2 effectiveness? and (3) How can C2 effectiveness be assessed? The work was carried out as two case studies and one systematic literature review. The main contributions of the thesis are the identification of perspectives of C2 capability in challenging situations and an overview of approaches to C2 effectiveness assessment. Based on the results of the three studies, six recurring perspectives of capability in the domains studied were identified: interaction (collaboration), direction and coordination, relationships, situation awareness, resilience and preparedness. In the domains there are differences concerning which perspectives that are most emphasized in order obtain C2 capability. C2 effectiveness is defined as the extent to which a C2 system is successful in achieving its intended result. The thesis discusses the interconnectedness of performance and effectiveness measures, and concludes that there is not a united view on the difference between measures of effectiveness and measures of performance. Different approaches to effectiveness assessment were identified, where assessment may be conducted based on one specific issue, in relation to a defined goal for a C2 function or using a more exploratory approach.
|
|
24. |
- Horkoff, Jennifer, 1980, et al.
(author)
-
Enterprise Modeling for Business Agility
- 2018
-
In: Business & Information Systems Engineering. - : Springer Gabler. - 2363-7005 .- 1867-0202. ; 60:1, s. 1-2
-
Journal article (peer-reviewed)
|
|
25. |
- Horkoff, Jennifer, 1980, et al.
(author)
-
Experiences applying e 3 value modeling in a cross-company study
- 2018
-
In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). - Cham : Springer International Publishing. - 1611-3349 .- 0302-9743. ; 11157 LNCS, s. 610-625
-
Conference paper (peer-reviewed)abstract
- Driven by business interests, (product/customer) value has become a critical topic in system and software engineering as well as enterprise planning. The conceptual modeling community has responded to this challenge with several modeling approaches, including e3 value modeling, focusing on capturing and analyzing value flows in value networks. This modeling approach has risen from practical e-commerce experiences and has been further studied in an academic context. In this experience paper, we report the advantages and disadvantages of applying e3 value modeling as part of a cross-company case study focusing on understanding the internal and external value of APIs from a strategic perspective. We found that value modeling was generally well-received and understood by the company representatives, but also found drawbacks when used in our context, including challenges in modeling internal value networks, capturing problematic or missing values, finding quantitative value measures, and showing underlying motivations for flows. Our findings can help to improve language aspects, methods and tools, and can help to guide future value analysis in similar contexts.
|
|