外包软件协议

2022-05-23 版权声明 我要投稿

第1篇:外包软件协议

基于仿真软件动态路由协议配置实验综述报告

摘要:为解决网络工程专业在实践教学中,网络设备不足的问题,通过使用Packet Tracer仿真软件,完成动态路由协议配置实验,从而达到和在真实设备操作同样学习效果。本文对Packet Tracer仿真软件做了简要介绍,分别阐述了配置动态路由协议实验原理,实验目的,实验背景,实验内容,实验测试,排错方案和实验总结。

关键词:实践教学;Packet Tracer;动态路由协议

1 引言

目前由于市场应用级网络设备价格较贵,这就导致多数学校基本上无法满足每人一台套的实践要求,更何况网络工程专业的综合型、设计型实训项目,如:网络工程规划和设计类的综合型实践项目,牵涉的就不止一套网络设备。所以,要完成一项综合型的网络工程实训项目,一组学生需要使用多台的交换机、路由器、计算机以及服务器等设备才能完成。为解决这一实践教学短板,我们可以运用思科公司出品的Packet Tracer仿真软件,来完成需要多台网络设备才能完成的综合型实训项目。思科公司开发这套仿真软件是为网络学习者提供一个设计网络、配置网络以及网络排障的模拟环境,同时也为一线工程师的网络基础架构规划提供一个测试环境。通过该仿真软件鲜明直观的图形操作,能帮助学生快速掌握网络的相关理论和提高学生的网络操作技能;而且软件的配置界面与物理设备配置界面完全一致,配置的文档通过TFTP传输到物理设备中,物理设备同样能够正常使用。

2 实验原理

开放最短路径优先(OSPF,Open Shortest Path First),是基于spf算法中的迪克斯加 (Dijkstra)算法来计算最短路径树。OSPF路由协议是一种典型的链路状态(Link-state)路由协议,一般用于同一个路由域内。路由域是指一个自治系统(AS,Autonomous System),它是指一组通过统一的路由策略或路由协议互相交换路由信息的网络。在这个AS中,所有的OSPF路由器都维护一个相同描述这个AS结构的数据库,该数据库中存放的是路由域中相应链路的状态信息,OSPF路由器正是通过这个数据库计算出其OSPF路由表的。OSPF具体工作过程是:首先路由器发送“hello”包给组播地址224.0.0.5,当相连的邻居路由收到这个“hello”包后就会回复,进而他们相互之间建立邻居关系;其次,OSPF会进行链路状态数据库(LSDB)的交换和更新,从而使整个区域中的全部路由器都有一张相同的链路状态表(LSDB);接着基于LSDB再结合Dijkstra算法,计算出来无环的路由信息也就是SPF树,然后路由器根據SPF树选择出最佳路径,最后将这个路径加入其路由表中。

OSPF 协议工作过程图如图1 所示,主要包括四个阶段:寻找邻居、建立邻接关系、链路状态信息传递和计算路由[1]。

3 实验项目设计

3.1 实验目的

通过该实验项目的完成了解OSPF协议的基本工作过程。掌握单区域OSPF的配置方法、多区域OSPF的配置方法以及OSPF的虚链路配置方法。

3.2 案例背景

某集团公司地理范围较大,现希望将不同位置各部门的办公网络互联起来,使他们之间可以互相通信,网络公司根据需求运用OSPF协议进行网络构建。但该集团公司由于业务飞速增长,需要再增加一个网络区域,由于主干区域已经没有接口,只好将该区域连接到主干区域直接的非主干区域上。根据此需求,决定在新增加区域和主干区域共同连接的一个公共区域建立虚链路,解决新增区域和主干区域通信的问题。

3.3 实验拓扑及实验地址规划

在实验拓扑图中共有Area 0、 Area 1、Area 2三个区域,其中Area 0为主干区域,R0和R2为ABR(区域边界路由器);Area 1、Area 2(新增加的网络区域)为普通区域,Area2 未与 Area0 直连。

实验拓扑如图2:

实验地址规划如下表:

3.4 实验内容

本实验项目设计使用5台路由器和3台PC机构建了一个主干区域(Area 0)和两个普通区域(Area1、Area2),通过一系列配置使Area2的PC机能够与Area 0的PC进行相互通信。

3.4.1 路由器接口地址配置,以路由器R1为例,具体配置指令如下:

R1>enable //由普通模式进入特权模式

R1#configure terminal //由特权模式进入全局配置模式

R1(config)#interface s/0/0/0 //进入高速串行口s/0/0配置模式

R1(config-if)# ip address 10.10.1.1 255.255.255.0 //为s/0/0配置IP地址及掩码

R1(config-if)#clock rate 64000 //DCE端配置时钟频率

R1(config-if)#no shutdown //激活配置端口

R1(config-if)#interface s/0/0/1 //进入高速串行口s/0/1配置模式

R1(config-if)# ip address 10.13.1.2 255.255.255.0 //为s/0/1配置IP地址及掩码

R1(config-if)#no shutdown //激活配置端口

R1(config-if)#interface loopback 0 //进入回环端口配置

R1(config-if)# ip address 1.1.1.1 255.255.255.255

// R1的router-id 号设置为1.1.1.1

3.4.2 配置单区域OSPF协议,以路由器R1为例,具体配置指令如下:

R1(config)#route ospf 1 //配置OSPF且进程号为1

R1(config)# network 10.10.1.0 0.0.0.255 area 0

//发布与R2互联的网段属于area0区域

R1(config)# network 10.13.1.0 0.0.0.255 area 0

//发布与R0互联的网段属于area0区域

R1(config)# network 1.1.1.1 0.0.0.0 area0 //OSPF 中发布R1的router-id

3.4.3 配置多区域OSPF协议,以路由器R2为例,具体配置指令如下:

R2(config)#route ospf 1 //配置OSPF且进程号为1

R2(config)# network 10.10.1.0 0.0.0.255 area 0

//发布与R1互联的网段属于area0区域

R2(config)# network 10.11.1.0 0.0.0.255 area 1

//发布与R3互联的网段属于area1区域

R2 (config)# network 2.2.2.2 0.0.0.0 area 0 //OSPF 中发布R2的router-id

3.4.4 配置OSPF 虚链路,具体配置指令如下:

从网络拓扑中,我们可以看到area2区域与area0没有直接连接的物理链路,如果要使area2与area0之间相互通信,我们可以借用公共通道area1进行配置,采用在公共通道区域1建立虚链路的技术方案,解决与主干区域无物理连接区域互相通信的问题。具体配置指令如下:

R2(config)# area 1 virtual-link 3.3.3.3 //在区域一做虚链路

R3(config)# area 1 virtual-link 2.2.2.2 //在区域一做虚链路

3.4.5 实验测试

1) 单区域测试

从R1对R0、R2、PC0分别用ping命令进行测试,结果显示全部ping通,说明单区域配置成功。

2) 多区域测试

从R1对R3属于Area1的端口用ping命令进行测试,结果显示ping通,说明多区域配置成功。

3) 虚链路测试

从图5可看出在未建虚链路之前,主干区域R1路由器无法学习到区域2的路由。

从图6可看出在虚链路建立后,主干区域R1路由器学习到区域2的路由。最终使得PC0和PC1可以互相通讯。如图7:

4 实验总结

由于Packet Tracer仿真软件具有弥补课堂物理设备不足的弊端,可以创建几乎无限数量的网络,鼓励学生实践、发现和故障排除的优势[2],所以本实验项目运用Packet Tracer仿真软件作为实验工具,结合將网络技术点融入实际案例中的教学方式,提高了学生学习网络知识的兴趣和学习的积极性。但是,我们应该清楚地认识到仿真软件再强大毕竟是一个模拟的环境,和真实的设备还存在一定的差距,不能完全替代真实设备。所以,我们只能将仿真软件作为一种教学手段,还需要结合物理网络设备,进行真实网络环境的实践,只有这样才能培养出真正的网络技术人才。

参考文献:

[1] 杨敏.基于Packet Tracer的OSPF仿真实验[J].网络安全技术与应用,2016(2).

[2] 胡元闯.基于Packet Tracer的计算机网络实验教学改革研究[J].当代教育实践与教学研究,2018(4).

作者:沈亦军

第2篇:基于仿真软件对协议数据单元的可视分析

摘要:协议数据单元是计算机网络体系结构和通信协议的重要内容,但对于初学者来说,该部分知识抽象、枯燥、难以理解。为了提高學生学习兴趣和教学效果,通过Packet Tracer仿真软件的模拟方式将通信过程进行动态化、可视化展现。以网络通信中的域名解析为例进行实验设计,可视化呈现了协议数据单元的数据结构和内容,建立了与网络体系结构的对应关系,并做详细讲解。有利于学生对复杂的通信数据和网络协议进行深入理解和学习,同时培养学生实践能力,该方法可以在其他网络协议的教学过程中进行示范和推广。

关键词:Packet Tracer;计算机网络实验;协议数据单元;域名解析;虚拟仿真

Key words:Packet Tracer; computer network experiment; protocol data unit; domain name resolution; virtual simulation

计算机网络体系结构在计算机网络课程教学中占有非常重要的地位,是整体认知计算机网络与通信协议的基础。按照我国高等院校计算机网络教学大纲要求,计算机网络体系结构几乎是必学的章节,一般采用基于国际标准化组织ISO(International Organization for Standardization)推出的计算机网络开放系统互联OSI(Open System Interconnection)的七层参考模型,或是基于工业标准TCP/IP的四层参考模型,或是基于折中的五层参考模型进行讲解[1-2]。然而上述参考模型多以理论研究为基础,概念抽象且复杂,授课过程中教师很难对网络体系结构进行精准、直观地表述,学生亦很难对其进行深入理解与认知[3-4]。在计算机网络体系结构和通信协议的教学过程中,协议数据单元PDU(Protocol Data Unit)作为重点讲解内容。PDU是理解并掌握网络协议、通信原理、网络安全的基础,然而在实际网络通信中PDU是使用二进制表示的,该表示方法复杂且抽象。另外,传统组网实验过程中很难对网络通信中的数据结构进行可视化呈现,也很难动态展现通信过程的逻辑变化,导致教学过程中学生被动接受、强行记忆,未达到真正理解和掌握计算机网络体系结构的教学目的。

