《可行性分析和需求分析.ppt》由会员分享,可在线阅读,更多相关《可行性分析和需求分析.ppt(93页珍藏版)》请在课桌文档上搜索。
1、精选ppt,1,第2讲 可行性分析,精选ppt,2,可行性研究的任务,不是解决问题,而是确定是否可解值得解 可从下述以下方面考虑:策略评估操作性评估计划评估技术评估风险评估社会性评估经济评估注:不要花过多精力,占总成本的 5 10%,精选ppt,3,可行性研究的步骤,1、复查定义,明确限制的约束。我们认为用户要的 用户要的(1)访问关键人员(2)阅读和分析有关的材料(3)改正含糊或不确切的叙述,精选ppt,4,可行性研究的步骤,2、研究老系统 解决老系统问题,老系统功能,新增功能,新系统效益,注:只了解老系统做什么,而不管怎样做;注意了解与其它系统的接口。,老系统效益,精选ppt,5,可行性研
2、究的步骤,3、导出高层逻辑模型(conceptual design),老系统物理模型,模型逻辑模型,新模型逻辑模型,新系统物理模型,报告应该告诉用户“What”而不是“How”,精选ppt,6,可行性研究的步骤,3、逻辑模型4、重新定义 1、复查定义(1)分析员应和用户一起再次复查问题定义、工程规模和目标(2)前四个步骤构成一个循环。注:此时合同未签,应考虑成本,不宜反复太多次。,精选ppt,7,可行性研究的步骤,5、导出多种解法,进度表,经济上合算,技术上可行,操作上可行,策略上不可行,用户,不,可,能,操,作,不合算,精选ppt,8,项目评估的内容,策略评估操作性评估计划评估技术评估风险评
3、估社会可行性(法律,合同,政治)经济性评估,精选ppt,9,策略评估的内容,目标:提出的系统对组织目标具有怎样的贡献?例如它是否能够增加市场份额?IS计划:提出的系统如何与IS计划相适应?它将替换或者与那些系统接口?它与将来开发的系统有何交互关系?组织结构:新系统对目前的部门和组织结构有何影响?例如一个新的订单处理系统是否与目前的销售与库存控制的功能相重叠?MIS:系统将在组织的何层次上提供何种信息?它将以何种方式对现存管理信息系统进行补充何提高?人员:系统将以何种方式影响人力水平和现存雇员的技术?它对组织整个人员开发策略有何影响?情形:系统将使客户对组织的态度有何变化?是否采用一个自动化的系
4、统将与提供友好的服务相冲突?,精选ppt,10,操作可行性,确定:系统是否能够真正解决问题是否系统一旦安装后,有足够的人力资源来运行系统用户对新系统具有抵触情绪可能使操作不可行,精选ppt,11,计划评估,估计项目完成所需的时间评估项目的时间是否足够,精选ppt,12,技术评估,技术的成熟程度实验室技术经过中试的技术已经工业化应用的技术市场需求显在潜在:转化为显在的条件竞争态势:与竞争技术相比,所采用技术的优势及缺陷技术转换成本支撑体系与条件:原料、销售网络、用户体系、政策技术发展趋势及所采用技术的发展前景,精选ppt,13,技术方案选择,要考虑的制约条件需求制约:现存的需求结构及需求结构可能
5、的变化资源制约:资金、人力资源、自然资源、其它要素环境制约:经济技术环境、社会文化环境、自然环境选择原则经济性原则:以最小的投入取得最好的效果发展原 则:发展的前景及适应发展的能力兼容性原则:与原有经济、技术、环境、社会的兼容性相关效果原则:相关的经济、技术、环境、社会效果选择视角技术先进性技术适用性,精选ppt,14,风险分析,风险识别风险评估风险识别风险分析风险优先级,精选ppt,15,社会可行性,是否满足所有项目涉及者的利益是否满足满足法律或合同的要求如环境法规,精选ppt,16,成本效益分析,1、成本估计(Cost Estimation)代码行技术:每行代码的平均成本 源代码行数 任务
6、分解技术:人力 工资 经验公式及软件:,软件:Boehms Constructive Cost Model(COCOMO)v1.0 in 1970s,v2.0 in 1995,精选ppt,17,成本效益分析,2、效益估计(Benefit Estimation)例:假设某软件生命周期为5年。现在投资20万元,平均年利率3%。从第一年起,每年年底收入4.2万元,问该项目是否值得投资?,精选ppt,18,成本效益分析,到第5年底结算时:投资额=200000(1+3%)5 231855(元)收入=42000(1+3%)4+(1+3%)3+(1+3%)2+(1+3%)+1 222984(元),不合算!,
7、精选ppt,19,成本效益分析,衡量工程价值的经济指标有:纯收入=折合现价的总收入-当前投资额=,投资回收期例:第6年底可收回,精选ppt,20,成本效益分析,投资回收率:设为j,精选ppt,21,可行性研究的步骤,6、推荐行动方针,什么都不做永远是一个值得考虑的方案,精选ppt,22,综合评估,我们的目的是最后确定是否实施该项目因此我们要将这些评估加以综合考虑如何综合考虑?,精选ppt,23,Candidate Systems Matrix,精选ppt,24,精选ppt,25,7、开发计划(粗略)任务分解,确定负责人 大致进度规划 财务预算 风险分析及对策,8、审查、存档,精选ppt,26,
8、第3讲:需求分析,精选ppt,27,What Are the Real Problems?,the customer has only a vague idea of what is,required,the developer is willing to proceed with the,vague idea on the assumption that well fill in,the details as we go,the customer keeps changing requirements,the developer is racheted by these changes,ma
9、king errors in specifications and development,and so it goes.,精选ppt,28,Software Requirements Analysis,identify the“customer”and work together to negotiate“product-level”requirementsbuild an analysis modelfocus on datadefine functionrepresent behaviorprototype areas of uncertaintydevelop a specificat
10、ion that will guide designconduct formal technical reviews,精选ppt,29,Requirements Gathering,Facilitated Application Specification Techniques,Software,Engineering,Group,Customer,Group,精选ppt,30,FAST Guidelines,participants must attend entire meetingall participants are equalpreparation is as important
11、as meetingall pre-meeting documents are to be viewed as“proposed”off-site meeting location is preferredset an agenda and maintain itdont get mired in technical detail,J.Wood&D.Silver,精选ppt,31,Quality Function Deployment,Function deployment determines the“value”(as perceived by the customer)of each f
12、unction required of the systemInformation deployment identifies data objects and eventsTask deployment examines the behavior of the systemValue analysis determines the relative priority of requirements,精选ppt,32,The Analysis Process,the problem,requirementselicitation,build aprototype,createanalysism
13、odels,developSpecification,Review,精选ppt,33,Analysis Principle IModel the Data Domain,define data objectsdescribe data attributesestablish data relationships,精选ppt,34,Analysis Principle IIModel Function,identify functions that transform data objectsindicate how data flow through the systemrepresent p
14、roducers and consumers of data,精选ppt,35,Analysis Principle IIIModel Behavior,indicate different states of the systemspecify events that cause the system to change state,精选ppt,36,Analysis Principle IVPartition the Models,refine each model to represent lower levels of abstraction refine data objects c
15、reate a functional hierarchy represent behavior at different levels of detail,精选ppt,37,Analysis Principle VEssence,begin by focusing on the essence of the problem without regard to implementation details,精选ppt,38,The Analysis Model,Data Model,BehavioralModel,FunctionalModel,精选ppt,39,Analysis Modelin
16、g:Where to Begin?,A statement of scope can be acquired from:the FAST working document A set of use-casesthe statement of scope must be“parsed”to extract data,function and behavioral domain information,精选ppt,40,Statement of Scope,a relatively brief description of the system to be builtindicates data
17、that are input and output and basic functionalityindicates conditional processing(at a high level)implies certain constraints and limitations,精选ppt,41,Identifying Objects and Operations,define“objects”by underlining all nouns in the written statement of scopeproducers/consumers of dataplaces where d
18、ata are stored“composite”data itemsdefine“operations”by double underlining all active verbs processes relevant to the applicationdata transformationsconsider other“services”that will be required by the objects,精选ppt,42,Data Modeling and Entity Relationship(E-R)Diagramming,精选ppt,43,Why Data Modeling?
19、,examines data objects independently of processingfocuses attention on the data domaincreates a model at the customers level of abstractionindicates how data objects relate to one another,精选ppt,44,What is a Data Object?,Object,something that is described by a set,of attributes(data items)and that wi
20、ll be,manipulated within the software(system),each,instance,of an object(e.g.,a book),can be identified uniquely(e.g.,ISBN#),each plays a necessary role in the system,i.e.,the system could not function without,access to instances of the object,each is described by attributes that are,themselves data
21、 items,精选ppt,45,Typical Objects,external entities(printer,user,sensor),things,(e.g,reports,displays,signals),occurrences or events(e.g.,interrupt,alarm),roles,(e.g.,manager,engineer,salesperson),organizational units,(e.g.,division,team),places,(e.g.,manufacturing floor),structures(e.g.,employee reco
22、rd),精选ppt,46,Data Objects and Attributes,A data object contains a set of attributes that act as an aspect,quality,characteristic,or descriptor of the object,object:automobileattributes:make model body type price options code,精选ppt,47,What is a Relationship?,relationship,indicates“connectedness”;,a f
23、act that must be remembered,by the system and cannot or is not computed or derived mechanically,several instances of a relationship can existobjects can be related in many different ways,精选ppt,48,ERD Notation,(0,m),(1,1),object,object,relationship,1,2,One common form:,(0,m),(1,1),object,1,object,2,r
24、elationship,Another common form:,attribute,精选ppt,49,Building an ERD,Level 1model all data objects(entities)and their“connections”to one anotherLevel 2model all entities and relationshipsLevel 3model all entities,relationships,and the attributes that provide further depth,精选ppt,50,The ERD:An Example,
25、(1,1),(1,m),places,Customer,requestfor service,generates,(1,n),(1,1),workorder,worktasks,materials,consistsof,lists,(1,1),(1,w),(1,1),(1,i),selectedfrom,standardtask table,(1,w),(1,1),精选ppt,51,系统流程图,可行性研究阶段:了解和分析现有的系统,概括地表示对现有系统的认识设计阶段:把设想的新系统的逻辑模型转变为物理模型,需要描绘未来的物理系统的概貌系统流程图就是描绘物理系统的传统工具反映信息在各部分间流动的
26、情况 控制、处理信息(不同于程序流程图),精选ppt,52,系统流程图,符号(概括的形式抽象的描绘物理系统时)处理:能改变数据值或数据位置的加工或部件,例如,程序、处理机、人工加工等都是处理。输入/输出:表示输入或输出(或既输入又输出),是一个广义的不指明具体设备的符号。连接:指出转到图的另一部分或从图的另一部分转来,通常在同一页上换页连接:指出转到另一页图上或由另一页转来数据流:用来连接其它符号,指明数据流动方向,精选ppt,53,系统流程图,表示一个具体的物理系统穿孔卡片:表示用穿孔卡片输入或输出,也可表示一个穿孔卡片文件文档:通常表示打印输出,也可表示用打印终端输入数据,精选ppt,54
27、,系统流程图,磁带:磁带输入/输出,或表示一个磁带文件联机存储:表示任何种类的联机存储,包括磁盘、磁鼓、软盘和海量存储器等磁盘:磁盘输入/输出,也可表示存储在磁盘上的文件和数据库,精选ppt,55,系统流程图,磁鼓:磁鼓输入/输出,也可表示存储在磁鼓上的文件和数据库显示:CRT终端或类似的显示部件,可用于输入或输出,也可既输入又输出人工输入:人工输入数据的脱机处理,例如填写表格,精选ppt,56,系统流程图,人工操作:人工完成的处理,例如,会计在工资支票上签名辅助操作:使用设备进行的脱机操作通信链路:通过远程通信线路或链路传送数据,精选ppt,57,系统流程图,例子,精选ppt,58,系统流程
28、图,该装配厂使用一台小型计算机处理更新库存清单主文件和产生订货报告的任务。零件库存量的每一次变化称为一个事务,由放在仓库中的CRT终端输入到计算机中;系统中的库存清单程序对事务进行处理,更新存储在磁盘上的库存清单主文件,并且把必要的订货信息写在磁带上。最后,每天由报告生成程序读一次磁带,并且打印出订货报告。,精选ppt,59,系统流程图,注:符号=系统部件 箭头=信息流动路径,库存清单程序,定货信息,报告生成程序,定货报告,即库存量变化,精选ppt,60,系统流程图,画法习惯上信息在图中从顶向下或从左向右流动可以在图上加注释,注释较多时,可以另外加一个文档来进行解释复杂系统可以用分层方法来表示
29、首先用一张高层次的系统流程图描绘系统总体概貌,表明系统的关键功能每个关键功能扩展到适当的详细程度,画在单独的一页纸上,精选ppt,61,数据流图,数据流图描绘系统的逻辑模型,图中无具体的物理元素,只是描绘信息在系统中流动和处理的情况数据流图可以作为计算机人员与客户之间的通信工具软件设计的出发点,System=data+function,精选ppt,62,数据流图,1、符号,精选ppt,63,数据流图,精选ppt,64,数据流图,注意点数据流与程序流程图中用箭头表示的控制流有本质不同在数据流图中应描绘所有可能的数据流向,而不应该描绘出现某个数据流的条件处理并不一定是一个程序,可以代表一系列程序、
30、单个程序或者程序的一个模块,甚至人工处理过程一个数据存储也并不一定是一个文件,它可以表示一个文件、文件的一部分、数据库的元素或记录的一部分等等,精选ppt,65,数据流图,通常在数据流图中忽略出错处理,也不包括如打开文件、关闭文件之类的内务处理数据流图的要点是描绘“做什么”,而不是“怎么做”,精选ppt,66,数据流图,重复元素的画法有时数据的源点和终点相同数据存储有时也要重复为了表示方便,代表同一事物的同样符号在图中出现在n个地方,则在这个符号的一个角上画n-1条短斜线做标记,精选ppt,67,数据流图,命名为数据流(或数据存储)命名名字应代表整个数据流(或数据存储)的内容,而不是仅仅反映它
31、的某些成分不要使用空洞的、缺乏具体含义的名字(如“数据”、“信息”、“输入”之类)如果在为某个数据流(或数据存储)起名字时遇到了困难,则可能是因为数据流图分解不恰当造成的,应该试试重新分解,看是否能克服这个困难,精选ppt,68,数据流图,为处理命名通常先为数据流命名,然后再为与之相关联的处理命名名字应该反映整个处理的功能,而不是一部分名字最好由一个具体的及物动词,再加上一个具体的宾语构成通常名字中仅包括一个动词,如果必须用两个动词才能描述清楚,可能分成两个处理更恰当如果再为某个处理命名时遇到困难,则可能是发现了分解不当的迹象,应该重新分解数据源点/终点是目标系统的外围环境,采用它们在问题域中
32、习惯使用的名字(如“采购员”,“仓库管理员”等),精选ppt,69,数据流图,为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统,精选ppt,70,数据流图,精选ppt,71,数据流图,在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据底层流图是指其加工不需再做分解的数据流图,它处在最底层中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。,精选ppt,72,数据流图,商店业务处理系统,精选ppt,73
33、,数据流图,这个数据流图只是一个高层的系统逻辑模型,它反映了目标系统要实现的功能数据流图绘制步骤首先确定系统的输入和输出根据商店业务,画出顶层数据流图,以反映最主要业务处理流程经过分析,商店业务处理的主要功能应当有销售、采购、会计三大项。主要数据流输入的源点和输出终点是顾客和供应商。然后从输入端开始,根据商店业务工作流程,画出数据流流经的各加工框,逐步画到输出端,得到第一层数据流图,精选ppt,74,数据流图,第一层数据流图,精选ppt,75,数据流图,对销售进行细化:客户提出要求,根据商品名册编辑订单判断数据库中是否有该客户,如果没有要进行登记。根据商品库存进行订单检查如果有货,则下订单如果
34、无货,产生暂存订单,通知采购部门订货,当货品到达后,采购部门发到货通知,此时,与暂存订单相对比,如果有货了,则下订单给会计部门发收款单,会计部门将据此开收据,同时,修改库存将发货票和收据返回给客户编写销售历史经理可以查询库存,精选ppt,76,数据流图,加细每一个加工框 销售细化,精选ppt,77,数据流图,采购细化,精选ppt,78,数据流图,检查和修改数据流图的原则数据流图上所有图形符号只限于前述四种基本图形元素数据流图的主图必须包括前述四种基本元素,缺一不可数据流图的主图上的数据流必须封闭在外部实体之间每个加工至少有一个输入数据流和一个输出数据流在数据流图中,需按层给加工框编号。编号表明
35、该加工所处层次及上下层的亲子关系规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。此即父图与子图的平衡可以在数据流图中加入物质流,帮助用户理解数据流图图上每个元素都必须有名字数据流图中不可夹带控制流初画时可以忽略琐碎的细节,以集中精力于主要数据流,精选ppt,79,数据流图的用途,基本目的:交流信息的工具,因而需要分层,需要画得清楚分析和设计的工具分析员可以着重描绘系统的功能,而不是系统的物理实现方案在数据流图上可以划出自动化边界,每组自动化边界可能意味着一个不同的物理系统数据流图还可以帮助详细设计面向数据流的设计方法,精选ppt,80,数据字典,关于数
36、据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合作用:在软件分析和设计中给人提供关于数据的描述信息数据流图和数据字典一起构成系统的逻辑模型,两者共同构成系统的规格说明,精选ppt,81,数据字典,数据字典应该由下列四类元素的定义组成:数据流数据流分量(即,数据元素)数据存储处理对数据处理的定义用其它工具描述更方便,因此数据字典将主要由对数据的定义组成,精选ppt,82,数据字典,数据字典也应该包括一些其它内容一般信息(名字,别名,描述等等)定义(数据类型、长度、结构等等)使用特点(值的范围,使用频率,使用方式输入/输出/本地,条件值等等)控制信息(来源、用户、使用它的程序、改变权、
37、使用权等)分组信息(父结构,从属结构,物理位置记录、文件和数据库等等),精选ppt,83,数据字典,名字:定货报表别名:定货信息描述:每天一次送检采购员 的需要定货的零件表定义:定货报表=零件编号+零件名称+定货数量+目前价格+主要供应者+次要供应者位置:输出到打印机,struct 定货报表 char 零件编号8;char 零件名称20;int 定货数量;float 目前价格;struct supplier 主要供应者;struct supplier 次要供应者;,精选ppt,84,数据字典,数据字典的定义就是对数据自顶向下分解的过程,当数据分解到不需要进一步定义,每个和工程有关的人都清楚含义
38、时,分解过程完成由数据元素组成数据的方式只有下属三种基本类型顺序:以确定顺序连接两个或更多分量选择:即从两个或多个可能的元素中选取一个重复:把指定的分量重复零次或多次当重复的上下限为1和0时,表示可选,由于它是一种常见的方式,所有把它列为单独的一种关系算符可选:即一个分量可有可无,精选ppt,85,数据字典,符 号 含 义 举 例 被定义为 与 x=ab.,.或.|.或 x=a,b,x=a|b.或 m.n 重复 x=a,x=3a8(.)可选 x=(a)“.”基本数据元素 x=“a”.连结符 x=1.9,精选ppt,86,数据字典,精选ppt,87,数据字典,存折户名所号帐号开户日性质(印密)1
39、存取行50户名2字母24所号“001”.“999”帐号“00000001”.“99999999”开户日年月日性质“1”.“6”注:“1”表示普通户,“5”表示工资户等印密“0”注:印密在存折上不显示存取行日期(摘要)支出存入余额操作复核,精选ppt,88,一个练习,1.某旅馆的电话服务如下:可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。要求:写出在数据字典中,电
40、话号码的数据条目的定义(即组成)。,精选ppt,89,答案,电话号码=分机号外线号码分机号=7201.7299外线号码=9+市话号码长话号码长话号码=区号+市话号码区号=100.300市话号码=局号+分局号局号=455466888552分局号=4数字4,精选ppt,90,数据字典,数据字典的用途作为分析阶段的工具改进分析员和用户之间的工具改进在不同的开发人员或不同的开发小组之间的通信数据字典中包含的每个数据元素的控制信息使你很容易估计改变一个数据将产生的影响,并且能对所有受影响的程序或模块作出相应的改变数据字典使开发数据库的第一步,而且使很有价值的一步,精选ppt,91,数据字典,实现方法人工
41、全自动化生成(利用数据字典处理程序)混合过程(用正文编辑程序,报告生成程序等已有的实用程序帮助人工过程),精选ppt,92,数据字典,要求:通过名字能方便地查阅数据的定义没有冗余尽量不重复在规格说明的其他组成部分中已经出现的信息容易更新和修改能单独处理描述每个数据元素的信息定义的书写方法简单方便而且严格,精选ppt,93,需求分析维度空间,Performance,Reliability,Test that the application behaves consistently and predictably.,Test the online response under average and peak loading.,Functionality,Test the accurate workings of each usage scenario.,Usability,Test application from the perspective of convenience to the end user.,Supportability,Test the ability to maintain and support the application under production use.,