Nothing Special   »   [go: up one dir, main page]

skip to main content
Supporting component-based software development with active component repository systems
Publisher:
  • University of Colorado at Boulder
  • College of Engineering Boulder, CO
  • United States
ISBN:978-0-493-14340-8
Order Number:AAI3005112
Pages:
187
Reflects downloads up to 30 Jan 2025Bibliometrics
Skip Abstract Section
Abstract

It is widely believed and empirically proven that component reuse improves both the quality and productivity of software development. Before software components are reused, however, they must be located. Component repository systems provide a means to locate software components. Current component repository systems are designed to support the paradigm of development-with-reuse , which views reuse as a process independent of the whole software development process and relies on programmers to take the reuse initiative. Such systems fall short in supporting programmers who make no attempt to reuse because they do not know the existence of reusable components or they perceive reuse costs more than programming from scratch.

This dissertation advocates a paradigm shift from development-with-reuse to reuse-within-development , which views reuse as an integral part of software development, and component repository systems as information systems that augment programmers' insufficient knowledge about reusable components and assist them in accomplishing their tasks. Active component repository systems —component repository systems equipped with active information delivery mechanisms—support reuse-within-development. They can be seamlessly integrated with programming environments. Through this integration, their active information delivery mechanism delivers task-relevant and user-specific components, without being given explicit reuse queries, to help programmers reuse unknown components and to reduce the cost of reuse.

An active component repository system, CodeBroker , has been developed and evaluated. CodeBroker runs continuously in the background of a programming environment and infers programmers' needs for reusable components by monitoring their interactions with the environment. Potentially reusable components that match reuse queries extracted from comments and signatures in the programming environment are autonomously located and actively delivered to programmers. Formal evaluations of the CodeBroker system have indicated that it motivated programmers to reuse once relevant components were delivered, and that it was able to deliver components relevant to both the task and the background knowledge of programmers.

Cited By

  1. Kim D, Nam S and Hong J (2019). A dynamic control technique to enhance the flexibility of software artifact reuse in large-scale repository, The Journal of Supercomputing, 75:4, (2027-2057), Online publication date: 1-Apr-2019.
  2. ACM
    Gill N and Tomar P (2010). Modified development process of component-based software engineering, ACM SIGSOFT Software Engineering Notes, 35:2, (1-6), Online publication date: 27-Mar-2010.
  3. ACM
    Hummel O Facilitating the comparison of software retrieval systems through a reference reuse collection Proceedings of 2010 ICSE Workshop on Search-driven Development: Users, Infrastructure, Tools and Evaluation, (17-20)
  4. ACM
    Arnold K and Lieberman H Managing ambiguity in programming by finding unambiguous examples Proceedings of the ACM international conference on Object oriented programming systems languages and applications, (877-884)
  5. ACM
    Arnold K and Lieberman H (2010). Managing ambiguity in programming by finding unambiguous examples, ACM SIGPLAN Notices, 45:10, (877-884), Online publication date: 17-Oct-2010.
  6. Janjic W, Stoll D, Bostan P and Atkinson C Lowering the barrier to reuse through test-driven search Proceedings of the 2009 ICSE Workshop on Search-Driven Development-Users, Infrastructure, Tools and Evaluation, (21-24)
  7. ACM
    Farooq U (2006). Eureka! past, present, and future of creativity research in HCI, XRDS: Crossroads, The ACM Magazine for Students, 12:3, (8-8), Online publication date: 1-May-2006.
  8. ACM
    Mascena J, Meira S, de Almeida E and Garcia V Towards an effective integrated reuse environment Proceedings of the 5th international conference on Generative programming and component engineering, (95-100)
  9. Elias G, Dias J, Filho S, Cavalcanti G, Schuenck M and Negócio Y Improving reuse of off-the-shelf components with shared, distributed component repository systems Proceedings of the 9th international conference on Reuse of Off-the-Shelf Components, (415-418)
  10. ACM
    Fischer G Distances and diversity Proceedings of the 5th conference on Creativity & cognition, (128-136)
  11. ACM
    Farooq U (2005). Eureka! past, present, and future of creativity research in HCI, XRDS: Crossroads, The ACM Magazine for Students, 12:2, (6-6), Online publication date: 1-Dec-2005.
  12. Ye Y and Fischer G (2005). Reuse-Conducive Development Environments, Automated Software Engineering, 12:2, (199-235), Online publication date: 1-Apr-2005.
  13. ACM
    Farooq U, Carroll J and Ganoe C Supporting creativity in distributed scientific communities Proceedings of the 2005 ACM International Conference on Supporting Group Work, (217-226)
  14. ACM
    Ye Y and Fischer G Information delivery in support of learning reusable software components on demand Proceedings of the 7th international conference on Intelligent user interfaces, (159-166)
  15. ACM
    Ye Y and Fischer G Supporting reuse by delivering task-relevant and personalized information Proceedings of the 24th International Conference on Software Engineering, (513-523)
  16. Ye Y and Fischer G Context-Aware Browsing of Large Component Repositories Proceedings of the 16th IEEE international conference on Automated software engineering
Contributors
  • Software Research Associates, Inc
  • University of Colorado Boulder
Please enable JavaScript to view thecomments powered by Disqus.

Recommendations