欢迎来到天天文库
浏览记录
ID:40007022
大小:211.50 KB
页数:49页
时间:2019-07-17
《《软件需求工程》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、软件需求工程周立新博士北京大学软件与微电子学院课程提纲软件需求基本理论和概念软件需求工程过程软件需求获取软件需求分析软件需求规格说明软件需求验证软件需求管理软件需求实现软件需求工程新进展软件需求开发与需求管理工具课程参考书KarlE.Wiegers著,陆丽娜,王忠民,王志敏等译,软件需求,机械工业出版社,2000IanK.Bray著,需求工程导引,人民邮电出版社,2003GeriSchneiderandJasonP.Winters著,姚淑珍,李巍等译,用例分析技术,机械工业出版社,2002DeanLeffingwell
2、andDonWidrig著,蒋慧,林东译,软件需求管理:统一方法,机械工业出版社,2002RalphR.Young著,韩柯,耿民等译,有效需求实践,机械工业出版社,2002以上参考书相对应的英文版本RUP第一章软件需求基本理论和概念软件需求定义需求工程的本质问题域与解系统软件需求分类功能需求性能需求(非功能需求)设计约束商业约束客户/用户/开发者的需求观不合格的需求派生的问题高质量的需求带来的好处优秀需求所具有的特征项目失败的原因分析Source:Carnegie-MellonUniversity,SoftwareEn
3、gineeringInstitute错误认识Ageneralstatementofobjectivesissufficienttobeginwritingprograms—wecanfillinthedetailslater需求不清楚就进入编程阶段,期望以后修改。更多的情况下是边写边修改Projectrequirementscontinuallychange,butchangecanbeeasilyaccommodatedbecausesoftwareisflexible软件调节和改变是很灵活的,任何需求的变更都可容易
4、地在软件中反映出来这些认识多来自极小项目的开发经验,当你面对一个中大型项目时必须彻底改变这些错误观念!1.软件需求的定义IEEE软件工程中需求的定义(1977)用户解决问题或达到目标所需的条件和能力系统或系统部件为满足合同、标准、规范或其它正式规定文档所需具有的条件和能力以上条件和能力的文档说明客户希望在问题域内产生的效果需求与问题域的差别Sommerville&Sawyer1997需求是指系统必须实现什么的规格说明。它描述了系统的行为、特性或属性,是在开发过程中对系统的约束2.需求工程的本质需求工程简单化描述为她关注
5、系统将要做什么;而设计关注系统将怎样做需求工程可以看作把一个定义不足的问题转换为一个定义充分的问题以便找出解决方案。这是因为客户需求信息经常是粗糙的和不完整的需求工程的通用性、理论性和实践性,怎样理解其学科性质,如何学习才能掌握它的本质?有一劳永逸的方法和工具吗?能否将另一个成功项目的需求工程方法照搬到现在的项目–答案是不能!3.问题域(ProblemDomain)与解系统(SolutionSystem)问题域:被开发系统的应用领域,即在现实世界中由这个系统进行处理的业务范围解系统:指可以在问题域内产生某种效果的系统
6、,而构成软件需求的正是这些想要获得的效果,它也正是为何做软件需求的原因和目的问题域ProblemDomain问题域接口解系统分析规格说明设计问题域的类型分类I系统软件应用软件,进一步划分为商业软件和工程软件分类II批处理系统/系统脱机交互系统实时系统分类III数据为主的系统交互为主的系统算法为主的系统问题域的类型数据为主交互为主算法为主气象预报系统收银机系统电梯控制系统工资系统文字处理系统文件转换系统手机定位系统ABCDEFG需求的层次业务需求项目视图与范围文档用户需求质量属性使用实例文档系统需求功能需求其它非功能需求
7、约束条件软件需求规格说明SRS4.软件需求的分类业务需求业务需求(businessrequirement)反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图和范围文档中予以说明例如某运营商对定位系统的业务需求4.软件需求的分类用户需求用户需求(userrequirement)描述了用户使用产品必须要完成的任务,它们在使用实例(usecase)和情景描述(scenario)文档中予以说明4.软件需求的分类功能需求“一般”意义的需求指的是功能或行为需求,这样的需求通常是和解系统的适当行为(用户需求)相关联,是
8、开发人员必须实现的软件功能。功能需求可以在多种不同的抽象层次上来表达,这使得导出需求过程比较复杂和困难:a)Physicalbehaviorb)Input-outputrelationshipc)Observablestatesd)Userinterface4.软件需求的分类非功能需求非功能需求是功能需求的补充,它描述了系统完成功
此文档下载收益归作者所有