




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件技术基础 第1章 概述,河南工业大学电气工程学院,本章要点,软件的概念,软件与程序的关系 了解软件技术规范 掌握问题求解过程与方法 理解软件开发过程,第1章 概述 2010-8,2,河南工业大学电气工程学院,软件与软件技术 问题求解方法,主要内容,重点与难点,1.1程序与软件程序,程序:是一组计算机指令的集合,是解决问题过程的描述。 程序的特征: 静态和动态属性 用程序语言抽象的符号表达 是对数据实施算法的过程 具有层次性、结构性,第1章 概述 2010-8,3,河南工业大学电气工程学院,1.1程序与软件软件,软件:是计算机系统中与硬件相互依存的另一部分,它是包括程序、数据及其相关文档的完整集合 文档是指编制程序所使用的技术资料和使用该程序的说明性资料如使用说明书等。即开发、使用和维护程序所需要的一切资料。,第1章 概述 2010-8,4,河南工业大学电气工程学院,1.1 程序与软件,第1章 概述 2010-8,5,河南工业大学电气工程学院,软件的特征 软件是有生命周期的商品 软件是逻辑的而不是物理的 软件是功能、性能完备的软件系统 软件不会磨损,它故障率随时间的推移而降低 软件的故障就是软件中的错误。,1.1程序与软件软件,软件危机:是指在软件开发过程中遇到的一系列问题。如开发周期长、成增加、可靠性降低等。 造成软件危机的原因: 如何开发软件? 如何满足软件不断增长的需求 如何维护现有的、容量在不断增加的软件?,第1章 概述 2010-8,6,河南工业大学电气工程学院,1.1程序与软件软件,造成软件危机的原因: 软件成本、开发成本和开发进度的估计不够准确 用户对已完成的软件系统不满意的现象经常发生 软件产品质量靠不住 软件常常是不可维护的 软件通常没有适当的文档资料 软件的开发成本占计算机系统的总成本比例逐年上升,第1章 概述 2010-8,7,河南工业大学电气工程学院,1.2 软件分类,系统软件 实时软件 嵌入式软件 商业软件 过程和科学计算软件 个人软件 人工智能软件等。 有太多的软件需要大家去开发开发软件困难吗?,第1章 概述 2010-8,8,河南工业大学电气工程学院,1.3软件技术规范,软件工程技术 程序设计技术 软件工具环境技术 系统软件技术 数据库技术 实时软件技术 网络软件技术 与实际工作相关的软件技术,第1章 概述 2010-8,9,1.3.1软件工程技术,软件开发的原则与策略 软件开发过程(需求、设计、实现、测试和维护) 软件开发方法与软件过程模型 软件标准与软件质量的衡量 软件开发的组织与项目管理 软件版权等,第1章 概述 2010-8,10,河南工业大学电气工程学院,1.3.2 程序设计技术,程序结构与算法设计 程序设计风格 程序设计语言 程序设计方法 程序设计自动化 程序的正确性证明 程序的变换。,第1章 概述 2010-8,11,河南工业大学电气工程学院,1.3.3 软件工具环境技术,人机接口技术 软件自动生成 软件工具的集成和软件开发环境 软件的复用 逆向工程等,第1章 概述 2010-8,12,河南工业大学电气工程学院,1.3.4 系统软件技术,操作系统 编译方法 分布式处理与并行计算 多媒体软件处理技术等,第1章 概述 2010-8,13,河南工业大学电气工程学院,1.3.5 数据库技术,数据模型 数据库与数据库管理系统 分布式数据库 面向对象数据库技术 工程数据库 多媒体数据库等,第1章 概述 2010-8,14,河南工业大学电气工程学院,1.3.6 实时软件技术,实时监控软件技术 嵌入式实时软件技术,第1章 概述 2010-8,15,河南工业大学电气工程学院,1.3.7 网络软件技术,网络管理 局域网技术 网络互连技术 智能网络 无线网络 移动网络 协议工程等,第1章 概述 2010-8,16,河南工业大学电气工程学院,1.3.8 与实际工作相关软件技术,如何延长软件的使用时间 如何适应不断增强的软件性能 如何控制软件的质量 如何改变管理和配置记录 如何设计用户的在线帮助文档和图表 如何控制软件规模 软件评估和软件开发计划的制订 软件需求的表示和软件规格说明书的确定等,第1章 概述 2010-8,17,河南工业大学电气工程学院,1.4基于计算机的问题求解方法,就是建立求解问题的模型。把描述实际对象的数据及其相互关系映射到计算机的存储器上,编程序模拟对象领域中的求解过程。,第1章 概述 2010-8,18,河南工业大学电气工程学院,问题求解目标,数据 表示 、 处理?,如何表示要处理的数据 如何处理数据,第1章 概述 2010-8,19,河南工业大学电气工程学院,两个重要概念?,?,?,数据结构的问题,算法的问题,计算机求解过程 vs 软件工程的方法,(1)问题分析:弄清所要解的问题是什么;并且把它用一种语言(自然语言、说明语言或数学语言)清楚地描述出来 (2)设计:建立程序系统的结构,重点是数据结构的设计和算法的设计 (3)程序编码:采用适当的程序设计语言,编写出可执行的程序 (4)程序测试和维护:发现和排除在前几个阶段中产生的错误,在使用中不断维护和完善,第1章 概述 2010-8,20,河南工业大学电气工程学院,需求分析,软件设计,软件实现,软件测试,软件维护,实例:设计一个多岔路口 交通信号灯管理系统,首先需要分析一下所有车辆行驶路线的冲突问题。 这个问题可以归结为对车辆的可能行驶方向作某种分组。 分组的原则是使任一个组中各个方向行驶的车辆可以同时安全行驶而不发生碰撞。,第1章 概述 2010-8,21,河南工业大学电气工程学院,问题分析,第1章 概述 2010-8,22,河南工业大学电气工程学院,可通行方向 AB AC AD BA BC BD DA DB DC EA EB EC ED,构造结点 结点间不可通行者连线如图1.2所示,图1.1多岔路口示意图,问题抽象,第1章 概述 2010-8,23,河南工业大学电气工程学院,把图中的结点进行分组,无关性结点分在一组,使得有连线的结点不在同一个组里。,第1章 概述 2010-8,24,AB,AC,AD,BA,BC,BD,DA,D B,DC,EA,EC,ED,EB,着色,数学模型四色定理,如果把上图中的一个结点理解为一个国家,结点之间的连线看作两国有共同边界,上述问题就变成著名的“地图着色问题”。 即求出最少要几种颜色可将图中所有国家着色,使得任意两个相邻的国家颜色都不相同,第1章 概述 2010-8,25,河南工业大学电气工程学院,设计:实现上述问题抽象过程 算法设计,对n个结点,逐个测试其所有组合; 逐个穷举所有可能的分组方法,分一组可不可以?若不可以,二组呢?若再不可以,三组呢?,第1章 概述 2010-8,26,河南工业大学电气工程学院,方法:穷举法和贪心法,穷举法 思想,先用一种颜色给尽可能多的不相邻的结点着色; 然后对剩下的结点,再用一种颜色给尽可能多的不相邻的结点着色; 如此反复,直到所有结点都已经着色。,第1章 概述 2010-8,27,河南工业大学电气工程学院,贪心算法 思想,抽象描述,while 有结点未着色 选择一种新颜色; 在未着色的结点中,给尽可能多的彼 此之间没有边的连接结点着色; ,第1章 概述 2010-8,28,河南工业大学电气工程学院,算法描述,假设图G,集合V包括图中的结点v,着色开始时V是G所有结点集合,NEW表示已确定可用新颜色着色的结点集合。 while V != NEW= ; for 每个v V do if v与NEW中所有结点没有边连接 V=V v ; NEW=NEWv ; ,第1章 概述 2010-8,29,河南工业大学电气工程学院,实现、测试与维护,选择一种程序设计语言编写代码,完成上述算法,调试程序 使用前测试程序 投入使用维护,第1章 概述 2010-8,30,河南工业大学电气工程学院,用软件工程方法思考,?,第1章 概述 2010-8,用软件开发过程思考上述问题,第1章 概述 2010-8,32,河南工业大学电气工程学院,软件需求分析,目的:系统“要解决什么问题?”、“做什么?” 任务:收集、分析、理解、确定用户的要求;然后把用户的要求精确、完整地描述表达出来。 结果:可行性报告、软件计划、撰写需求说明书,第1章 概述 2010-8,33,河南工业大学电气工程学院,“什么是他们真正需要的”,软件设计,目的:要回答“如何解决该问题?”、“怎样做?”。 任务:给出实现系统的实施蓝图。功能分解:设计每个模块的功能及接口。主要工作是完成软件系统结构(软件结构) 设计、数据设计、界面设计和过程设计。 结果:系统设计说明书和模块功能说明书,第1章 概述 2010-8,34,河南工业大学电气工程学院,概要设计,详细设计,软件构造,目的:选择一种程序设计语言写出高质量的代码和相应的文档。 任务:根据设计说明书中每个模块的控制流程编写出相应的源程序。 结果:源程序和文档,第1章 概述 2010-8,35,河南工业大学电气工程学院,注意使系统更易于使用和系统的可重用性,软件测试,目的:保证系统的正确性、可靠性和可用性。 任务:检查、发现程序中的错误,提高系统可靠性。 结果:测试报告和软件修改报告等。,第1章 概述 2010-8,36,河南工业大学电气工程学院,系统是否能实现规定的操作?,软件维护,目的:维护软件系统的正常运行。 任务:改正软件系统在使用过程中发现的隐含错误,扩充在使用过程中新的功能要求。 阶段结果:软件系统的问题报告和软件修改报告。,第1章 概述 2010-8,37,河南工业大学电气工程学院,是否满足用户的应用要求,思考与练习 进一步讨论课堂讲授的求解
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年无人机驾驶员职业技能考核试卷及答案(无人机遥控操作)
- 2025年电梯维修工程师资格考试试题及答案解析
- 高校合同审计报告模板(3篇)
- 高清柔性屏采购合同模板(3篇)
- 高空瓦匠施工合同范本(3篇)
- 爱婴医院考试试题及答案
- 卫生健康委员会疾病预防控制体系建设合同
- 汽修厂汽车维修工人劳动合同与职业发展规划
- 专业市场店铺股份收购及供应链整合协议
- 地下商场商铺产权转让协议
- 第六章-全球变化与海平面变化分解课件
- (完整版)高中物理必修一第一章测试题及答案
- 岁儿童行为量表CBCL
- VTE防治护理手册
- 小儿支气管哮喘-羽课件
- 新北师大版二年级上册数学 课桌有多长 教学课件
- 管道沟槽开挖安全安全技术交底
- 案件(线索)移送登记表
- 2021年全国质量奖现场汇报材料课件
- 《组织学与胚胎学》课件02细胞
- 名词性从句公开课
评论
0/150
提交评论