软件测试基础课件1-软件工程要点.pptx
《软件测试基础课件1-软件工程要点.pptx》由会员分享,可在线阅读,更多相关《软件测试基础课件1-软件工程要点.pptx(88页珍藏版)》请在三一办公上搜索。
1、第一章 软件工程要点,本章教学目标及重点,教学目标掌握软件、软件危机、软件工程概念了解软件开发技术了解项目管理、配置管理相关知识了解应用生命周期概念和应用生命周期管理方法了解惠普应用生命周期管理方案重点软件工程技术,本章安排,1.1 软件1.2 软件危机1.3 软件工程1.4 软件开发主流技术1.5 软件开发过程中的项目管理1.6 软件开发过程中的配置管理1.7 应用生命周期管理,1.1 软件,1.1.1 软件的概念,1.1.2 软件的类型:按应用范围划分,1.1.3 软件及其产业的重要意义,金融领域,金融服务系统在线支付消费卡服务,制造领域,生产管理采购管理销售管理,医疗领域,仪器设备病历管
2、理血库管理,通信领域,计费管理积分管理客户管理,软件,金融,制造,通信,医疗,政务,1.2 软件危机,1.2.1 软件危机的产生,20世纪40年代,20世纪80年代-至今,无序的,崇尚个人编程技巧,使用ENIAC编程,软件工程取得了可喜成就,但还未从根本上解决软件危机,20世纪60年代,软件系统规模越来越大,复杂程度越来越高,软件危机开始爆发,1968 年,北大西洋公约组织在联邦德国召开国际会议,第一次讨论软件危机问题,软件工程兴起与发展,1.2.2 软件危机的影响,1.2.3 消除软件危机的方法,解决途径组织管理工程项目管理方法技术措施软件开发技术、方法与软件工具具体办法对计算机软件有一个正
3、确的认识(软件程序)充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目推广使用在实践中总结出来的开发软件成功技术和方法开发和使用更好的软件工具,1.2.3 消除软件危机的方法,软件开发工作量分配比例,10% 20%,40% 50%,引入同一变化付出的代价随时间变化的趋势,越早开始写代码的人,就是越迟完成代码的人!,40% 50%,1.3 软件工程,1.3.1 软件工程的概念,Text,方法,工具,过程,软件工程,将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件:项目计划与估算需求分析数据结构总
4、体设计编码、测试与维护等,软件工具为工程方法提供了自动或半自动的软件支撑环境:软件工具软件支撑环境计算机辅助软件工程(CASE)等,将软件工程方法和工具综合起来,以达到合理、及时第进行计算机软件开发的目的。方法使用的顺序需交付的文档变更管理里程碑管理等,1.3.1 软件工程的框架,目标+过程+原则,1.3.1 软件工程的框架,目标+过程+原则,1.3.1 软件工程的框架,目标+过程+原则,1.3.1 软件工程的本质特征,关注:软件工程关注于大型程序的构造中心课题:软件工程的中心课题是控制复杂性控制和管理:软件经常变化工具与环境:开发软件的效率非常重要团队精神:和谐地合作是开发软件的关键有效支持
5、:软件必须有效地支持它的用户创造产品:在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品,1.3.1 常用的软件开发方法,1.3.2 软件生命周期,便于不同人员分工协从,降低软件工程实行难度在每个阶段采用科学的管理技术和方法,并在每阶段结束之前从管理和技术角度进行严格审查,1.3.2 软件生命周期模型:瀑布模型,1970年温斯顿罗伊斯(Winston Royce)提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被广泛采用的软件开发模型。,1.3.2 软件生命周期模型:瀑布模型特点及应用场景,1.3.2 软件生命周期模型:V模型,V模型是在瀑布模型基础上演变而来,由
6、于将整个开发过程构造成一个V字形而得名。V模型强调软件开发的协作和速度,将软件实现和验证有机地结合起来,在保证较高的软件质量情况下缩短开发周期。,软件生命周期模型,迭代模型,1.3.2 软件工程生命周期,敏捷开发,1.3.3 敏捷开发过程,敏捷开发是一种以用户的需求进化为核心、迭代、循序渐进的开发方法。 软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。,敏捷开发,1.3.3 敏捷开发过程,变,早,快,敏捷开发,1.3.3 敏捷开发过程,敏捷开发的12条原则:最优先要做的是通过尽早、持续交付有价值的软件来使客户满意;即使在开发的后期,需求变更也是允许的;经常
7、交付可工作软件;在整个项目开发期间,业务人员和开发人员最好在一起工作;强化激励机制,为受激励的个人单独构建项目;在团队内部,最富有效果和效率的信息传递方法是面对面交谈;可工作软件是进度的首要度量标准;敏捷过程提倡可持续的开发速度;不断地关注优秀的技能和好的设计,增强敏捷能力;简化:尽量简化你所要做的工作;好的架构、需求和设计出自于组织团队自身;团队要定期的反省如何更有效地工作,并相应地调整自己的行为。,1.3.3 敏捷开发过程,敏捷开发的方法,1.3.3 敏捷开发过程,敏捷开发的过程,1.3.3 敏捷开发过程,1.4 软件开发主流技术,软件系统体系结构应用模式大体上分为,主机终端模式文件服务器
8、模式C/S模式B/S模式,1.4.1 C/S与B/S结构,C/S结构的基本原则是将计算机应用任务分解成多个子任务,由多台计算机分工完成,克服了终端/主机结构中主机负担过重,用户界面不友好等缺点,因而得到了广泛的应用。,C/S结构,1.4.1 C/S与B/S结构,主要有两层C/S结构和三层C/S结构,C/S结构,两层结构的C/S前端是客户机(通常是PC);后端是服务器,运行数据库管理系统,提供数据库的查询和管理。三层结构的C/S模式是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次,即客户机、服务器和中间件。,1.4.1 C/S与B/S结构,C/S模式体系结构示意图,三层C/
9、S结构,1.4.1 C/S与B/S结构,通常,一个典型的C/S应用程序由4个部分组成:用户界面的显示逻辑,主要是各种图形用户界面GUI;应用逻辑(是根据输入数据来完成业务处理和规则的应用代码;事务逻辑(这是应用程序中用DML语句编写的代码);数据管理(这是应用程序中由DBMS完成访问实际数据库的程序)。,C/S环境下应用成份的分布,1.4.1 C/S与B/S结构,C/S环境下应用成份的分布,C/S环境下组成应用程序的4个组成部分,1.4.1 C/S与B/S结构,C/S体系结构的技术特点,1.4.1 C/S与B/S结构,客户端主要开发工具和常用技术,1.4.1 C/S与B/S结构,B/S(Bro
10、wser/Server,浏览器/服务器)模式又称B/S结构B/S模式是指在TCP/IP的支持下,以HTTP为传输协议,客户端通过Browser访问Web服务器以及与之相连的后台数据库的技术及体系结构。,B/S结构,1.4.1 C/S与B/S结构,B/S的优势,1.4.1 C/S与B/S结构,简化客户端简化系统的开发和维护用户操作变得简单适用于网上信息的发布,B/S结构,B/S模式下的开发技术,1.4.1 C/S与B/S结构,Web应用三层架构模式客户端技术服务端技术,客户端,HTML语言Java Applets 脚本程序CSS DHTML 插件技术VRML技术,服务端,服务器技术 公共网关借口
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 基础 课件 软件工程 要点
链接地址:https://www.31ppt.com/p-1294104.html