当前位置:首页 > 教育综合 > 正文

结构化生命周期开发方法的优点有哪些

结构化开发方法的优缺点有哪些?

优点: (1)面向用户的观点; (2)自顶向下的分析设计与自底向上的系统实施; (3)严格划分工作阶段明确各阶段的界限及任务; (4)工作成果规范化、文献化; (5)及早地发现系统开发过程中的错误提高系统的成功率。 缺点: (1)开发周期较长难以适应环境的变化。 (2)开发过程严格无法适应需求的变化。 (3)难以应付非结构化的问题。 (4)用户很难尽早建立系统预期的概念结构。

简述结构化范型和面向对象范型的要点,并分析它们的优缺点

结构化范型要点:

1、结构化范型也称生命周期方法学,属于传统方法学。

2、传统的软件开发方法大部分采用瀑布模型。这种模型要求每一阶段都以前一阶段形成的文档为基础完成工作。

3、每一阶段将要完成时,都要求开发人员进行验证或确认。

4、瀑布模型要求在软件产品生成之前对用户需求进行尽可能精确的、完全的刻画。但要完成这种任务相当困难。

结构化范型优点:

1、把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度.

结构化范型缺点:

1、当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化时,开发出的软件往往不成功;而且维护起来仍然很困难。

面向对象范型四个要点:

(1)面向对象的软件系统是由对象组成的,软件中的任何元素都是对象,复杂的软件对象由简单的软件对象组合而成。

(2)所有对象划分成各种对象类,每个对象都定义了一组数据和一组方法。

(3)按照子类(派生类)和父类(基类)的关系,把若干个对象类组成一个层次结构的系统(类等级)。在派生类中对某些特性又做了重新描述,则在派生类中的这些特性将以新描述为准,也就是说,低层的特性将屏蔽高层的同名特性。

(4)对象彼此之间仅能通过传递消息互相联系。

面向对象范型主要优点:

(1)按照人类习惯的思维方法,对软件开发过程所有阶段进行综合考虑;

(2)软件生存期各阶段所使用的方法、技术具有高度的连续性;

(3)软件开发各个阶段有机集成,有利于系统的稳定性

扩展资料:

软件开发的阶段

1、计划

对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计,制订完成开发任务的实施计划。

2、分析

软件需求分析就是对开发什么样的软件的一个系统的分析与设想。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。

需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系。

对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。在任何软件或系统开发的初始阶段必须先完全掌握用户需求,以期能将紧随的系统开发过程中哪些功能应该落实、采取何种规格以及设定哪些限制优先加以定位。

系统工程师最终将据此完成设计方案,在此基础上对随后的程序开发、系统功能和性能的描述及限制作出定义。

3、设计

软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。

可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。模块,然后进行模块设计。

概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。

4、编码

软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的“源程序清单”。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。

当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。而且面向对象的开发语言和开发环境大都合为一体,大大提高了开发的速度。

5、测试

软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据与功能和预期的输出结果组成了测试用例)。如何才能设计出一套出色的测试用例,关键在于理解测试方法。不同的测试方法有不同的测试用例设计方法。

两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。

白盒法和黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。

6、维护

维护是指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。

一个中等规模的软件,如果研制阶段需要一年至二年的时间,在它投入使用以后,其运行或工作时间可能持续五年至十年。那么它的维护阶段也是运行的这五年至十年期间。在这段时间,人们几乎需要着手解决研制阶段所遇到的各种问题,同时还要解决某些维护工作本身特有的问题。

做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还可以使它扩展功能,提高性能,为用户带来明显的经济效益。然而遗憾的是,对软件维护工作的重视往往远不如对软件研制工作的重视。而事实上,和软件研制工作相比,软件维护的工作量和成本都要大得多。

在实际开发过程中,软件开发并不是从第一步进行到最后一步,而是在任何阶段,在进入下一阶段前一般都有一步或几步的回溯。在测试过程中的问题可能要求修改设计,用户可能会提出一些需要来修改需求说明书等。

参考资料:百度百科:软件开发

