结构推理 对软件开发环境的要求有哪些?
【正确答案】软件开发环境的目标是提高软件开发的生产率和产品的质量。因而理想的软件开发环境应是能支持整个软件生存期阶段的开发活动,并能支持各种处理模型的软件方法学,同时实现这些开发方法的自动化。比较一致的观点认为软件开发环境的基本要求如下:
   (1)软件开发环境应是高度集成的一体化的系统。其含义是:
   ①应该支持软件生存期各个阶段的活动,从需求分析、系统设计、编码和调试、测试验收到维护等各阶段工作。
   ②应该支持软件生存期各个阶段的管理和开发两方面的工作。
   ③应该协调一致地支持各个阶段和各方面的工作。具有统一形式的内部数据表示。
   ④整个系统具有一致的用户接口和统一的文档报表生成系统。
   (2)软件开发环境应具有高度的通用性。这是指:
   ①能适应最常用的几种语言。
   ②能适应和支持不同的开发方法。
   ③能适应不同的计算机硬件及其系统软件,对这些方面应具有最小的依赖性(尤其是对硬件)。
   ④能适应开发不同类型的软件。
   ⑤能适应并考虑到不同用户的需要(如程序员、系统分析员、项目经理、质量保证人员、初学者与熟练人员)。
   (3)软件开发环境应易于定制、裁剪或扩充以符合用户要求,即软件开发环境具有高度的适应性和灵活性。
   其定制是指软件开发环境应能符合项目特性、过程和用户的爱好。裁剪是指环境应能自动按用户需要建立子环境,即构成适合具体硬件环境的、精巧的、很少冗余的工作环境。扩充是指环境能向上扩展,根据用户新的需求或软件技术的新发展(如加入新工具,引入智能新机制)对原有的环境进行更新和扩充。
   (4)软件开发环境不但可应用性更好,而且是易使用的、经济高效的系统。为此,它应该:
   ①易学、易用、响应时间合理和用户喜爱。
   ②能支持自然语言处理。
   ③能支持交互式和分布式协作开发。
   ④降低环境用户和环境本身的资源花费。
   (5)软件开发环境应有辅助开发向半自动开发和自动开发逐步过渡的系统。半自动和自动开发的含义是:
   ①各个阶段的文档之间要能半自动变换和跟踪。
   ②应该注重使用形式化技术。
   ③不同程度地,逐步地采用“软件构件”的集成组装技术,并建立其可扩充的,可再用的“软件构件”库。
   ④采用人工智能技术,逐步包含支持开发的专家系统。
   当然符合以上要求的软件开发环境,目前在世界上还不存在,但是软件工程发展很快,这些目标相信是可以实现的。
【答案解析】