可行性分析课件_第1页
可行性分析课件_第2页
可行性分析课件_第3页
可行性分析课件_第4页
可行性分析课件_第5页
已阅读5页,还剩159页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件工程第二章可行性分析信息工程学院

本科生课程软件工程第二章可行性分析信息工程学院本科生课程第二章可行性分析2.1可行性研究的任务2.2可行性研究过程2.3系统流程图2.4数据流图2.5数据字典2.6成本/效益分析2.7小结第二章可行性分析2.1可行性研究的任务开始问题定义可性行研究可行否?项目实施计划终止项目的建议结束YN问题的定义与可性行研究Who

为谁设计,用户是谁?What

要解决哪些问题?Why

为什么要解决这些问题

有用的软件

3W开始问题定义可性行研究可行否?项目实施计划终止项目的建议Y可行性研究目的:用最小的代价在尽可能短的时间内确定问题是否能够解决。不是解决问题,而是确定问题是否值得去解决。说明该软件开发项目的实现在技术上、经济上和社会条件上的可行性;评述为合理地达到开发目标可能选择的各种方案。

GB8567-88《计算机软件产品开发文件编制指南》可行性研究目的:说明该软件开发项目的实现在技术上、经济上和社项目的筹备、规划与准备是软件项目实施的前期工作,它由两个重要的工作阶段构成:一是项目规划及可行性分析;二是项目需求分析。项目准备阶段的第一个工作,是项目的总体规划。首先要做的是明确系统的需求,也就是用户要计算机解决什么问题,即问题定义。系统分析员应该深入现场,了解用户单位对系统的要求,调查开发背景,进行市场调研。经过调查分析,分析员要在较短的时间内对问题进行抽象、概括,并把自己的认识写成书面报告,即项目需求报告,提交给用户方面进行讨论审查。项目需求报告应该尽可能清楚简洁,内容通常包括项目的名称,对问题的概括,项目的目标,项目的规模及对可行性研究的具体建议(即需要用的时间和成本)等等。图2.1通过一个实际项目给出了项目需求报告编写示例。可行性研究项目的筹备、规划与准备是软件项目实施的前期工作,它由两个重要项目需求报告

2008年10月1.

项目:××公司工资管理系统2.

问题:在公司日常工资管理工作中,现有系统所承担的工作只能实现工资管理的简单功能,已无法适应目前工作中处理大量数据(如日常打印工资条等)要求,工作效率低下,容易出错。3.

项目目标:为了提高公司日常工资管理的效率与准确率,而开发该项软件。该软件应逐步向本市各企业推广。4.

项目范围:硬件主要利用现有的计算机网络,增配少量专用设备,软件开发费用预计20000元。5.

初步设想:实现××公司工资管理系统,包括工资录入、数据查询、工资条、工资统计、部门设置、人员设置、项目设置等具体功能。要求将各种输出数据以表单形式打印;系统各模块具有添加新数据的功能;系统软件具有权限功能,使不同的用户具有不同的权限;建立后的数据库需要加密。6.可行性研究:由分析员和××公司工资管理部门进行,主要对公司日常工资管理规程和系统实施方案进行研究。建议进行大约3天的可行性研究,研究费用不超过200元。项目需求报告

一般的做法是分析员和用户方面的人员一起阅读讨论这份报告,通过修改得到一份双方都满意的文档。当分析员和用户双方就项目需求取得了完全一致的看法,项目的可行性研究即可开始。一般的做法是分析员和用户方面的人员一起阅读讨论这份报告,通2.1可行性研究的任务

可行性研究的主要任务是“了解客户的要求及现实环境,从技术、经济和社会因素等三方面研究并论证本软件项目的可行性,编写可行性研究报告,制定初步项目开发计划。”

GB8566-88《计算机软件开发规范》

可行性研究的最根本任务

对软件开发以后的行动方针提出建议。2.1可行性研究的任务可行性研究的主要任务是可行性研究的内容(1)技术可行性(2)经济可行性(3)操作可行性(4)社会可行性(法律可行性)(5)抉择可行性研究的内容(1)技术可行性技术可行性

度量一个特定技术信息系统解决方案的实用性及技术资源的可用性考虑的问题(1)开发风险分析(2)资源分析(3)相关技术的发展(现有技术能否实现新系统,技术难点、建议采用技术的先进性)技术可行性度量一个特定技术信息系统解决方案的实用性及技经济可行性度量系统解决方案的性能价格比。考虑的问题成本/效益分析(开发、运行的成本/效益)有形成本、效益无形成本、效益价值和成本的关系质量与价值、成本的关系价值/成本的均衡经济可行性度量系统解决方案的性能价格比。举例

12345

年6040200成本-效益(万元)该系统节省经费该系统成本盈亏平衡点投资回收期---------成本及效益分析图举例1234操作可行性用户使用可能性时间进度可行性组织和文化上的可行性操作可行性用户使用可能性2.2可行性研究过程1.复查系统规模和目标2.研究目前正在使用的系统3.导出新系统的高层逻辑模型4.进一步定义问题5.导出和评价供选择的解法6.推荐行动方针7.草拟开发计划8.书写文档提交审查2.2可行性研究过程1.复查系统规模和目标可行性研究报告的编写1引言

1.1编写目的

1.2背景

1.3定义

1.4参考资料2可行性研究的前提

2.1要求

2.2目标

2.3条件、假定和限制

2.4进行可行性研究的方法

2.5评价尺度可行性研究报告的编写1引言2可行性研究的前提可行性研究报告的编写3对现有系统的分析

3.1数据流程和处理流程

3.2工作负荷

3.3费用开支

3.4人员

3.5设备

3.6局限性4所建议的系统

4.1对所建议系统的说明

4.2数据流程和处理流程

4.3改进之处

4.4影响

4.5局限性

4.6技术条件方面的可行性可行性研究报告的编写3对现有系统的分析4所建议的系统可行性研究报告的编写5可选择的其它系统方案

5.1可选择的其它系统15.2可选择的其它系统2

......6投资及收益分析

6.1支出

6.2收益

6.3收益/投资比

6.4投资回收周期

6.5敏感性分析7社会条件方面的可行性

7.1法律方面的可行性

