已阅读5页,还剩61页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 系统分析 需求分析 2 软件需求的层次 业务需求 businessrequirement 反映了组织机构或客户对系统或产品高层次的目标要求 它们在项目视图与范围文档中予以说明 用户需求 userrequirement 描述了用户使用产品必须要完成的任务 可以在用例模型或方案脚本中予以说明 功能需求 functionalrequirement 定义了开发人员必须实现的软件功能 使得用户能完成他们的任务 从而满足了业务需求 系统需要提供的服务或功能 如图书检索系统对特定输入的处理方式 如对非法输入的提示系统在特定环境下的行为 如长时间无操作时的屏保 3 软件需求的层次 非功能需求 non functionalrequirement 是从各个角度对系统的约束和限制 反映了应用对软件系统质量和特性的额外要求 对系统功能或服务附加的质量约束 例如响应时间 容错性 安全性等 客户所关心的 外部质量 从系统开发和维护角度出发的质量属性 例如可理解性 可扩展性 可配置性等 软件开发或维护者所关心的 内部质量 软件所特有 4 软件需求的层次 续 例 银行ATM系统业务需求系统为用户提供自助存取款服务用户需求用户可以随时安全 快捷地进行存款和取款功能需求系统允许用户从银行帐户中取款系统允许用户向银行帐户中存款系统允许用户查询从银行帐户中的余额系统使用 位数字密码检验用户存取的合法性 5 软件需求的层次 续 例 银行ATM系统 非功能需求系统在 秒内响应所有请求除了每天 分钟维护外 系统每周 天 每天 小时都可以用需求来源客户或用户 如银行职员 管理人员 用户 行业标准 政策法规当前手工处理系统的文档咨询银行领域专家 6 4 4需求分析阶段的活动 活动 产出物 需求开发 会议纪要讨论纪要 分析模型 需求规格说明书 审核通过的规格说明书 图4 4需求分析阶段的活动 需求管理 需求获取 需求分析与建模 规格说明 需求验证 4 1需求及需求原因 4 2需求分析的相关人员 4 3不同层次的需求 7 4 4 1需求获取 requirementelicitation 需求获取的目标获取需求信息的相关者获取需求信息的来源获取需求信息的基本步骤获取需求信息的方法 8 1 需求获取的目标 收集准备建立的系统和正在使用的系统的信息 并从这些信息中提取用户和系统需求 为下一步的需求分析提供素材 2 获取需求信息的相关者 主要用户 中层管理用户 技术人员 顾客 查询用户 商业用户 图4 5收集信息相关者 9 历史数据 记录 表 报表 卡片 文字描述 文档 图 手工流程 计算机流程 己有的系统 不同类型的人员等信息 需求活动需求的获取 3 获取需求信息的来源 10 安排航班飞行的时间表 交通费用的设置和购成的规定描述 航空公司的预定和售票的工作流程 航班预定业务中的各种人 旅行社和航空公司雇员 是如何工作的 己有的预定系统能完成哪些工作 如何完成的 法律 规章制度和规则管理着该行业 研究竞争性预定系统的功能 了解正在发生的从旅游代理商预定机票到旅客在线预定机票的过渡 用一段话概括进行航班预定系统分析时需要收集的信息来源 11 4 获取需求信息的基本步骤 第1步 了解相关背景和领域 行业的知识 确定产品所期望的用户类 第2步 与客户或组织的高层人员进行交流 了解实际用户任务和目标以及这些任务所支持的业务需求 第3步 与客户或组织的底层人员进行交流 获取每个用户类的详细的用户需求 第4步 整理需求纪要 发现新问题 并重复1 3步 第5步 需求分类和组织 以区别功能需求 非功能需求 约束条件 业务规则 外部接口需求 建议解决方法和附加信息 第6步 优先排序和解决冲突 第7步 得到最终需求清单 并与客户做最终签字确认 12 1 思想 先了解宏观的问题 再了解细节的问题 设S 一个软件系统 D 不同的问题域 P 问题 F 行为 或功能 S D1 D2 D3 Dn Di P1 P2 P3 Pm Pj F1 F2 F3 Fk 每个行为对应于软构件中的接口 从发现初始需求开始 5 获取需求信息的方法 13 思考如下问题背景 你对一个同学已经仰慕已久 十一 快到了 你希望对方能够与你共进晚餐 但是由于你们只有几面之缘 你对她 他 的爱好一无所知 问题 你会采用哪些方式来调查获得对方的兴趣爱好 2 获取需求信息的方法 直接 面谈 打电话 发信 跟踪观察 间接调查 猜测 14 面对面访谈 face to faceinterviewing 专题讨论会 workshop 现场观察 observingonthescene 头脑风暴 brainstorming 多种方法要结合在一起使用 效果更好 获取需求信息的方法 15 面对面访谈 16 面对面访谈 需求获取中最直接的方法 用户面谈 interviewing 看起来很容易 但 做起却很难 面谈中存在以下问题 交流障碍 沟通不全 对问题的理解不深入或有偏见 缺少经验 不能主动 深入挖掘问题 意见冲突 不虚心听取别人的意见 认为用户不懂得计算机和程序 17 如何提问 封闭式问题 对错判断或多项选择题 回答只需要一两个词 每个人都能提问题 但并不等于人人都会提问题 开放式问题 这种问题需要解释和说明 同时向对方表示你对他们说的话很感兴趣 还想了解更多的内容 通过提问题增强你对谈话进展和方向的控制 问题不能过于宽泛 最开始的问题不能太难 谈话之前有意识的准备一些备用问题 不能在提问之前就已经表示不赞同 18 访谈问题的分类 上下文无关的问题 context freequestions 充分理解用户的问题 不涉及具体的解决方案客户是谁 最终用户是谁 不同用户的需求是否不同 这种需求目前的解决方案是什么 解决方案相关的问题 solution contextquestions 通过这类问题 探寻特定的解决方案并得到用户认可你希望如何解决这个问题 你觉得该问题这样解决如何 19 面谈之前 确立面谈目的确定要包括的相关用户确定参加会议的项目小组成员建立要讨论的问题和要点列表复查有关文档和资料确立时间和地点通知所有参加者有关会议的目的 时间和地点 20 面谈之中 Step1 事先准备一系列上下文无关的问题 并将其记录下来以便面谈时参考 Step2 面谈前 了解一下要面谈的客户公司的背景资料 不要选择自己能回答的问题而浪费时间 Step3 面谈过程中 参考事先准备的面谈模板 以保证提出的问题是正确的 将答案记录到纸面上 并指出和记录下未回答条目和未解决问题 Step4 面谈之后 分析总结面谈记录 21 面谈之后 复查笔记的准确性 完整性和可理解性把所收集的信息转化为适当的模型和文档确定需要进一步澄清的问题域向参加会议的每一个人发出此次面谈的minutes 会议纪要 22 面谈记录的示例 1 第1部分 建立客户或用户情况表第2部分 评估问题询问用户对哪些类型的问题缺乏好的解决方案它们是什么 不断的问 还有吗 第3部分 理解用户环境谁是用户 他们的经历和经验如何 用户的预期如何 第4部分 扼要说明理解情况你刚才告诉我 用自己的话复述客户描述的问题 这是否足以表达你现在的解决方案中存在的问题 如果有 你还有什么问题 23 面谈记录的示例 2 第5部分 分析人员对客户问题的提问对每个问题进行以下提问 这是一个实际的问题吗 问题产生的原因是什么 现在如何解决的 希望如何解决 该问题的重要度如何 第6部分 评估自己的解决方案总结自己建议的解决方案 对自己方案的优先级排序 第7部分 评估机会第8部分 评估可靠性 性能及其他需要 24 面谈记录的示例 3 第9部分 其他需求法律法规 环境 行业标准等 第10部分 总结性提问还有其他问题要问面谈人吗 尚未解决的问题有哪些 下次访谈的方式 地点 时间 参加人等 第11部分 分析人员的总结总结出客户 用户确认的三条优先级最高的需求或问题 对于你们已经确定的项目 进行角色扮演为客户方 用户方 开发方 通过面谈来获得需求 25 面对面访谈的优缺点分析 优点 直接了解用户 得到第一首材料 缺点 需求工程师难以理解专业术语和 行话 容易造成很多误解 用户不自觉地认为某些需求太普通 太基本 不值得去提 但它们对需求工程师来说却不是显而易见的 这使得某些需求被忽略 26 专题讨论会准备参加会议人员 主持人 用户 技术人员 项目组人员安排日程通常在具有相应支持设备的专用房间进行举行会议主持人掌握讨论气氛并控制会场自由讨论阶段 营造一种创造性的和积极的氛围 获得所有相关者的意见分配会议时间 记录所有言论 需求研讨会 Workshop 27 需求研讨会会议 图4 6参加会议人员 28 需求研讨会 Workshop Figure4 7High TechJADFacility 29 需求研讨会 Workshop 联合应用设计会议 JointApplicationDesign JAD 让项目的所有成员参加会议 定义需求或设计系统 会议一般为1至2天 与会者畅所欲言 在应用需求上达成共识 对操作过程尽快取得统一意见 促进用户与开发团队之间达成共识 揭露和解决妨碍项目成功的问题 快速产生初步的系统定义 30 观察用户的工作流程 了解基本商业需求 理解商业功能 获得对商业过程和规则的全面理解 现场观察 Observe Workflows 工作流是处理商业事务的一系列步骤 提供了一种用来描述组件和参与者之间复杂的交互关系的方法 两种方式 被动观察 需求分析人员观看用户的工作主动观察 需求分析人员直接参与用户的工作 31 询问报价 制定需求记录 检查需求 将数据录入系统 将数据录入系统 计算报价 复查报价 接受订单 客户销售技术专家系统 需要帮助 需求变否 是 变 否 否 图4 8工作流程 32 4 头脑风暴 回答 铅笔有什么用途 33 头脑风暴 Brainstorming 一般以8 12人最佳明确分工 1名主持人 2名记录员成功要点 自由畅谈发表见解追求数量会后 修剪 分组 排序 34 尽早提供可选择的启发技术 应用用例 角色扮演 开发原型等方法 回答下列问题 将用户当作领域专家来认识和激励 尝试其他交流和启发技术 把分析员放在用户的位置上 试着角色扮演一小时或一天 直到开发人员将用户描述的东西交给他们 用户才认为他们知道自己要什么 用户不知道自己需要什么 或知道但不知如何表达 分析员认为自己比用户更了解用户的需求 35 图4 9收集信息和建模关系 5 获取需求信息和建模关系 和用户面谈 分发调查问卷 复查现有文档 观察商业过程 开讨论会和头脑风暴 理解新系统的限制 理解新系统的过程 理解新系统的功能 开发系统需求和模型 36 需求分析阶段的活动 活动 产出物 需求开发 会议纪要讨论纪要 分析模型 需求规格说明书 审核通过的规格说明书 需求分析阶段的活动 需求管理 需求获取 需求分析与建模 规格说明 需求验证 37 结构化分析的思想需求分析的步骤加快对需求理解的几种技术 4 4 2需求分析 requirementanalysis 4 4 1需求获取 38 结构化分析 structureanalysis SA 方法 最早产生于1970年代中期 1980年代开始成为主流 Yourdon于1989年出版 ModernStructuredAnalysis 起源于结构化程序设计语言 事先设计好每一个具体的功能模块 然后将这些设计好的模块组装成一个软件系统 4 4 2需求分析 requirementanalysis 39 1 抽象 抓住事物的本质 要素 捕获问题空间的 一般 特殊 关系是认识 构造问题的一般途径 需求活动 需求的获取 2 划分 分离问题 捕获问题空间的 整体 部分 关系是降低问题复杂性的基本途径之一 1 结构化分析的思想 自顶向下逐层分解 top down 40 4 自悟 Introspection 具有领域和过程方面的知识 具有良好的想象能力 5 提炼 Extraction 提炼方法是针对已经有了部分需求文档的情况 通过提练 复审有代表性的文档 3 多视图 捕获并建立问题空间的多维 视图 是描述问题的基本手段之一 是解决 A是B B是A 的基本方法 41 41 一般问题的解决过程 待解决问题的认识 领域的术语 知识 类似问题的解决 无关的信息与使人误解的信息 问题的阐述 问题的分析 寻找解决途径 报告及资料设计 文档 实现 设计规格说明 问题细节定义 规格 限制 准则 图4 10一般问题的解决过程 3 需求分析的步骤 42 发现和记录初始的或原始的需求 在此 应该开发操作概念文档 还应该标识其它需求源 并记录它们的需求 3 需求分析的步骤 1 需求分析的基本思想 2 Davis指导性原则 4 4 2需求分析 1 发现初始需求 分析并验证初始需求是否有效的 正确的 发现问题 及时进行修订 基于对初始需求的分析 开发最终的技术规约 并建立相应的需求文档 需求引出 43 例大学课程注册系统 需求 每个大学都有若干必修课 选修课每门课都有一个级别 且有学分值同一门课程可以是若干学位的一部分完成学分值 包括必修课 32学分学生可任选学习程序 完成注册学位 44 附加的需求 1 学生选课的约束条件 时间表冲突人数限制的约束 2 输入学生的学习计划到注册系统中并检查一致性 报告存在的问题 并在学术指导下解决 最终的学习程序经院领导批准 并由注册人备案 3 学生留有注册记录 4 每门课程由一位老师负责 45 需求分析的步骤 2 对问题进行讨论理解问题背后的问题在定义上达成共识 图4 11太多废品原因的鱼骨图 发现初始需求 练习 用鱼骨图描述学习好 差的原因 46 图4 12根本原因的帕雷托图 60 根本原因的另一种图示法 不正确销售订单 运输损耗 用户退货 成品折旧 制造缺陷 其它 50 40 30 20 10 0 2 3 4 5 6 1 47 表4 2订单系统的用户及风险承担人表 需求活动需求分析 3 确定风险承担人和用户 48 用例的概念在1986年由IvarJacobson正式提出之后被广泛接受 迅速发展 已成为OO UML RUP的标准规范和方法 4 定义系统的边界 面向对象课中详细讲述 使用 用例 usecase 技术进一步启发需求 需求分析 用例方法的思想 从用户的角度来看 他们并不想了解系统的内部结构和设计 他们所关心的是系统所能提供的服务 也就是被开发出来的系统将是如何被使用的 通讯关联 图4 13usecase图 系统外部并与该系统发生交互的人或其他系统 系统基本事件流 49 例1 ATM系统的用例 参与者 银行客户用例 银行客户使用自动提款机来进行银行帐户的查询 提款和转帐交易 银行客户 查询 取款 转帐 存款 图4 14ATM系统的用例 50 例 ATM系统 有哪些参与者和用例 银行客户查询存款 取款转账 用例 ATM维护人员维护系统 后台服务器周期性操作 图4 15ATM系统的参与者和用例 51 ATM系统的参与者与角色之间的通讯关联 系统内部定时的执行一些操作 但这些操作并不是由外部的人或系统触发的 银行客户 查询 存 取款 转帐 后台服务器 系统时钟 周期性任务 操作员 维护系统 图4 16ATM系统的参与者与角色之间的通讯关联 参与者确定用例参与者与用例对应 52 52 描述如下 在图书管理系统中 要为每个借阅者建立一个账号 并给借阅者发放借阅卡 借阅卡可以提供借阅卡号 借阅者名 账户中存储借阅者的个人信息 借阅信息以及预定信息 例2图书馆图书管理系统的分析 持有借阅卡的借阅者可以借阅书刊 返还书刊 查阅书刊信息 预定书刊并取消预定 但这些操作都是通过图书管理员进行的 也即借阅者不直接与系统交互 而是图书管理员充当借阅者的代理与系统交互 53 53 在借阅书刊时 需要输入 所借阅的书刊名 书刊的ISBN ISSN号 然后输入借阅者的图书卡号和借阅者名 完成后提交所填表格 系统验证借阅者是否有效 在系统中存在账号 若有效 借阅请求被接受 系统查询数据库系统 看借阅者所借阅的书刊是否存在 若存在 则借阅者可以借出书刊 建立并在系统中存储借阅纪录 54 54 借阅者还书后 删除关于所还书刊的借阅纪录 如果借阅者所借的书刊已被借出 借阅者还可预订该书刊 一旦借阅者预定的书刊可以获得 就将书刊直接寄给借阅人 为了简化系统 预定书刊可获得时就不通知借阅者了 另外 为了简化系统 也不考虑书刊的最长借阅期限 假设借阅者可以无限期地保存所借阅的书刊 55 55 对上述图书馆图书管理系统的描述进行分析获得如下功能性需求 1 图书管理员可以创建新的借阅者账号 2 借阅者持有借阅卡 借阅者名和借阅卡号 3 图书管理员作为借阅者的代理借书 4 图书管理员作为借阅者的代理预订书刊 5 图书管理员作为借阅者的代理取消预订 6 图书管理员作为借阅者的代理还书 56 56 7 图书管理员可以修改借阅者的账户信息 8 图书管理员可以删除已经存在的借阅者账户 9 图书管理员可以添加新的书刊种类 10 图书管理员可以修改书刊种类信息 11 图书管理员可以删除系统中的书刊种 12 图书管理员可以在系统中添加书刊的信息 注意区分 书刊种类 和 书刊 13 图书管理员可以编辑书刊信息 14 图书管理员可以删除书刊信息 57 讨论 识别并描述参与者 图书管理员登录管理读者信息管理图书信息登记借书登记还书 借阅者 登录预订图书取消预订查询浏览图书信息 例 一个图书馆管理系统 有哪些参与者和用例 用例 58 图书馆管理系统参与者与用例之间的通讯关联 登录 查询浏览 预订图书 图书管理员 管理读者 取消预订 管理图书信息 登记借书 登记还书 图4 18图书馆管理系统用例图 59 用例的文字描述 用例 椭圆 名字 NO 用例模型 参与者 用例名 图4 19由用例图到文字描述 60 用例 登记借书描述 1 目标 本用例允许图书管理员登记普通读者的借书记录2事件流 2 1常规流程当读者希望借书 图书管理员准备登记有关的借书记录时 本用例开始执行 1 系统要求管理员输入读者的注册号和所借图书号 2 图书管理员输入信息后 系统产生一个唯一的借书记录号 3 系统显示新生成的借书记录 4 图书管理员确认后 系统增加一个新的借书记录 61 用例 登记借书描述 2 2备选流程 1 读者没有注册在主流程中 如果系统没有读者的注册信息 系统将显示错误信息 用例结束 2 所借图书不存在在主流程中 如果
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026窗口服务岗事业单位结构化面试经典例题题库
- 韶关市2026-2027学年中考数学最后冲刺模拟试卷(含答案解析)
- 重点工业产品检验检测设备更新项目可行性研究报告模板-备案审批
- 旅游管理与服务试题及答案
- 大学化学有机合成实验原理与应用分析能力测试试卷及答案
- 科博会AI新成果
- 海西路消防安全培训指南
- 模具技术职业规划书
- 互联网专业就业前景
- 财富管理专业就业趋势
- 具身智能在工业自动化生产线上的场景应用研究报告
- 露天煤矿电工培训课件
- 中药煎药上岗培训课件
- 《花非花》教学课件
- 中石油投资管理办法
- 高校PI团队管理办法
- epc模式安全管理办法
- 幼儿园家长助教课件医护版
- 设备采购类可行性研究报告
- 《企业文化建设与领导力发展》课件
- 铁路故障诊断大数据
评论
0/150
提交评论