第七章_软件开发过程.pptx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章_软件开发过程

主讲教师:李金双;;软件(Software)简单的说就是那些在计算机中能看的着,但摸不着的东西,概念性的说软件也称为“软设备”,广义地说软件是指系统中的程序以及开发、使用程序所需要的所有文档的集合。软件分为系统软件和应用软件。 软件并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分 。 软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。 ;1) 需求:不仅仅是用户需求,应该是开发中遇到的所有的需求。比如,你首先要知道做这个项目是为了解决什么问题;测试案例中应该输入什么数据......为了清楚地知道这些需求,你经常要和客户、项目经理以及项目伙伴交流。 2)?设计:编码前,肯定有个计划告诉你要做什么,结构是怎样等等。你一定要按照这个来做,否则可能会一团糟。 3)?编程: 如果在项目截止日,你的程序不能跑起来或达不到客户的要求,你就拿不到钱。 4)?测试 :目的是让你知道,什么时候算是完成了。如果你聪明,你就应该先写测试,这样可以及时知道你是否真地完成了。否则,你经常会不知道,到底有哪些功能是真正完成了,离预期目标还差多远。 ;软件开发过程;;程序(program)是指按照一定的顺序安排工作的操作序列。 例如:组织一项会议的程序: 宣布开会 介绍出席会议的嘉宾和领导 领导讲话 大会发言 宣布大会结束 计算机程序是用计算机语言对所要解决问题进行完整而准确的描述,是计算机为完成某一任务所必须执行的一系列指令的有序集合。 ;程序应该具有以下性质: 目的性:有明确的编写目的 分布性:由一系列计算机可执行的步骤组成 有序性:执行的步骤是有序的 有限性:是有限的指令序列 操作性:可对某些对象进行操作,使其改变状态 程序设计:把自然语言描述问题的方式转换为计算机语言的形式表达给计算机。 ;程序设计应该包括两个方面的内容: 程序设计=算法+数据结构 算法:为解决某个问题而采取的方法和步骤的描述。 数据结构:对程序中数据的描述,数据结构的优劣决定了软件???程序的复杂程度和面貌 程序设计步骤: 分析问题,建立数学模型 确定数据结构 确定算法,描述算法 编制程序,调试程序 运行结果 ;算法(algorithm),就是计算机能执行的、为解决某个问题所采取的方法和步骤。 计算机是一种由指令驱动的机器,只能机械地执行指令。要使计算机能解决问题,首先为要解决的问题设计一个算法,然后再根据算法编写程序。 ;算法是一个有穷规则的集合,这些规则确定了解决某类问题的一个运算序列。对于该类问题的任何初始输入,它能机械地一步一步地计算,并在有限歩后产生输出。 算法的基本特征: 有穷性:算法必须在执行有限个操作后终止; 确定性:算法中每一步的含义必须是确切的,不能出现任何二义性; 有效性:算法中的每一步操作都应该能有效执行,一个不可执行的操作是无效的; 有零个或多个输入:执行算法时,从外界获得必要的信息 ; 有一个或多个输出:算法的解就是输出。 ;算法的性能评价一般从时间复杂度和空间复杂度来衡量。一个算法除了要考虑其正确性,还要考虑算法的效率,通常采用时间复杂度和空间复杂度来衡量算法效率。 时间复杂度的作用是度量算法执行的时间长短;而空间复杂度的作用是度量算法所需存储空间的大小。 时间复杂度: 算法所需的时间,随着问题规模变大所需时间增加的程度。 空间复杂度: 算法所需的空间,随着问题规模变大所需空间增加的程度。 ;可以用不同的方法表示算法,常用方法有: 自然语言 专用工具 计算机语言 ;自然语言即是使用汉语、英语或其他语言去描述算法。 [例]有50名学生的成绩,要求将他们之中80分以上的成绩打印出来。设用g代表学生成绩,gi 代表第i个学生成绩。 算法可以表示如下: 1)使i=1 ; 2)如果gi ?80 ,则打印 gi ,否则不打印; 3)使i的值加1 ; 4)如果 i? 50, 返回S2, 继续执行; 否则,算法结束。 特点:描述算法通俗易懂,容易产生歧义。对复杂问题,语句繁琐、冗长,并且很难清楚地表达算法的逻辑流程,往往需要根据上下文判别其含义,尤其对描述含有选择、循环结构的算法,不太方便和直观,一般不常使用。 ;1)流程图 美国国家标准化协会ANSI(American National Standard Institute)规定了一些常用的流程图符号 ;打印80分以上的学生成绩 ;2)N–S流程图 由美国学者I.Nassi和B.Shneiderman提出表示算法的图形工具。基本单元是矩形框,用不同的形状线分割,表示三种结构。只有一个入口,一个出口,没有流程线。 N--S图的优点: 比文字描述直观、形象、 易于理解;比传统流程图紧凑易

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档