会议制度并非属于软件工程的范围,但却是很基本的公司管理制度之一,公司里面的大多数沟通都是通过会议来进行的,如果这一点都贯彻的不好,很难想象能将知识体系庞大的软件工程进行实施。一个项目小组,一般要一周内有一个固定的例会,总结一周的工作并计划下一周的工作,会议前指定一个主持者和一个记录者,作会议记录的时间成本比较小,只需要注意把会议形成的结论记录下来就可以了。另外每周也应不定时的召开一些会议,根据项目的具体情况来定。会议记录的格式有很多可参考,也可以根据自己的要求来做,只要保证记录了关键内容就够了。
考勤制度对于高科技公司来说尤为重要,软件公司里员工大多是年轻人,更有不少刚走出校门,年轻人的特点是在项目紧的时候加班加点都不在乎,但平时也会有懒散的情况,如迟到、早退等,在一些刚起步的软件公司来说,频繁加班也成了很多软件工程师工作散漫的借口。这一点长远来看是不利的。应该尽量减少加班,但平时的考勤制度一定要严格执行,不能因为某个人、某个小组前段时间加班频繁或工作辛苦为由而放松考勤。具体的办法有很多。
项目资源统一管理的运用:在一个项目小组中,即使人数很少,也应该尽量有所分工,例如让某个人在承担Coding,Design等任务的同时倾向于Testing工作,某个人则负责配置管理,组长要负责对文件的统一管理,文挡的格式规范最好由一个人把关,文挡的具体内容由各成员来写,做分工的好处是避免每个人似乎什么都做,但却什么都不精通,可能出现每个人都写文挡,但格式都不相同的情况,如果要求每个人都写格式相同的文挡往往有不少困难,不如让一个人来保证文挡的格式,一般要保证文挡在每一周里都能同步更新。
配置管理是CMM中比较能看到效果而且实施难度小的Issue,一般用SourceSafe,CVS等工具就能满足要求,如果用Microsoft的IDE,一般就用SourceSafe,如果是Jbuilder或linux下的开发环境,就用CVS。但要注意一旦选定了一个工具就不要轻易放弃,要逐渐了解使用工具的技巧。
测试管理的实施也要求先要对测试的重要性和一般的理论有一定了解,这方面的资料一大把,无非就是测试的分类、步骤等等,而且大多也会用很重的笔墨证明测试有多么重要云云,其实测试的重要性根本不需要多说,大家都已经认识到了。了解了理论后,同样是找一些工具,例如OpenSource的bugzillar就是很好的bug管理工具,只是配置的时候要搞清Apache,perl等一堆东西,还要考虑汉化等等。
对于一些小的软件开发公司来说,直接实施CMM是很不划算和现实的。但是小公司也要发展、要规范。所以小公司可以运用一些基本的管理方法来对软件过程进行改进也不失为一种方法。