开发一个软件项目所需要的资源可以分为人员、可复用的软件构件及开发环境(硬件和软件工具)三类。
对于人力资源,需要先确定软件范围,选择完成开发所需的技能和专业,还要确定团队需要哪些职位。如果团队成员地理上不在一个地方,还要说明每个人所处的位置。至于需要的人员数量要在估算出开发工作量(多少人月)后才能确定。
对于可复用软件资源,Bennatan建议在制定计划时应该考虑四种软件资源:成品构件(能够从第三方或者从以往项目中获得的现成软件);具有完全经验的构件(为以前项目开发的,具有与当前项目要构建的软件类似的规格说明、设计、代码或测试数据);具有部分经验的构件(为以前项目开发的,具有与当前项目要构建的软件相关的规格说明、设计、代码或测试数据,但是需要做很多修改);以及新构件(软件团队为了满足当前项目的特定要求,专门开发的软件构件)。
对于环境资源通常称为软件工程环境,它集成了硬件和软件工具。硬件提供支持软件工具的平台,软件工具是高效完成软件项目所必需的。硬件是作为软件开发项目的一种工具而投入的,有三种硬件资源:
(1)宿主机(Host Machine),软件开发时使用的计算机及外部设备。
(2)目标机(Target Machine),运行已开发成功软件的计算机及外部设备。
(3)其他硬件设备,即专用软件开发时需要的特殊硬件资源。
软件工具主要有以下几类:
①业务系统技术工具;
②项目管理工具;
③支持工具;
④分析和设计工具;
⑤编程工具;
⑥组装和测试工具;
⑦模拟工具和原型化工具;
⑧维护工具;
⑨框架工具。