skip to main content
10.1145/1352678.1352680acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicdlConference Proceedingsconference-collections
research-article

Change-oriented software engineering

Published:25 August 2007Publication History

ABSTRACT

We propose a first-class change model for Change-Oriented Software Engineering (COSE). Based on an evolution scenario, we identify a lack of support in current Interactive Development Environments (IDEs) to apply COSE. We introduce a set of five extensions to an existing model of first-class changes and describe the desired behaviour of change-oriented IDEs to support COSE. With the help of an evolution scenario, we show why those extensions are required. Finally we describe ChEOPS: a prototypical implementation of a change-oriented IDE on top of VisualWorks and illustrate how it supports the extended first-class change model. ChEOPS is finally used to validate COSE as a solution for the shortcomings of existing IDEs.

References

  1. Estublier, J.: Software configuration management: a roadmap. In: ICSE -- Future of Software Engineering Track. (2000) 279--289 Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Robbes, R., Lanza, M.: Versioning systems for evolution research. In: Proceedings of Eighth International Workshop on Principles of Software Evolution, IEEE Computer Society (2005) 155--164 Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Robbes, R., Lanza, M.: A change-based approach to software evolution. Electronic Notes in Theoretical Computer Science (2007) 93--109 Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Howard, T., Goldberg, A.: VisualWorks -- Application Developer's Guide. Cincom Systems (1993-2005)Google ScholarGoogle Scholar
  5. University of Illinois at Urbana-Champaign: Visualworks: Change list tool. http://wiki.cs.uiuc.edu/VisualWorks/Change+List+Tool (2007)Google ScholarGoogle Scholar
  6. Mens, K., Michiels, I., Wuyts, R.: Supporting software development through declaratively codified programming patterns. In: Journal on Expert Systems with Applications. Volume 23., Elsevier Publications (2002) 405--413Google ScholarGoogle Scholar
  7. The Eclipse Corporation: Eclipse. http://eclipse.org (2007)Google ScholarGoogle Scholar
  8. Demeyer, S., Tichelaar, S., Steyaert, P.: FAMIX 2.0 - the FAMOOS information exchange model. Technical report, University of Berne (1999)Google ScholarGoogle Scholar
  9. Demeyer, S., Ducasse, S., Tichelaar, S.: Why famix and not uml? uml shortcomings for coping with round-trip engineering. UML'99 Conference Proceedings (1999) Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Ebraert, P., Mens, T., D'Hondt, T.: Enabling dynamic software evolution through automatic refactorings. In: Proceedings of the Workshop on Software Evolution Transformations (SET2004), Delft, Netherlands (2004)Google ScholarGoogle Scholar
  11. Price, D. R.: Cvs - open source version control. http://www.nongnu.org/cvs/ (2006)Google ScholarGoogle Scholar
  12. CollabNet: Subversion. http://subversion.tigris.org/ (2006)Google ScholarGoogle Scholar
  13. Henkel, J., Diwan, A.: Catchup!: capturing and replaying refactorings to support api evolution. In: ICSE '05: Proceedings of the 27th international conference on Software engineering. (2005) 274--283 Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. AJC Software: Ajc active backup. http://www.ajcsoft.com/AJCActBk.php (2007)Google ScholarGoogle Scholar
  15. Mogware: Filehamster - a personal revision control solution for content creators. http://www.mogware.com/FileHamster/ (2006) {Last accessed 30 May 2007}.Google ScholarGoogle Scholar
  16. Brant, J., Roberts, D.: Refactoring browser. Technical report, http://wiki.cs.uiuc.edu/RefactoringBrowser (1999)Google ScholarGoogle Scholar
  17. Dig, D., Nguyen, T. N., Manzoor, K., Johnson, R.: Molhadoref: a refactoring-aware software configuration management tool. In: OOPSLA'06 Companion, Portland (2006) Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Pelrine, J., Knight, A., Cho A. Mastering Envy/Developer Cambridge University Press (2001) Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Ekman, T., Asklund, U.: Refactoring-aware versioning in eclipse. Electr. Notes Theor. Comput. Sci. 107 (2004) 57--69 Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Kniesel, G., Koch, H.: Static composition of refactorings. Science of Computer Programming 52(1-3) (2004) 9--51 Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Other conferences
    ICDL '07: Proceedings of the 2007 international conference on Dynamic languages: in conjunction with the 15th International Smalltalk Joint Conference 2007
    August 2007
    254 pages
    ISBN:9781605580845
    DOI:10.1145/1352678

    Copyright © 2007 ACM

    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]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 25 August 2007

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    ICDL '07 Paper Acceptance Rate11of16submissions,69%Overall Acceptance Rate11of16submissions,69%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader