计算机导论(第5版) 课件 第7章-软件开发知识_第1页
计算机导论(第5版) 课件 第7章-软件开发知识_第2页
计算机导论(第5版) 课件 第7章-软件开发知识_第3页
计算机导论(第5版) 课件 第7章-软件开发知识_第4页
计算机导论(第5版) 课件 第7章-软件开发知识_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

计算机导论第7章软件开发知识目录CONTENTS03数据库的发展01计算机软件概述02数据库原理及应用0405软件工程软件开发过程计算机软件概述系统软件;应用软件/01计算机软件的作用只有硬件的计算机是不能完成任何工作的,在硬件的基础上,配置合适的软件,才能充分发挥计算机的整体功能。

硬件是计算机的躯体,软件是计算机的灵魂。

计算机专业人员的一项重要工作是开发软件,开发软件(特别是中大规模软件)以程序设计能力为基础,以软件工程知识作指导,以数据库知识为支撑。程序是完成一定功能的指令或语句的序列。软件=程序+文档。系统软件系统软件靠近硬件层,其功能主要是管理计算机软硬件资源,与具体应用领域无关,为应用软件提供一些基本的、共同的功能支持。系统软件并不能解决具体应用问题,但解决具体问题的应用软件要在系统软件的支持下才能开发和运行。系统软件主要包括操作系统、语言翻译程序和数据库管理系统等。系统软件操作系统能否充分发挥计算机硬件的性能,操作系统起着非常重要的作用;使用者能否方便地操作使用计算机,操作系统同样发挥着重要作用。从微型机到超级计算机都必须在其硬件平台上加载相应的操作系统之后,才能构成一个完整的、功能强大的计算机系统。也只有在操作系统的支持下,其他系统软件和各种应用软件才能开发和运行。操作系统(OS)可定义为:有效地组织和管理计算机系统中的硬件和软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供多种服务功能及友好界面,方便用户使用计算机的系统软件。目前,常用的操作系统是Windows、macOS、UNIX和Linux等。系统软件语言翻译程序程序设计语言大体经历了机器语言、汇编语言和高级语言三个阶段。机器语言的优点:机器语言程序能够直接在计算机上执行。汇编语言和高级语言的出现,给程序设计带来了很大的方便。但是,用汇编语言或高级语言编写出的源程序,计算机并不能直接执行,需要翻译机器语言程序才能执行。人们开发了相应的翻译程序,用于汇编语言源程序的翻译程序叫汇编程序,用于高级语言源程序的翻译程序叫解释程序或编译程序。各种汇编程序和编译程序/解释程序都属于系统软件。目前常用的高级语言有Python、C、C++、C#和Java等。系统软件数据库管理系统计算机应用面最广的一个领域是信息管理,信息管理的关键技术是数据库技术,把信息存入数据库中并编写相应的数据库应用程序是开发信息管理系统的主要工作。如果没有数据库管理系统提供支持环境,数据库的建立及数据库应用程序的开发是很困难的,甚至无法实现。数据库管理系统是一个帮助人们建立数据库和开发数据库应用程序的系统软件,有了这个系统软件的支持,建立数据库和开发数据库应用程序就容易了。目前常用的数据库管理系统有Oracle公司的Oracle、MySQL,微软公司的SQLServer、Access,IBM公司的DB2等。应用软件应用软件用于解决实际问题,包括通用应用软件和专用应用软件通用应用软件:可以为多个行业和领域的人们使用,完成各自的任务,如办公软件中的Excel就是一个通用的应用软件。专用应用软件:只供某个行业或某些人使用,如火车票售票软件只能用于火车站、售票点或线上售卖火车票。应用软件包括软件开发环境、办公软件、辅助设计软件、多媒体制作软件、网页制作软件、网络通信软件、工具软件和实际应用软件等。数据库原理及应用关系数据库;关系数据库语言;常用关系数据库管理系统;数据库应用系统开发工具;数据库设计/02关系数据库数据库相关概念数据库(DB)是长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较低的数据冗余度、较高的数据独立性,并且可以为多个用户共享。数据库管理系统(DBMS)是位于用户和操作系统之间的一层数据管理软件,主要完成数据定义、数据操纵、数据库的运行管理和数据库的维护等功能。数据库应用系统是以数据库为核心的,在数据库管理系统的支持下完成一定的数据存储和管理功能的应用软件系统,数据库应用系统也称为数据库系统(DBS)。关系数据库应用示例:针对大学生选课信息的存储和管理,设计数据库中的表。按传统方式,我们可以把学生的选课信息放入下表所示的表格中。关系数据库应用示例:针对大学生选课信息的存储和管理,设计数据库中的表。传统方式的不足如果按此表格结构直接对应成数据库中的表,数据的冗余(数据重复)比较大。每个学生的姓名、年龄、专业,每门课程的课程名、学分都会在表中多次重复存放。数据冗余不仅浪费存储空间,更大的问题是容易造成数据的不一致。例如,某个同学如果转专业了,那么对应的表中数据应该修改,如果多次存储,就可能只修改部分值,导致该同学在表中的专业有两个不同的值,这会给以后信息查询等留下隐患。关系数据库应用示例:针对大学生选课信息的存储和管理,设计数据库中的表。遵循数据库理论,可以把上面的一个表设计成表7.2~7.4的形式。关系数据库应用示例:针对大学生选课信息的存储和管理,设计数据库中的表。遵循数据库理论,可以把上面的一个表设计成表7.2~7.4的形式。关系数据库应用示例:针对大学生选课信息的存储和管理,设计数据库中的表。这3个表格可以对应成数据库中的如下3个关系表,带下画线的属性为主码,主码能唯一确定某个实体,如学号能唯一确定某个学生。

学生(学号,姓名,年龄,系别)课程(课程号,课程名,学分)选课(学号,课程号,成绩)这样存储学生、课程和学生选课信息,基本去除了数据冗余。如果某个学生转专业了,只在学生表中修改一个记录即可。关系数据库语言(SQL)SQL语言的特点非过程化的语言:只要提出“做什么”,而不必说明“如何做”,既减轻了用户的负担,又提高了数据的独立性与安全性。功能一体化的语言:基于同样的语言风格/语法格式可以完成数据定义、数据操作等功能。一种语法两种使用方式:既可以被用户以一种人机交互的方式,在终端键盘上直接输入SQL命令来对数据库进行操作;又可以作为一种嵌入式语言,被程序设计人员在开发应用程序时直接嵌入到某种高级语言(如Python语言)中使用。关系数据库语言(SQL)SQL语言的特点面向集合操作的语言:非关系数据模型采用面向记录的操作方式,操作对象是单一的某条记录,而SQL允许用户在较高层的数据结构上工作,操作对象可以是若干记录的集合,简称记录集。所有SQL语句都接受记录集作为输入,返回记录集作为输出,其面向集合的特性还允许一条SQL语句的结果作为另一条SQL语句的输入。语法简洁、易学易用的标准语言:SQL不仅功能强大,而且语法接近英语口语,符合人类的思维习惯,因此较为容易学习和掌握。同时又由于它是一种通用的标准语言,使用SQL编写的程序也具有良好的移植性。关系数据库语言(SQL)SQL语言应用示例:基于学生、课程、选课3个表,查询选修了“计算机导论”课程的学生的姓名,可以写出如下查询语句:SELECT学生.姓名FROM学生,选课,课程WHERE学生.学号=选课.学号AND选课.课程号=课程.课程号AND课程.课程名="计算机导论";该语句值说明了查找什么,在哪几个表中去查,并没有说明如何去查。常用关系数据库管理系统数据库管理系统的类型数据库领域有4种主要的数据模型,即层次模型、网状模型、关系模型和面向对象模型。数据模型是组织数据的方式。层次数据库、网状数据库已过时,面向对象数据库没有研发成功,现在用的是关系数据库。近年来,计算机科学技术不断发展,关系数据库管理系统也不断发展进化,AB公司(2009年被Oracle公司收购)的MySQL、Microsoft公司的Access等是小型关系数据库管理系统的代表,Oracle公司的Oracle、Microsoft公司的SQLServer、IBM公司的DB2等是功能强大的大型关系数据库管理系统的代表。数据库应用系统开发工具早期的数据库应用由于是比较简单的单机系统,数据库管理系统选用dBASE、FoxBASE、FoxPro、VisualFoxPro等,这些系统自身带有开发环境,所以这时的数据库应用系统开发可以不用选择开发工具。随着计算机技术(特别是网络技术)和应用需求的发展,数据库应用模式已逐步发展到C/S模式和B/S模式,数据库管理系统需要选用功能强大的Oracle、SQLServer、DB2等,这时选用合适的开发工具成为提高数据库应用系统开发效率和质量的一个重要因素。目前,可以选用Python作为数据库应用系统的开发工具,在标准库或第三方库的支持下,使用Python语言开发数据库应用系统简单、快捷。数据库设计需求分析总体工作:对组织的工作现状和用户需求进行调查、分析,明确用户的信息需求和系统功能,提出拟建系统的逻辑方案。这里的重点是对建立数据库的必要性及可行性进行分析和研究,确定数据库在整个数据库应用系统中的地位,确定出各个数据库之间的关系。具体工作:选用哪种数据库管理系统(DBMS)软件及相应的软硬件、网络环境配置;确定数据库系统的功能;确定建立一个还是几个数据库;确定数据库中表的个数及结构。数据库设计概念结构设计将需求分析阶段得到的用户需求抽象为反映现实世界信息需求的数据库概念结构(概念模式)就是概念结构设计。概念结构从现实世界抽象而来,又是各种数据模型的共同基础,实际上是现实世界与逻辑结构(机器世界)之间的一个过渡。描述概念模型的有效工具是实体-联系图(E-R图)。概念结构设计包括三个步骤:设计局部E-R图、集成局部E-R图为全局E-R图、优化全局E-R图。数据库设计逻辑结构设计逻辑结构设计是把概念结构设计阶段的E-R图转换成与具体的DBMS产品所支持的数据模型相一致的逻辑结构。逻辑结构设计包括两个步骤:将E-R图转换为关系模型、对关系模型进行优化。优化工作要用到函数依赖、关系范式等知识;得到优化后的关系数据模型,就可以向特定的关系数据库管理系统转换,实际上是将一般的关系模型转换成符合某一具体的能被计算机接受的关系数据库管理系统(RDBMS)模型,如Oracle、SQLServer、DB2等。数据库设计物理结构设计数据库在实际的物理设备上的存储结构和存取方法称为数据库的物理结构。为设计好的逻辑模型选择一个最符合应用要求的物理结构就是数据库的物理结构设计。物理结构设计的主要内容包括三项:确定数据的存储安排、存取路径的选择与调整和确定系统配置。RDBMS产品一般都提供有一些系统配置变量、存储分配参数(同时使用数据库的用户数、同时打开的数据库对象数、缓冲区的长度等),系统为这些变量赋予了合适的默认值,在进行数据库的物理设计时可以直接使用这些值,也可以根据实际应用环境重新设置这些值。数据库设计数据库实施数据库实施阶段的工作就是根据逻辑设计和物理设计的结果,在选用的RDBMS上建立起数据库。具体讲有如下3项工作:建立数据库的结构:以逻辑设计和物理设计的结果为依据,用RDBMS的数据定义语言书写数据库结构定义源程序并执行程序。载入实验数据并测试应用程序:实验数据可以是部分实际数据,也可以是模拟数据,应使实验数据尽可能覆盖各种可能的实际情况,通过运行应用程序,测试系统的性能指标。如不符合,是程序的问题修改程序,是数据库的问题,则修改数据库设计。载入全部实际数据并试运行应用程序,发现问题做类似处理。数据库设计数据库运行与维护数据库经过试运行后就可以投入实际运行了。但是,由于应用环境在不断变化,对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是设计工作的继续和提高。在数据库运行阶段,对数据库经常性的维护工作主要由数据库管理员完成,主要工作包括数据库的转储和恢复、数据库的安全性和完整性控制、数据库性能的监督分析和优化、数据库的重组织与重构造等。数据库设计总结