7.2使用方面的可行性可行性研究报告的编写5可选择的其它系统方案6投资及收益分可行性分析的目标识别用户要求评价系统的可行性进行经济分析和技术分析把功能分配给硬件、软件、人、数据库和其它系统元素建立成本和进度限制生成系统规格说明,形成所有后续工程的基础可行性分析的目标识别用户要求可行性分析的出发点是前阶段所书写的文档(即项目需求报告),对于项目需求报告中所确定的目标和规模,如果正确就进一步确认,如果错误则及时修改,为做出正确的可行性分析打好基础。具体地说,分析员应从下面三个方面对项目做出可行性分析:(1)技术可行性:使用现有的技术能实现这个系统吗?(2)经济可行性:这个系统的经济效益能超过它的开发成本吗?(详细在后面介绍成本/效益分析)(3)操作可行性:系统的操作方式在该用户组织内行得通吗?

必要时还应该进一步从法律、社会效益等更广泛的角度研究每种解法的可行性。可行性分析的主要任务

可行性分析的主要任务

可行性分析的结论可以是以下四种:(1)项目可行,可以立即开始执行;(2)需要推迟到某些条件(例如资金、人力、设备等)具备或成熟之后才能开始;(3)需要对开发目标进行某些修改之后才能开始进行;(4)不能进行或不必进行;例如因技术不成熟,经济上不合算或可能产生负面的社会影响等原因,这种情况下,分析员应该建议尽早终止项目计划,以免浪费人力、物力和财力。可行性分析结束后,要写出可行性分析报告,提交有关专家论证和上级主管部门批准。根据可行性分析结果,如果项目是可行的,那么对该项目的开发工作就继续进行。此时,分析员要做出项目开发的初步计划。可行性分析的结论可以是以下四种:1.成本/效益分析成本—效益分析的目的是从经济角度评价开发一个新的软件项目是否可行。开发一个软件系统也是一种投资,期望在将来获得更大的利润。因此在正式进行投资之前,投资商必须对成本/效益进行分析。(1)成本估算开发软件的成本主要是人的劳动消耗。软件开发成本的计算方法是以一次性开发过程所花费的代价来计算的,也就是从项目计划、需求分析、总体设计、详细设计、编码、单元测试、整体测试等全过程所花费的代价作为成本。①根据代码行进行估计代码行技术是一种简单的方法,它通过估计软件中的代码行数来估计软件的开发成本。用每行代码的成本乘以行数就得到软件的开发成本。1.成本/效益分析②根据任务分解进行估计这个方法首先将任务分解成若干子任务,然后对子任务进行成本估计,最后累加起来得出软件开发总成本。表1.1是在典型环境下各开发阶段需要使用的人力的百分比,可供开发人员在对软件成本估计时参考。②根据任务分解进行估计③借助工具软件对成本进行估计这种估计方法需要大量的历史数据为基础,需要良好的数据库系统支持。(2)成本/效益分析在进行成本—效益分析之前,首先是要估计软件的开发成本、运行费用以及软件系统将带来的效益。

系统的运行费用包括系统的操作费用(如操作人员数量、工作时间以及消耗的物资等)和维护费用。系统将来带来的经济效益包括因使用新的系统而增加的收入加上使用新系统可以节省的运行费用。估计出开发成本和将来带来的效益后,应将二者进行比较,但是,成本是现在的,效益是将来的,所以在对二者进行比较时应考虑到货币的时间价值。③借助工具软件对成本进行估计①货币的时间价值货币的时间价值通常用利率来表示。设年利率为i,现存放资金P元,则在n年后可得钱数为F,若不计复利,则F=P(1+i)n或P=F/(1+i)n

例:假设购置一套应用软件投资20万元,预计可使用5年,每年直接经济效益9.6万元,年利率为5%,试计算投入/产出比。解:考虑到货币的时间价值,5年的总体收入应当逐年按照公式计算,并非为恒定的9.6万元。1~5年中,每年的收入折算到当前的数据如表2.1所示。①货币的时间价值年份将来收益/万元(1+i)n当前收益累计的当前收益19.61.059.6/1.05=9.14299.142929.61.10258.707517.851339.61.15768.292826.143249.61.21557.897934.041159.61.27637.521941.5630表2.1货币的时间价值年始年未年份将来收益/万元(1+i)n当前收益累计的当前收益19.6根据上表所列数据,本软件投入/产出比为:

41.5630/20=2.0785(实为产出投入比)②成本的回收周期成本的回收周期是衡量一个项目开发价值的一个指标。成本回收周期就是使累计的经济效益等于最初的投资成本所需要的时间。显然,成本回收周期越短,就越快获得利润,则该项目就越值得开发。根据上例,两年后收入17.8513万元,尚欠2.15万元没有收回成本,在第三年还需要:2.15/26.1432=0.259(年),故投资回收期为2.259年。根据上表所列数据,本软件投入/产出比为:③项目的纯收入衡量项目价值的另一个经济指标是项目的纯收入,也就是在整个生存周期之内的累计经济效益(现在值)与投资成本之差(在计算时要考虑到货币的时间价值)。若纯收入为零,则项目的预期效益和在银行存款一样,是不值得投资开发的。若纯收入小于零,那么这个项目显然不值得投资开发。

在上例中:根据前面的计算结果,5年纯收入为:

41.5630-20=21.5630万元这相当于比较一个待投入的软件项目可能获取的利润和将20万元存入银行所取得的效益。只有当纯收入大于0时,开发软件才有真正的效益。③项目的纯收入3.可行性分析的步骤(过程)(1)复查系统规模和目标。(2)研究正在运行的系统。(3)建立目标系统的逻辑模型。(4)重新定义问题(5)导出和评价各种方案。(6)推荐可行性方案。(7)草拟开发计划。(8)编写可行性分析报告提交审查。

4.可行性分析报告编写规范

3.可行性分析的步骤(过程)“可行性报告”中最主要的内容是:

(1)项目的背景:问题描述、实现环境和限制条件等。

(2)管理概要与建议:重要的研究结果(结论)、说明、劝告和影响等。

(3)推荐的方案(不止一个):候选系统的配置与选择最终方案的原则。

(4)简略的系统范围描述:分配元素的可行性。