为加强对本部分知识点的理解和教学,顾冠群院士[5]等人对计算机网络体系结构的含义进行了剖析,阐述了网络体系结构的重要性,同时也指出计算机网络体系结构尚无严格定义。彭赟[2]等人将OSI七层模型和国内外几种主流的TCP/IP网络体系结构模型进行了对比分析,指出由于国内外教科书不尽相同,不同分层模型的对应关系容易导致计算机网络体系结构概念模糊。刘淑婷[4]提出了利用情境设置(如:以邮政通信为例)的教学方法来理解层次型网络体系结构中几个逻辑性较强的概念,但该方法仅对网络通信过程进行了逻辑上的梳理和设计,实践操作性不强。张晓明[6]等人提出了以CDIO为主要教学理念的计算机网络实践教学体系与能力培养方案,该方案虽强调了学生计算机网络实践能力的培养,但在实际教学过程中仍无法实现网络通信中数据内容的直观、动态呈现。

笔者在讲授本部分内容时,总结了上述方法的优势和不足,提出借助思科公司Packet Tracer网络仿真软件,以网络通信中典型的客户端访问服务器为例,设计相应案例进行教学。重点将网络通信过程中协议数据单元的内容和变化过程进行模拟仿真呈现,并将协议数据单元和网络体系结构建立对应关系,从而将抽象的内容变得直观和具体。通过要求学生使用仿真软件进行实践操作,为网络设计提供了客观、可靠的定量依据[7],激发了学生学习兴趣,简化了教学过程,提升了教学效果。

1 Packet Tracer简介

Packet Tracer是由Cisco(思科)公司发布的一个辅助学习软件,为学习思科网络课程的学者设计、配置、排除网络故障提供了网络模拟环境[8]。学生可以在软件的图形用户界面上直接使用拖拽网络组件的方法建立网络拓扑,该软件具有对计算机网络的仿真、编辑、动画呈现等功能,在模拟模式下可提供协议数据单元在网络通信中的详细处理过程,从而把抽象、复杂的协议技术概念进行直观呈现,方便了学生观察网络实时运行情况,有利于学生对通信数据和网络协议进行学习和理解。

2 教学设计案例

2.1 教学目标

通过Packet Tracer建立一个典型的C/S(客户端/服务器)网络访问模式,以客户端发起一次基于域名访问服务器的HTTP请求为例,通过该软件提供的模拟模式,以图形化用户界面和动画方式对网络通信过程中的协议数据单元进行跟踪、理解和分析。

2.2 网络拓扑结构及设备配置

为达到教学目标,以从客户端访问服务器为例,建立如下图1所示基于C/S模式的网络拓扑图:

其中内部网络部分,由1台个人电脑作为客户端,与1台思科2960接入层交换机、1台思科1841路由器互联;运营商网络部分,由2台服务器与1台思科2960交换机、1台思科1841路由器互联,其中DNS_Server作为域名解析服务器,Http_Server作为Web服务器;内部网络和运营商网络通过思科1841路由器互连。各设备配置如下表1所示:

54.253 不配置 R2_ISP Fa0/0 192.168.254.253 255.255.255.0 不适用 不适用 S0/0/0 10.10.10.6 255.255.255.252 不适用 不适用 ]

为了使本网络拓扑的内部网络和运营商网络能相互通信,需要在内部网络的R1_Central路由器上配置静态路由,配置命令如下:

R1-Central(config)#ip route 192.168.254.0 255.255.255.0 10.10.10.6

同时在运营商网络R2_ISP路由器上配置静态路由,配置命令如下:

R2_ISP(config)#ip route 172.16.0.0 255.255.0.0 10.10.10.5

完成上述配置后,在内部网络的PC_Client上打开命令提示符窗口,通过ping命令测试PC_Client与DNS_Server、PC_Client与Http_Server的互联互通情况,如下图2所示:

通过上图2所示,可以看出在Client上能ping通DNS_Server和Http_Server,从而说明PC_Client与DNS_Server、Http_Server已实现互联互通,为下一步进行客户端基于域名访问服务器确保了网络可达。

在本次实验设计中,将服务器Http_Server作为WEB服务器,提供网页访问服务。因此,需要在服务器Http_Server上开启HTTP服务,并建立WEB页面。进入服务器Http_Server配置界面,在服务(Services)选项卡中,选择HTTP服务,将HTTP服务设置为开启状态(On),并建立三个网页文件:copyrights.html、helloworld.html、index.html。操作方法如下图3所示:

在本次实验设计中,将服务器DNS_Server作为域名解析服务器(DNS),提供域名解析服务。进入服务器DNS_Server配置界面,在服务(Servicer)选项卡中,选择DNS服务,将DNS Services设置为开启状态(On),在DNS资源记录中,增加一条A记录:eagle-server.example.com[192.168.254.254]。如下图4所示:

2.3 在模拟模式中分析协议数据单元

在Packet Tracer中,默认使用的模式是实时模式(Realtime)。在实时模式中,设计的网络就像真实的网络按照配置情况实时响应和运行。为方便本实验观察和分析协议数据单元,需切换到模拟模式(Simulation)。在模拟模式中,数据包在设计的网络中按步进的方式在不同设备间以动画方式顺序运行,方便观察数据包的路径并进行跟踪检查,为教学过程中快速、生动地理解抽象的网络协议提供了支持。在该模式中,Packet Tracer默认捕获网络通信过程中支持的所有事件和协议。在本次实验中,通过设置事件列表过滤器来限制捕获的事件,只捕获DNS协议和HTTP协议。

从客户端Client的桌面打开Web浏览器,在地址栏中输入域名:http://eagle-server.example.com/index.html,点击Enter,然后用 Event List(事件列表)中的 Capture / Forward(捕获/转发)按钮捕获 DNS 与 HTTP 的交互过程。通过模拟模式,可以清晰展现出本次实验经历的4个阶段:

1)客户端(Client)向DNS服务器(DNS_Server)發起DNS查询请求;

2)DNS_Server向Client反馈DNS查询结果(192.168.254.254);

3)Client向WEB服务器(Http_Server)发起HTTP请求;

4)Http_Server向Client反馈Web页面。如下图5所示:

与此同时,随着模拟通信的动画过程,在模拟面板(Simulation Panel)的事件列表(Event List)中,协议数据单元在不同设备中按时间顺序以列表方式依次呈现,如下图6所示:

在第一个阶段: Client向DNS_Server发起DNS查询请求,双击图6所示的对应协议数据单元,查看协议数据单元信息在Client中的网络体系结构和数据格式。如下图7、图8所示:

OSI的七层协议体系结构概念清楚,理论也较完整,但既抽象又复杂。TCP/IP四层结构较为实用,得到了非常广泛的应用。在学习计算机网络的原理时,往往采取折中的办法,即综合OSI和TCP/IP的优点,采用一种只有五层协议的体系结构[1]。笔者和同行教师在教学体会交流中,普遍认为在理论教学过程中,对该部分的讲解取得的效果往往不尽人意,学生在初学的过程中反映难以理解。不过,将图7、图8和OSI体系结构、TCP/IP体系结构相结合并建立对应关系后,对网络体系结构的认识变得形象而具体,如下图9所示:

通过上图9所示,对不同层的协议数据单元分析如下:

1)对于应用层协议数据单元,Client发出一个DNS查询请求(DNS Query),其中查询名(NAME)部分用来表示请求查询的域名,长度不固定,在本实验中是需要访问的服务器域名:eagle-server.example.com;查询类型(TYPE)为:1,表示由域名返回IPv4地址;查询类(CLASS)为:1,表示是Internet数据。该数据封装于DNS头部(DNS Header),其中:会话标识(ID)用于区分不同的请求和响应;接下来的2个字节表示各类标志;然后是8个字节的数量字段:查询问题区域节数量(QDCOUNT)、回答区域数量(ANCOUNT)、授权区域数量(NSCOUNT)、附加区域数量(ARCOUNT),由此形成DNS查询数据报文。

2)对于运输层协议数据单元,在DNS查询数据报文的基础上,封装源端口号:1038、目的端口号:53,由此形成UDP(用户数据包)数据段。

3)对于网际层协议数据单元,通过網络层封装源IP:172.16.1.1、目的IP:192.168.254.250,由此形成DNS查询数据报。

4)对于网络接口层协议数据单元,通过数据链路层封装源MAC:0000.0CEB.43E5,下一跳MAC:000D.BDD0.7601,形成数据帧;最后通过物理层快速以太网网卡发送二进制比特流。

在第二个阶段,DNS_Server收到来自Client的DNS查询请求后,向Client反馈DNS查询结果,双击图6所示的对应协议数据单元,同样可以查看协议数据单元信息在DNS_Server中的网络体系结构和数据格式。为便于理解和学习,与OSI体系结构、TCP/IP体系结构相结合并建立对应关系如下图10所示:

通过上图10所示,对不同层的协议数据单元分析如下:

1)对于应用层协议数据单元,DNS_Server返回一个DNS响应(DNSAnswer),其中地址(ADDRESS)为:192.168.254.254,该地址通过在DNS_Server域名数据库中查询得到;该数据封装于DNS头部(DNS Header),由此形成DNS查询数据报文。

2)对于运输层协议数据单元,在DNS返回的数据报文基础上,封装源端口号:53、目的端口号:1038,由此形成UDP(用户数据包)数据段。

