Home  

Random  

Nearby  



Log in  



Settings  



Donate  



About Wikipedia  

Disclaimers  



Wikipedia





Component-based software engineering





Article  

Talk  



Language  

Watch  

Edit  





Component-based software engineering (CBSE), also called component-based development (CBD), is a style of software engineering that aims to construct a software system from components that are loosely-coupled and reusable. This emphasizes the separation of concerns among components.[1][2]

To find the right level of component granularity, software architects have to continuously iterate their component designs with developers. Architects need to take into account user requirements, responsibilities and architectural characteristics.[3]

Considerations

edit
 
An example of two components in UML: Checkout processes a customer's order, which requires the other one to bill the credit card.

For large-scale systems developed by large teams, a disciplined culture and process is required to achieve the benefits of CBSE.[4] Third-party components are often utilized in large systems.

The system can be designed visually with the Unified Modeling Language (UML). Each component is shown as a rectangle, and an interface is shown as a lollipop to indicate a provided interface and as a socket to indicate consumption of an interface.

Component-based usability testing is for components that interact with the end user.

References

edit
  1. ^ George T. Heineman, William T. Councill (2001). Component-Based Software Engineering: Putting the Pieces Together. Addison-Wesley Professional, Reading 2001 ISBN 0-201-70485-4
  • ^ Clemens Szyperski, Dominik Gruntz, Stephan Murer (2002). Component Software: Beyond Object-Oriented Programming. 2nd ed. ACM Press - Pearson Educational, London 2002 ISBN 0-201-74572-0
  • ^ Fundamentals of Software Architecture: An Engineering Approach. O'Reilly Media. 2020. ISBN 978-1492043454.
  • ^ Douglas C. Schmidt. "Why Software Reuse has Failed and How to Make It Work for You". Retrieved 14 May 2024.

  • Retrieved from "https://en.wikipedia.org/w/index.php?title=Component-based_software_engineering&oldid=1226023661"
     



    Last edited on 28 May 2024, at 03:58  





    Languages

     


    العربية
    Deutsch
    Español
    فارسی
    Français

    Magyar
    Norsk bokmål
    Português
    Русский
    Simple English
    Српски / srpski
    Українська

     

    Wikipedia


    This page was last edited on 28 May 2024, at 03:58 (UTC).

    Content is available under CC BY-SA 4.0 unless otherwise noted.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Terms of Use

    Desktop