(5)经济可行性分析结果:经费概算和预期的经济效益等。“可行性报告”中最主要的内容是:

(6)技术可行性(技术风险评价):技术实力分析、已有的工作及技术基础和设备条件等等。

(7)法律可行性分析结果描述。

(8)可用性评价:汇报用户的工作制度和人员的素质,确定人机交互功能界面需求。

(9)其他项目相关的问题:如可能会发生的变更等等。可行性研究报告由系统分析员撰写,交由项目负责人审查,再上报给上级主管审阅。在可行性研究报告中,应当明确项目“可行还是不可行”,如果认为可行,接下来还要制定项目开发计划书。(6)技术可行性(技术风险评价):技术实力分析、已有项目开发计划项目开发计划书是一种管理性的文档,它的主要内容如下:(1)项目概述:包括项目目标、主要功能、系统特点以及关于开发工作的安排。(2)系统资源:包括开发和运行该系统所需要的各种资源,硬件、软件、人员和组织机构等。(3)费用预算:说明完成项目的总费用及资金计划。(4)进度安排:说明开发项目的周期,开始及完成时间。(5)

交付的产品清单。项目开发计划书供软件开发单位使用。项目开发计划2.3系统流程图系统流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图。2.3系统流程图系统流程图是概括地描绘物理系统的传统工具基本符号

----以概括的方式抽象地描绘一个实际系统所用符号基本符号

----以概括的方式抽象地描绘一个实际系统

---

具体地描绘一个物理系统所用符号系统符号---具体地描绘一个物理系统所用符号图2.3库存清单系统的系统流程图图2.3库存清单系统的系统流程图

2.4数据流图

DFD----DataFlowDiagram一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程,是系统逻辑功能的图形表示。设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎样具体地实现这些功能,所以它也是今后进行软件设计的很好的出发点。2.4数据流图

DFD数据流图四种基本符号数据加工/处理/变换数据源点或终点(外部实体)数据流(dataflow)数据存储文件或或或数据流图四种基本符号数据加工/处理/变换数据源点或终点数据流图几种附加符号数据流图几种附加符号数据流图的层次结构为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统。在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据。底层流图是指其加工不需再做分解的数据流图,它处在最底层。中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。数据流图的层次结构为了表达数据处理过程的数据加工情况,需要采分层的数据流图分层的数据流图----

系统逻辑模型数据的加工或变换输入输出软件系统外部实体外部实体……外部实体外部实体……输入数据流输入数据流输出数据流输出数据流----系统逻辑模型数据的输入输出软件外部实体外部实体…分层的数据流图

F0A0B0F11A0B0F12F13F14F15p1C1D1M1N1F21M1F22N1F23K2F24W2F25p1Y2X2第n

层第n+2

层分层的数据流图F0A0B0F11A0B0F12F13F14举例

学生购买教材系统举例学生教材购销系统购书单领书单缺书单进书通知进书通知保管员1销售购书单领书单学生缺书单进书通知2采购保管员第1层第2层教材存量表F1缺书登记表F2外部实体外部实体学教材购书单领书单缺书单进书通知进书通知保1购书单领书单学缺教材销售子系统无效书单购书单1.3登记并开领书单1.2开发票1.1审查有效性1.4登记缺书1.5补售教材采购学生学生进书通知有效书单发票领书单暂缺书单补售书单第3层教材存量表F1缺书登记表F2

F1书号单价数量各班用书表F3售书登记表F4外部项教材销售子系统无效书单购书单1.31.21.11.41便于实现便于使用---采用逐步细化的扩展方法,可避免一次引入过多的细节,有利于控制问题的复杂度;

---用一组图代替一张总图,方便用户及

软件开发人员阅读。分层DFD图的优点便于实现便于使用---采用逐步细化的扩展方法,可避免一

1)

为数据流(或数据存储)命名(1)名字应代表整个数据流(或数据存储)的内容,而不是仅仅反映它的某些成分。(2)不要使用空洞的、缺乏具体含义的名字(如“数据”、

“信息”、“输入”之类)。(3)如果在为某个数据流(或数据存储)起名字时遇到了困难,则很可能是因为对数据流图分解不恰当造成的,应该试试重新分解,看是否能克服这个困难。画分层DFD

的指导原则1.注意数据流图中成分的命名1)为数据流(或数据存储)命名画分层DFD的指导原则2)

为处理命名(1)通常先为数据流命名,然后再为与之相关联的处理命名。这样命名比较容易,而且体现了人类习惯的“由表及里”的思考过程。(2)名字应该反映整个处理的功能,而不是它的一部分功能。(3)名字最好由一个具体的及物动词加上一个具体的宾语组成。应该尽量避免使用“加工”、“处理”等空洞笼统的动词作名字。(4)通常名字中仅包括一个动词,如果必须用两个动词才能描述整个处理的功能,则把这个处理再分解成两个处理可能更恰当些。(5)如果在为某个处理命名时遇到困难,则很可能是发现了分解不当的迹象,应考虑重新分解。画分层DFD

的指导原则1.注意数据流图中成分的命名2)为处理命名画分层DFD的指导原则画分层DFD

的指导原则2.注意父图和子图的平衡/balanceorcoherence发票1.3开领书单领书单(a)父图1.3.1学生领书单1.3.21.3.3教材(a)子图画分层DFD的指导原则发票1.3领书单(a)父图1.

画分层DFD的指导原则3.区分局部文件和局部外部项1销售购书单领书单缺书单进书通知2采购进书通知缺书登记表教材存量表学生保管员采购子系统

第2层第3

层缺书单2.3修改教材库存和待购量销售进书通知进书通知2.1按书号汇总缺书2.2按出版社统计缺书保管员教材存量表F1待购教材表F5教材一览表F6缺书登记表F2局部外部项局部文件画分层DFD的指导原则1购书单领书单缺书单进书通知2进画分层DFD

的指导原则

4.掌握分解的速度一般来说,每一个加工每次可分为2-4个子加工,最多不得超过7个。5.遵守加工编号规则顶层加工不编号。第二层的加工编号为1,2,3,…,n号。第三层编号为1.1,1.2,1.3…n.1,n.2…等号,依此类推。画分层DFD的指导原则4.掌握分解的速度一般来说,每2.5数据字典