3)对于网际层协议数据单元,通过网络层封装源IP:192.168.254.250、目的IP:172.16.1.1,由此形成DNS查询数据报。

4)对于网络接口层协议数据单元,通过数据链路层封装下一跳MAC:00D0.97A4.1301,源MAC:0001.969C.9277,形成数据帧,最后通过物理层快速以太网网卡发送二进制比特流。

在第三个阶段,Client根据返回的DNS查询结果得知:域名为eagle-server.example.com的服务器对应的IP地址为192.168.254.254。从而发出一个HTTP请求,其协议数据单元中目的IP地址为192.168.254.254,源IP地址为172.16.1.1。协议数据单元在网络体系结构的不同层次中的数据格式和分析方法同前述类似,在此不再赘述。

在第四个阶段,HTTP请求到达Http_Server后,Http_Server根据请求内容,返回响应WEB页面,其协议数据单元中的目的IP地址为172.16.1.1,源IP地址为192.168.254.254。协议数据单元在网络体系结构的不同层次中的数据格式和分析方法同前述类似,在此不再赘述。

以上阐述了DNS协议和HTTP协议的工作原理,并通过Packet Tracer动态跟踪展现了两个协议的完整实现流程。利用软件平台的模拟模式,将网络体系结构中不同层次的协议数据单元内容进行清晰呈现,使学生对DNS协议和HTTP协议,以及网络体系结构有了比较全面的认识和理解。

3 实验效果分析

通过本实验,以C/S模式中基于域名访问服务器为例,把涉及的网络拓扑结构、路由器配置、DNS服务器和HTTP服务器配置、域名解析、WEB访问等知识点进行了有效串接。利用Packet Tracer将上述过程进行了模拟显示,并通过对域名解析过程中的协议数据单元开展分析,将计算机网络体系结构的OSI七层协议、TCP/IP的四层协议、五层协议结构等进行对比学习,使学生对抽象的计算机网络体系结构建立了具体的认知。利用Packet Tracer仿真软件的模拟模式,以动态和过程化的方式展现了协议数据单元的内容和格式,把抽象的协议定义直观有效地进行了呈现,解决了在实际操作过程中无法直观展现协议数据单元的内容和变化过程这一问题。同时,利用Packet Tracer进行操作还培养了学生实践动手能力和探索能力,激发了学习计算机网络的积极性。

4 结语

本文以域名解析协议的实验设计为例,采用Packet Tracer仿真软件进行模拟实现,既方便教师课堂教学,还方便学生在课余时间反复演练和强化理解。该实验具有较强的示范推广效应,还可以在对FTP、SNMP、TELNET、SMTP、POP3等协议的教学中开展类似的实验设计和教学。此外,还可以与网络封包分析软件配合使用,如:Wireshark[9],进一步分析观察协议数据单元的比特流数据形式和特点。

参考文献:

[1] 谢希仁.计算机网络[D].第七版.北京:电子工业出版社,2017.

[2] 彭赟,刘志雄,刘晓莉,孙云莲,査晓明,饶凌平.TCP/IP网络体系结构分层研究[J].中国电力教育,2014(15):38-39+64.

[3] 朱立才,耿珍,黄津津.网络工程专业计算机网络实验教学的设计与实施[J].实验技术与管理,2017,34(5):161-164.

[4] 刘淑婷.基于层次型网络体系结构的教学方法研究[J].教育教学论坛,2012(18):50-51.

[5] 杨鹏,顾冠群.计算机网络的发展现状及网络体系结构涵义分析[J].计算机科学,2007(3):1-5+158.

[6] 张晓明,陈明,杜天苍,向胜军,赵国庆,张世博.计算机网络实践教学体系与能力培养[J].实验室研究与探索,2013,32(10):401-404+411.

[7] 徐庚保,曾莲芝.计算机网络和网络控制系统的仿真研究[J].计算机仿真,2010,27(2):140-144+319.

[8] 袁志坚,王金双,陈融,潘林.基于Packet Tracer的“信息安全”教学实例[J].计算机工程与科学,2014,36(S2):254-258.

[9] 罗青林,徐克付,臧文羽,刘金刚.Wireshark环境下的网络协议解析与验证方法[J].计算机工程与设计,2011,32(3):770-773.

【通联编辑:王力】

作者:高原 符涛 孙毅

第3篇:软件服务外包人才培养

摘 要:分析了软件服务外包人才培养的特点和存在的问题,提出按校企协同人才培养模型培养软件服务外包人才,分析了校企合作类型,强调实践能力培养,提出三线并举的实践能力培养体系和岗位综合实践能力培养措施。

关键词:服务外包;软件工程;应用型教育;实践能力培养;校企合作

1 引言(Introduction)

国际服务外包产业发展势头十分迅猛[1],在国际金融危机和全球经济增速放缓的大背景下,服务外包产业依然逆势增长,显示出巨大的发展潜力。任何产业的竞争说到底都是人才的竞争,对于知识和技术密集型的服务外包产业更是如此。我国的服务外包产业要发展,必须对服务外包专业化人才培养予以充分重视。印度是发展服务外包的发轫国之一,印度软件外包业迅速发展的原因之一就是印度政府十分清楚地认识到了要以教育作为发展软件产业的突破口[2]。

当前,南京正在打造世界软件名城,我校正在创建南京软件科技大学,同时我校也是江苏省地方高校计算机学院培养服务外包人才试点高校之一,为推动计算机软件学科专业的建设,做好软件服务外包人才培养,我校调研学习印度及我国台湾地区的先进经验,深入软件企业生产一线把握岗位人才需求,学习借鉴其他高校的人才培养特色,进行毕业生跟踪调查。在我校多年计算机及软件专业办学实践基础上,对软件服务外包人才培养的培养模式分为实践能力培养、校企合作等,提出一些分析、思考和实践探索,力争通过教学改革和模式创新做好服务外包人才培养工作,为服务外包产业的发展做出贡献[3]。

2 软件服务外包人才培养的特点和存在的问题(The characteristics and the existing problems of software service outsourcing talent training)

服务外包属于知识密集型和技术密集型产业,要求员工不仅要有一定的理论基础,而且具备良好的专业实践技能。服务外包企业需要具有专业背景,掌握外国语言文化,能进入国际前沿,善于开拓市场的高端人才[4]。

软件服务外包人才培养规格具有自身的显著特点,这些特点包括:专业实践技能要求高,岗位综合能力要求强,需求规格变化较快,用人单位业务特征较强等。

高校是我国服务外包人才的主要来源,但高等教育人才培养周期较长,知识更新较慢,学生偏重理论学习,实践能力不足,毕业生知识能力结构与企业用人需求之间差距很大,培养出来的人才难以胜任软件服务外包企业的实际工作岗位能力需求,中国服务外包产业发展存在着人才瓶颈。什么样的人才能够满足软件服务外包产业发展的需要,怎么培养这样的人才,是当前软件服务外包产业发展必须要面对和解决的问题。

3 校企协同人才培养模型(The university-enterprise cooperation talents cultivation coordination model)

高校传统的人才培养过程为:在学生入学前一年左右开始制定人才培养方案。学生入学后按照人才培养方案组织安排四年的教学实施。在这一传统的人才培养过程中,存在两个问题,一是在人才培养规格制定阶段,学校和企业只有松散的浅层次社会联系,学校难以做到制定的人才培养规格真正紧贴企业的岗位人才能力需求,二是学校从开始制定人才培养规格到学生毕业,周期通常是五年,五年中企业的人才能力需求很可能已经发生了很大变化,这将导致学生毕业时所具备的知识能力素质和企业的实际岗位需求相脱节。

由于服务外包人才培养具有需求规格变化较快,用人单位业务特征较强的特征,按照传统的人才培养过程培养出来的服务外包人才很难满足软件服务外包企业的岗位需要,为此,软件服务外包人才培养,可采用校企协同人才培养模型,如图1所示。

在这一模型中,学校和软件服务外包企业通过建立长期紧密的战略合作关系,协同完成软件服务外包人才培养。在人才培养规格制定阶段,学校必须真正把握软件企业的岗位人才能力需求,甚至于可以采用专业班级定制的方式来对接软件企业的个性化人才需求。在人才培养实施阶段,学校必须紧跟软件企业的人才需求规格变化,通过专业方向选择、选修课选择、课程内容更新、企业课程嵌入等方式调整人才培养实施环节;而软件企业也必须要协同和介入学校的服务外包人才培养,参与实验、课程设计、实习、讲座等教学环节,保证学生能力培养与软件企业岗位能力需求的衔接。

4 实践能力培养(Practical ability training)

专业实践技能要求高,岗位综合能力要求强是软件服务外包人才培养的重要特点。CDIO工程教育模式是近年来国际工程教育改革的最新成果。教育部2010年正式启动“卓越工程师教育培养计划”。可应用CDIO工程教育思想,采用卓越工程师培养模式,建立起完善的实践能力培养体系。

为突出专业实践能力培养,我校采用校内校外相结合、课内课外相结合,三线并举的专业实践能力培养体系。三线是指:由课程实验、课程设计构成的校内实践教学环节主线;由实习实践构成的校外实践教学环节主线;由学科竞赛、实践创新项目、科技作品竞赛等构成的课外实践创新能力培养主线。

在课程层面上,我校也非常重视实践能力培养。例如,以软件质量保证与测试课程为例。首先,该课程分为理论教学、实验教学以及配套的课程设计三部分,重视实践教学环节。其次,依托软件工程实践教育中心建设,引进企业级软件质量保证与测试相关软件,包括Logicscope、IBM Rational RFT等,针对企业生产实际培养学生实践能力。第三,引进企业软件质量保证与测试项目案例,作为学生学习样本。第四,组织课程辅助教学软件的开发,提高测试用例设计等环节的实践教学效果。第五,组织软件模拟评审,模拟企业软件质量保证与测试工作实际情境。

