软件技术基础应用软件设计与开发技术

上传人:无*** 文档编号:181410007 上传时间:2023-01-13 格式:PPT 页数:71 大小:262.50KB
收藏 版权申诉 举报 下载
软件技术基础应用软件设计与开发技术_第1页
第1页 / 共71页
软件技术基础应用软件设计与开发技术_第2页
第2页 / 共71页
软件技术基础应用软件设计与开发技术_第3页
第3页 / 共71页
资源描述:

《软件技术基础应用软件设计与开发技术》由会员分享,可在线阅读,更多相关《软件技术基础应用软件设计与开发技术(71页珍藏版)》请在装配图网上搜索。

1、软件工程是指采用工程的概念、原理、技软件工程是指采用工程的概念、原理、技术和方法指导软件的开发与维护。术和方法指导软件的开发与维护。软件工程学的主要研究对象包括软件开发软件工程学的主要研究对象包括软件开发与维护的技术、方法、工具和管理等方面。在软与维护的技术、方法、工具和管理等方面。在软件研制开发过程中,若能严格遵循软件工程的方件研制开发过程中,若能严格遵循软件工程的方法论,便可提高软件开发的成功率,减少软件开法论,便可提高软件开发的成功率,减少软件开发和维护中出现的问题。发和维护中出现的问题。某一软件从被提出并着手开始实某一软件从被提出并着手开始实现,直到软件完成其使命为止的全过现,直到软件

2、完成其使命为止的全过程被划分为一些阶段,并称这一全过程被划分为一些阶段,并称这一全过程为软件生命周期。程为软件生命周期。通常,软件生命周期包括八个阶通常,软件生命周期包括八个阶段:问题定义、可行性研究、需求分段:问题定义、可行性研究、需求分析、系统设计、详细设计、编码、测析、系统设计、详细设计、编码、测试和运行维护。试和运行维护。为使各时期的任务更明确,又可以分为使各时期的任务更明确,又可以分为以下三个时期:为以下三个时期:可行性研究的目的是进一步研究上一可行性研究的目的是进一步研究上一阶段所定义的问题是否可解。阶段所定义的问题是否可解。在这个阶段中,根据可行性研究阶段在这个阶段中,根据可行性

3、研究阶段提交的文档,特别是从数据流图出发,对提交的文档,特别是从数据流图出发,对目标系统提出清晰、准确和具体的要求,目标系统提出清晰、准确和具体的要求,即要明确系统必须做什么。即要明确系统必须做什么。这一阶段任务是划分出构成系统的各这一阶段任务是划分出构成系统的各物理元素以及设计出软件的结构物理元素以及设计出软件的结构。详细设计的任务是对系统作出精确的详细设计的任务是对系统作出精确的描述,以便在编码阶段可直接将这一描述描述,以便在编码阶段可直接将这一描述用程序设计语言编制成程序。用程序设计语言编制成程序。编码是将系统设计与详细设计阶段编码是将系统设计与详细设计阶段中的结果翻译成用某种程序设计语

4、言书中的结果翻译成用某种程序设计语言书写的程序。写的程序。测试的目的是要尽量发现程序中的测试的目的是要尽量发现程序中的错误,但绝不能证明程序的正确性。错误,但绝不能证明程序的正确性。图图7.2所示的是一个描述研究生从入学所示的是一个描述研究生从入学到毕业的业务活动的数据流程图。到毕业的业务活动的数据流程图。一般来说,数据流程图由四种基本成一般来说,数据流程图由四种基本成分构成:数据流、数据处理、数据存储和分构成:数据流、数据处理、数据存储和外部实体。外部实体。它们的符号如图它们的符号如图7.3所示。所示。数据字典是结构化分析方法的另数据字典是结构化分析方法的另一个重要工具。一个重要工具。数据字

5、典主要是给数据流程图中数据字典主要是给数据流程图中的每一个数据流名、文件名以及处理的每一个数据流名、文件名以及处理名建立一个条目,在这些条目中给出名建立一个条目,在这些条目中给出各名字的定义。各名字的定义。在数据字典中,通常有四种类型的条目。在数据字典中,通常有四种类型的条目。功能说明又称为功能说明又称为“小说明小说明”,它是对,它是对数据流程图中每个加工的详细描述,从而数据流程图中每个加工的详细描述,从而也是结构化分析的主要工具之一。也是结构化分析的主要工具之一。结构化语言是介于形式语言与自结构化语言是介于形式语言与自然语言之间的一种语言。然语言之间的一种语言。在结构化语言中,使用顺序结构、