&用途

----DD(DataDictionary)

数据流图和数据字典共同构成系统的逻辑模型没有数据字典数据流图就不严格,没有数据流图数据字典也难于发挥作用。数据字典的任务是:对于数据流图中出现的所有被命名的图形元素在字典中作为一个词条加以定义,使得每一个图形元素的名字都有一个确切的解释。2.5数据字典&用途

----DD(D数据字典的内容一般说来,数据字典应该由对下列4类元素的定义组成:(1)数据流(2)数据流分量(即数据元素)(3)数据存储(4)处理数据字典的内容一般说来,数据字典应该由对下列4类数据流名:说明:简要介绍作用,即它产生的原因和结果。数据流来源:即该数据流来自何方。数据流去向:去向何处。数据流组成:数据结构。每个数据量流通量:数据量、流通量。(1)数据流词条的描述

数据流名:发票说明:用作学生已付书款的依据数据流来源:来自加工“审查并开发票”数据流去向:流向加工“开领书单”。数据流组成:学号+姓名+书号+单价总价+书费合计审查并开发票发票购书单

数据流名:(1)数据流词条的描述数据流名数据元素名:类型:数字(离散值、连续值),文字(编码类型)长度:取值范围:相关的数据元素及数据结构

(2)数据元素词条的描述

数据元素名:(2)数据元素词条的描述(2)数据元素词条的描述

年=“1900”..“3000”月=“01”..“12”日=“01”..“31”摘要=1{字母}4金额=“00000000.01”..“999999999.99”……(2)数据元素词条的描述年=“19定义数据符号符号含义例子

=被定义为+与[]x=a+b,则表示x由a和

b组成x=[a,b],则表示x由a或由b组成{}或重复x={a},则表示x由0个或多个a组成()可选

表示在两个*之间的内容为词条的注释m{}n重复x=3{a}8,则表示x中至少出现3次a,最多出现8次*…*注释符

x=(a),则表示a在x中出现,也可不出现定义数据符号符号含义例子例:存折格式例:存折格式日期(年月日)摘要支出存入余额操作复核户名:所号:帐号:开户日:性质:印密:日期(年月日)摘要支出存入余额操作复核户名:所号:帐号:开存折=户名+所号+帐号+开户日+性质+(印密)+1{存取行}20户名=2{字母}24所号=“001”..“999”帐号=“00000001”..“99999999”开户日=年+月+日性质=“1”..“6”

注:“1”表示普通户,…“6”表示工资户等印密=“0”

注:印密在存折上不显示存取行=日期+(摘要)+支出+存入+余额+操作+复核日期=年+月+日年=“1900”..“3000”月=“01”..“12”日=“01”..“31”摘要=1{字母}4支出=金额金额=“00000000.01”..“999999999.99”……存折=户名+所号+帐号+开户日+性质+(印密)+1{存取(3)数据存储词条的描述

数据存储名:简述:存放的是什么数据。

数据组成:数据结构。存储方式:顺序,直接,关键码。存取频率:……审查并开发票学生发票购书单各班学生用书表教材存量表(3)数据存储词条的描述数据存储名:审查

加工名:加工编号:反映该加工的层次简要描述:加工逻辑及功能简述输入数据流:取值范围:相关的数据元素及数据结构……(4)加工逻辑词条的描述

1.3审查并开发票学生发票购书单各班学生用书表教材存量表加工名:(4)加工逻辑词条的描述1.3注:加工说明

----(ProcessSpecification)

加工说明是:对DFD中每个加工给予说明。它是从系统功能的角度对DFD作出了注解,与DD一样是DFD必不可缺少的辅助资料。PS注:加工说明----(ProcessSpecific对数据流图的每一个基本加工,必须有一个基本加工逻辑说明。基本加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则。加工逻辑说明必须描述实现加工的策略而不是实现加工的细节。加工逻辑说明中包含的信息应是充足的,完备的,有用的,无冗余的。加工逻辑说明对数据流图的每一个基本加工,必须有一个基本加工逻辑说明。加工加工说明组成输入数据加工逻辑输出数据加工说明描述工具结构化语言判定表判定树

描述把输入数据流变换为输出数据流的加工过程,是加工说明的主体。加工说明组成输入加工输出加工说明描述工具结构化判定判定自然语言+结构化形式(1)结构化语言选择结构如果<条件><策略>

If<condition><policy>如果<条件>

则<策略1>

否则<策略2>情况1<条件><策略1>…

…情况n<条件><策略n>If<condition>

then<policy1>Otherwise<policy2>case1<condition><policy1>…

…casen<condition><policyn>循环结构对

…,<策略>重复以下<策略>直至<条件>Foreach…,<policy>Repeatthefollowing:<policy>Until<condition>自然语言+结构化形式(1)结构化语言选如果<条件>If商店业务处理系统中“检查发货单”if发货单金额超过$500thenif欠款超过了60天then

在偿还欠款前不予批准

else(欠款未超期)发批准书,发货单

else(发货单金额未超过$500)

if欠款超过60天then

发批准书,发货单及赊欠报告

else(欠款未超期)发批准书,发货单

商店业务处理系统中“检查发货单”if发货单金额超过$500(2)判定表如果数据流图的加工需要依赖于多个逻辑条件的取值,使用判定表来描述比较合适(2)判定表如果数据流图的加工需要依赖于以“检查发货单”为例以“检查发货单”为例(3)判定树判定树也是用来表达加工逻辑的一种工具。有时侯它比判定表更直观。检查发货单金额>$500金额$500欠款>60天不发出批准书欠款60天发出批准书、发货单欠款>60天发出批准书、发货单及赊欠报告欠款60天发出批准书、发货单(3)判定树判定树也是用来表达加工逻辑

名称:外部实体名简要描述:什么外部实体有关数据流:数目:(5)外部实体词条描述

1销售购书单领书单缺书单进书通知2采购进书通知缺书登记表教材存量表学生保管员名称:外部实体名(5)外部实体词条描述CASE结构化分析与设计工具(大型软件)卡片形式/excel

orrecordinfile(小型软件)卡片应该包含下述信息:名字、别名、描述、定义、位置。2.5.4数据字典的实现CASE结构化分析与设计工具(大型软件)2.5.4数据2.6成本/效益分析

成本/效益分析的目的:从经济角度分析开发一个特定的新系统是否划算,从而帮助客户组织的负责人正确地作出是否投资于这项开发工程的决定。2.6成本/效益分析成本/效益分析的目的:

2.6.1

成本估计---人力成本估计

软件开发成本主要表现为人力消耗

(乘以平均工资则得到开发费用)

估算技术

1.代码行技术

2.任务分解技术3.自动估计成本技术2.6.1成本估计---人力成本估计软件开发成

代码行技术根据经验和历史数据估计实现一个功能需要的源程序行数,用每行代码的平均成本乘以行数就可以确定软件的成本。每行代码的平均成本主要取决于软件的复杂程度和工资水平。代码行技术是比较简单的定量估算方法。当有以往开发类似工程的历史数据可供参考时,这个方法是非常有效的。代码行技术根据经验和历史数据估计实现一个功能需要的源任务分解技术首先把软件开发工程分解为若干个相对独立的任务。再分别估计每个单独的开发任务的成本,最后累加起来得出软件开发工程的总成本。估计每个任务的成本时,通常先估计完成该项任务需要用的人力(以人月为单位),再乘以每人每月的平均工资而得出每个任务的成本。任务分解技术首先把软件开发工程分解为若干个相对独立的自动估计成本技术采用自动估计成本的软件工具可以减轻人的劳动,并且使得估计的结果更客观。但是,采用这种技术必须有长期搜集的大量历史数据为基础,并且需要有良好的数据库系统支持。自动估计成本技术采用自动估计成本的2.6.2成本/效益分析的方法成本/效益分析的第一步是估计开发成本、运行费用和新系统将带来的经济效益,然后从经济角度判断这个系统是否值得投资。运行费用取决于系统的操作费用(操作员人数,工作时间,消耗的物资等)和维护费用。系统的经济效益等于因使用新系统而增加的收入加上使用新系统可以节省的运行费用。注意:总的效益和生命周期的长度有关,所以应该合理地估计软件的寿命。投资是现在进行的,效益是将来获得的,不能简单地比较成本和效益,应该考虑货币的时间价值。2.6.2成本/效益分析的方法成本/效益分析的第一步是估计

成本/效益分析使用的几个概念

1.货币的时间价值通常用利率表示货币的时间价值。设年利率为i,现已存入P元,则n年后可得钱数为

F=P(1+i)n

这就是P元钱在n年后的价值。反之,若n年后能收入F元,那么这些钱现在的价值是

P=F/(1+i)n2.投资回收期

投资回收期是衡量一个开发工程价值的经济指标。投资回收期就是积累的经济效益等于最初的投资所需要的时间。投资回收期越短,就能越快获得利润。成本/效益分析使用的几个概念1.货币的时间价值成本/效益分析使用的几个概念

3.纯收入

工程的纯收入是衡量工程价值的另一项经济指标。纯收入就是在整个生存周期之内系统的累计经济效益(折合成现在值)与投资之差。

如果纯收入小于零,那么显然这项工程不值得投资。只有当纯收入大于零,才能考虑投资。

4.投资回收率 Income/Investment

成本/效益分析使用的几个概念3.纯收入第二章小结2.1可行性研究的任务:技术,经济,操作,社会,抉择2.2可行性研究过程:7步骤2.3系统流程图:数据在系统(人,软,硬)各部件之间流动2.4数据流图:源点或终点,处理,数据存储和数据流2.5数据字典:流,元素,存储,处理2.6成本/效益分析:估计,ROI,货币的时间价值第二章小结2.1可行性研究的任务:技术,经济,操作演讲完毕,谢谢观看!演讲完毕,谢谢观看!软件工程第二章可行性分析信息工程学院

本科生课程软件工程第二章可行性分析信息工程学院本科生课程第二章可行性分析2.1可行性研究的任务2.2可行性研究过程2.3系统流程图2.4数据流图2.5数据字典2.6成本/效益分析2.7小结第二章可行性分析2.1可行性研究的任务开始问题定义可性行研究可行否?项目实施计划终止项目的建议结束YN问题的定义与可性行研究Who

为谁设计,用户是谁?What

要解决哪些问题?Why

为什么要解决这些问题

有用的软件

3W开始问题定义可性行研究可行否?项目实施计划终止项目的建议Y可行性研究目的:用最小的代价在尽可能短的时间内确定问题是否能够解决。不是解决问题,而是确定问题是否值得去解决。说明该软件开发项目的实现在技术上、经济上和社会条件上的可行性;评述为合理地达到开发目标可能选择的各种方案。

GB8567-88《计算机软件产品开发文件编制指南》可行性研究目的:说明该软件开发项目的实现在技术上、经济上和社项目的筹备、规划与准备是软件项目实施的前期工作,它由两个重要的工作阶段构成:一是项目规划及可行性分析;二是项目需求分析。项目准备阶段的第一个工作,是项目的总体规划。首先要做的是明确系统的需求,也就是用户要计算机解决什么问题,即问题定义。系统分析员应该深入现场,了解用户单位对系统的要求,调查开发背景,进行市场调研。经过调查分析,分析员要在较短的时间内对问题进行抽象、概括,并把自己的认识写成书面报告,即项目需求报告,提交给用户方面进行讨论审查。项目需求报告应该尽可能清楚简洁,内容通常包括项目的名称,对问题的概括,项目的目标,项目的规模及对可行性研究的具体建议(即需要用的时间和成本)等等。图2.1通过一个实际项目给出了项目需求报告编写示例。可行性研究项目的筹备、规划与准备是软件项目实施的前期工作,它由两个重要项目需求报告

2008年10月1.

项目:××公司工资管理系统2.

问题:在公司日常工资管理工作中,现有系统所承担的工作只能实现工资管理的简单功能,已无法适应目前工作中处理大量数据(如日常打印工资条等)要求,工作效率低下,容易出错。3.

项目目标:为了提高公司日常工资管理的效率与准确率,而开发该项软件。该软件应逐步向本市各企业推广。4.

项目范围:硬件主要利用现有的计算机网络,增配少量专用设备,软件开发费用预计20000元。5.

初步设想:实现××公司工资管理系统,包括工资录入、数据查询、工资条、工资统计、部门设置、人员设置、项目设置等具体功能。要求将各种输出数据以表单形式打印;系统各模块具有添加新数据的功能;系统软件具有权限功能,使不同的用户具有不同的权限;建立后的数据库需要加密。6.可行性研究:由分析员和××公司工资管理部门进行,主要对公司日常工资管理规程和系统实施方案进行研究。建议进行大约3天的可行性研究,研究费用不超过200元。项目需求报告

一般的做法是分析员和用户方面的人员一起阅读讨论这份报告,通过修改得到一份双方都满意的文档。当分析员和用户双方就项目需求取得了完全一致的看法,项目的可行性研究即可开始。一般的做法是分析员和用户方面的人员一起阅读讨论这份报告,通2.1可行性研究的任务

可行性研究的主要任务是“了解客户的要求及现实环境,从技术、经济和社会因素等三方面研究并论证本软件项目的可行性,编写可行性研究报告,制定初步项目开发计划。”

GB8566-88《计算机软件开发规范》

可行性研究的最根本任务

对软件开发以后的行动方针提出建议。2.1可行性研究的任务可行性研究的主要任务是可行性研究的内容(1)技术可行性(2)经济可行性(3)操作可行性(4)社会可行性(法律可行性)(5)抉择可行性研究的内容(1)技术可行性技术可行性

度量一个特定技术信息系统解决方案的实用性及技术资源的可用性考虑的问题(1)开发风险分析(2)资源分析(3)相关技术的发展(现有技术能否实现新系统,技术难点、建议采用技术的先进性)技术可行性度量一个特定技术信息系统解决方案的实用性及技经济可行性度量系统解决方案的性能价格比。考虑的问题成本/效益分析(开发、运行的成本/效益)有形成本、效益无形成本、效益价值和成本的关系质量与价值、成本的关系价值/成本的均衡经济可行性度量系统解决方案的性能价格比。举例

12345

年6040200成本-效益(万元)该系统节省经费该系统成本盈亏平衡点投资回收期---------成本及效益分析图举例1234操作可行性用户使用可能性时间进度可行性组织和文化上的可行性操作可行性用户使用可能性2.2可行性研究过程1.复查系统规模和目标2.研究目前正在使用的系统3.导出新系统的高层逻辑模型4.进一步定义问题5.导出和评价供选择的解法6.推荐行动方针7.草拟开发计划8.书写文档提交审查2.2可行性研究过程1.复查系统规模和目标可行性研究报告的编写1引言

1.1编写目的

1.2背景

1.3定义

1.4参考资料2可行性研究的前提

2.1要求

2.2目标

2.3条件、假定和限制

2.4进行可行性研究的方法

2.5评价尺度可行性研究报告的编写1引言2可行性研究的前提可行性研究报告的编写3对现有系统的分析

3.1数据流程和处理流程

3.2工作负荷

3.3费用开支

3.4人员

3.5设备

3.6局限性4所建议的系统

4.1对所建议系统的说明

4.2数据流程和处理流程

4.3改进之处

4.4影响

4.5局限性

4.6技术条件方面的可行性可行性研究报告的编写3对现有系统的分析4所建议的系统可行性研究报告的编写5可选择的其它系统方案

5.1可选择的其它系统15.2可选择的其它系统2

......6投资及收益分析

6.1支出

6.2收益

6.3收益/投资比

6.4投资回收周期

6.5敏感性分析7社会条件方面的可行性

7.1法律方面的可行性

7.2使用方面的可行性可行性研究报告的编写5可选择的其它系统方案6投资及收益分可行性分析的目标识别用户要求评价系统的可行性进行经济分析和技术分析把功能分配给硬件、软件、人、数据库和其它系统元素建立成本和进度限制生成系统规格说明,形成所有后续工程的基础可行性分析的目标识别用户要求可行性分析的出发点是前阶段所书写的文档(即项目需求报告),对于项目需求报告中所确定的目标和规模,如果正确就进一步确认,如果错误则及时修改,为做出正确的可行性分析打好基础。具体地说,分析员应从下面三个方面对项目做出可行性分析:(1)技术可行性:使用现有的技术能实现这个系统吗?(2)经济可行性:这个系统的经济效益能超过它的开发成本吗?(详细在后面介绍成本/效益分析)(3)操作可行性:系统的操作方式在该用户组织内行得通吗?

必要时还应该进一步从法律、社会效益等更广泛的角度研究每种解法的可行性。可行性分析的主要任务

可行性分析的主要任务

可行性分析的结论可以是以下四种:(1)项目可行,可以立即开始执行;(2)需要推迟到某些条件(例如资金、人力、设备等)具备或成熟之后才能开始;(3)需要对开发目标进行某些修改之后才能开始进行;(4)不能进行或不必进行;例如因技术不成熟,经济上不合算或可能产生负面的社会影响等原因,这种情况下,分析员应该建议尽早终止项目计划,以免浪费人力、物力和财力。可行性分析结束后,要写出可行性分析报告,提交有关专家论证和上级主管部门批准。根据可行性分析结果,如果项目是可行的,那么对该项目的开发工作就继续进行。此时,分析员要做出项目开发的初步计划。可行性分析的结论可以是以下四种:1.成本/效益分析成本—效益分析的目的是从经济角度评价开发一个新的软件项目是否可行。开发一个软件系统也是一种投资,期望在将来获得更大的利润。因此在正式进行投资之前,投资商必须对成本/效益进行分析。(1)成本估算开发软件的成本主要是人的劳动消耗。软件开发成本的计算方法是以一次性开发过程所花费的代价来计算的,也就是从项目计划、需求分析、总体设计、详细设计、编码、单元测试、整体测试等全过程所花费的代价作为成本。①根据代码行进行估计代码行技术是一种简单的方法,它通过估计软件中的代码行数来估计软件的开发成本。用每行代码的成本乘以行数就得到软件的开发成本。1.成本/效益分析②根据任务分解进行估计这个方法首先将任务分解成若干子任务,然后对子任务进行成本估计,最后累加起来得出软件开发总成本。表1.1是在典型环境下各开发阶段需要使用的人力的百分比,可供开发人员在对软件成本估计时参考。②根据任务分解进行估计③借助工具软件对成本进行估计这种估计方法需要大量的历史数据为基础,需要良好的数据库系统支持。(2)成本/效益分析在进行成本—效益分析之前,首先是要估计软件的开发成本、运行费用以及软件系统将带来的效益。

系统的运行费用包括系统的操作费用(如操作人员数量、工作时间以及消耗的物资等)和维护费用。系统将来带来的经济效益包括因使用新的系统而增加的收入加上使用新系统可以节省的运行费用。估计出开发成本和将来带来的效益后,应将二者进行比较,但是,成本是现在的,效益是将来的,所以在对二者进行比较时应考虑到货币的时间价值。③借助工具软件对成本进行估计①货币的时间价值货币的时间价值通常用利率来表示。设年利率为i,现存放资金P元,则在n年后可得钱数为F,若不计复利,则F=P(1+i)n或P=F/(1+i)n

例:假设购置一套应用软件投资20万元,预计可使用5年,每年直接经济效益9.6万元,年利率为5%,试计算投入/产出比。解:考虑到货币的时间价值,5年的总体收入应当逐年按照公式计算,并非为恒定的9.6万元。1~5年中,每年的收入折算到当前的数据如表2.1所示。①货币的时间价值年份将来收益/万元(1+i)n当前收益累计的当前收益19.61.059.6/1.05=9.14299.142929.61.10258.707517.851339.61.15768.292826.143249.61.21557.897934.041159.61.27637.521941.5630表2.1货币的时间价值年始年未年份将来收益/万元(1+i)n当前收益累计的当前收益19.6根据上表所列数据,本软件投入/产出比为:

41.5630/20=2.0785(实为产出投入比)②成本的回收周期成本的回收周期是衡量一个项目开发价值的一个指标。成本回收周期就是使累计的经济效益等于最初的投资成本所需要的时间。显然,成本回收周期越短,就越快获得利润,则该项目就越值得开发。根据上例,两年后收入17.8513万元,尚欠2.15万元没有收回成本,在第三年还需要:2.15/26.1432=0.259(年),故投资回收期为2.259年。根据上表所列数据,本软件投入/产出比为:③项目的纯收入衡量项目价值的另一个经济指标是项目的纯收入,也就是在整个生存周期之内的累计经济效益(现在值)与投资成本之差(在计算时要考虑到货币的时间价值)。若纯收入为零,则项目的预期效益和在银行存款一样,是不值得投资开发的。若纯收入小于零,那么这个项目显然不值得投资开发。

在上例中:根据前面的计算结果,5年纯收入为:

41.5630-20=21.5630万元这相当于比较一个待投入的软件项目可能获取的利润和将20万元存入银行所取得的效益。只有当纯收入大于0时,开发软件才有真正的效益。③项目的纯收入3.可行性分析的步骤(过程)(1)复查系统规模和目标。(2)研究正在运行的系统。(3)建立目标系统的逻辑模型。(4)重新定义问题(5)导出和评价各种方案。(6)推荐可行性方案。(7)草拟开发计划。(8)编写可行性分析报告提交审查。

4.可行性分析报告编写规范

3.可行性分析的步骤(过程)“可行性报告”中最主要的内容是:

(1)项目的背景:问题描述、实现环境和限制条件等。

(2)管理概要与建议:重要的研究结果(结论)、说明、劝告和影响等。

(3)推荐的方案(不止一个):候选系统的配置与选择最终方案的原则。

(4)简略的系统范围描述:分配元素的可行性。

(5)经济可行性分析结果:经费概算和预期的经济效益等。“可行性报告”中最主要的内容是:

(6)技术可行性(技术风险评价):技术实力分析、已有的工作及技术基础和设备条件等等。

(7)法律可行性分析结果描述。

(8)可用性评价:汇报用户的工作制度和人员的素质,确定人机交互功能界面需求。

(9)其他项目相关的问题:如可能会发生的变更等等。可行性研究报告由系统分析员撰写,交由项目负责人审查,再上报给上级主管审阅。在可行性研究报告中,应当明确项目“可行还是不可行”,如果认为可行,接下来还要制定项目开发计划书。(6)技术可行性(技术风险评价):技术实力分析、已有项目开发计划项目开发计划书是一种管理性的文档,它的主要内容如下:(1)项目概述:包括项目目标、主要功能、系统特点以及关于开发工作的安排。(2)系统资源:包括开发和运行该系统所需要的各种资源,硬件、软件、人员和组织机构等。(3)费用预算:说明完成项目的总费用及资金计划。(4)进度安排:说明开发项目的周期,开始及完成时间。(5)

交付的产品清单。项目开发计划书供软件开发单位使用。项目开发计划2.3系统流程图系统流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图。2.3系统流程图系统流程图是概括地描绘物理系统的传统工具基本符号

----以概括的方式抽象地描绘一个实际系统所用符号基本符号

----以概括的方式抽象地描绘一个实际系统

---

具体地描绘一个物理系统所用符号系统符号---具体地描绘一个物理系统所用符号图2.3库存清单系统的系统流程图图2.3库存清单系统的系统流程图

2.4数据流图

DFD----DataFlowDiagram一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程,是系统逻辑功能的图形表示。设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎样具体地实现这些功能,所以它也是今后进行软件设计的很好的出发点。2.4数据流图

DFD数据流图四种基本符号数据加工/处理/变换数据源点或终点(外部实体)数据流(dataflow)数据存储文件或或或数据流图四种基本符号数据加工/处理/变换数据源点或终点数据流图几种附加符号数据流图几种附加符号数据流图的层次结构为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统。在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据。底层流图是指其加工不需再做分解的数据流图,它处在最底层。中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。数据流图的层次结构为了表达数据处理过程的数据加工情况,需要采分层的数据流图分层的数据流图----

系统逻辑模型数据的加工或变换输入输出软件系统外部实体外部实体……外部实体外部实体……输入数据流输入数据流输出数据流输出数据流----系统逻辑模型数据的输入输出软件外部实体外部实体…分层的数据流图

F0A0B0F11A0B0F12F13F14F15p1C1D1M1N1F21M1F22N1F23K2F24W2F25p1Y2X2第n

层第n+2

层分层的数据流图F0A0B0F11A0B0F12F13F14举例

学生购买教材系统举例学生教材购销系统购书单领书单缺书单进书通知进书通知保管员1销售购书单领书单学生缺书单进书通知2采购保管员第1层第2层教材存量表F1缺书登记表F2外部实体外部实体学教材购书单领书单缺书单进书通知进书通知保1购书单领书单学缺教材销售子系统无效书单购书单1.3登记并开领书单1.2开发票1.1审查有效性1.4登记缺书1.5补售教材采购学生学生进书通知有效书单发票领书单暂缺书单补售书单第3层教材存量表F1缺书登记表F2

F1书号单价数量各班用书表F3售书登记表F4外部项教材销售子系统无效书单购书单1.31.21.11.41便于实现便于使用---采用逐步细化的扩展方法,可避免一次引入过多的细节,有利于控制问题的复杂度;

---用一组图代替一张总图,方便用户及

软件开发人员阅读。分层DFD图的优点便于实现便于使用---采用逐步细化的扩展方法,可避免一

1)

为数据流(或数据存储)命名(1)名字应代表整个数据流(或数据存储)的内容,而不是仅仅反映它的某些成分。(2)不要使用空洞的、缺乏具体含义的名字(如“数据”、

“信息”、“输入”之类)。(3)如果在为某个数据流(或数据存储)起名字时遇到了困难,则很可能是因为对数据流图分解不恰当造成的,应该试试重新分解,看是否能克服这个困难。画分层DFD

的指导原则1.注意数据流图中成分的命名1)为数据流(或数据存储)命名画分层DFD的指导原则2)