5 校企合作(School enterprise cooperation)

CDIO工程教育模式为校企合作人才培养提供了理论基础,“卓越工程师教育培养计划”对校企协同合作提出了更高的要求,在软件技术快速更新,软件服务外包产业快速发展的形势下,校企协同、广泛合作是做好软件服务外包人才培养的可行之路。校企合作按照合作内容可分为专业人才培养合作等七种,详见表1。

6 结论(Conclusion)

服务外包产业要发展,必须对服务外包专业化人才培养予以充分重视。服务外包人才培养规格具有自身的显著特点,高校服务外包人才培养周期长,知识更新较慢,学生实践能力不足,毕业生知识能力结构与企业用人需求之间差距很大,培养出来的人才难以胜任外包企业的实际工作岗位能力需求,中国服务外包产业发展存在人才瓶颈。

学校和软件服务外包企业应通过建立长期紧密的战略合作关系,协同完成软件服务外包人才培养。在校企合作人才培养协同模型中,高校人才培养应紧贴企业的实际人才需求,并在人才培养实施过程中紧跟企业的人才规格变化,让学生毕业时能做到基本符合企业实际工作岗位的能力需求。实践能力培养影响毕业生的就业率、就业质量和他们职业生涯的长远发展,要重视专业和岗位综合这两方面的实践能力培养。高校要对校企合作模式和途径进行探索与创新,从人才培养、科学研究、社会服务等各个方面紧贴软件外包企业、服务软件行业、推动地方软件产业。

参考文献(References)

[1] 杨继军,张如庆,张二震.承接国际服务外包与长三角产业结构升级[J].南京社会科学,2008(05):1-7.

[2] 吴洁.国际服务外包的发展趋势及对策[J].国际经济合作,2007(05):24-27.

[3] 陈小虎.在服务地方经济社会发展中实现跨越发展—关于我校实施“南京战略”的思考[J].金陵科技学院学报(社会科学版),2011(03):1-4.

[4] 顾玲妹.嘉兴服务外包发展研究[J].嘉兴学院学报,2013(02):37-43.

作者简介:

王智钢(1973-),男,硕士,副教授.研究领域:软件工程,数据挖掘研究.

张 燕(1969-),女,博士,教授.研究领域:软件工程.

田祥宏(1971-),男,硕士,副教授.研究领域:软件工程.

李广水(1966-),男,博士,教授.研究领域:数据挖掘.

作者:王智钢 张燕 田祥宏 李广水

第4篇:软件外包服务协议

甲方:西安诺赛软件有限公司(KnowledgeSurf Technologies)乙方:西安袖意无限数码科技有限公司

甲、乙双方为建立西安软件外包行业联盟提供样板,合理利用西安软件外包行业资源,提高行业联盟整体知名度、建立健全信用体系,经双方友好协商、沟通交流后,对手机软件外包服务达成合作共识。

第一条甲方简介

西安诺赛软件有限公司

(Xi’an KnowledgeSurf Technologies Inc.),于2005年末在美国加州硅谷成立总部。经过2年多的快速发展,在美国亚特兰大、新加坡和中国西安都成立了其分支机构。2006年在西安成立的西安诺赛软件有限公司是其核心离岸开发中心,负责为全球客户提供离岸软件外包服务,目前已经直接和多家欧美企业签订了长期的服务外包合同。

公司现有员工200多人,其中拥有硕士和博士学位的占30%,本科以上学位的则超过95%。

根据欧美客户的需求,组建高水准的开发团队,定制符合欧美客户企业文化的工作环境,高效率地建设离岸开发中心

(Offshore Development Center, ODC),保证离岸开发中心为客户提交高质量的软件产品,这是诺赛软件在本地同业中独一无二的核心竞争力。

第二条乙方简介

西安袖意无限数码科技有限公司成立于2007年初,公司专注于移动平台的娱乐内容和应用程序研发(包括手机、PDA、手持式移动设备的游戏、Flash Lite等)。公司核心开发团队拥有丰富的游戏开发经验,曾和日本、台湾、新西兰等多个国家和地区的开发商进行过手机游戏开发合作。在手机游戏以及手机平台应用软件有大量开发经验,能够胜任甲方承接的外包项目开发工作。

乙方开发常用平台包含J2ME和FLASH LITE。J2ME平台应用设计开发,包括游戏,应用软件,以及移动平台增值业务内容研发。Flash Lite平台应用设计开发,包括游戏,屏保,动画制作等。

我们拥有严格的项目品质管理体系,包括进度控制,测试方案,Bug分析,交付产品后的维护,项目变更对应等。

第三条合作宗旨

以手机游戏软件为核心业务,为欧美及亚太(澳大利亚、东盟)地区的海外客户提供软件外包服务。

第四条 双方义务

1.甲方负责外包项目的获取,包括业务拓展及客户管理、项目管理等工作;乙方负责具体项目实施,包括项目执行控制及质量管理等工作。

2.甲方提供项目整体需求并负责客户沟通,其中项目需求文档(包含但不限于数据库定义、流程图等)须经双方认可、签字。乙方负责按照需求中的要求进行设计、制作、编码、测试等工作。

3.乙方承诺在未经甲方同意的情况下,不通过任何途径同甲方客户联系,客户唯一联系人为甲方。

4.项目产品的知识产权归属,遵循甲方与客户之间签订的协议条款。

5.甲方委托乙方开发的产品,知识产权归属甲方。

第五条 双方责任

A、甲方:

1.业务拓展。

2.客户管理。

3.项目及项目需求的获取。

4.部分技术及文字(文档翻译等)支持。

5.提出明确的质量要求和衡量标准。

6.在项目有变动时及时通知乙方,并协商项目变更方案。

7.和乙方保持联系,协商解决项目中出现的问题。

8.甲方承诺不开发乙方已有的客户资源。

9.甲方承诺不恶意录用乙方员工。

B、乙方:

1.提供售前支持和需求分析。

2.根据甲方的业务开发情况进行项目开发团队的组建和完善。

3.根据甲方提供的项目需求文档,认真理解用户需求,并且贯彻到项目的设计和实施当中。

4.制定开发计划,并提交甲方确认。

5.完成设计、制作、编码和测试工作。

6.接受甲方的监督,并向甲方及时汇报项目中遇到的问题及其解决方案。

7.和甲方保持联系,协商解决项目中出现的问题。

8.项目维护阶段继续承担测试和修改任务。

第六条 保密责任

1.在项目合作过程中,甲方交给乙方的资料(依据项目合同条款)未经甲方的书面同意,乙方不得将甲方所交付的资料转让给第三方,否则甲方有权终止合作,终止支付乙方相关费用,

并向乙方追索所受到的经济损失。

2.在项目合作过程中,乙方所呈交的项目成果(依据项目合同条款),在甲方未结清支付乙方的费用前,均属乙方的产权及商业机密,未经乙方的书面同意,甲方不得将乙方所交付的资料转让给除客户之外的任何第三方,否则乙方有权终止本合同,并向甲方追索所受到的经济损失。

第七条 法律的适用及争议解决方式

1.双方合作适用中华人民共和国法律法规;因双方合作引起的任何争议,应通过协商解决,但若30天之内双方仍不能达成书面协议的,任何一方可将争议提交西安市仲裁委员会,按照提交仲裁时该委员会有效的仲裁规则,在西安市进行仲裁。仲裁裁决是终局的,对双方均有约束力。

2.具体项目的合作事宜以具体项目条款为准。

第八条 其他事宜

1.本协议如有未尽事宜,应由甲、乙双方集体讨论补充或修改。补充和修改的内容与本协议具有同等效力。

2.本协议一式贰份正本,甲、乙方各执壹份。本合同由双方授权代表签字,盖章后生效。

甲方:西安诺赛软件有限公司

(KnowledgeSurf Technologies)

授权代表:

日期:

乙方:西安袖意无限数码科技有限公司

授权代表:

日期:

第5篇:软件开发外包协议

甲方: ******软件技术有限公司 组织机构代码:

负责人:**** 地址:************************************* 电话:*********** 邮编:4******** 乙方: **** 身份证号码:

地址: ******************************************************* 电话: 1********* 邮编: 4******** 甲、乙双方根据《中华人民共和国劳动法》、《中华人民共和国劳动合同法》及相关法律法规,按照平等自愿、协商一致原则,就甲方将湖北省内软件开发项目外包给乙方事宜自愿签订本协议,并共同遵守本协议所列条款。

第一章 合作事项

第一条 乙方根据甲方的需要和要求,向甲方派遣软件开发团队从事有关工作。甲、乙双方建立劳务外包合同关系,乙方与派遣到甲方的软件开发团队签订劳动合同,建立合法劳动关系。

第二条 本协议中甲方称为发包单位,乙方称为承包单位,乙方为完成承包任务派驻甲方的劳动者称为软件开发团队。

第二章 外包内容

第三条 甲方将湖北省内涉及的软件开发等项目外包给乙方,乙方提供上门服务,具体的服务内容、软件开发团队数量、服务方式、服务标准、服务质量及其他要求详见乙方与甲方签订的《软件开发外包服务方案》。

第三章 软件开发团队管理

1 第四条 软件开发团队的基本条件 1.年龄:女:18-35岁,男:18-40岁; 2.学历:大专以上;

3.持有证书:毕业证、其他专业认证; 4.具备所从事软件开发的基本知识和业务技能; 5.遵守职业道德,具有较强的工作责任心; 6.无重大疾病或其他不适应工作要求的疾病; 7.无赌博、吸毒、盗窃和其他违法行为;