什么是结构化程序设计方法?这种方法有哪些优点和缺点

结构化程序设计方法是按照模块划分原则以提高程序可读性和易维护性、可调性和可扩充性为目标的一种程序设计方法。结构化程序设计适用于程序规模较大的情况,对于规模较小程序也可采用非结构化程序设计方法。

优点:

1、整体思路清楚,目标明确。

2、设计工作中阶段性非常强,有利于系统开发的总体管理和控制。

3、在系统分析时可以诊断出原系统中存在的问题和结构上的缺陷。

缺点:

1、用户要求难以在系统分析阶段准确定义,致使系统在交付使用时产生许多问题。

2、用系统开发每个阶段的成果来进行控制,不能适应事物变化的要求。

3、系统的开发周期长。

扩展资料:

设计方法的原则:

1、自顶向下

程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。

2、逐步细化

对复杂问题,应设计一些子目标作为过渡,逐步细化。

3、模块化设计

一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为子目标,再进一步分解为具体的小目标,把每一个小目标称为一个模块。

参考资料来源:百度百科--结构化程序设计方法

软件工程方法中普遍定义的方法之一是结构化生命周期方法,下述哪一个论述

生命周期法也称结构化系统开发方法,是目前国内外较流行的信息系统开发方法,在系统开发中得到了广泛的应用和推广,尤其在开发复杂的大系统时,显示了无比的优越性。它也是迄今为止开发方法中应用最普遍最成熟的一种。 1基本思想:将软件工程学和系统工程的理论和方法引入计算机系统的研制开发中,按照用户至上的原则,采用结构化、模块化自顶向下对系统进行分析和设计。具体来说,它将整个信息系统开发过程划分为独立的六个阶段,包括系统分析、程序设计、系统测试、运行和维护以及系统评估。这六个阶段构成信息系统的生命周期。 2优缺点 生命周期法的突出优点是强调系统开发过程的整体性和全局性,强调在整体优化的前提下考虑具体的分析设

结构化系统开发方法有哪些特点?

1、自顶向下整体地进行分析与设计和自底向上逐步实施的系统开发过程。在系统规划、分析与设计时,从整体全局考虑,自顶向下地工作;在系统实施阶段则根据设计的要求,先编制一个个具体的功能模块,然后自底向上逐步实现整个系统。

2、用户至上是影响成败的关键因素,整个开发过程中,要面向用户,充分了解用户的需求与愿望。

3、开发过程工程化,要求开发过程的每一步都要按工程标准规范化,工作文体或文档资料标准化。

4、严格区分工作阶段,把整个开发过程划分为若干工作阶段,每一个阶段有明确的任务和目标、预期达到的工作成效,以便计划和控制进度,协调各方面的工作。

5、符合实际,客观性和科学化。强调在设计系统之前,深入实际,详细地调查研究,努力弄清实际业务处理过程的每一个细节,然后分析研究,制定出科学合理的目标系统设计方案。

扩展资料:

结构化系统开发方法开发一个系统,将整个开发过程划分为首尾相连的五个阶段。

1、系统规划。根据用户的系统开发请求,进行初步调查,明确问题,确定系统目标和总体结构,确定分阶段实施进度,然后进行可行性研究;

2、系统分析。分析业务流程、分析数据与数据流程、分析功能与数据之间的关系,最后提出分析处理方式和新系统逻辑方案。

3、系统设计。进行总体结构设计、代码设计、数据库设计、输入/输出设计、模块结构与功能设计,根据总体设计,配置与安装部分设备,进行试验,最终给出设计方案。

4、系统实施。同时进行编程和人员培训(由系统分析设计人员培训业务人员和操作员),以及数据准备,然后投入试运行;

5、系统运行与维护。进行系统的日常运行管理、评价、监理审计,修改、维护、局部调整,在出现不可调和的大问题时,进一步提出开发新系统的请求,老系统生命周期结束,新系统诞生,构成系统的一个生命周期。

参考资料来源:百度百科-结构化系统开发方法

展开全文阅读