为处理命名(1)通常先为数据流命名,然后再为与之相关联的处理命名。这样命名比较容易,而且体现了人类习惯的“由表及里”的思考过程。(2)名字应该反映整个处理的功能,而不是它的一部分功能。(3)名字最好由一个具体的及物动词加上一个具体的宾语组成。应该尽量避免使用“加工”、“处理”等空洞笼统的动词作名字。(4)通常名字中仅包括一个动词,如果必须用两个动词才能描述整个处理的功能,则把这个处理再分解成两个处理可能更恰当些。(5)如果在为某个处理命名时遇到困难,则很可能是发现了分解不当的迹象,应考虑重新分解。画分层DFD

的指导原则1.注意数据流图中成分的命名2)为处理命名画分层DFD的指导原则画分层DFD

的指导原则2.注意父图和子图的平衡/balanceorcoherence发票1.3开领书单领书单(a)父图1.3.1学生领书单1.3.21.3.3教材(a)子图画分层DFD的指导原则发票1.3领书单(a)父图1.

画分层DFD的指导原则3.区分局部文件和局部外部项1销售购书单领书单缺书单进书通知2采购进书通知缺书登记表教材存量表学生保管员采购子系统

第2层第3

层缺书单2.3修改教材库存和待购量销售进书通知进书通知2.1按书号汇总缺书2.2按出版社统计缺书保管员教材存量表F1待购教材表F5教材一览表F6缺书登记表F2局部外部项局部文件画分层DFD的指导原则1购书单领书单缺书单进书通知2进画分层DFD

