1、在给出的限制范围内,能否设计出系统,并实现必要的功能和性能。(2)资源分析:要论证是否具备系统开发所需的各类人员(管理人员和各类专业技术人员)、软件、硬件资源和工作环境等。(3)技术分析:相关技术的发展是否支持这个系统。3.运行可行性 运行可行性研究内容包括新系统规定的运行方式是否可行,如果新系统是建立在原来已担负其他任务的计算机系统上的,就不能要求它在实时在线状态下运行,以免与原有的任务相矛盾。4.法律可行性 法律可行性是指在研究系统开发过程中可能涉及的各种合同侵权、责任以及各种与法律相抵触的问题。5.开发方案可行性提出系统实现的各种方案并进行评价之后,从中选择一种最优秀的方案。2.2 可行
2、性研究的具体步骤1.复查系统规模和目标2.研究目前正在使用的系统3.导出新系统的高层逻辑模型4.重新定义问题5.导出和评价供选择的方案6.推荐一个方案并说明理由 7.推荐行动方针 8.书写计划任务书 9.提交审查 2.3 需求分析的概念v需求分析的任务并不是确定系统怎样完成它的工作,而仅仅需求分析的任务并不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整、是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。准确、清晰、具体的要求。v需求分析需求分析是指开发人员要准确地理解用户的要求是指开发人员要准确地理解用户的要求,进行细致的进行
3、细致的调查分析调查分析,将用户非形式化的需求陈述转化为完整的需求定义将用户非形式化的需求陈述转化为完整的需求定义,再由需求定义转化为相应的再由需求定义转化为相应的软件需求规格说明书软件需求规格说明书(即需求分(即需求分析的结果)的过程。析的结果)的过程。v需求规格说明书的主要部分是详细的数据流图,数据字典和主要功能的算法描述。通过验收的需求规格说明书是今后软件设计和项目验收的依据。需求分析的过程需求分析的过程v需求分析对于整个软件开发过程以及软件产品的质量至关重要。v从收集资料到形成软件需求分析文档,一般来说要一般来说要经过四个过程经过四个过程:获取用户需求,分析用户需求,编写需求文档,评审需
4、求文档。需求分析的任务需求分析的任务v需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的定义和要求。v本阶段要进行的具体工作如下:这些需求包括:功能需求:所开发的软件必需具备什么功能(最重要)。性性能能需需求求:指待开发的软件应具备的性能指标,如存储容量,运行时间等。环境需求:指软件运行时的软件、硬件要求。用用户户界界面面需需求求:指人机交互方式、输入输出的数据格式等是否友好、便捷等。此外还有:可靠性需求、安全保密要求、用户界面需求、可移值性、可维护性等方面需求。1 进行调查研究,获取用户需求进行调查研究,获取用户需求调查时可采用以下几种方式:与用户交谈,向
5、用户提出问题。参观用户的工作流程,观察用户的操作。向用户群体发放调查问卷表。与同行、专家交谈,听取他们的意见。分析已经存在的同类软件产品,提取需求。从行业标准、规则中提取需求。从Internet上搜索相关资料。系统流程图分析员协同程序员通过调查分析,同时可以参考该项目的可行性报告和项目开发计划书,来获取当前系统的物理模型,可以采用系统流程图系统流程图(是用来描述系统物理模型的一种传统工具)表示。例如:计算机售书的系统流程图如下页所示。计算机售书的系统流程图如下所示附:附:从当前系统的物理模型中去掉非本质因素,如地点、人物等,抽象出当前系统的逻辑模型,可以用数据流图表示。2 去除非本质因素去除非
6、本质因素,抽象出当前系抽象出当前系统的逻辑模型统的逻辑模型2.3 数据流分析技术面向数据流进行需求分析的方法面向数据流进行需求分析的方法面向数据流进行需求分析的方法面向数据流进行需求分析的方法结构化分析方法适合于数据处理类型软件的需求分析结构化分析方法适合于数据处理类型软件的需求分析结构化分析方法适合于数据处理类型软件的需求分析结构化分析方法适合于数据处理类型软件的需求分析具体来说,结构化分析方法就是用具体来说,结构化分析方法就是用具体来说,结构化分析方法就是用具体来说,结构化分析方法就是用抽象模型抽象模型抽象模型抽象模型的概念,的概念,的概念,的概念,按照软件内部按照软件内部按照软件内部按照
7、软件内部数据传递数据传递数据传递数据传递、变换变换变换变换的关系,的关系,的关系,的关系,自顶向下逐层自顶向下逐层自顶向下逐层自顶向下逐层分解分解分解分解,直到找到满足功能要求的所有可实现的软件为,直到找到满足功能要求的所有可实现的软件为,直到找到满足功能要求的所有可实现的软件为,直到找到满足功能要求的所有可实现的软件为止止止止数据流图(数据流图(Data Flow Diagram,简称简称DFD)描绘系统)描绘系统的逻辑模型,是结构化系统分析的主要工具。的逻辑模型,是结构化系统分析的主要工具。数据流数据流数据流数据流图图图图(DFD(DFD)是描述软件系统中数据处理过程的一种有力是描述软件系
8、统中数据处理过程的一种有力是描述软件系统中数据处理过程的一种有力是描述软件系统中数据处理过程的一种有力的图形工具。的图形工具。数据流图中的基本符号(最新)数据流图中的基本符号(最新)或或或符 号含 义数据的数据的源点或终点源点或终点数据流数据流数据存储数据存储加工加工(变换变换)画数据流图步骤画数据流图步骤v1、首先画系统的输入输出,即先画顶层数据流图。顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据,这些输入数据从哪里来;有哪些输出数据,输出到哪里去。v2、画系统内部,即画下层数据流图。一般将层号从开始编号,采用自顶向下,由外向内的原则。注意事项注意事项v1、命名。
9、不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。v2、一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流 v3、父图与子图的平衡。子图的输入输出数据流同父图相应加工的输入输出数据必须一致,此即父图与子图的平衡。v3、局部数据存储。当某层数据流图中的数据存储不是由图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。v4、提高数据流图的易理解性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。描述银行取款过程的数据流图
10、描述银行取款过程的数据流图数据流图的层次结构v为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统分层的数据流图分层的数据流图分层的数据流图分层的数据流图n在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据n底层流图是指其加工不需再做分解的数据流图,它处在最底层n中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。结构化分析方法步骤示例 商店业务处理系统n这个数据流图只是一个高层的系统逻辑模型,它反映了目
11、标系统要实现的功能n数据流图绘制步骤u 首先确定系统的输入和输出u 根据商店业务,画出顶层数据流图,以反映最主要业务处理流程u 经过分析,商店业务处理的主要功能应当有销售、采购、会计三大项。主要数据流输入的源点和输出终点是顾客和供应商。u 然后从输入端开始,根据商店业务工作流程,画出数据流流经的各加工框,逐步画到输出端,得到第一层数据流图第一层数据流图加细每一个加工框 销售细化采购细化检查和修改数据流图的原则v数据流图上所有图形符号数据流图上所有图形符号只限于只限于前述四种基前述四种基本图形元素本图形元素v数据流图的数据流图的主图必须包括前述四种基本元素主图必须包括前述四种基本元素,缺一不可缺一不可v数据流图的主图上的数据流必须封闭在外部数据流图的主图上的数据流必须封闭在外部实体之间实体之间v每个加工每个加工至少有一个输入数据流和一个输出至少有一个输入数据流和一个输出数据流数据流
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1