A third-party extension support framework using patterns

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

    Abstract

    Software extension is a fundamental challenge in software engineering which involves extending the functionalities of a software module without modifying it. Many modern software developers choose to adapt third-party extension platform to further improve customizability. As the project evolves, the requirements may change to include third-party extension support. However to design and to implement such platform is no trivial task, and should happen at the beginning of the project. In this paper, we have shown the four types of extensions that are often made to object-oriented software, namely Member Access Extension, Subclass Extension, Event-based Extension and Data Extension. And proposed a language-independent platform design that can be applied to an existing software project to support such third-party extensions. The platform exercises design patterns to implement its features. We also developed an Eclipse plugin that helps developers introduce the platform to existing Java software via semi-automatic code manipulation. We further conducted a comparative experiment to test our tool with volunteers from Waseda University and noticed a significant decrease of required effort.

    Original languageEnglish
    Title of host publicationProceedings - 22nd Asia-Pacific Software Engineering Conference, APSEC 2015
    PublisherIEEE Computer Society
    Pages198-205
    Number of pages8
    Volume2016-May
    ISBN (Electronic)9781467396448
    DOIs
    Publication statusPublished - 2016 May 9
    Event22nd Asia-Pacific Software Engineering Conference, APSEC 2015 - New Delhi, India
    Duration: 2015 Dec 12015 Dec 4

    Other

    Other22nd Asia-Pacific Software Engineering Conference, APSEC 2015
    CountryIndia
    CityNew Delhi
    Period15/12/115/12/4

      Fingerprint

    Keywords

    • Design pattern
    • Extensibility
    • Extension
    • Plugin

    ASJC Scopus subject areas

    • Software

    Cite this

    Hao, Y., Washizaki, H., & Fukazawa, Y. (2016). A third-party extension support framework using patterns. In Proceedings - 22nd Asia-Pacific Software Engineering Conference, APSEC 2015 (Vol. 2016-May, pp. 198-205). [7467301] IEEE Computer Society. https://doi.org/10.1109/APSEC.2015.36