的指导原则

4.掌握分解的速度一般来说,每一个加工每次可分为2-4个子加工,最多不得超过7个。5.遵守加工编号规则顶层加工不编号。第二层的加工编号为1,2,3,…,n号。第三层编号为1.1,1.2,1.3…n.1,n.2…等号,依此类推。画分层DFD的指导原则4.掌握分解的速度一般来说,每2.5数据字典

&用途

----DD(DataDictionary)

数据流图和数据字典共同构成系统的逻辑模型没有数据字典数据流图就不严格,没有数据流图数据字典也难于发挥作用。数据字典的任务是:对于数据流图中出现的所有被命名的图形元素在字典中作为一个词条加以定义,使得每一个图形元素的名字都有一个确切的解释。2.5数据字典&用途

----DD(D数据字典的内容一般说来,数据字典应该由对下列4类元素的定义组成:(1)数据流(2)数据流分量(即数据元素)(3)数据存储(4)处理数据字典的内容一般说来,数据字典应该由对下列4类数据流名:说明:简要介绍作用,即它产生的原因和结果。数据流来源:即该数据流来自何方。数据流去向:去向何处。数据流组成:数据结构。每个数据量流通量:数据量、流通量。(1)数据流词条的描述

数据流名:发票说明:用作学生已付书款的依据数据流来源:来自加工“审查并开发票”数据流去向:流向加工“开领书单”。数据流组成:学号+姓名+书号+单价总价+书费合计审查并开发票发票购书单

数据流名:(1)数据流词条的描述数据流名数据元素名:类型:数字(离散值、连续值),文字(编码类型)长度:取值范围:相关的数据元素及数据结构

(2)数据元素词条的描述

数据元素名:(2)数据元素词条的描述(2)数据元素词条的描述

年=“1900”..“3000”月=“01”..“12”日=“01”..“31”摘要=1{字母}4金额=“00000000.01”..“999999999.99”……(2)数据元素词条的描述年=“19定义数据符号符号含义例子

=被定义为+与[]x=a+b,则表示x由a和

b组成x=[a,b],则表示x由a或由b组成{}或重复x={a},则表示x由0个或多个a组成()可选

表示在两个*之间的内容为词条的注释m{}n重复x=3{a}8,则表示x中至少出现3次a,最多出现8次*…*注释符

x=(a),则表示a在x中出现,也可不出现定义数据符号符号含义例子例:存折格式例:存折格式日期(年月日)摘要支出存入余额操作复核户名:所号:帐号:开户日:性质:印密:日期(年月日)摘要支出存入余额操作复核户名:所号:帐号:开存折=户名+所号+帐号+开户日+性质+(印密)+1{存取行}20户名=2{字母}24所号=“001”..“999”帐号=“00000001”..“99999999”开户日=年+月+日性质=“1”..“6”

注:“1”表示普通户,…“6”表示工资户等印密=“0”

注:印密在存折上不显示存取行=日期+(摘要)+支出+存入+余额+操作+复核日

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论