软件工程需求分析与功能划分详解

5星 · 超过95%的资源 需积分: 32 75 下载量 85 浏览量 更新于2024-09-12 收藏 679KB DOC 举报
本资源提供了软件工程实践习题答案,涵盖第五章至第七章的内容,重点讨论了软件需求分析的过程和各类需求的区别。需求分析过程包括沟通、需求导出、分析精化、可行性研究、协商与沟通、规格说明、需求验证和变更管理等多个步骤。软件需求通常分为三类:功能需求、非功能需求和领域需求。功能需求强调系统的操作和服务,如系统如何响应输入及在特定条件下的行为。非功能需求则涉及系统的整体性能,如安全性、可用性、可维护性和兼容性,是对系统环境的具体要求。领域需求是针对特定应用领域的约束和特定计算需求。 用户需求和系统需求在描述层次上有差异。用户需求是从用户视角出发,易于理解,通常用自然语言表达,而系统需求更为详细,是系统设计的基础,通常包含各种模型,如对象模型和数据流模型。例如,在POS机系统中,收银员和顾客的需求与公司的成本控制之间存在冲突,这涉及到存储容量和设备成本的权衡。 出卷系统的功能需求被划分为三个级别:必须的功能包括自动出卷和手动出卷,这些是基本的核心功能;必要的功能如试题管理,确保系统的正常运行;重要的功能同样包含自动出卷和手动出卷,强调其核心作用。在填写图书馆系统的功能跟踪表时,可以看到借出、归还、续借、预约和图书管理等都是关键需求,而用户管理也是必不可少的。 对于出卷系统的功能需求分析,注意到“设置出卷要求”的功能是缺失的,因为自动和手动出卷都需要预先设定条件,所以这个功能是必要的。在案例研究中,非功能需求被扩展到图书馆系统的性能指标,例如借书过程的响应时间要求在5秒内完成,以及系统处理大量藏书的能力(2亿册)。 这份资料深入探讨了软件需求分析的重要性和不同类型的软件需求,以及在实际项目中如何理解和平衡各方需求,同时提供了具体系统的功能划分和需求分析实例,对于理解和实践软件工程具有实用价值。