数据库设计以数据库为主线说明数据库应用系统的开发过程,分析、设计、实施、运行维护分布在了这个主线上。后面的软件工程着眼于一般软件系统的设计开发,数据库设计是其中的一个环节。

当开发实际项目时,以数据库为主的数据库应用系统开发可以遵循数据库设计过程,不以数据库为主的一般软件系统的开发可以遵循软件工程的思想。数据库的发展分布式数据库;大数据;区块链;数据仓库;数据挖掘/03分布式数据库分布式数据库概念分布式数据库(DBS)是指分布在一个计算机网络上的多个逻辑相关的数据库的集合。即分布式数据库是一组结构化的数据集合,逻辑上属于同一个系统,物理上分布在计算机网络中各个不同的场地上。从物理位置上看,数据分别存放在地理位置不同的数据库中,但从用户使用的角度看,数据如同存放在一个统一的数据库中一样。分布式数据库系统(D-DBS)由分布式数据库和分布式数据库管理系统组成。分布式数据库管理系统(D-DBMS)是分布式数据库系统的一组软件,负责对分布式数据库中的数据进行管理和操作。分布式数据库分布式数据库管理系统的组成本地数据库管理系统:每个结点上都有一个局部数据库管理系统。全局数据库管理系统:把物理上分散的局部数据库整合成逻辑上统一的全局数据库。全局数据字典:支持全局数据库管理系统对各局部数据库的操作。通信管理:在分布式数据库各结点之间传送消息和数据,完成通信功能。大数据大数据的定义大数据(bigdata)是指规模大到目前的软件工具难以有效收集、存储、管理和分析的数据。也指来自于多维多源的数据。大数据的特点数据量巨大:一般都在太字节(TB)以上;类型多样:包括数值、文本、图像、视频、音频等各种类型的结构化和非结构化数据;处理速度快:对大数据的分析处理速度要快,分析结果要能及时用于支持决策,也有人解释为数据的增长速度快;价值大:原始数据价值密度低,但经分析处理后价值巨大。大数据大数据应用示例一美国华盛顿大学计算机专家奥伦·埃齐奥尼开发了一个机票价格预测系统Farecast,帮助人们在合适的时间以最低的价格购买机票到2012年为止,Farecast系统用了将近10万亿条价格记录来帮助预测美国国内航班的票价。Farecast票价预测的准确度高达75%,使用Farecast

