使用 WebCollab 管理项目

作者:Mike Cohen

作为一名网络顾问,我经常与小型团队合作处理任何与 IT 相关的项目。对于任何给定的工作,我都需要与其他的顾问、客户、数据线路供应商和办公室人员协调。我一直需要一种方式来更新同事关于项目各个方面的信息,而且通常这包括共享文件、笔记和评论。我的公司工作经历告诉我,这可以通过结合使用 Microsoft Exchange 公共文件夹系统和 Microsoft Project 来完成。

虽然 Microsoft 产品能够给我提供我想要的大部分功能,但它们也有局限性。首先,Exchange/Project 是一个专有的设置,专门为 Microsoft Windows 用户而设计,更具体地说,是为同一组织内的 Microsoft 用户而设计。其次,对于大多数小型公司来说,Microsoft 的 Exchange 套件不具有成本效益。第三,虽然 MS Project 和其他甘特图绘制应用程序是项目管理应用程序的事实上的标准,但它们倾向于采用宏观管理方法来处理工作,更适合像建筑这样的大规模运营。最后,我希望文件存储库和项目状态信息之间能够集成,以便项目可以由一群人管理,并在各方和跨组织之间进行适当的协作。

我在 SourceForge 上偶然发现了 WebCollab,并感到惊喜。根据其创建者的说法,WebCollab 是“一个基于 Web 的协作系统,用于项目和项目管理;WebCollab 易于使用,并鼓励用户协同工作。该软件在功能上优雅且安全,同时又不会让用户感到繁琐或图形密集。”

我发现以上所有说法都是真实的。该软件的作者在设计时优先考虑功能而非形式,界面极其简洁朴素,速度和安全性是其主要目标。

WebCollab 非常适合涉及用户小组且沟通相当频繁的项目。不仅仅是一个多用户待办事项列表,每个创建的项目都附带一个任务列表、截止日期、颜色编码的完成状态指示器、优先级设置、留言板和文件上传区。当任何任务的状态发生变化时,可以选择通过电子邮件通知任何相关用户或用户组。通过持续的留言板交流、文件交换和状态电子邮件,WebCollab 为项目管理创建了一个交互式环境。管理者可以轻松地使用它作为工具来委派任务,并通过与员工的持续对话来掌握正在发生的事情,所有这些都通过这个软件实现。

WebCollab 有很多很棒的功能,加上其简单的安装和几乎不存在的学习曲线,它非常适合小型办公室环境或涉及来自不同组织的人员的项目。例如,我使用它作为工具来让我的客户了解我的工作状态,以及作为与我可能合作的其他工程师和技术人员沟通的工具。

系统要求/架构

该软件由一个 Apache 托管的 PHP 前端和一个数据库后端组成。一旦 PHP 页面通过 Web 服务器可用,任何具有连接、Web 浏览器和用户凭据的计算机都可以访问 WebCollab。

我发现最佳配置是一个 Linux、Apache、MySQL、PHP 盒子,但任何能够运行 Apache、PHP 和 MySQL 或 Postgres 的操作系统都可以使用。如果需要,数据库可以托管在单独的服务器上。我目前正在使用一台奔腾 III 500MHz 工作站,配备 256MB 内存和 20GB 硬盘,没有出现问题,对于我大约 15 个用户的负载来说,我可能有点过头了。这款软件非常适合您一直想用于某些生产性用途的旧系统,或者作为现有服务器上的轻量级服务。抛开所有个人偏见,我建议使用 Linux 而不是 Windows,甚至 Mac OS,因为 Linux 远程管理的便捷性和安全性以及较低的成本。要设置 WebCollab,您需要能够创建一个数据库并更改 WebCollab 目录中的一些权限。根据您的文件上传流量,您在 Web 目录中不需要超过几百兆字节的空间,因为单个文件上传大小限制为 2MB。

在 Apache 和 MySQL 的支持下,我没有遇到任何稳定性问题,而且 PHP 代码的质量总体上看起来非常扎实。话虽如此,但这并不是我推荐给企业级组织的软件包。对于小型用户群,WebCollab 在高负载下未经证实。大多数公司企业在选择软件包时也非常重视支持。鉴于 WebCollab 目前作为一个小型开源项目的地位,没有程序员 24/7 待命来帮助处理任何数据灾难。

安装

安装非常简单,我花了不到十分钟就完成了。我使用了我的发行版的 Apache、PHP 和 MySQL 的原始安装,它们工作得非常完美。Linux 初学者会发现安装中最困难的部分是在 MySQL 中创建一个新用户,该用户具有访问数据库的适当权限。除此之外,这绝对是刚刚开始尝试 Linux 的人可以轻松安装的东西。

有两种安装方法,一种是使用命令行,另一种是通过基于 Web 的设置程序。我选择了后者。为了举例说明,我在这里使用 collab.example.com

下载 tarball 并将其解压缩到您的 Web 目录中

# tar -zxvf WebCollab-1.62.tar.gz

更改主配置文件的权限

# cd WebCollab-1.62/config
# chmod 666 config.php

将 Web 浏览器指向 collab.example.com/WebCollab-1.62/setup.php。这将引导您完成设置的自动化部分,其中包括创建 SQL 数据库并运行表创建脚本,以及在相关的 config.php 文件中设置四个环境变量。

恢复配置文件的权限

# chmod 664 config.php
用户/用户组

访问软件的任何部分都需要用户名和密码,并确定可以和不可以查看和/或编辑哪些项目。与大多数其他系统一样,只有管理用户才有权添加或删除帐户。用户也可以被指定为项目或任务所有者,使该帐户能够对该特定项目或任务执行管理任务。

用户组在任务指定中也起着重要的作用。项目可以由所有者分配给用户或整个用户组。然后可以使用子组或任务组来进一步委派给定项目中的任务。