第五条 乙方应在软件开发团队进驻甲方前两日内将软件开发团队的姓名、性别、年龄、学历、职业技术证书、身份证号码、家庭住址、联系方式等有关信息提供给甲方。甲方有权对不符合基本条件的软件开发团队进行退回。服务期间软件开发团队或软件开发团队的相关信息变动时乙方应及时向甲方提供相关信息。

第六条 甲方使用的软件开发团队属于乙方聘用的劳动者。

第四章 软件开发团队的退回

第七条 乙方提供的软件开发团队有下列情形之一,甲方有权要求乙方立即更换;

1.乙方提供的简历、学历、身份证、资格证、健康状况等资料不真实的;

2.未按照双方确认的服务方案履行服务的; 3.有赌博、吸毒、偷盗及其它违法行为的; 4.严重失职,营私舞弊,对甲方利益造成重大损失的; 5.因受伤、患病或其他原因不适应工作需要的;

2 6.严重违反职业操守的;

7.工作能力差,难以胜任岗位工作的; 8.被依法追究刑事责任的。

第八条 在派遣期内主动要求停止为甲方提供劳动服务的,乙方同时派员接替工作。

第九条 甲方因机构调整或用工政策发生变化需要裁员的,甲方有权将软件开发团队退回乙方。

第十条 劳务外包协议订立时甲方所依据的客观情况发生重大变化,致使外包协议无法履行,经甲乙双方协商不能就变更派遣协议达成一致的,甲方有权将软件开发团队退回乙方。

第五章 派驻岗位和协议期限

第十一条 乙方向甲方派驻平均工作日不少于4人的软件开发团队,在甲方指定项目上从事软件开发、系统维护岗位工作。

第十二条 本协议有效期限为壹年, 从2014年2月1 日生效,至2015年2月1日终止。

第六章 外包费用及支付方式

第十三条 劳务外包费用及支付方式: 经双方协商约定:

1.劳务外包费用:采取定额包干,即每季度人民币100000.00元(大写)壹拾万元整。费用预算附后。甲方不再承担其他费用和任何责任。(开发用电脑设备等均由乙方负责)

2.支付方式:按转账形式支付;

3.支付时间:次季度10日前支付当月劳务包干费。

第七章 工伤及病假处理

3 第十四条 乙方提供的软件开发团队服务期间患病、受伤、死亡均应由乙方按国家法律规定进行处理,甲方不承担任何责任及费用。

第十五条 乙方提供的软件开发团队因患病、受伤等原因请假超过三日的,甲方可提出更换软件开发团队或要求乙方派人顶班。

第八章 双方的权利和义务

第十六条 甲方的权利

1.甲方有权对软件开发团队服务岗位管理和安排提出意见,有权对软件开发团队在服务态度、服务质量等方面提出意见;

若乙方提供服务未能达到甲乙双方签订的《劳务外包服务补充协议》和《劳务外包服务方案》的服务要求,甲方有权按照《外包服务补充协议》的约定标准扣除外包费用并要求乙方进行整改,乙方应在五日内整改,并及时书面通报整改情况,若乙方未在规定时间内进行整改或拒绝整改的,甲方有权解除外包协议并由乙方承担违约责任;

2.甲方有权对软件开发团队的服务职责提出调整意见,可对服务岗位提出调整意见;

3.如乙方或乙方软件开发团队违约,造成甲方经济损失,甲方有向乙方和软件开发团队追偿的权利。

第十七条 甲方的义务

1.甲方有义务按时、足额向乙方支付劳务外包费用。 2.甲方对劳务外包费用有保密的义务,不得向第三方透露。 第十八条 乙方的权利

1.乙方有权利向甲方收取外包服务费用;

2.如甲方违背相关法律,法规的规定和双方的约定侵犯软件开发团队

4 的权利时,有为软件开发团队主张合法权益的权利。

第十九条 乙方的义务

1.乙方有义务对软件开发团队进行必要的安全生产、规章制度教育和日常思想政治教育,负责工作期间安全;

2.乙方有义务根据营业执照的规定从事合法经营; 3.乙方有义务与软件开发团队依法签订劳动合同; 4.乙方收取外包服务费用时有义务出具正式税收发票;

5.乙方有义务按国家、重庆市政府规定为软件开发团队完善各种手续; 6.乙方有义务教育软件开发团队遵守国家法律法规、甲方依法制定的各项规定;

7.软件开发团队与甲方发生争议纠纷,乙方有调解的义务;

8.软件开发团队在甲方服务期间造成甲方经济损失,软件开发团队不能完全赔偿或拒不赔偿的,乙方应向软件开发团队追偿甲方经济损失和处理相关善后工作,并将处理结果书面告知甲方。软件开发团队无力赔付或无力全额赔付的,乙方有代为赔付的义务;

9.如乙方软件开发团队在甲方服务期间发生工伤事故,乙方有义务按《工伤保险条例》的规定进行处理,甲方不承担任何责任和费用; 10.乙方有义务向派驻的软件开发团队告知本劳务外包协议中的相关内容;

11.乙方因业务需要,搬迁至新办公地址时,须提前15天通知甲方,以便业务联系;

12.乙方因故被撤销时,须提前15天通知甲方,以便及时办理终止本合同的手续。

5 第九章 协议的解除、变更和终止

第二十条 甲方或乙方提前解除本协议,应提前30天书面通知对方,经双方协商同意后,方可解除本协议。

第二十一条 有以下情形之一的,甲乙双方应变更本协议,并及时办理变更手续: 1.双方协商一致的; 2.订立本协议所依据的客观情况发生重大变化,导致本协议无法继续执行的; 3.甲乙双方中有一方的情况发生较大变化,影响本协议执行的。 第二十二条 有下列情形之一,本协议终止: 1.双方协商一致; 2.合同期满任何一方无续签意愿。

第十章 违约责任

第二十三条 若甲方或乙方在协议期内擅自终止协议,应向对方负全部违约责任,并支付给对方违约金5000元。

第二十四条 若乙方未达到甲方管理服务要求中所约定的劳务数量和质量,对甲方造成了损失,乙方则须按实际损失对甲方进行赔偿。

第十一章 附则

第二十五条 本协议未尽事宜,双方协商解决。国家法律法规有明确规定的,以国家法律法规为准。国家法律法规没有明确规定的,双方签订补充协议。

第二十六条 若双方协商不成,可以向人民法院提起诉讼。

第二十七条 甲乙双方签订的《劳务外包服务补充协议》及《劳务外

6 包服务方案》是本协议不可分割的组成部分,与本协议具有同等法律效力。

第二十八条 本协议一式两份,双方各执一份,各份具有同等法律效力;本协议自双方代表签字、加盖单位公章后生效。

甲方: 乙方:

负责人(或委托代理人): 法定代表人(或委托代理人):

年 月

年 月

日 日

第6篇:软件服务外包

2011年,我国软件与信息服务外包产业快速发展,产业规模达到3835亿元人民币,同比增长39.5%,高出2010年4.3个百分点;企业承接服务外包合同执行金额323.9亿美元,同比增长63.6%,其中承接国际离岸服务外包合同金额238.3亿美元,同比增长65%,比上年提高了22%;2011年我国软件与信息服务外包国际业务中,31.7%的外包业务来自日本,28.3%的业务来自美国;2011年,我国承接的服务外包占了全球的23.2%,比上年提高了6.3%。

提要:中国承接国际软件服务外包业务正迅速增长,已成为全球第二大离岸外包目的地国家。在业务规模总量不断突破提升的同时,软件外包业务类型和国别开始呈现出多元化的趋势,人才队伍建设更有成效,企业竞争力大幅提高,软件外包在转型中深耕大市场。

企业为了专注核心竞争力业务和降低软件项目成本,将软件项目中的全部或部分工作发包给提供外包服务的企业,由此带来了巨大的软件外包市场。从最初的呼叫中心到如今的云服务,软件外包自身也在不断转型并走向高端,从而孕育出更大的市场。

以软件服务外包业务闻名的东软集团董事长兼CEO刘积仁却认为,软件外包是以人力资源获得国际市场,多年来这种模式在中国软件行业迅速发展,主要是靠旺盛的本土需求和本土便宜的工程师资源。但随着中国人力资源价格上涨,这种模式将在中国“进入死胡同”。

因此,以东软为代表的软件服务外包企业开始谋求转型。对此,国际市场调研公司IDC大中华区总裁郭昕表示,软件服务外包需要新的形态,比如云计算、物联网等都提供了新的外包平台。软件服务外包不应该只盯住企业的IT部门或数据处理需求,要从被动迎接企业数据的处理需求,转向促进企业不断从实体生产变成信息生产。在这个过程中,软件服务外包企业,要起到咨询和顾问的作用。

政策解读:“十二五”期间转变经济发展方式、调整产业结构、发展战略性新兴产业等成为重点发展方向,将释放巨大的软件与信息服务外包需求,内需市场仍将成为我国软件外包与信息技术服务产业的主要市场。

与此同时,“整个软件与信息服务外包正在逐渐向高端发展,一个表现趋势是由操作层的外包转向职能型的外包。目前,信息技术外包的业务基础发展规模较大,业务流程外包的发展潜力较大,基于信息技术的业务流程的外包,也发展迅速。”中国软件与信息服务外包产业联盟副理事长高松涛表示。

第7篇:软件项目外包合同

甲方:_________________ (个人)

身份证号码:______________________ 乙方:_________________ (个人)

身份证号码:______________________ _____________(个人) (以下称乙方)受________________________(以下称甲方)|委托进行________________________的开发工作。双方本着相互合作、互惠互利的原则,共同协商达成如下协议:

一、

项目名称:

二、

内容及要求:

1.

开发内容:根据甲方的要求,乙方在规定时间内完成“______________”的开发,该系统的设计要求如下: l

主要功能:

根据需求设计进行项目的开发以及测试的工作。具体工作由甲方分配。 l

系统运行环境包括: (1) (2)

2.

开发时间:

(1)

启动日期:甲乙双方签字盖章之日即为项目正式启动日期; (2)

完成期限:自项目正式启动,在__工作日内完成。

三、

双方权利义务: 1.

甲方:

(1)

甲方有权利督促乙方按规定时间完成项目开发,有增加或修改内容双方需另行协商解决;在不影响进程的情况下,对于甲方的小规模变动的需求,乙方必须满足;若出现大幅度的变更,则甲乙双方商议延长开发周期。 (2)

甲方完全拥有________________________系统的所有权,包括使用权、著作权等所有权利; (3)

甲方应当按照协议,按时向乙方支付开发费用; (4)

甲方有责任对本协议的内容进行保密;

(5)

甲方有责任对乙方的软件开发技术进行保密,在未经乙方书面许可的情况下,不得向第三方泄露。 (6)

甲方有责任保密乙方的个人信息,不得向第三方泄露。 2.

乙方:

(1)

乙方有责任按甲方的要求在规定时间内完成项目开发,完成需要开发的内容;

(2)

在项目开发完毕之后,在乙方对甲方提供的维护服务期之内,由于甲方设计变更而导致______________________的变更,若变更范围在本合同所规定的功能范围之内,乙方有义务免费为甲方修改变更内容; (3)

乙方有责任对本协议的内容进行保密;

(4)

乙方有责任对与甲方项目的接口规范进行保密,在未经甲方书面许可的情况下,不得向第三方泄露;

(5)

乙方有责任在项目验收合格完成之后,向甲方提供__个月的免费维护服务,此维护仅指软件bug的修改以及小范围的功能性改动;

(6)

乙方有责任自行准备软件开发所需的硬件设备、开发资料及语音sdk.

四、

费用和支付方式:

1.

费用:此项目费用合计为________元人民币 2.

支付方式: (1)

第一阶段:

在合同签订之后的__个工作日内,支付乙方_______元人民币。 (2)

第二阶段:

在甲方整体项目开发完毕后__个工作日内完成测试验收,并向乙方提供验收合格报告。同时,乙方将软件设计相关文档交付给甲方,甲方在__个工作日内支付乙方______元人民币。 (3)

第三阶段:

在项目开发完毕6个月后的__个工作日,甲方向乙方支付余款_____元人民币。 3. 违约责任:

(1)

甲方有责任按期支付乙方费用,如因甲方自身原因,未能按时交付,则每延期一天,甲方将额外支付乙方总费用的0.5%作为补偿;

(2)

乙方有责任按期向交付甲方源代码和设计文档,实现项目中的所有功能,如因乙方自身原因,未能按时交付,则每延期一天,甲方将扣除乙方总费用的0.5%作为补偿。 如确因甲方原因,造成乙方未能按时交付,则乙方不承担由此造成的甲方的损失。

五、

适用法律:

本协议按中华人民共和国法律解释。

六、

仲裁

对在本协议履行过程中出现的争议,双方本着友好协商的原则予以解决,如协商不能解决时,合同的任何一方可将争议提交本地仲裁委员会,并按该委员会的仲裁规则进行仲裁。仲裁决定对双方都有约束力。争议进行仲裁期间,除争议事项外,甲乙双方应继续履行各自本合同中规定的义务和行使权利。

七、

甲乙双方指定联系人及联系方式 甲方: 联系人: 联系电话:乙方: 联系人: 联系电话:

若甲乙双方变更联系人,需要做出书面通知以告知对方。

八、

其它:

本合同壹式贰份,双方各执壹份,签字盖章有效。 甲方:

代表签字(盖章):

日期:2007年____月____日乙方: 代表签字(盖章): 日期:2007年____月____日

第8篇:软件项目外包合同

掌中宝软件项目外包合同

软件项目外包合同

合 同 号: 合同名称:

甲方:

第一条总则

1) 甲方选择乙方为其开发软件系统,乙方将在甲方规定的时间内,根据甲方要求分段为甲方开发软件系统。 2) 甲、乙双方经友好协商,根据《中华人民共和国合同法》等有关法规,就乙方承担甲方

信息系统开发项目事宜,达成以下协议条款。本合同为第阶段系统开发的合同书。 3) 本合同中所用术语的定义如下:

服务 资料 规范 任务

由乙方提供的项目管理、需求分析、软件开发、测试,以及咨询、计划、实施、培训、安装、调试、维护、升级等服务。 由乙方向甲方提供的系统说明文件、使用手册等。

信息系统在功能、操作、环境及性能等方面要求的周密而完整的说明。 为完成“合同范围”所述服务而进行的相关活动。 地址:邮编:510000 联系人:

电话:(86-20)87123456 传真:(86-20)87123456

乙方: (公司名称)

地址: 邮编: 联系人: 电话: 传真: 开户银行: 帐号:

第二条合同范围

乙方按照《用户需求书》的要求,向甲方提供在《工作说明书》中所列明的服务。 第三条价格及付款方式

1) 合同总金额为RMB¥万元,计人民币圆整,作为系统的开发费用。 2) 甲方分期向乙方支付以下款项:

(1) 本合同签订后日内,甲方向乙方支付合同金额的,计人民币

圆整;

第 1 页

(2) 软件需求开发说明书确认后%,

计人民币圆整;

(3) 软件按合同规定的标准验收合格之后日内,甲方向乙方支付合同金额的,

计人民币圆整;

(4) 剩余合同金额的,计人民币作为软件质量保证金,于软件验收

合格之后日内支付。

(5) 甲方向乙方支付的费用,除另有规定外,所有费用的支付币种为人民币(¥),由甲方按

本合同规定的付款方式以电汇或支票划入乙方指定的开户银行帐户中。

(6) 双方同意各自分别支付因执行本合同而发生的有关税费。

第四条工作环境

1) 为了实施附件《工作说明书》中确定的工作任务,甲方同意乙方人员遵照甲方的管理规

定进出指定用户的工作场所。

2) 甲方按照附件《工作说明书》中应向乙方提供的物品所确定的日期和地点提供相应的物

品。乙方在实施工作计划中和结束工作任务时,应保证物品的状态与接收时一致(正常

耗损除外),并在工作结束时将这些物品归还甲方。

3) 乙方提供的任何服务要求使用甲方所提供的硬件、软件和其它物品,甲方应保证:拥有

必要的许可、证明或其它文件。确保在本合同实施过程中和乙方在提供《工作说明书》

中认定的服务时,有关物品可以被移动、使用、复制、修改、翻译、分发和(或)与其他

物品组合,而不会侵犯第三方的权益。

第五条变更

1) 任何一方要求对合同内容进行变更时,所有的变更要求都必须以书面形式提交并经双方

签字同意。

2) 对合同内容的任何变更都可能导致对预定计划、可交付资料或费用的变更。根据变更要

求的范围和复杂程度,乙方应对实现变更要求的工作而相应增加或减少收取费用,并将

预计发生费用以书面形式通知甲方,待甲方确认后执行。

第六条知识产权约定

1) 乙方向甲方提供的源代码的约定见《工作说明书》。

2) 除非另有规定,本合同中乙方向甲方售出的产品(包括源码、程序、文件、文档资料),

所有权和版权属乙方。未经乙方许可,甲方不得公布文件、源码,不得复制、传播、反

编译、出售、出租或者许可他人使用其相关的程序、文件、源码和反编译等。

3) 乙方保证所售出的产品享有合法的权利,没有侵犯任何第三方的权利。

4) 甲方只能按乙方的规定享有相关产品的使用、升级、开发、转让等权利。如果甲方违反

乙方的规定和国家法律规定,应承担相关的法律责任。

第七条保密

1) 双方不得向第三者泄露本协议的任何内容。

2) 双方按本合同规定相互提供和提交的全部文件资料,凡涉及需要保密的,以预先说明的

有关条款为据。并且任何一方在没有经过另一方书面同意的情况下,不能将另一方的保密资料(如技术资料、用户信息)透露给第三者。

第八条合同的解除

1) 任意一方欲提前解除本合同,应提前通知对方,经双方协商签字同意后方可解除。甲方

要求解除合同,无权要求乙方返还甲方向乙方已支付的费用,并应对乙方遭受的损失承担赔偿责任;乙方要求解除合同,应返还甲方已支付的费用,并赔偿由此引起甲方的损失。

2) 订立本合同所依据的客观情况发生重大变化,致使本合同无法履行的,经双方协商同意,

可以变更本合同相关内容或者终止合同的履行。

第九条违约责任

1) 双方在执行本协议过程中,任何一方违反本协议之约定,均为违约。违约方除向守约方

赔偿外,还须承担另一方为取得此等赔偿而支出的所有费用,包括但不限于仲裁费、诉讼费、律师费、差旅费等。

2) 任一方未能如期履约时,应每天按未能履约部分的0.05%向对方支付违约金。但支付违

约金并不免除违约方的其他合同义务。

3)如果任何一方没有实现本合同约定而受到本合同对方索赔时,应分清具体责任部分,确

认该部分的责任方。对于利润损失等其他直接或间接损失(包括商务交易中的双方已告知有发生这方面损失的可能性),由各自承担,相互不承担责任。

第十条不可抗力

1) 双方因不可抗力的影响不能履行合同,履行合同的时间相应推迟,推迟时间与不可抗力

持续时间相同,合同价格不因此而改变。

2) 不可抗力发生后,双方要立即通知对方,并采取必要措施密切配合,以减少影响。

3) 不可抗力是指**、台风、地震、水灾等以及双方同意的不可预见的情况。

第十一条通知方式

