Software engineering requires the production of hierarchically organised text-based documents, such as specifications, source codes, and manuals. Folding editors are effective tools designed to support such activities involving documents of any complexity. In a collaborative work environment, especially in a large software development team, folding editors offer many advantages over the conventional editing system. Surprisingly, the use of folding editors has often been overlooked. This could partly be attributed to the generally inadequate design of their interface and partly to the lack of effective facilities available to support collaborative work.
This paper identifies some of the typical difficulties associated with sharing files in a software engineering teamwork environment and discusses the advantages of folding editors to overcome these problems. It then describes the rationale of a design of a user interface for folding editors to support collaborative work.
Keywords: folding editors, computer-supported cooperative work (CSCW), groupware, user interface design, software engineering, CASE tools, collaborative writing.
Introduction
Software development is an area of human activity requiring that people work together to solve a problem. Typically, teams of people are involved in the specification, design, implementation and testing of the many different modules that comprise a system under construction. Even though most tasks are assigned to one individual at any one time, many documents and program modules are written and maintained by multiple authors over the lifetime of the software project. Software engineering requires the production of hierarchically organised text-based documents, examples of which are: specifications, schedules, designs, programs, test plans, on-line help and manuals.