Managing Projects with WebCollab

图 1. 管理员可以从此页面创建新的用户帐户。此处输入的电子邮件地址用于状态更新的电子邮件通知。

访问控制相当全面,为管理员和项目所有者提供了很大的灵活性。例如,我经常有与其他工程师合作的项目,这些项目需要各方都能够编辑任务、标记工作完成和更改截止日期。在这些情况下,我为我的组中的每个人分配了项目的编辑权限。我也有一些项目允许客户查看,在这些情况下,我希望将他们限制为只读。我也不希望客户能够查看除他们自己的项目之外的任何项目。通过选中或取消选中“所有用户可以查看”或“用户组中的任何人都可以编辑”按钮,可以轻松实现这两个细节。

Managing Projects with WebCollab

图 2. 新项目的创建表单让您有机会通过简单地选中相应的复选框来设置访问控制和用户通知。

项目/任务创建

WebCollab 非常适合可以分解为一系列任务的项目,这些任务具有简短的、一两句话的描述。每个项目和任务都有描述字段、开始日期、结束日期、优先级和分配的用户组。当为给定项目创建任务时,它被视为子项目,具有与其父作业相同的信息字段和可编辑数据。该软件的这部分与大多数版本的流行待办事项列表相似,但它增加了灵活性,可以用作快速清单或相当深入的任务分解以及正在进行的评论。

项目和任务视图是该软件真正闪光的地方。如前所述,每个视图都有自己的文件上传区和留言板。这是 WebCollab 的协作方面真正使其与传统待办事项列表区分开来的地方。用户可以互相提问、发表评论、上传相关文档等等。这就是 WebCollab 与任务管理应用程序的区别所在,并使其更像是一个面向项目的群件。我发现 WebCollab 的留言板元素使事情更具互动性,从而使所有参与者都更感兴趣。

Managing Projects with WebCollab

图 3. 任务视图包括相关文件的链接。此 VPN 任务信息页面使查找必要的配置文件变得容易。

视图和导航

在视图之间导航的能力是直观且容易的。几乎所有内容都是超链接,单击超链接会将您带到该特定数据片段的更深入视图。例如,在项目的主视图中,每个任务都由其标题表示,单击该标题会将您带到该任务的主视图,其中包含摘要、截止日期、相关文件等。

在项目或任务描述的上下文中显示的每个用户或用户组名称也是指向有关该特定用户的更多信息的链接。所有内容最初都以简写视图表示,单击时可获得更多信息。虽然这看起来可能没什么,但它变得很方便,并且可以轻松地在各种视图之间切换。导航栏也始终显示在屏幕的左侧。

与项目管理软件包的典型情况一样,有各种不同的视图,每个视图都提供略有不同的视角。当用户登录时,他或她最初处于主页视图。这显示了用户参与的项目和任务列表,以及完成状态和截止日期。另外两个关键视图是待办事项列表视图和日历视图;两者都是不言自明的。同样,理解每个视图远非复杂,这在项目软件中并不总是如此。所有视图都可以按用户和用户组进行过滤,并具有打印视图按钮,该按钮以更适合纸张的格式显示当前屏幕。

Managing Projects with WebCollab

图 4. 日历视图很简单,但它提供了必须在何时完成的任务的良好可视化分解。

安全

WebCollab 最适合小型或家庭办公室环境。作为一个非商业开源项目,唯一可用的真正支持是通过网站上的留言板。虽然这可能很出色,但通常是公司高层会皱眉的事情。鉴于其微小的用户群,我怀疑这样的软件是攻击目标,但 Apache 和 MySQL 是。对于那些不熟悉 Apache、PHP 和 MySQL 的人,我建议研究使用一些 Linux 发行版特定的安全更新工具,例如 Debian 的 apt-get 或 SuSE 的 YaST,以保持这些软件包的更新并尽可能安全。

软件本身的用户管理和访问控制工具在限制人们可以和不可以查看的内容方面做得很好,并且这些控件足够精细,可以在用户、用户组或子组级别进行自定义。所有帐户和密码都存储在 MySQL 中,密码显然是加密字段。最好将您的 Web 服务器配置为通过端口 443 使用 SSL 为其提供服务,以阻止任何潜在的窥探者。

我还建议任何将关键任务数据放在此软件上的人都对 PHP 和 MySQL 在传递数据库用户名和密码方面的交互作用做一些功课。总而言之,我对开发人员为使该软件在其目标受众范围内尽可能安全所做的努力感到相当满意。

最终想法

WebCollab 的美妙之处在于它的简洁性。它易于安装、使用和维护。它为小规模项目管理提供了全面而灵活的方法。一些用户可能会因其缺乏美学细节而感到却步,但如果您喜欢流线型界面和快速渲染的页面而不是其他花哨的功能,我绝对建议您尝试一下 WebCollab。它建立在成熟的技术之上,因此它快速且稳定,并且由于它是基于 Web 的,因此它本质上是无客户端的。可以将用户添加到系统中,创建任务和项目只需几分钟。我也向寻找可以从任何地方访问的集中式待办事项列表的临时用户推荐它,因为它是一个非常有用的单用户工具。

作为开源社区的新手,我发现浏览 Freshmeat 和 SourceForge 等网站很像看独立电影或听独立摇滚乐队。有时,您会遇到一颗似乎无人知晓的未经雕琢的宝石;我发现 WebCollab 就是其中之一。

本文资源: www.linuxjournal.com/article/7965

Mike Cohen 是 Antropy, Inc. 的联合创始人,Antropy, Inc. 是一家位于南加州的小型企业 IT 咨询公司。他喜欢与家人共度时光,并在墨西哥的 Todos Santos 岛进行拖曳冲浪。

加载 Disqus 评论