票价预测工具购买机票的旅客,平均每张机票可节省50美元。这是一个比较有代表性的大数据应用实例,少量的价格记录(如1万条)可能没有多大利用价值,但是通过对大数据(近10万亿条价格记录)的分析,就能产生可观的经济价值。大数据大数据应用示例二支付宝到2020年时用户量已经突破10亿。随着网上购物、网上支付的快速发展,特别是在“双11”“618”等促销活动时段,遇到大量的用户在短时间内集中购买、集中支付的“潮汐式”“爆发式”对数据库访问的冲击,传统的集中式数据库很难应对。蚂蚁集团完全自主研发了国产原生分布式数据库OceanBase,支付宝从2014年开始逐渐迁移到OceanBase分布式数据库上,到2017年所有核心系统的全部流量都由OceanBase支撑。OceanBase分布式数据库采用“三地五中心”城市级容灾新标准,数据量达到PB级,2020年5月,OceanBase

的在线事务处理性能达到7.07亿tpmC(每分钟系统处理的新订单个数)。区块链区块链的定义区块链(blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链的技术创新1-分布式账本:就是交易记账由分布在不同地方的多个结点共同完成,而且每一个结点都记录的是完整的账目,因此它们都可以参与监督交易合法性,同时也可以共同为其作证。没有任何一个结点可以单独记录账本数据,从而避免了单一记账人被控制或者被贿赂而记假账的可能性。也由于记账结点足够多,理论上讲除非所有的结点被破坏,否则账目就不会丢失,从而保证了账目数据的安全性。区块链区块链的技术创新2-非对称加密和授权技术:存储在区块链上的交易信息是公开的,但是账户身份信息是高度加密的,只有在数据拥有者授权的情况下才能访问到,从而保证了数据的安全和个人的隐私。3-共识机制:就是所有记账结点之间如何达成共识,去认定一个记录的有效性,这既是认定的手段,也是防止篡改的手段。人们提出了多种不同的共识机制,适用于不同的应用场景,在效率和安全性之间取得平衡。4-智能合约:基于区块链上可信的不可篡改的数据,可以自动执行一些预先定义好的规则和条款。以保险为例,如果说每个人的信息(包括医疗信息和风险发生的信息)都是真实可信的,那就很容易在一些标准化的保险产品中,进行自动理赔。数据仓库数据仓库的定义数据仓库(datawarehouse,DW)是一个面向主题的、集成的、时变的、不可更新的数据集合,支持管理部门的决策过程。数据仓库的特点1-面向主题的:数据仓库围绕一些主题,如客户、供应商、产品或销售来组织。数据仓库关注决策者的数据建模与分析,而不是组织机构的日常操作。因此,数据仓库排除与决策无关的数据,只提供与特定主题相关的数据。2-集成的:数据仓库中的数据往往来自于多个异构的数据源,是对这些异构数据的集成,在数据集成过程中要保证数据在命名约定、编码结构、属性度量等方面的一致性。数据仓库数据仓库的特点3-时变的:在数据库中一般只存放当前数据,而数据仓库中一般要存放一个历史阶段的数据,如存放5年的数据,数据仓库中的数据与时间因素有关。4-不可更新的:数据仓库中的数据一般来源于数据库或其他数据源,但与这些数据源分开存放数据。数据库中的数据经常需要进行插入、修改和删除等更新操作,而数据仓库中的数据只有查询和统计操作,一般不进行更新操作。数据仓库工具Oracle、DB2、SQLServer都支持数据仓库解决方案。数据挖掘数据挖掘的定义数据挖掘(datamining,DM),又称为数据中的知识发现,是从存放在数据库、数据仓库或其他信息库中的大量数据中发现有用知识的过程。数据挖掘的主要功能关联分析:找出数据集中相互有关联的因素,如针对超市的购物篮分析。数据挖掘数据挖掘主要功能概念描述:归纳总结出某个数据集合的特征,或者对照说明两个或多个数据集的不同特征。分类:在分析已有类别标记的数据的基础上,总结出不同类别数据的特征,据此特征对待分类数据进行类别标注。聚类:对数据进行分组,使得同一组内的数据相似度比较高,而不同组中的数据相似度比较低。孤立点分析:孤立点就是数据集中明显偏离正常值的数据,找到这样的数据就是孤立点分析。演变分析:发现行为随时间变化的数据所遵循的规律或趋势。数据挖掘数据挖掘应用示例超市数据库中存储有大量的客户购买物品的信息以及客户本身的信息。分类或聚类可以把客户按购买力的大小分成若干组;概念描述可以对比说明每组客户的特征;关联分析可以发现人们购买物品时的一些规律,如购买牛奶的人一般同时购买了面包等;孤立点分析可以发现反常的购买行为,如消费额特大;演变分析可以发现某种(些)商品在不同季节的销售趋势。这些数据挖掘的结果可以使超市的经营者制定出更为精准的营销策略,在提高服务质量的同时,取得更好的经济效益。软件工程软件危机;软件工程的基本原则;软件开发方法/04软件危机软件危机的定义计算机领域把大型软件开发和维护过程中遇到的一系列严重问题称为“软件危机”(softwarecrisis)。软件危机的表现软件开发成本和开发进度的估计往往很不准确。用户对“已完成”的软件系统不满意的现象经常发生。软件产品的质量往往不可靠。软件没有适当的文档资料。软件通常是不可维护的。软件危机软件危机示例IBM公司于1963~1966年为IBM360系列机开发了操作系统OS/360,这是一个功能较强的多道批处理操作系统,参加软件开发的人员最多时超过了1000人,总计有大约5000人年的工作量(5000人工作一年),耗资数亿美元,编写了近100万行的源程序。但结果并不理想,软件中隐藏有大量的错误,每次发行的新版本都是在前一个版本的基础上发现并改正1000个错误后形成的。要知道,在这么多人合作编写的这么大规模的一个软件中,找到错误的性质和位置并改正错误,又不引起新的错误,是一件相当困难的事情。软件危机应对软件危机的方法软件危机的出现表明,必须寻找新的技术和方法来指导大型软件的开发。考虑到机械、建筑等领域都经历过从手工方式演变成严密、规范、完整的工程科学的过程,人们认为大型软件的开发也应该向“工程化”方向发展,逐步发展成一门完整的工程学科。1968年在北大西洋公约组织的一次学术会议上首次提出“软件工程”(softwareengineering)概念。软件工程采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验证明正确的管理技术和当前能够得到的最好的技术方法结合起来。软件工程的基本原则软件工程专家巴利·玻姆提出了7条基本准则1-用分阶段的生命周期计划进行严格的管理:把整个软件开发过程分成若干个相对独立、任务比较单一的阶段,针对每个阶段制订出切实可行的计划,并严格执行所制订的计划。2-坚持进行阶段评审:软件的生命周期分为分析、设计、实施和维护等阶段,每个阶段结束后,都要进行严格的评审,尽早发现和改正错误,把错误尽量消灭在“萌芽”阶段。3-实行严格的产品控制:针对需求改动,要实行严格的产品控制,一是需求的改动要经过严格的评审和审批,二是实际变动需求时,所有其他阶段有关的文档或程序代码也要做相应的修改,以保证一致性。软件工程的基本原则软件工程专家巴利·玻姆提出了7条基本准则4-采用现代程序设计技术:根据所开发软件的规模和功能,选择先进的软件开发方法和程序设计技术既能提高软件开发的质量,又能保证开发进度,还有利于软件的维护。5-结果应能清楚地审查:应尽量详细、明确地规定每个阶段的任务和审查标准,使得包括最终软件产品审查在内的各阶段的结果审查工作,有明确的目标和审查标准,能清楚地进行审查。6-开发小组的人员应该少而精:强调开发人员的能力和素质,而不是数量。7-承认不断改进软件工程实践的必要性:总结软件开发实践中好的方法和技术,用于指导新的软件的开发,这个过程是反复进行的。软件开发方法生命周期法的基本思路生命周期法强调将整个软件的开发过程分解成若干个阶段,并对每个阶段的目标、任务、方法做出规定,使整个软件的开发过程具有合理的组织和科学的秩序。每个阶段进行若干项活动,每项活动应用一系列标准、规范、方法和技术,完成一个或多个任务。生命周期法的不足生命周期法强调自顶向下分阶段开发,在进入实际的开发期之前必须预先对需求严格定义。但是,实践也表明,有些系统在开发出来之前很难仅仅依靠分析就能确定出一套完整、一致、有效的应用需求,这种预先定义的方式更不能适应用户需求不断变化的情况。软件开发方法生命周期法遵循的原则用户参与的原则:要积极引导用户参与,开发人员要充分考虑、理解用户的要求。没有用户的积极参与,往往是导致软件开发失败的重要原因。先逻辑后物理的原则:要充分地进行系统分析,解决“做什么”的问题,然后再进入系统设计、系统实施阶段,解决“如何做”的问题。自顶向下的原则:先把握系统的总体目标和功能,然后逐级分解、逐步细化,将整个拟开发系统分解成若干个项目,分期分批进行系统开发。工作成果描述标准化原则:每一工作阶段的成果,必须用明确的文字和标准化的图形、表格完整、准确地进行描述。软件开发方法快速原型法在初步了解用户的基本要求后,开发人员先建立一个他们认为符合用户要求的原型系统交付用户检验,通过执行原型系统,用户可以进一步明确地说明需求。人们通常建立两种快速原型,一类是需求规格原型(RSP),另一类是渐进原型(RCP)。RSP模型反映了系统的某些方面,它可以密切用户和开发人员的关系,促进相互理解,待需求说明书确定之后,这个模型就被舍弃,后面的开发工作仍按生命周期法进行。RCP采用循序渐进的开发方式,对初始模型作连续的精确化,直至实现系统的所有功能。软件开发方法面向对象法的基本思路面向对象(objectoriented,OO)法把数据和对数据的操作同等看待,是一种以数据为主线,把数据和对数据的操作紧密结合起来的方法。面向对象法的特点把对象作为融合了数据及在数据上的操作行为的统一软件构件,用对象分解取代了结构化方法的功能分解。把所有对象都划分为类。每个类定义了一组数据和一组操作,类是对具有相同数据和相同操作的一组相似对象的定义。按照父类与子类的关系,把若干个相关类组成一个层次结构的系统。下层子类自动拥有上层父类中定义的数据和操作,这是继承性的体现。软件开发方法面向对象法的特点对象彼此之间仅能通过发送消息互相联系,对象的所有私有信息都被封装在该对象内,不能从外界直接访问,这就是封装性。面向对象法应用于软件开发的分析、设计和实施阶段,便有了面向对象分析(OOA)、面向对象设计(OOD)和面向对象程序设计(OOP)等面向对象技术。基于面向对象法的软件开发中,使用一种通用的图形化建模语言—统一建模语言(UML)。软件开发方法敏捷开发方法敏捷开发方法将整个软件项目进行任务分解,完成一个模块交付一个模块,一边给用户提供服务,一边不断增加新功能,这样保证了软件可以很快交付使用,在用户使用的同时逐渐增加新功能、完善已有功能。敏捷开发的特点是持续迭代,在一个迭代周期内,根据产品需求,经过项目组评审后形成软件需求文档。根据软件需求文档进行系统设计,形成系统设计文档。根据设计文档编写代码,并对代码进行评审。对代码进行测试调试,形成测试文档。通过测试的软件(模块)交付使用。软件开发方法微软过程规划

温馨提示

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

评论

0/150

提交评论