Chapter系统分析调查系统需求.ppt
《Chapter系统分析调查系统需求.ppt》由会员分享,可在线阅读,更多相关《Chapter系统分析调查系统需求.ppt(49页珍藏版)》请在冰豆网上搜索。
,Chapter4系统分析-调查系统需求,哈尔滨工业大学国家示范性软件学院主讲:
范国祥2008.04,本章主要内容,更详细的分析阶段功能和技术需求系统相关者系统需求的来源信息收集技术业务流程重组验证系统需求,本章目标,描述系统分析生命周期阶段的各种活动描述系统的功能需求和技术需求之间的差异区分和理解不同类型的用户(这些用户包括在系统需求调查对象中)解释开发系统需求所必需的信息类型使用文档概要、面谈、观察、原形、调查表、供应商调查和JAD会议来决定系统需求说明业务流程重组在定义系统需求中的作用讨论通过验证系统需求来保证准确性和完整性的必要性以及结构化遍历技术的使用,概述,系统分析的2大任务:
(1)为得到系统需求而调查和收集相关事实
(2)根据系统需求进行业务过程建模本章就是要完成第1个任务。
关键:
如何成为问题领域专家在用户中建立可信度提高交流技巧,4.1更详细的分析阶段,分析阶段的活动:
收集信息定义系统需求划分需求优先级为可行性和发现需求而构建原形产生、评估各种方案同管理部门一起复查各种建议,分析阶段需要非常详细的定义:
信息系统需要完成什么来为公司提供所期望的利润。
应该提出多种方案,并选择最优的解决方案。
在系统设计阶段,再对选中的方案进行详细的设计。
在分析阶段,上述6项活动必须全部完成,并且通常是同时完成。
4.1.1收集信息,分析阶段会收集大量的信息收集对象:
系统未来的使用者收集方式和方法:
通过面对面或电话交谈通过观察他们的日常工作通过回顾计划文档和方案说明浏览现有操作流程及制度文件通过参考类似公司在用系统的使用情况最好的办法是:
到用户公司中工作一段时间,4.1.1收集信息,完成本项活动时,应该回答的关键问题是:
我们是否已经拥有了全部的信息用来定义系统所必需完成的工作?
4.1.1收集信息,4.1.2定义系统需求,收集到的信息,必须整理、记录下来-定义系统需求技术需求:
即系统的指标要求,只需记下即可如性能、响应时间、同时在线用户数等功能需求:
需要创建不同的模型来描述结构化分析技术:
DFD和ERD等OO分析技术:
用例图和类图等定义需求模型的过程,也是分析员不断了解系统的过程分析员要不断与用户确认模型的完整性和正确性需求定义和信息收集可能会迭代进行,4.1.2定义系统需求,完成本项活动时,应该回答的关键问题是:
我们需要系统做什么(详细的)?
4.1.3需求的优先级划分,用户提出的需求是会很多的而双方认可的需求内容是必须实现的有些需求功能是扩充的,只是提高系统使用性能的时间资源、人力资源是有限的怎么办?
必须对用户的需求进行分类,划分优先级来处理,4.1.3需求的优先级划分,完成本项活动时,应该回答的关键问题是:
系统要完成的最重要的事情是什么?
4.1.4构建系统原形,检验可行性并发现问题,在分析过程构建原形(也称“发现原形”)主要目的是为了更好地理解用户的需求通过展示原形有助于用户发现以前未考虑过的问题通过原形构建,可以有助于分析员验证可行性,4.1.4构建系统原形,检验可行性并发现问题,完成本项活动时,应该回答的关键问题是:
我们可以证明某种技术能够实现我们想让它完成的那些功能吗?
我们是否已经构建出一些原形可以使用户完全理解新系统的潜在功能?
4.1.5产生、评估候选方案,对系统的最终设计和实现会有各种方案当需求优先级确定了以后,分析员可以产生几个候选方案,消除一些不重要的需求技术的应用也可以产生一些方案其他问题:
诸如自行开发/外包等方案,4.1.5产生、评估候选方案,完成本项活动时,应该回答的关键问题是:
创建系统的最好方案是什么?
4.1.6同管理部门一起复查各种建议,收集信息,定义需求,划分需求的优先级,发现原形及产生评估方案这些活动都可以并行“同管理部门一起复查各种建议”通常是在所有分析活动已经完成或将要完成时进行项目经理需要提交一份解决方案并从管理部门那里获得最终的决定,4.1.6同管理部门一起复查各种建议,完成本项活动时,应该回答的关键问题是:
我们应不应该继续、设计和实现我们提出的新系统?
小结,4.2功能和技术需求,系统需求:
系统所提供功能和性能的详细定义功能需求:
描述系统必须完成的活动或过程技术需求:
描述系统环境、硬件和软件相关特征性能需求:
描述系统效率及能力相关特征可用性需求:
描述系统中与用户操作相关特征可靠性需求:
描述系统运行的可靠性特征安全性需求:
描述系统中用户对特定功能或数据使用或访问条件,4.3系统相关者系统需求的来源,系统功能需求信息的主要来源系统相关者主要分为四类:
用户实际使用系统处理日常事务的人,包括业务用户、管理员用户、主管用户等委托人购买或拥有系统的所有者技术人员确保系统正常运行的相关维护人员,包括网络管理员、数据库管理员、设备维护人员等外部客户可以直接使用系统的商业客户,4.3系统相关者系统需求的来源,4.4信息收集技术,最常使用的一些方法如下:
复查现有的报表、表格和过程描述主持与用户的面谈和讨论观察并记录业务流程建立系统原形分发和收集需求调查表主持JAD(联合应用程序开发)会议研究供应商的解决方案,4.4信息收集技术,“事实发现活动”的第一步开始时,分析员可以请求用户提供正在使用的表格和报表的复印件,这是进一步收集需求的基础通过“沟通”形式理解文档和报表该过程有助于发现面谈中漏掉的业务规则,1)复查现有的报表、表格和过程描述,4.4信息收集技术,1)复查现有的报表、表格和过程描述,一张订单表格样例,4.4信息收集技术,面对面交流是理解业务功能和规则的最有效方法该方法比较耗时间和资源项目组成员与单个用户或用户组举行会议面谈步骤:
准备面谈内容:
问题详尽进行面谈:
用心、得体面谈的后续工作:
整理消化吸收(建模),2)主持与用户的面谈和讨论,2)主持与用户的面谈和讨论,4.4信息收集技术,举行面谈清单面谈之前确立面谈目的确定要包括的相关用户确定参加会议的项目小组成员建立要讨论的问题和要点列表复查有关文档和资料确定时间和地点通知所有参加者有关会议的目的、时间和地点进行面谈衣着得体准时到达、限定面谈时间寻找异常和错误情况深入调查细节详细记录面谈之后复查笔记的准确性、完整性和可理解性将所收集的信息转化为适当的模型和文档确定需要进一步澄清的问题领域适当的时候向参加会议的每个人发一封感谢信,2)主持与用户的面谈和讨论,4.4信息收集技术,举行面谈清单(样例)面谈目的确定销售佣金率的处理规则日期、时间和地点2003年4月21日,9:
00am,WilliamMcDougal办公室用户参加人员WilliamMcDougal,市场销售部副经理及几个职员项目小组参加人员MaryEllenGreen和JimWilliams面谈/讨论1.谁有资格当销售代理?
2.佣金的主要部分是什么?
佣金率是多少?
3.如何处理退货佣金?
4.有什么特殊的动机吗?
竞争/季节性降价?
5.佣金范围可变吗?
有行情表吗?
6.有哪些异常情况?
后续工作问题的重要决定或回答参看关于佣金政策的附属文件本次会议未解决的条目参看未解决条目表的2、3项下次会议会后续会议的时间安排2008年4月28日,9:
00am,2)主持与用户的面谈和讨论,4.4信息收集技术,面谈技巧:
不要找太多人,每次1-3人为宜,否则耗时且效率低不要认为对方懂得系统开发以请教方式问对方的“经历”和“工作过程”每次面谈不要时间太长可以与固定人员建立后续电话“访谈”,4.4信息收集技术,同用户进行交谈,用户是被动的观察:
有效收集信息的另一种方法方式:
直接在用户工作的地方观察他们的日常活动并记录下观察到的业务操作过程,3)观察并记录业务流程,4.4信息收集技术,观察方法:
对办公室进行快速浏览安排一定的时间观察用户的工作过程同用户一道亲身实践体会工作过程使用工作流图来进行记录工作流处理商业事务或客户请求的一系列步骤工作流图:
流程图、数据流图、活动图工作流图在分析与设计阶段是有效的工具活动图:
一种工作流图,用来描述用户的活动以及活动的顺序,3)观察并记录业务流程,4.4信息收集技术,3)观察并记录业务流程,询问报价,制订需求记录,检查需求,将数据录入系统,将数据录入系统,计算报价,复查报价,接受订单,客户销售员技术专家系统,需要帮助?
需求变否?
是,变,否,否,用一个简单的活动图来说明工作流,4.4信息收集技术,3)观察并记录业务流程,4.4信息收集技术,原形:
一个规模更大的系统的最初可运行模型原形可以应用于不同目的,由此衍生不同的原形变体:
发现原形用于系统分析的需求挖掘阶段设计原形用于系统设计和实现阶段进化原形从系统分析到实现,连续使用,不断发展和完善,最终成为发布的系统废弃原形除了“进化原形”外,用后均废弃实体模型只显示系统外观而不能运行的简单原形有效原形的特征:
可操作性,集中性(目的专一),快速性(用可视化工具快速建立,易于更改),4)建立系统原形,原型例子前台原型例子后台,4.4信息收集技术,调查表在信息收集中的作用是具体而有限的使用场合:
(1)系统相关者较多
(2)地理上分布广调查表问题类型:
(1)封闭问题
(2)定量问题(3)开放问题,5)分发和收集需求调查表,4.4信息收集技术,5)分发和收集需求调查表,调查表例子第一部分:
根据一个典型的4小时轮班工作情况,回答下列问题:
1.您接了多少个电话?
2.订购一件商品一般需要多少个电话?
第二部分:
根据您同意或反对的强烈程度,选择1-7中适当的数字:
1.与顾客交谈时可用的大量产品描述对做好工作是有帮助的选择:
12345672.计算机响应速度缓慢,从而导致响应顾客需求发生困难选择:
1234567第三部分:
请写下您的意见和建议:
请简要指出现有系统的问题,您希望在新系统中如何解决?
4.4信息收集技术,JAD是用于加快系统需求调查的一种方法JAD是一项定义需求或设计系统的方法,即让所有相关人员一起参加某个单一会议单独的JAD会议会持续1-7天,要为系统的某个具体方面完成所有的事实发现、建立模型、政策决定和确认等活动。
6)主持“联合应用程序开发”(JAD)会议,4.4信息收集技术,JAD成功的关键因素:
系统相关者都要出席会议JAD会议参加人员:
主持者:
通常指定一位资深系统分析员或项目经理用户:
各类用户技术人员:
项目组成员GSS(GroupSupportSystem)-近年流行的JAD形式,类似视频会议或网上聊天,6)主持“联合应用程序开发”(JAD)会议,4.4信息收集技术,6)主持“联合应用程序开发”(JAD)会议,4.5业务流程重组,业务流程重组(BPR),也称业务流程再造近10年来的趋势,已成为许多新的信息系统创建的动机旧的商业过程规则:
“如果还没有坏,就不要修理”新的思维方式:
“总有更好的解决方法,让我们改进它”经典案例:
福特北美分部的账务部门有500人马自达仅用5人(尽管公司小一点)福特经过BPR,最后达到100人在调查活动期间必须牢记:
在项目进行期间有可能会发现改进业务流程的机会,4.6验证系统需求,1.系统分析员常常以为他们已经理解了用户的需求,但可能是错误的或不准确的2.“正确的需求”是否是客户最终认可的3.当进入设计阶段,甚至是实现阶段发现需求错误,修正的代价将是巨大的类比:
大楼建到2层时发现设计图纸错误的严重性,为什么要验证系统需求?
结构化遍历:
简称遍历,指对需求调查结果和根据这些结果建立的原形进行复查遍历4要素:
WhatWhenWhoHow,4.6验证系统需求,验证方法:
结构化遍历,What-遍历对象:
1.需求文档2.工作流图3.原形注:
每次遍历的内容不易过多When-遍历时机1.遍历对象产生后,应尽快进行2.每隔1-2周,