任何为执行本协议而发出的通知(包括但不限于声明、请求、要求、通知和备忘录等)均应以书面形式作出。双方均负有签收对方发出的通知的义务。如一方拒绝签收,他方仅须提供能够证明其已将有关通知按本协议所列地址交付邮政部门的证据,即可视为有关通知已于交付邮政部门后的第二天送达对方。如一方在收到通知后 三 个工作日内未对对方在通知中陈述的事实或要求提出异议,则应视为该方已承认或接受此等事实或要求。任何一方如变更营业地址,应在此等变更作出后 三 个工作日内通知对方。

第十二条争议的解决

有关本合同的任何争议,双方应本着相互信任、以诚相见的原则,共同协商解决。若经协商不能达成协议时, 可向广州市仲裁委员会提交仲裁。

第十三条合同效力

1) 本合同壹式肆份,甲乙双方各执贰份,自双方签字盖章之日起生效。

2) 本合同受《中华人民共和国合同法》保护,未尽事宜,均按《中华人民共和国合同法》

规定执行。

3) 本合同未尽事宜,双方可另行签订补充协议,补充协议与本合同具有同等效力。 第十四条合同附件

本合同附件是合同不可分割部分,一经签署后具有同等法律效力。附件包括:

附件1 《用户需求书》

附件2 《工作说明书》

甲方:

签约代表:

职务:

签字:

乙方:签约代表:职务: 签字:签约日期:

签约日期:

第9篇:软件测试外包公司面试题

1、试述软件的概念和特点?软件复用的含义?构件包括哪些? a)软件的概念:

软件是程序、数据结构和相关文档的集合,用于实现所需要的逻辑方法、过程或控制。软件是把知识与技术紧密结合的智力成果,是在研制、开发中被创造出来的一种信息产品。

b)软件的特点:

①抽象性软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。 ②不会磨损在软件的运行和使用期间,没有硬件那样的机械磨损、老化问题,但软件 维护比硬件维护要负责的多。

③软件开发工作最大、开发效率低、成本高,但复制容易、成本极低。 ④对计算机系统的依赖性

⑤软件具有无形性,可以多次使用,但商业寿命较短。 c)软件复用(SoftWare Reuse):

软件复用是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费,提高软件生产力和质量的一种重要技术。

d)构件:

构件是系统中实际存在的可更换部分,它实现特定的功能,符合一套接口标准并实现一组接口。构件代表系统中的一部分物理实施,包括软件代码(源代码、二进制代码或可执行代码)或其等价物(如脚本或命令文件)。

2、瀑布模型和螺旋模型的主要区别是什么?

瀑布模型强调的保证软件的质量,忽略人力,时间,资源等成本因素,以质量为第一目标,每次需求发生变更都要从头再来,适合于一些大型稳定的项目。

螺旋模型是一种增量迭代开发的模型,每一次循环都是一次版本的升级,可提高软件的适应能力。比较适合于前期需求不稳定,后期需求新增变更较多的项目。

瀑布模型是基于质量的, 是由文档驱动的。螺旋模型是风险驱动的,更需要经验丰富的风险评估知识和水平。

3、软件生存周期及其模型是什么?

a)软件生命周期是:计划-需求分析-软件设计-程序编码-软件测试-运行维护

b)常用的模型有:瀑布模型,螺旋模型,IPD流程,RUP流程

4、什么是软件测试?软件测试的目的与原则?

a)软件测试是在规定的条件下对程序进行操作,以发现错误,对软件质量进行评估

即软件测试是为了发现错误而执行程序的过程。

b)软件测试的目的是找出软件产品中的错误,是软件尽可能的符合用户的要求。当然 软件测试是不可能找出全部错误的。

软件测试的原则: 测试显示缺陷的存在(但不能证明系统不存在缺陷) 穷尽测试是不可能的 测试尽早介入

缺陷集群性(80-20原则) 杀虫剂悖论

测试活动依赖于测试背景 不存在缺陷的谬论

5、净室软件工程的策略是什么?

a)增量计划。开发一个采用增量策略的项目计划,建立每个增量的功能、它的项目大小、以及净室开发进度表。必须特别小心以保证通过认证的增量将被定时集成。

b)需求收集。使用类似于在第11 章引入的技术,为每个增量开发一个客户级需求的更详细的描述。

c)盒结构规约。使用一个运用盒结构的规约方法[HEV93]来描述功能规约。遵从操作分析原则,盒结构“在每一个精化级别上分离和分开行为、数据及过程的创造性定义”。

d)形式化设计。使用盒结构方法,净室设计是规约的自然的无缝的扩展。虽然,在两个活动间可进行清楚的区分,但是,规约(称为“黑盒”)是被递进地求精(在一个增量内)以成为类似于体系结构的和过程的设计(分别称为“状态盒”和“清晰盒”)。

e)正确性验证。净室小组对设计及代码进行一系列严格的正确性验证活动。验证从最高层次的盒结构(规约)开始,然后移向设计细节和代码。正确性验证的第一层次通过应用一组“正确性问题”[LIN88]来进行,如果这没有证明规约是正确的,则使用更形式化的(数过学的)验证方法。

f)代码生成、检查和验证。以某种专门语言表示的盒结构规约被转换为合适的程序设计语言。然后,使用标准的走查或检查技术来保证代码和盒结构的语义相符性,以及代码的语法正确性。然后,对源代码进行正确性验证。

g)统计性测试计划。分析软件的项目级使用情况,计划和设计一组执行用途的“概率分布”的测试用例。如图25-1 所示,这个净室活动是和规约、验证及代码生成并行进行的。

h)统计性使用测试。记住,对计算机软件进行彻底测试是不可能的,因此,总需要设计有限数量的测试用例。统计性使用技术[POO88]执行一系列由特定对象的所有用户的所有可能的程序执行的统计样本(上面提到的概率分布)所导出的测试。认证。一旦完成验证、检查和使用测试(并且所有错误被修正),则开始进行增量集成前的认证工作。

6、软件配置管理的作用 软件配置包括什么?

a)软件配置管理作为软件开发过程的必要环节和软件开发管理的基础,贯穿整个软件生命周期,同时对软件开发过程的宏观管理即项目管理也有重要的支持作用。一个软件开发组织真正有效的实施软件配置管理,将会使软件开发过程有更好的可预测性,使系统具有可重复性,大大提高软件组织的竞争力。

b)软件配置包括如下内容:

配置项识别

工作空间管理 版本控制 变更控制 状态报告 配置审计

7、简述需求分析的过程和意义?

1、明确需求以及测试范围

了解该需求是为了解决用户的什么问题 功能性需求:产品必须有的功能

非功能性需求:是否美观,用户体验,稳定性,易用性等

最容易忽略的一点:明确的需求背后所隐藏的需求(例如登录,明确的需求是,正确输入用户名,密码,才能登录。隐性需求:用户名字符类型,长度,是否可为空;密码字符类型,长度等) 将问题在需求阶段暴露的成本最小

2、画业务流程图(流程图) 根据需求中规定的业务流程 各业务流程分支的确定

由于业务原因规定不可使用的业务流程

3、功能点整理(思维导图)

业务功能:需求中所定义的实际业务直接相关的功能

数据约束:主要是用于控制在执行功能时,数据的显示范围、数据之间的关系等。

易用性需求:便于功能操作使用的一些细节,比如快捷键就是典型的易用性需求。

编辑约束:在功能执行时,对输入数据项目的一些约束性条件,比如只能输入数字。

权限需求:不同的权限所能操作的功能点的不同

4、提取测试点(测试需求文档)

根据整理的思维导图,去提取每一个功能点中的细节需求,例如新增员工,在思维导图中,最小的颗粒度就到新增员工了,但是新增员工这个功能仍然有很多的需求点,员工姓名唯一性判定,手机号码是否必填等,这些更细的需求点组合起来就形成了测试需求文档

5、确定测试范围

需求的确定,并不代表测试范围就是该需求的范围,很有可能一个需求分多个软件版本来实现,最后确定哪些需求是需要测试的。 明确哪些测试目标优先级高,哪些目标优先级低 要完成哪些相应的测试任务才能确保目标的实现

总结: 需求分析的越详细,对业务的理解程度就越高,对设计测试用例的帮助就越大。测试的过程中就更有目的性。“磨刀不误砍柴工”,需求分析花的时间越多,之后测试的时间就越少。因为测试其实已经从需求阶段开始了。

8、什么是数据的对立性?有几个层次?

数据独立性是指:应用程序和数据库的数据结构之间相互独立,不受影响。分为物理独立性和逻辑独立性两个层次。

物理数据独立性:如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相应的修改,使概念模式尽可能保持不变。也就是对内模式的修改尽量不影响概念模式。

逻辑数据独立性:如果数据库的概念模式要进行修改,如增加记录类型或增加数据项,那么外模式/模式映象也要进行相应的修改,使外模式尽可能保持不变。也就是概念模式的修改尽量不影响外模式和应用程序。

9、网状、层次数据模型与关系数据模型的最大的区别是什么?

网状、层次数据模型与关系数据模型的最大区别在于表示和实现实体之间的联系的方法:网状、层次数据模型是通过指针链,而关系数据模型是使用二维表。

10、dbms读取一条记录时发生哪些事件?

用户程序A向DBMS发出读一条记录的指令,这时用户程序要给出外部文件名和记录的关键字值

DBCS分析所接到的指令,访问对应的外部模式

DBCS完成外部模式到概念模式的转换,决定访问哪个(些)概念文件 接着由DBSS完成概念模式到存储模式的转换,并决定访问哪个(些)存储文件

DBSS调用存取方法,通过操作系统将读取的记录送到系统缓冲区 用户程序从系统缓冲区得到所需记录和DBMS返回的状态信息 用户程序在工作区中使用所得到的记录

11、什么是软件质量 软件包是什么?

a)概括地说,软件质量就是“软件与明确地和隐含地定义的需求相一致的程度”。具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。

b)软件包(SoftWare Package)是指具有特定的功能,用来完成特定任务的一个程序或一组程序。软件包由一个基本配置和若干可选部件构成,既可以是源代码形式,也可以是目标码形式。用户手册和指南等文档是软件包的重要组成部分。