6、在结构化语言中,使用顺序结构、选择结构和循环结构来描述加工处理选择结构和循环结构来描述加工处理中的各种功能操作。中的各种功能操作。判定树又称决策树,它是一种图形工判定树又称决策树,它是一种图形工具。在判定树中,树根在最左边,它是判具。在判定树中,树根在最左边,它是判定的起点;后面依次是各个分支,每一个定的起点;后面依次是各个分支,每一个分支中包括表示问题的条件和根据该条件分支中包括表示问题的条件和根据该条件所做的行动。所做的行动。例如,图例如,图7.4所示的是组织春游活动的所示的是组织春游活动的一棵判定树,它根据天气情况以及交通工一棵判定树,它根据天气情况以及交通工具来决定春游地点。具来决定春

7、游地点。判定表是判定树的表格形式。判定表是判定树的表格形式。例如,图例如,图7.4所示的判定树用判定表表所示的判定树用判定表表示,如图示,如图7.5所示。所示。表表7.1是这三种表达工具的比较。是这三种表达工具的比较。结构化设计(结构化设计(Structured Design,SD)方法采取方法采取“分解分解”的手段来控制系统的复的手段来控制系统的复杂性,即把一个大型系统分解成若干个相杂性,即把一个大型系统分解成若干个相对独立、功能单一的模块。对独立、功能单一的模块。结构图(结构图(Structured Chart,SC)的)的基本元素是模块,一般用矩形框表示。基本元素是模块,一般用矩形框表示

8、。结构图将一个系统分解为若干个模块,结构图将一个系统分解为若干个模块,每个模块可以看成一个每个模块可以看成一个“黑盒黑盒”,在图中,在图中表示它的层次、构成和相互之间的关系。表示它的层次、构成和相互之间的关系。一般来说,结构图包括以下四种成一般来说,结构图包括以下四种成分。分。模块用矩形框表示,矩形框中标明模块用矩形框表示,矩形框中标明模块的名称,它反映该模块的功能。模块的名称,它反映该模块的功能。在结构图中,用带有箭头的连线表在结构图中,用带有箭头的连线表示模块之间的调用关系。示模块之间的调用关系。在结构图中,用一些带有圆圈的在结构图中,用一些带有圆圈的小箭头来表示模块之间的通信,即模小箭头

9、来表示模块之间的通信,即模块调用时数据或控制信息的传递,箭块调用时数据或控制信息的传递,箭头的方向表示传递的方向。头的方向表示传递的方向。在结构图中,有时还要用到一些在结构图中,有时还要用到一些辅助符号。辅助符号。SD方法实际上是面向数据流程图的,方法实际上是面向数据流程图的,即它的工作对象实际上是在即它的工作对象实际上是在SA方法中形成方法中形成的数据流程图。的数据流程图。因此,可以由数据流程图来导出结构因此,可以由数据流程图来导出结构图。图。评价模块独立性的主要标准有两个:评价模块独立性的主要标准有两个:一是模块之间的耦合,它表明两个模块之一是模块之间的耦合,它表明两个模块之间互相独立的程

10、度;二是模块内部之间的间互相独立的程度;二是模块内部之间的关系是否紧密,称为内聚。关系是否紧密,称为内聚。耦合模块之间的耦合反映了模块的独耦合模块之间的耦合反映了模块的独立性,也反映了系统分解后的复杂程度。立性,也反映了系统分解后的复杂程度。内聚是对一个模块内部元素之间功内聚是对一个模块内部元素之间功能上相互联系强度的测量。能上相互联系强度的测量。软件测试的目标是在精心控制的环境软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。程序可靠性的鉴定。测试具有以下三个重要特征。测试具有以下三个重要特征。程序的测试一般按三种方式进

11、行:静程序的测试一般按三种方式进行:静态分析,动态测试和自动测试。态分析,动态测试和自动测试。静态分析指不执行程序,而只人工对静态分析指不执行程序,而只人工对程序文本进行检查,通过阅读和讨论,分程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。析和发现程序中的错误。程序的动态分析是使用测试用例在计程序的动态分析是使用测试用例在计算机上运行程序,使程序在运行过程中暴算机上运行程序,使程序在运行过程中暴露错误。露错误。自动测试工具实际上是人们编制的用自动测试工具实际上是人们编制的用于测试的软件,并用它来代替人工测试。于测试的软件,并用它来代替人工测试。模块测试又称单元测试。模块测试又称单元

12、测试。模块测试的目标是发现局部模块的逻模块测试的目标是发现局部模块的逻辑与功能上的错误和缺陷。辑与功能上的错误和缺陷。它主要对以下几个方面进行测试。它主要对以下几个方面进行测试。整体测试的目标是尽量暴露模块整体测试的目标是尽量暴露模块测试时不能暴露的结构错误,如一个测试时不能暴露的结构错误,如一个模块是否破坏了另一个模块的功能,模块是否破坏了另一个模块的功能,数据通过接口时是否会丢失,能否产数据通过接口时是否会丢失,能否产生主功能以及误差是否有积累等。生主功能以及误差是否有积累等。整体测试可分为渐增式与非渐增整体测试可分为渐增式与非渐增式两种。式两种。非渐增式的整体测试是将经过单独测非渐增式的

13、整体测试是将经过单独测试的所有模块连接到一起进行测试。试的所有模块连接到一起进行测试。渐增式的整体测试往往是与模块测试渐增式的整体测试往往是与模块测试同步进行的,即在对模块逐步装配的过程同步进行的,即在对模块逐步装配的过程中同时进行。中同时进行。对程序进行测试需要使用一些数据,对程序进行测试需要使用一些数据,每进行一次测试,就需要一组测试数据,每进行一次测试,就需要一组测试数据,这些测试数据通常称为测试用例。这些测试数据通常称为测试用例。白箱测试是根据对程序内部逻辑结构白箱测试是根据对程序内部逻辑结构的分析来选取测试用例。的分析来选取测试用例。语句覆盖准则是企图用足够多的测试语句覆盖准则是企图

14、用足够多的测试用例,使程序中的每个语句都执行一遍,用例,使程序中的每个语句都执行一遍,以便尽可能多地发现程序中的错误。以便尽可能多地发现程序中的错误。分支覆盖准则也称为判定覆盖准则。分支覆盖准则也称为判定覆盖准则。条件覆盖准则是通过执行足够多的测条件覆盖准则是通过执行足够多的测试用例,使每个判定中的每个条件都能取试用例,使每个判定中的每个条件都能取得两种不同的结果(得两种不同的结果(“真真”与与“假假”)。)。组合条件覆盖准则要求通过足够多的组合条件覆盖准则要求通过足够多的测试用例,使每个判定中各条件的各种可测试用例,使每个判定中各条件的各种可能组合至少出现一次。能组合至少出现一次。黑箱测试方

15、法完全不考虑程序的内部黑箱测试方法完全不考虑程序的内部结构和内部特征,而只是根据程序功能导结构和内部特征,而只是根据程序功能导出测试用例。出测试用例。等价分类法是把所有可能的输入数据等价分类法是把所有可能的输入数据(有效的和无效的)划分成若干等价类,(有效的和无效的)划分成若干等价类,使每一类中的一个典型数据在测试中的作使每一类中的一个典型数据在测试中的作用与这一类中所有其他数据的作用相同。用与这一类中所有其他数据的作用相同。边值分析着眼于使该等价类的边界情边值分析着眼于使该等价类的边界情况成为测试的主要目标来选取测试用例。况成为测试的主要目标来选取测试用例。因果图法是设计测试用例的一种系统因

16、果图法是设计测试用例的一种系统方法,有助于测试人员系统地选择高效的方法,有助于测试人员系统地选择高效的测试用例。测试用例。错误推测法也称猜错法,它无一定之错误推测法也称猜错法,它无一定之规可循,在很大程度上是凭经验或直觉推规可循,在很大程度上是凭经验或直觉推测程序中可能存在的各种错误,从而有针测程序中可能存在的各种错误,从而有针对性地编写测试用例。对性地编写测试用例。调试也称排错调试也称排错。一般的调试过程分为错误侦查、错误一般的调试过程分为错误侦查、错误诊断和改正错误。诊断和改正错误。常用的调试技术有以下五种。常用的调试技术有以下五种。(1)输出存储器内容。)输出存储器内容。(2)在程序中插

17、入调试语句。)在程序中插入调试语句。(3)利用调试用例,迫使程序逐个)利用调试用例,迫使程序逐个通过所有可能出现的执行路径,系统地排通过所有可能出现的执行路径,系统地排除除“无错无错”的程序分支,逐步缩小检查的的程序分支,逐步缩小检查的范围。范围。(4)经静态分析、动态测试或自动)经静态分析、动态测试或自动测试,都会得到大量与程序错误有关的信测试,都会得到大量与程序错误有关的信息,这些信息都可在调试时加以利用。息,这些信息都可在调试时加以利用。(5)借助调试工具。)借助调试工具。原型法将软件开发过程分为以下四个步骤。原型法将软件开发过程分为以下四个步骤。瀑布模型规定了整个软件生命周瀑布模型规定了整个软件生命周期内的各项软件工程活动,并且还规期内的各项软件工程活动,并且还规定了这些活动自上而下、相互衔接的定了这些活动自上而下、相互衔接的顺序,如图顺序,如图7.13所示。所示。对象具有以下一些基本特征。对象具有以下一些基本特征。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!