skip to main content
research-article

A model for versioning control mechanism in component-based systems

Published: 30 September 2011 Publication History

Abstract

Component-based systems provide a better reuse of software components, greater flexibility, scalability and higher quality of services. Component development generally takes place due to the process of creating and propagating changes in requirement definitions, system designs, program source code, documentation and test data. As a result, multiple versions of constituent components come into existence. Thus, there is a need to keep the track of multiple versions of same component. To handle multiple versions of constituent components, a version-control tool named as Visual Version Control Tool (VVCT), for the management of life-cycle evolution of component, is developed. The developed tool satisfies all the conditions required for version control in component-based systems. The parameters required for uniform version management as well as component frameworks are also satisfied by the developed tool. To monitor and control the versioning system, an example model is tested along with the set of proposed metrics. This paper also incorporates issues like component configuration, component evolution, component framework, component version tree and version-control metrics.

References

[1]
D. Coleman, P. Arnold, S. Bodoff, C. Dollin, H. Gilchrist, F. Hayes, and P. Jeremaes: Object- Oriented Development: The Fusion Method, Prentice-Hall, 1994.
[2]
R. Helm, I.M. Holland, and D. Gangopadhay: Contracts - Specifying behavioral compositions in OO systems, Sigplan Notices 25(10) (Proc. ECOOP/OOPSLA 90).
[3]
R. Mauth: A better foundation: development frameworks let you build an application with reusable objects. BYTE 21(9):40IS 10-13, September 1996.
[4]
David Thomas, Andrew Hunt, Pragmatic Version Control Using CVS, The Pragmatic starter kit Volume 1, 2006.
[5]
Ben Collins-Sussman, Brian W. Fitzpatrick, C. Michael Pilato, Version Control with Subversion, For Subversion 1.3 (book compiled from Revision 2393).
[6]
Larsson M., Applying Configuration Techniques to Component-Based Systems, Ph.D. Thesis, 2000, Department of Computer Engineering, Malardalen University.
[7]
Crnkovic I., Larsson M. Lau K. K.: Component Configuration Management for Frameworks, http://www.cs.man.ac.uk/~kungkiu/pub/wsac99.pdf
[8]
http://subversion.tigris.org
[9]
Candrlic Sanja : A Comparison and the Desirable features of Version Control Tools, Proceedings of the ITI 2007 29th Int. Conf. on Information Technology Interfaces, June 25-28, 2007, Cavtat, Crotia
[10]
Better SCM Initiative: Version Control System Comparison, 2009 http://better-scm.berlios.de/comparison/comparison.html
[11]
Andreas Pieber, Jakob Spoerk: A Comparative Analysis of State-of-the-Art Component Frameworks for the Java Programming Language, informatikpraktikum I, SS 08 (2008)
[12]
R. Conardi, B. Westfechtel: Version Models for Software Configuration Management, ACM Computing Surveys, Vol. 30, No. 2, June 1998.
[13]
Gergic, J.: Towards a Versioning Model for Component-based Software Assembly, In Proceedings of the International Conference on Software Maintenance (September 22-26, 2003). ICSM. IEEE Computer Society, Washington, DC, 138.
[14]
Microsoft COM, http://www.microsoft.com/com, http://www.microsoft.com/net/ http://msdn.microsoft.com/library
[15]
COM+ (Component Services), http://msdn.microsoft.com/enus/library/ms685978(VS.85).aspx
[16]
CORBA Component Model (CCM), https://www.ibm.com/developerworks/webservices/library/co-cjct6/
[17]
OMG, CORBA, http://www.omg.org/corba
[18]
CVS-Concurrent Version Control System V1.12.12.1: Overview, 2009, http://ximbiot.com/cvs/wiki/CVS
[19]
CVS-Concurrent Version Control System, http://www.cvshome.org
[20]
CVS-Concurrent Version Control System, http://www.nongnu.org/cvs/
[21]
TortoiseCVS, www.tortoisecvs.org, Initial release Dec., 2004.
[22]
CvsGui, www.wincvs.org
[23]
JavaBeans Architecture: BDK Download. Sun Microsystems, http://java.sun.com/products/javabeans/software/bdk_download.html, 2003.
[24]
The Bean Builder, Sun Microsystems, https://bean-builder.dev. java.net/, 2007.
[25]
Sun Microsystems, "JavaBeans 1.01 Specification", http://java.sun.com/beans
[26]
Java 2 Platform, Enterprise Edition Sun Microsystems, 2007, http://java.sun.com/j2ee/.
[27]
Microsoft (1996), "The Component Object Model Specification", Report v0.99, Microsoft Standards, Redmond, WA:
[28]
Microsoft, "The Component Object Model: A Technical Overview (MSDN)", http://msdn.microsoft.com/en-us/library/ms809980.aspx
[29]
Microsoft, MSDN Library, Component Versioning, http://msdn.microsoft.com/en-us/library/aa309506(VS.71).aspx
[30]
Microsoft .NET Framework (2009), http://en.wikipedia.org/wiki/NET_Framework, preview release 19-10-2009.
[31]
.NET General, http://msdn.microsoft.com/en-us/library/aa137140.aspx
[32]
Object Management Group, CORBA, http://www.omg.org/corba
[33]
Stuckenholz, A., "Component Evolution and Versioning: State of the art", ACM SIGSOFT Software Engineering Notes, Volume 30, Number 1, pp. 1--13, 2005.
[34]
Westfechtel, B., Munch, B.P. and Conradi, R., "A Layered Architecture for Uniform Version Management", IEEE Transactions on Software Engineering, Vol. 27, No. 12, 2001.
[35]
Lau, K. K. and Wang, Z., "A Survey of Software Component Models", 2nd edition, Preprint Series, School of Computer Science, University of Manchester, pp.1--58, 2006, http://www.cs.man.ac.uk/preprints/index.html
[36]
Lau, K. K. and Wang, Z., "Software Component Models", IEEE Transactions on Software Engineering, Vol. 33, No. 10, pp. 709-724, 2007.
[37]
Plasil, F., Balek, D. and Janecek R., "SOFA/DCUP: Architecture for Component Trading and Dynamic Updating", Proc. Fourth Int'l Conf. Configurable Distributed Systems (ICCDS '98), pp. 43--52, 1998.
[38]
Brada, P., Specification-Based Component Substitutability and Revision Identification, Ph.D. Dissertation, Charles University in Prague, 2003.
[39]
Visnovsky, S., Checking semantic compatibility of SOFA/DCUP components, Master's thesis, Charles University, Faculty of Mathematics and Physics, Prague, 1999.
[40]
Tichy, W. F., "RCS- A System for Version Control", Software: Practice & Experience, vol. 15, no. 7, pp 637--654, 1985.
[41]
J. Estublier and R. Casallas, "The Adele configuration manager", In Configuration Management, number 2 in Trends In Software. J. Wiley and Sons, 1994.
[42]
P. H. Feiler, "Configuration management models in commercial software development environments", Technical Report CMU/SEI-91-TR-7, SEI, March 1991.

Index Terms

  1. A model for versioning control mechanism in component-based systems

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGSOFT Software Engineering Notes
    ACM SIGSOFT Software Engineering Notes  Volume 36, Issue 5
    September 2011
    160 pages
    ISSN:0163-5948
    DOI:10.1145/2020976
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 30 September 2011
    Published in SIGSOFT Volume 36, Issue 5

    Check for updates

    Author Tags

    1. component framework
    2. component-based systems
    3. object-oriented design (OOD)
    4. software components
    5. version control
    6. version control tools
    7. version model
    8. visual version control tool (VVCT)

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 30
      Total Downloads
    • Downloads (Last 12 months)1
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 07 Mar 2025

    Other Metrics

    Citations

    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