Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1273463.1273473acmconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
Article

Automating component-based system assembly

Published: 09 July 2007 Publication History

Abstract

One of the major challenges in the development of large component-based software systems is the system assembly problem: from a sea of available components, which should be selected and how should they be connected, integrated, and assembled so that the overall system requirements are satisfied? We present a powerful framework for automatically solving the system assembly problem directly from system requirements. Our framework includes an expressive language for declaratively describing system-level requirements, including component interfaces and dependencies, resource requirements, safety properties, objective functions, and various types of constraints. We show how to automatically solve system assembly problems using verification technology that takes advantage of current advances in Boolean satisfiability methods. We have implemented our techniques in the CoBaSA tool (Component-Based System Assembly), and we have successfully applied it to several large-scale industrial examples.

References

[1]
C. A. 651. Arinc report 651, draft 9. Technical Report 91-207/SAI-435, Airlines Electronic Engineering Committee, September 1991.
[2]
F. Aloul, A. Ramani, I. Markov, and K. Sakallah. PBS: A backtrack search pseudo-boolean solver. In Symposium on the Theory and Applications of Satisfiability Testing (SAT), 2002.
[3]
T. Asikainen, T. Männistö, and T. Soininen. Using a configurator for modelling and configuring software product lines based on feature models. In Workshop on Software Variability Management for Product Derivation, Software Product Line Conference (SPLC3), 2004.
[4]
L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison-Wesley, 1998.
[5]
D. Batory and B. J. Geraci. Composition validation and subjectivity in GenVoca generators. IEEE Transactions on Software Engineering (IEEE TSE), pages 67--82, 1997.
[6]
D. Batory and S. O'Malley. The design and implementation of hierarchical software systems with reusable components. ACM Trans. Softw. Eng. Methodol., Volume 1(4):355--398, 1992.
[7]
D. Batory, V. Singhal, J. Thomas, S. Dasari, B. Geraci, and M. Sirkin. The GenVoca model of software-system generators. Software, IEEE, Volume 11:89--94, Sep 1994.
[8]
D. S. Batory. Feature models, grammars, and propositional formulas. In Software Product Lines, SPLC 2005, volume 3714 of Lecture Notes in Computer Science, pages 7--20. Springer, 2005.
[9]
D. Benavides, P. T. Martín-Arroyo, and A. R. Cortés. Automated reasoning on feature models. In CAiSE, volume 3520 of Lecture Notes in Computer Science, pages 491--503. Springer, 2005.
[10]
A. Bertolino and R. Mirandola. Modeling and analysis of non-functional properties in component-based systems. In TACoS 2003: Proc. International Workshop on Test and Analysis of Component Based Systems, volume 82 of Electronic Notes in Theoretical Computer Science, April 2003.
[11]
F. Cao, B. R. Bryant, C. C. Burt, R. R. Raje, A. M. Olson, and M. Auguston. A component assembly approach based on aspect-oriented generative domain modeling. Electronic Notes in Theoretical Computer
[12]
J. Cheesman and J. Daniels. UML Components: A Simple Process for Specifying Component-Based Software. Addison-Wesley, 2000.
[13]
I. Crnkovic. Component-based software engineering - new challenges in software development. Software Focus, December 2001.
[14]
I. Crnkovic and M. Larsson. Building Reliable Component-Based Software Systems. Artech House publisher, 2002.
[15]
I. Crnkovic, H. Schmidt, J. Stafford, and K. Wallnau. Automated component-based software engineering. Journal of Systems and Software, 74(1), January 2005.
[16]
G. T. Heineman and W. T. Councill. Component Based Software Engineering: Putting the Pieces Together. Addison-Wesley, 2001.
[17]
P. Inverardi and M. Tivoli. Software architecture for correct components assembly. Lecture Notes in Computer Science, Volume 2804, Nov 2003.
[18]
S. Lacour, C. Perez, and T. Priol. A software architecture for automatic deployment of CORBA components using grid technologies. In In Proceedings of the 1st Franco-phone Conference On Software Deployment and (Re)Configuration (DECOR 2004), Oct. 2004.
[19]
F. Martin and C. Fraboul. Modeling and simulation of integrated modular avionics. In Proceedings of the Sixth Euromicro Workshop on Parallel and Distributed Processing, 1998. PDP '98., pages 102--110, 1998.
[20]
N. Medvidovic and R. N. Taylor. A classification and comparison framework for software architecture description languages. IEEE Trans. Software Eng., 26(1):70--93, 2000.
[21]
M. Mikic-Rakic, S. Malek, N. Beckman, and N. Medvidovic. A tailorable environment for assessing the quality of deployment architectures in highly distributed settings. In Component Deployment, Second International Working Conference, CD 2004, volume 3083 of Lecture Notes in Computer Science, pages 1--17. Springer, 2004.
[22]
S. Mittal and F. Frayman. Towards a generic model of configuraton tasks. In IJCAI, pages 1395--1401, 1989.
[23]
Object Management Group (OMG). Response to the UML 2.0 OCL RfP Revised Submission, Version 1.6, 2003. http://www.omg.org/docs/ad/03-01-07.pdf.
[24]
D. E. Perry and A. L. Wolf. Foundations for the study of software architecture. ACM SIGSOFT Software Engineering Notes, Vol. 17(4):40--52, 1992.
[25]
P. J. Prisaznuk. Integrated modular avionics. In Proceedings of the IEEE 1992 National Aerospace and Electronics Conference (NAECON 1992), volume 1, pages 39--45, 1992.
[26]
Rational Partners, Object Management Group. UML Notation Guide, Sept. 1997. http://www.omg.org/docs/ad/97-08-04.pdf.
[27]
Rational Partners, Object Management Group. UML Semantics, Sept. 1997. http://www.omg.org/docs/ad/97-08-04.pdf.
[28]
M. A. Sánchez-Puebla and J. Carretero. A new approach for distributed computing in avionics systems. In ISICT '03: Proceedings of the 1st international symposium on Information and communication technologies, pages 579--584. Trinity College Dublin, 2003.
[29]
M. Shaw, R. DeLine, D. V. Klein, T. L. Ross, D. M. Young, and G. Zelesnik. Abstractions for software architecture and tools to support them. IEEE Transactions on Software Engineering, Vol. 21(4):314--335, 1995.
[30]
T. Soininen, J. Tiihonen, T. Männistö, and R. Sulonen. Towards a general ontology of configuration. AI EDAM, 12(4):357--372, 1998.
[31]
C. Szyperski. Component Software: Beyond Object-Oriented Programming. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2002.
[32]
K. Wallnau, S. Hissam, and R. Seacord. Building Systems from Commercial Components. SEI Series in Software Engineering. Addison-Wesley, 2002.
[33]
K. Wallnau, J. Stafford, S. Hissam, and M. Klein. On the relationship of software architecture to software component technology. In Proceedings of the 6th ECOOP Workshop on Component-Oriented Programming, 2001.
[34]
R. Warrilow. The avionics platform, 2004. See URL www.smiths-aerospace.com/Press/TechPapers/.
[35]
L. Zhang and S. Malik. The quest for efficient boolean satisfiability solvers. In 18th International Conference on Automated Deduction, CADE'02, pages 295--313, 2002. Science, Volume 114:119--136, 2005.

Cited By

View all
  • (2022)Tool-Assisted Componentization of Java Applications2022 IEEE 19th International Conference on Software Architecture (ICSA)10.1109/ICSA53651.2022.00012(36-46)Online publication date: Mar-2022
  • (2022)Modelling of Systems ArchitecturesAircraft Systems Classifications10.1002/9781119771876.ch7(257-303)Online publication date: 15-Apr-2022
  • (2021)Decentralized Task Reallocation on Parallel Computing Architectures Targeting an Avionics ApplicationJournal of Optimization Theory and Applications10.1007/s10957-021-01862-7Online publication date: 6-May-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ISSTA '07: Proceedings of the 2007 international symposium on Software testing and analysis
July 2007
258 pages
ISBN:9781595937346
DOI:10.1145/1273463
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 July 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. component-based software development
  2. integrated modular avionics
  3. pseudo-boolean satisfiability
  4. system assembly problem

Qualifiers

  • Article

Conference

ISSTA07
Sponsor:

Acceptance Rates

Overall Acceptance Rate 58 of 213 submissions, 27%

Upcoming Conference

ISSTA '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Tool-Assisted Componentization of Java Applications2022 IEEE 19th International Conference on Software Architecture (ICSA)10.1109/ICSA53651.2022.00012(36-46)Online publication date: Mar-2022
  • (2022)Modelling of Systems ArchitecturesAircraft Systems Classifications10.1002/9781119771876.ch7(257-303)Online publication date: 15-Apr-2022
  • (2021)Decentralized Task Reallocation on Parallel Computing Architectures Targeting an Avionics ApplicationJournal of Optimization Theory and Applications10.1007/s10957-021-01862-7Online publication date: 6-May-2021
  • (2019)Language Support for Navigating Architecture Design in Closed FormACM Journal on Emerging Technologies in Computing Systems10.1145/336004716:1(1-28)Online publication date: 25-Oct-2019
  • (2018)CHARIOTACM Transactions on Cyber-Physical Systems10.1145/31348442:3(1-37)Online publication date: 13-Jun-2018
  • (2017)Task allocation of safety-critical applications on reconfigurable multi-core architectures2017 IEEE/AIAA 36th Digital Avionics Systems Conference (DASC)10.1109/DASC.2017.8101992(1-10)Online publication date: Sep-2017
  • (2014)Towards Pareto-Optimal Parameter Synthesis for Monotonic Cost FunctionsProceedings of the 14th Conference on Formal Methods in Computer-Aided Design10.5555/2682923.2682935(23-30)Online publication date: 21-Oct-2014
  • (2014)Towards Pareto-optimal parameter synthesis for monotonie cost functions2014 Formal Methods in Computer-Aided Design (FMCAD)10.1109/FMCAD.2014.6987591(23-30)Online publication date: Oct-2014
  • (2013)Software Programmed by Artificial Agents toward an Autonomous Development Process for Code GenerationProceedings of the 2013 IEEE International Conference on Systems, Man, and Cybernetics10.1109/SMC.2013.561(3294-3299)Online publication date: 13-Oct-2013
  • (2013)Knowledge-driven software development for Distributed Aircraft Fuel Management2013 IEEE/AIAA 32nd Digital Avionics Systems Conference (DASC)10.1109/DASC.2013.6712634(7A5-1-7A5-12)Online publication date: Oct-2013
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media