• myGriffith
    • Staff portal
    • Contact Us⌄
      • Future student enquiries 1800 677 728
      • Current student enquiries 1800 154 055
      • International enquiries +61 7 3735 6425
      • General enquiries 07 3735 7111
      • Online enquiries
      • Staff phonebook
    View Item 
    •   Home
    • Griffith Theses
    • Theses - Higher Degree by Research
    • View Item
    • Home
    • Griffith Theses
    • Theses - Higher Degree by Research
    • View Item
    JavaScript is disabled for your browser. Some features of this site may not work without it.

    Browse

  • All of Griffith Research Online
    • Communities & Collections
    • Authors
    • By Issue Date
    • Titles
  • This Collection
    • Authors
    • By Issue Date
    • Titles
  • Statistics

  • Most Popular Items
  • Statistics by Country
  • Most Popular Authors
  • Support

  • Contact us
  • FAQs
  • Admin login

  • Login
  • Internet-Based Collaborative Programming Techniques and Environments

    Thumbnail
    View/Open
    02Whole.pdf (1.605Mb)
    Author(s)
    Shen, Haifeng
    Primary Supervisor
    Sun, Chengzheng
    Other Supervisors
    Drew, Steve
    Year published
    2003
    Metadata
    Show full item record
    Abstract
    Software systems are getting larger and more complex, while the requirements are becoming vaguer and more rapidly changing. These trends make current software development more and more likely a team work. To integrate multiple developers into a coherent structured management process and make team software development a positive-sum game for both higher productivity and better quality, many team soft ware development methodologies have been proposed and practised. An emerging methodology is collaborative programming, which allows a group of programmers to work together on the same source code for design, implementation of ...
    View more >
    Software systems are getting larger and more complex, while the requirements are becoming vaguer and more rapidly changing. These trends make current software development more and more likely a team work. To integrate multiple developers into a coherent structured management process and make team software development a positive-sum game for both higher productivity and better quality, many team soft ware development methodologies have been proposed and practised. An emerging methodology is collaborative programming, which allows a group of programmers to work together on the same source code for design, implementation of individual components, and integration of individual components. Compared with other team software methodologies that only address needs in some phases or situations, collaborative programming is more adaptive to the variety of different phases or situations in a team software development process. A core technical component in collaborative programming is collaborative editing, which allows a group of programmers to view and edit the same source code. To support different phases or situations in an Internet-based collaborative programming process, collaborative editing must meet the requirements of supporting unconstrained, responsive, real-time collaborative editing; unconstrained, syncretic, non-real-time collaborative editing; and smooth, flexible switching between real-time and non-real-time collaborative editing. This thesis research contributes several novel techniques to address these requirements, and an Internet-based collaborative programming environment to integrate those techniques. These research contributions have advanced state-of-the-art technologies on col laborative editing for supporting Internet-based collaborative programming. First, we contribute a collaborative highlighting gestural communication technique for unconstrained, responsive, real-time collaborative editing. This technique is particularly effective in improving the quality of real-time interaction on text-based source code documents. The contribution to the operational transformation technology is the extension of the technology to support group awareness. It includes a package of operational transformation functions and transformation control algorithms for consistency maintenance in collaborative highlighting, and a flexible undo solution that has the capability of undoing any highlighting operation at any time. Second, we contribute a flexible operation-based merging technique for unconstrained, syncretic, non-real-time collaborative editing, which is efficient and has the capability of textually integrating all changes, and automatically detecting and resolving syntactic conflicts according to application-dependent user-specified policies. The contribution to the operational transformation technology is the extension of the technology to support unconstrained, syncretic, non-real-time collaborative editing. Its includes a log compression algorithm, a textual merging algorithm, and a syntactic merging algorithm. Moreover, we contribute a flexible notification technique to support flexible collaborative editing: unconstrained, responsive, real-time collaborative editing; uncon strained, syncretic, non-real-time collaborative editing; and smooth, flexible switching between them. The contribution to the operational transformation technology is the extension of the technology to support flexible collaborative editing. It includes a new transformation control algorithm that has a linear time complexity, two notification algorithms that support propagation and acceptance of any notifications at any time, and a notification propagation protocol that is efficient for both real-time and non-real-time collaborative editing.
    View less >
    Thesis Type
    Thesis (PhD Doctorate)
    Degree Program
    Doctor of Philosophy (PhD)
    School
    School of Computing and Information Technology
    DOI
    https://doi.org/10.25904/1912/2094
    Copyright Statement
    The author owns the copyright in this thesis, unless stated otherwise.
    Item Access Status
    Public
    Subject
    software development
    team software
    collaborative programming
    internet-based programming
    editing
    Publication URI
    http://hdl.handle.net/10072/367439
    Collection
    • Theses - Higher Degree by Research

    Footer

    Disclaimer

    • Privacy policy
    • Copyright matters
    • CRICOS Provider - 00233E
    • TEQSA: PRV12076

    Tagline

    • Gold Coast
    • Logan
    • Brisbane - Queensland, Australia
    First Peoples of Australia
    • Aboriginal
    • Torres Strait Islander