Static scheduling of synchronous data flow programs for digital signal processing
IEEE Transactions on Computers
gIBIS: a hypertext tool for exploratory policy discussion
ACM Transactions on Information Systems (TOIS)
Theory of software reliability based on components
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Building systems from commerical components
Building systems from commerical components
The Pareto Envelope-Based Selection Algorithm for Multi-objective Optimisation
PPSN VI Proceedings of the 6th International Conference on Parallel Problem Solving from Nature
NFR-Assistant: Tool Support for Achieving Quality
ASSET '99 Proceedings of the 1999 IEEE Symposium on Application - Specific Systems and Software Engineering and Technology
An On-line Repository for Embedded Software
ICTAI '01 Proceedings of the 13th IEEE International Conference on Tools with Artificial Intelligence
A Component-based Approach for Embedded Software Development
ISORC '02 Proceedings of the Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
Comparison of Multiobjective Evolutionary Algorithms: Empirical Results
Evolutionary Computation
Performance scaling of multi-objective evolutionary algorithms
EMO'03 Proceedings of the 2nd international conference on Evolutionary multi-criterion optimization
A fast and elitist multiobjective genetic algorithm: NSGA-II
IEEE Transactions on Evolutionary Computation
Towards semantic-based adaptation decisions for context-aware mobile computing
Proceedings of the 2010 ACM Symposium on Applied Computing
Putting together QoS and security in autonomic pervasive systems
Proceedings of the 6th ACM workshop on QoS and security for wireless and mobile networks
Performance property prediction supporting variability for adaptive mobile systems
Proceedings of the 15th International Software Product Line Conference, Volume 2
Hi-index | 0.00 |
Component-based development (CBD) techniques have been widely used to enhance the productivity and reduce the cost for software systems development. However, applying CBD techniques to embedded software development faces additional challenges. For embedded systems, it is crucial to consider the quality of service (QoS) attributes, such as timeliness, memory limitations, output precision, and battery constraints. Frequently, multiple components implementing the same functionality with different QoS properties (measurements in terms of QoS attributes) can be used to compose a system. Also, software components may have parameters that can be configured to satisfy different QoS requirements. Composition analysis, which is used to determine the most suitable component selections and parameter settings to best satisfy the system QoS requirement, is very important in embedded software development process. In this paper, we present a model and the methodologies to facilitate composition analysis. We define QoS requirements as constraints and objectives. Composition analysis is performed based on the QoS properties and requirements to find solutions (component selections and parameter settings) that can optimize the QoS objectives while satisfying the QoS constraints. We use a multi-objective concept to model the composition analysis problem and use an evolutionary algorithm to determine the Pareto-optimal solutions efficiently.