An Evaluation of Tools Supporting Enhanced Student Collaboration Joo Tan, Kutztown University of Pennsylvania, tan@kutztown.edu, Mark Jones, Lock Haven University of Pennsylvania, mjones@lhup.edu Abstract Team communication and project collaboration are critical for the success of today s software projects. In a one-semester upper-division Software Engineering course offered at our Kutztown University, student project teams worked independently on software systems for real business clients. Throughout the entire software development lifecycle, each team utilized a Google Groups account for project coordination and communication among its team members. The use of Google groups as a forum for team collaboration is re-visited and student experiences with Google Groups are provided. Next, features that are desirable for collaboration are discussed. Then three web-based tools, Basecamp, Central Desktop, and Viewpath are investigated. We compare Google Groups to these collaboration tools with respect to features for collaboration and project management. Index Terms Collaboration Tools, Web-based Collaboration, Task scheduling, Project Milestones. INTRODUCTION As our society evolves the need for faster, better, and more reliable software becomes even more critical. Demands for project coordination among team members that work from different geographic locations are increasingly necessary. Task scheduling is essential for both short and long term planning in order to meet project milestones. Building larger and more complicated systems also requires collaboration on projects. The right collaboration tool(s) enable project teams to communicate and coordinate tasks in an efficient manner. One such tool was recently described elsewhere [1]. In the fall of 2007, a one-semester upper-level course in Software Engineering was offered at Kutztown University. Students had to work as part of a project team to implement a software system for a real business client. There were a total of four teams during the semester. One critical component for any project is communication. The use of a common forum for collaboration and project discussion is therefore essential to the success of team projects, whether it is for effective project coordination or efficient communication among team members. The collaboration forum used by all our teams was Google Groups [2]. Each team created a separate Google Groups discussion forum account for their project. Among other things, students used the forum as a base for discussion, team communication, document posting, and task coordination. Although Google Groups provided enough functionality for our student teams work, it might not be sufficient for longer-term or more sophisticated projects. In this paper, we revisit the use of Google Groups by our project teams for project collaboration and look at other alternatives. Whitehead [3] provides a survey of collaboration tools in software engineering, including tools for various stages [4,5,6,7] in the software development lifecycle. We introduce a list of features that are considered necessary for teamwork in collaboration tools. As a comparison, we discuss features that are present and/or lacking in each of these tools. Finally, suggestions for the use of collaboration tools are given for future project teams. COURSE STRUCTURE In our curriculum, Csc354 Information Systems Theory and Practice is a required course for Information Technology majors, but Software Development majors may take it as an elective. This is a one-semester course that focuses on student project work throughout the entire semester. Since teamwork is a major emphasis for the course, student teams are required to have a forum for project communication and task coordination as they work through the entire software development lifecycle. Team sizes typically range from 4 to 6 students. The process of team formation is explained elsewhere [8]. Each project team must adhere to strict deadlines, write specific technical documents, meet at least once a week to discuss their project, submit meeting minutes, and give a formal presentation. USE OF GOOGLE GROUPS Project work requires proper coordination among team members so that work can be completed in a timely manner. Each team in the course created a Google Groups account for the purpose of project discussion and team communication. Google Groups provide a discussion forum area (Discussions) for posting messages, a central location (Files) to store and share files, and the use of a subscriber s account to send read messages to the rest of the group. While the use of Google Groups was important for the continued progress for the student projects, there are areas that were found lacking. These include: No automatic version control for document posting. Lack of built-in feature for task scheduling. A lack of milestone tracking capability. F3H-7
No e-mail notification for approaching milestones. This is a useful reminder feature. Due to the lack of task scheduling and milestone creation, student groups in the course created work breakdown schedules (WBS) for their tasks. The WBS and all other technical documents were then uploaded to Google Groups for storage and reference. FEEDBACK ON USE OF GOOGLE GROUPS In spite of the limitations mentioned, students felt that Google Groups helped them in several ways: A centralized location to store a team s documents; this allows access to each other s documents Using a common area for communication; posting messages to one another Easy to use/navigate They were able to access it from off-campus locations Help teams to stay organized Overall, teams found Google Groups useful as a central hub for communication and helped them to stay organized. Students also commented that Google Groups was easy to use. Another important factor was that students were able to access it from home. COLLABORATION VS PROJECT MANAGEMENT It is important to distinguish between collaborative software and project management software. The initial aim for the student projects was to have a common hub for collaboration between project members. Minimal features include a discussion forum for posting and reading messages, file sharing/storage location, and e-mail notification of assignments. Software systems such as e-mail, calendaring, text chat, and wikis fall under the collaborative software umbrella. Project management software, on the other hand, covers a wider area, which may include scheduling, resource allocation, communication, collaborative software, report generation, quality control and management. Both proprietary and open-source project management options are available. Example open source applications include dotproject [9] and ProjectPier [10]. Microsoft Project [11] is perhaps the best-known proprietary desktop project management application. One popular web-based project management tool is Gatherspace [12]. DESIRED FEATURES IN COLLABORATION TOOLS Collaborative project work requires certain features in tools that are essential for teamwork to succeed. In this section, we discuss features that are deemed necessary and those that are considered desirable for efficient team collaboration. One must-have feature is task assignment/scheduling. This involves the ability to designate a specific task to a particular team member with a given date. In this way, each project member knows exactly what their responsibilities are within the project. Along with task scheduling, the ability to create milestones is critical to timely completion of tasks before a certain deadline. Milestone scheduling provides an overview of deadlines that must be met. They also serve as reminders for important upcoming dates for a project. One good-to-have feature is the tool s ability to send reminder e-mails to specific team members before (usually 48 hours) milestones are reached. Another desired feature is the availability of a calendar view of all milestones as well as the ability of editing a milestone from within the calendar listing. CRITERIA FOR TOOL SELECTION The following criterion was important for consideration of web-based tools in future course projects: Accessibility Students must be able to access the collaboration tool both on and off campus. Having access to the tool anywhere is especially useful for commuting students and those who live off campus. This is probably the most important factor for consideration of collaboration tool usage in our projects. Affordability The tool must be affordable to students it should either be free or relatively inexpensive. Ease of Use Is the user interface easy to understand? Is the collaboration tool easy to use? This is an important consideration. Installation Is there a need to install software? If so how easy is it to perform the installation? Are there installation instructions? On what platforms will it run? WEB-BASED COLLABORATION TOOLS Our focus is explicitly on web-based collaboration tools that offer a number of benefits for student projects. A sampling of Web-based collaboration tools is listed in [13]. Some offer free subscription plans, while others require monthly paid subscriptions. I. Basecamp Access to Basecamp [14] only requires a web browser and Internet access. This project collaboration tool offers a free one-active project plan with two writeboards. Basic paid plans come with more active projects and storage space allowed; for example, $12 per month (personal plan) for 3 projects and 1GB of storage, $24 per month (basic plan) for 15 projects and 3GB of storage. More advanced paid plans offer greater benefits; for example, $49 per month (plus plan) for 35 projects and 10GB of space, $99 per month (premium) for 100 projects and 20GB of space. Basecamp allows easy upgrade from the free project option to any of the paid plans. Both private and public projects are available in all plans. A public project enables all team members in the project to communicate among each other as well as with their respective client. A private project is accessible only to selected people on a project team. The simple free plan has some useful features, including: F3H-8
A dashboard that shows all activities, including milestones, to-do tasks, and writeboard activity. Completed tasks are clearly marked as strike-off. The point-and-click feature is very useful on this page. The dashboard shows all upcoming to-do tasks and milestones. The calendar panel provides a 14-day view of milestones due. The Overview tab provides a bird s-eye view of a project. To-Dos page shows all activities as a list. A Milestones page that provides a calendar view of all milestones with point-and-click feature for ease of editing. An integrated messaging system that includes e-mail reminders of upcoming milestones Writeboards for effective communication Real-time chat capability Customized color-scheme for individual projects Easy to use administration screen Search feature across all projects After logging into the tool, the user will be at the home page (also called the dashboard). The dashboard screen as can be seen in figure 1 shows the project name (circled in red), a 14-day view of the calendar (see arrows), plus all tasks, milestones, messages files, and writeboards. A link (480- WS) connects the user to a particular project. Once inside a project, there are tabs (in green) for Overview, Messages, To-Do, Milestones, Writeboards, and Chats (see figure 2). This is the personal view of a specific project team member. Each tab provides additional features such as strike-out line for tasks and milestones that are past due as well as pointand-click functionality. The owner of each task (message, to-do, milestone, writeboard) is clearly shown on this page. FIGURE 1 THE BASECAMP HOME OR DASHBOARD. On the milestones tab, a calendar on the right side of the page (see figure 2) shows all scheduled milestones with either yellow or blue highlighting. People on the same project can chat with each other using a chat tool, named Campfire [15]. Campfire is a web-based password-protected group chat room. Campfire may be used to invite the project client to chat, collaborate, and make project-related decisions. Another useful feature is the ability to link to a room on an intranet for internal communications (up to a limit of 60 people). FIGURE 2 THE BASECAMP CALENDAR VIEW In summary, Basecamp is a useful tool for project collaboration. It serves as a base for project discussion, task scheduling, milestone dating, and communication. For semester-long projects such as those in this course, teams considering using Basecamp as their collaboration tool may want to consider one of the non-free options. For plus-paid plan and up, there is a time tracking option to keep track of the hours spent on a task or a complete project. II. Central Desktop Central desktop [16] offer a number of plan options for individual projects; a free option has two workspaces, five members per workspace, and total storage space of 25 MB. A $25 per month option allows for three workspaces, ten members per workspace, and 500 MB of storage space. For bigger projects, there is the $49 per month plan that has ten workspaces, 15 members per workspace, and 1GB of storage space. There are even bigger plans for enterprise level projects. The simple 30-day free plan option includes the following features: Both private or public workspaces a workspace is the equivalent of a project Personal Dashboard for each member Separate My Tasks and My Calendar pages Docs and Discussions documents can be uploaded The Tasks panel allows tasks to be dragged and dropped or to be reordered Milestones page shows milestones listed in order of dates Interactive full-blown calendar with filtering for display of tasks only, milestones only, or everything F3H-9
Reports can be run based on project status, activity log, or login. It can also be filtered for incomplete milestones, completed milestones, incomplete tasks, or completed tasks. Writeboard for messages Both administrative and regular accounts Personal settings for individual accounts The project homepage shows tabs that may be used for project communication (see figure 3). This page lists all tasks, milestones, and discussion items along with their respective status. A point-and-click feature allows for ease of editing for all items. The Docs & Discussion tab allows files to be uploaded into a specific folder with several file status options; draft, pending approval, approved, final, canceled. A version number is also added when a file is uploaded. incomplete tasks and completed tasks. It further allows a simple and easy print option. The activity log report has filtering for specified date ranges using date selectors. This report clearly shows all tasks, files, milestones, and discussion items along with their respective assignee. The login report shows the last time that each project member accessed this collaboration workspace. From the dashboard, there is the option for the project team to schedule a Web meeting. The maximum number of attendees can be set on this page. There is an extensive workspace configuration setting available, including styled templates, color options to one s workspace, choice of tabs to appear on the dashboard. A variety of workspace types (see figure 4) may be created; project management, wiki, database, corporate blog, or user forum. From the dashboard, there is the option for the project team to schedule a Web meeting. A Web meeting is an integrated real-time Web conferencing solution that can be used to host Web meetings through Central Desktop. Team members can share their desktop workspace with other people without leaving Central Desktop. The maximum number of attendees can be set on this page. There is an extensive workspace configuration setting available, including styled templates, color options to one s workspace, and choice of tabs to appear on the dashboard. In summary, central desktop is an intuitive interactive collaboration tool with many useful features packaged in the free plan option. The point-and-click feature is readily available at many pages of the tool. Tasks and milestones are color-coded for ease of differentiation. Students are encouraged to consider the various non-free plans if more workspaces and storage space is required for their projects. FIGURE 3 CENTRAL DESKTOP PROJECT HOME The Tasks tab shows all tasks that are currently assigned to a particular project member. Task allocation may be given different levels of priority that are denoted by various colors; red for highest priority followed by orange, yellow, and finally white. Each task may be edited, have comments added, moved, deleted, or have an e-mail sent to the assignee for task status updates. The Milestones tab provides a listing of all incomplete and completed milestones. Incomplete or active milestones may be edited or checked off for completion. Another important feature is e-mail notification that is sent to the responsible person before the milestone deadline (usually 48 hours). The Calendar tab provides a 3-month view of all events, including milestones, assigned tasks, and Web meetings. The point-and-click feature is very useful for checking on details of each milestone. New milestones can be added right on the calendar panel. Finally, the Reports tab provides the option of generating three different types of reports; project status, activity log, and login. The project status view has filtering options for incomplete and completed milestones as well as III. Viewpath Viewpath [17] is an easy-to-use online collaboration tool that simplifies day-to-day management of projects and events. Viewpath is currently in beta release. There is completely web-based, so there is no software to install. This application lets team members collaborate on project schedules, issue discussions, update document revisions, and more. The following features are available: Multiple team/group workspaces Integrated views of projects with tasks, issues, and events Team action items along with team calendar tab Listing of projects with duration and assignments Drag-and-drop timelines and calendars (Gantt Chart) Direct in-cell editing Add/Attach files for sharing Edit, complete, and re-assign tasks Personal settings Automatic e-mail notification of activity assignments Activity prioritizing on Today and Team pages Milestone tracking Document attachments with version tracking User-defined dashboards F3H-10
Customizable reports and alerts Secure access to projects Time zone localization A sample Viewpath home page is shown in Figure 4. The left pane shows tasks that are currently assigned to specific people. The right pane shows the current month s calendar as well as today s event(s) if any exists. There are also tabs for projects, members, and settings. In the projects tab, all task assignments are shown in the left pane. Each task includes name, duration, person the task is assigned, owner of the task plus both start and finish dates. A tools menu at the top allows for editing options on each task. The right pane shows corresponding tasks in a Gantt chart format. The members tab shows all contact information for each project member. This includes name, e-mail address, title of person within the organization, and login type. FIGURE 4 VIEWPATH HOME PAGE Pricing for Viewpath has not been finalized. A scaled-down free version that will allow users to have up to 3 members is planned. Pricing for other versions will be $9.95 - $19.95 per month depending on the plan. Guest memberships are also available. These are ideal for participants that need access to assigned tasks, but do not need access to the task status of others. TOOLS COMPARISON In this section, we provide a comparison of features in Google Groups and the three collaboration tools discussed in this paper (see table I). Desirable features in a collaboration tool includes having a central location for message posting, repository for file sharing, the ability to schedule tasks, milestone creation for checking on progress of the project, automatic notification of upcoming milestones, an easy-toread calendar view of milestones, interactive point-and-click feature for ease of editing, and option to create either private or public projects. FEATURE FILE SHARING / STORAGE MESSAGE BOARD TASK SCHEDULING MILESTONE CREATION AUTO E-MAIL NOTIFICATION CALENDAR VIEW POINT-AND- CLICK DRAG-AND- DROP VERSION CONTROL TABLE I FEATURES COMPARISON IN FREE PLAN OPTIONS GOOGLE GROUPS BASECAMP CENTRAL DESKTOP VIEWPATH 100MB N 25MB 25MB Y Y Y Y N N Y Y From the table above, it can be seen that Google Groups provides minimal features for team collaboration. The availability of a central location for message posting as a forum for team communication is useful. However, without the capacity to schedule tasks and create milestones, it may be insufficient for project work. Basecamp has many useful features for team collaboration. The basic payment plan provides three active projects and 1GB of storage space. The only disadvantage of the free plan is its lack of free storage space. The non-free options do offer 1GB of space and up. Central Desktop offers many useful features for team collaboration. For a whole semester of project work, student teams may have to use the most basic payment option. This would provide them with three workspaces and 500MB of file storage space. Viewpath is currently in beta release and is expected to be fully available in October of 2008. It offers a multitude of must have collaboration features. The Gantt chart feature is intuitive and visually impressive. Some parts of the user interface tabs, however, seem a little difficult to understand and navigate. Student teams should check on features that are available in each of the tools discussed herein before deciding on which one to use. Intangible factors such as usability, availability, affordability, and installation needs must also be considered. Since the free plan option in Central Desktop only offers a 30-day free trial, student teams that choose this tool are advised to consider using a paid plan for a semester-long project. The lowest fee-based option provides more than enough workspaces and file storage space for the projects in this course. F3H-11
CONCLUSION For project teams to collaborate effectively, they need to be able to communicate easily and organize their work efficiently. A collaboration tool with most, if not all, of the desirable features discussed in this paper is important for enhancement of student project communication and on-time task completion. Students need a proper task and milestone setting tool to help them manage their time and schedule. In this paper, we discussed the use of Google Groups as a forum for project communication by our project teams and visited a number of popular collaboration tools currently available. A list of desirable features that greatly aid team collaboration and task scheduling is suggested. We then presented three sample collaboration tools that offer functionality suitable for school team project work. A feature comparison in each of the collaboration tools is then provided. For academic software engineering project work, Central Desktop seems a good option for a classroom project collaboration tool. However, for projects lasting more than 30 days, one of the fee-plans is highly recommended. If a non-free plan is considered, Basecamp also provides an attractive alternate tool option for collaborative teamwork. Project teams may want to initially try a free plan at the beginning of a semester, check for ease of tool usability and functionality, and then consider upgrading to a fee-based plan. Students who are interested in open-source options can check out some of the PHP-based and Java-based tools available. For future software engineering courses, we encourage student teams to strongly consider using any of the tools surveyed in this paper - Basecamp, Central Desktop, or Viewpath as their tool for collaboration and communication. REFERENCES [1] Lisa Lancor, Collaboration Tools in a One-Semester Software Engineering course: What worked? What didn t?, CCSC Northeastern Region, April 2008 [2] Use of Google Groups as a communication tool in student projects, http://groups.google.com/, retrieved 3/10/2008 [3] Jim Whitehead, Collaboration in Software Engineering: A Roadmap, International Conference on Software Engineering 2007, pp214-225 [4] L. Dusseault, WebDAVL: Next Generation Collaborative Web Authoring, Prentice Hall PTR, 2003 [5] Ravenflow, RAVEN: Requirements Management Tools, http://www.ravenflow.com/products/index.php, retrieved 5/10/2008 [6] P. Maheshwari, A Teoh, Supporting ATAM with a Collaborative webbased Software Architecture Evaluation Tool, Science of Computer Programming, Vol. 57, No. 1, pp109-128, 2005 [7] The Bugzilla Team, The Bugzilla Guide 3.1.3 Development Release, February 1, 2008, http://www.bugzilla.org/docs/tip/html/, retrieved May 11, 2008 [8] Joo Tan & Mark Jones, A Case Study of Classroom Experience with Client-Based Team Projects, CCSC Eastern Conference, April 2008 [9] dotproject Open Source Project Management software, http://www.dotproject.net/, retrieved 5/9/2008 [10] ProjectPier Open Source PHP Application, http://www.projectpier.org/, retrieved 5/9/2008 [11] Microsoft Project desktop project management application, http://office.microsoft.com/en-us/project/default.aspx, retrieved 5/8/2008 [12] Gatherspace web-based project management application, http://www.gatherspace.com, retrieved 5/9/2008 [13] Wikipedia - list of project management software, http://en.wikipedia.org/wiki/list_of_project_management_software, retrieved 5/9/2008 [14] Project collaboration using Basecamp, http://www.basecamphq.com/, retrieved 5/11/2008 [15] Campfire Chat room and file sharing, http://www.campfirenow.com/, retrieved 3/12/2008 [16] Central Desktop: Project Collaboration for Teams, http://www.centraldesktop.com/, retrieved 5/11/2008 [17] Viewpath project and event management tool, http://www.viewpath.com, retrieved 5/11/2008 AUTHOR INFORMATION Joo Tan, Assistant Professor, Department of Computer Science, Kutztown University of Pennsylvania, tan@kutztown.edu. Mark Jones, Assistant Professor, Department of Computer Science, Lock Haven University of Pennsylvania, mjones@lhup.edu. F3H-12