12、软件产品质量特性是什么? 确保软件质量优良程度的内部因素称为软件质量特性。比较权威的软件质量特性划分应推Boehm提出的十二个基本质量特性。分别为:设备无关性、完整性、精度、一致性、设备效率、可访问性、可通讯性、结构性、自说明性、简明性、易读性、可扩充性。

13、什么是软件质量保证 其主要任务是什么?

软件质量保证:为确保软件开发过程和结果符合预期要求而建立的一系列规程,以及依照规程和计划采取的一系列活动及其结果评价。

主要任务:

(1)用户要求定义 (2)力争不重复劳动

(3)掌握开发新软件的方法 (4)组织外部力量协作 (5)排除无效劳动

(6)发挥每个开发者的能力 (7)提高软件开发的工程能力 (8)提高计划和管理质量

14、软件质量保证体系是什么? 国家标准中与质量保证管理相关的几个标准是什么 他们的编号和全称是什么?

为满足质量要求和实施质量管理,进行全部有计划和有系统的活动所需的组织结构、程序、过程和资源的总称。

GB/T 19001质量体系设计/开发、生产、安装和服务的质量保证模式(idtISO 9001)

GB/T 19002质量体系生产和安装的质量保证模式(idtISO 9002)

GB/T 19003质量体系最终检验和试验的质量保证模式(idtISO 9003)

GB/T 19004质量管理和质量体系要素指南(idt ISO9004)

15、软件测试的原则与策略是什么?

软件测试原则:

1、尽早和不断的测试。

2、程序员应该避免检查自己的程序,软件测试应该由第三方构造。

3、设计测试用例时应该考虑到合法的输入和不合法的输入以 及各种边界条件。

4、注意测试中的错误集中发生现象。

5、对测试错误结果有确认过程。

6、制定严格的测试计划,并把测试时间安排的尽量宽松。

7、回归测试的关联性,原有功能过滤

8、进行版本控制,制定变更测试文档的流程。

测试策略,在一定的软件测试标准、测试规范的指导下,依据测试项目的特定环境约束而规定的软件测试的原则、方式、方法的集合,需在测试计划文档中体现。

16、什么是测试用例 什么是测试脚本 两者的关系是什么? 测试用例是为特定目标而开发的一组测试输入、执行条件和预期结果,其目标可以是测试某个程序路径或核实是否满足某个特定的需求。

测试用例(TESt CASe)目前没有经典的定义。比较通常的说法是:指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并形成文档。

测试脚本就是用户对业务操作的记录,将测试用例用测试脚本表述出来,那我们就不用手工执行测试了,就可以通过执行测试脚本来执行测试

测试脚本是进行自动化测试时编写的脚本程序 测试脚本中要包含测试用例中的数据

17、简述什么是静态测试、动态测试、黑盒测试、白盒测试、a测试 b测试?

静态测试是指测试不运行的部分——只是检查和审核 动态测试是指通常意义上的测试——使用和运行软件

黑盒测试:不关心软件内部结构,只关心输入输出,主要测试依据是需求文档 白盒测试:关注软件的内部结构和程序的设计实现,主要测试依据是设计文档

α测试是软件开发公司组织内部人员,模拟各类用户,对即将上市的软件产品进行测试,试图发现错误并修复的过程。

β测试是由软件的多个用户在实际使用环境中进行的测试,这些用户返回有关错误信息给开发者。

18、测试问题的严重性分为几级 ?如何区分?

为了尽量准确的表示缺陷信息,通常将缺陷的严重性和优先级分成4级。如果分级超过4级,则造成分类和判断尺度的复杂程度,而少于4级,精确性有时不能保证。

具体的表示方法机可以使用数字表示,也可以使用文字表示,还可以数字和文字综合表示。使用数字表示通常按照从高到底或从低到高的顺序,需要软件测试前达成一致。例如,使用数字1,2,3,4分别表示轻微、一般、较严重和非常严重的严重性。对于优先级而言,1,2,3,4可以分标表示低优先级、一般、较高优先级和最高优先级。

微小的(Minor)一些小问题如有个别错别字、文字排版不整齐等,对功能几乎没有影响,软件产品仍可使用。

一般的(Major)不太严重的错误,如次要功能模块丧失、提示信息不够准确、用户界面差和操作时间长等。

严重的(Critical)严重错误,指功能模块或特性没有实现,主要功能部分丧失,次要功能全部丧失,或致命的错误声明

致命的(Fatal)致命的错误,造成系统崩溃、死机,或造成数据丢失、主要功能完全丧失等。

19、测试用例设计的原则是什么 目前主要的测试用例设计方法是什么? 测试用例设计的原则是:

代表性:能够代表并覆盖各种合理的和不合理、合法的和非法的、边界的和越界的、以及极限的输入数据、操作和环境设置等. 可判定性:即测试执行结果的正确性是可判定的,每一个测试用例都应有相应的期望结果. 可再现性:即对同样的测试用例,系统的执行结果应当是相同的。 方法有等价类、边界值、因果图、状态图、正交法、大纲法

20、结构化系统测试和功能性系统测试分别采用了哪些方法和技术?

a)结构化系统测试技术:

用于验证所开发的系统及程序的运行情况。目标是要确保产品设计在结构上合理,功能上正确。为确定实现的配置及其各功能共同作用以完成特定任务提供了一种机制。

结构化测试技术由以下几种:

压力测试:确定系统以期望的容量执行。

执行测试:系统能达到期望的熟练性。

恢复测试:系统失效之后可以恢复到可操作状态。 操作测试:系统以正常操作状态执行。

一致性测试:系统的开发与标准和规程相一致。 安全性测试:根据组织的重要性对系统进行保护。

b)功能性系统测试用于确保系统需求与定义都得到了满足。该过程通常包含创建用于评价应用程序正确性的测试条件。

用于执行功能测试的几种测试技术包括: 需求测试:系统按制定方式执行。

回归测试:验证系统中没有改变的部分仍能正确运行。 错误处理测试:错误可以得到防止或检测,并被修复。

21、软件测试分为几个阶段 各阶段的测试策略和要求是什么?

软件测试分为单元测试、集成测试、系统测试、验收测试四个主要阶段:

单元测试:单元测试是针对软件设计的最小单位––程序模块甚至代码段进行正确性检验的测试工作,通常由开发人员进行。

集成测试:集成测试是将模块按照设计要求组装起来进行测试,主要目的是发现与接口有关的问题。由于在产品提交到测试部门前,产品开发小组都要进行联合调试,因此在大部分企业中集成测试是由开发人员来完成的。

系统测试:系统测试是在集成测试通过后进行的,目的是充分运行系统,验证各子系统是否都能正常工作并完成设计的要求。它主要由测试部门进行,是测试部门最大最重要的一个测试,对产品的质量有重大的影响。

验收测试:验收测试以需求阶段的《需求规格说明书》为验收标准,测试时要求模拟实际用户的运行环境。对于实际项目可以和客户共同进行,对于产品来说就是最后一次的系统测试。测试内容为对功能模块的全面测试,尤其要进行文档测试。

单元测试测试策略:

自顶向下的单元测试策略:比孤立单元测试的成本高很多,不是单元测试的一个好的选择。

自底向上的单元测试策略:比较合理的单元测试策略,但测试周期较长。

孤立单元测试策略:最好的单元测试策略。

集成测试的测试策略:

大爆炸集成:适应于一个维护型项目或被测试系统较小

自顶向下集成:适应于产品控制结构比较清晰和稳定;高层接口变化较小;底层接口未定义或经常可能被修改;产口控制组件具有较大的技术风险,需要尽早被验证;希望尽早能看到产品的系统功能行为。

自底向上集成:适应于底层接口比较稳定;高层接口变化比较频繁;底层组件较早被完成。

基于进度的集成

优点:具有较高的并行度;能够有效缩短项目的开发进度。

缺点:桩和驱动工作量较大;有些接口测试不充分;有些测试重复和浪费。

系统测试的测试策略:

数据和数据库完整性测试;功能测试;用户界面测试;性能评测;负载测试;强度测试;容量测试;安全性和访问控制测试;故障转移和恢复测试;配置测试;安装测试;加密测试;可用性测试;版本验证测试;文档测试

22、面向对象的测试用例设计有几种方法 如何实现?

给类中的每个构造函数设计一组测试用例 组合类中的类变量、实例变量 组合类中的各种方法

根据前置条件和后置条件设计测试用例 根据代码设计测试用例

23、在软件测试各个阶段通常完成什么工作 各个阶段的结果文件是什么 包括什么内容?

单元测试阶段:各独立单元模块在与系统地其他部分相隔离的情况下进行测试,单元测试针对每一个程序模块进行正确性校验,检查各个程序模块是否正确地实现了规定的功能。生成单元测试报告,提交缺陷报告。

集成测试阶段:集成测试是在单元测试的基础上,测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动。该阶段生成集成测试报告,提交缺陷报告。

系统测试阶段:将通过确认测试的软件,作为整个给予计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行全面的功能覆盖。该阶段需要提交测试总结和缺陷报告。

24、软件的安全性应从哪几个方面去测试?

用户认证机制:如数据证书、智能卡、双重认证、安全电子交易协议 加密机制

安全防护策略:如安全日志、入侵检测、隔离防护、漏洞扫描

数据备份与恢复手段:存储设备、存储优化、存储保护、存储管理 防病毒系统

25、LoadRunner分为哪三个模块?请简述各模块的主要功能。

Virtual User Generator:用于录制脚步

Mercury LoadRunner Controller:用于创建、运行和监控场景 Mercury LoadRunner Analysis:用于分析测试结果

上一篇:教育局财务股工作职责下一篇:中学保卫科工作计划