服务计算概论作业报告
- 格式:doc
- 大小:171.01 KB
- 文档页数:11
云安全报告1.引言云计算的目标是将各种共享的计算资源以服务的方式通过互联网交付给用户。
云计算以其特有的优势逐步赢得了信息技术市场的认可,也在不知不觉中掀起一场IT 技术革命。
云计算的显著优势包括:按需服务、高带宽网络接口、共享资源池、快速可伸缩性和服务可测量。
云计算通常涉及到动态可扩展性和虚拟化资源配置,同时还包括计算、软件、数据访问和存储服务等。
在云计算这种服务模式下,终端用户甚至不知道为其提供服务的系统的物理地点或者系统的配置情况。
云计算技术的复杂性以及与传统服务模式的巨大区别,导致安全问题成为云计算推广过程中受到关注的首要问题。
2.云安全概述2.1云计算的演进云计算是计算技术的逻辑演进。
图2-1 展示了云计算和由互联网服务提供商(ISPs)延伸成云服务提供商(CSPs)的模型。
图2-1云计算的演进在开始阶段(ISP1.0),ISPs 对个人和企业用户提供因特网的访问,这些早期的ISPs 仅仅对用户和小型商户提供因特网连接,且一般是通过电话拨号服务的方式。
随着连接到因特网逐渐变为一种商品,ISPs 寻求着有其他附加价值的服务,比如对邮箱服务器的连接(ISP2.0)。
随着支持这种服务方式的基础设施和基于其服务的增多,迅速导致了专业设施的出现,我们称这些设施为搭配设施(ISP3.0)。
这些设施是电信和其他网络提供商以最低的花费及复杂性进行连接的一类数据中心[8]。
它定位于使用网络、服务器及储存设施的用户。
随着搭配设施的增多并变为一种商品,应用服务商(ASPs)随之产生(ISP4.0)。
ASPs 主要对企业提供具有高附加价值的应用服务,且其不仅仅局限于计算机设施。
2.2 云计算概念2007年底,IBM公司在其云计算计划中最早提出了云计算定义:按用户的需求建立可动态的部署、配置、取消服务的云计算平台,平台中的服务是可伸缩的,其可以是具体的服务器机群,也可以是另外一个云计算平台,通常一个通用的云计算平台包含存储设备、网络设备、计算设备、安全设备等,云计算平台提供“云应用”,用户通过租借和购买等方式,借助Internet 网络使用这些应用。
云计算概论课程总结云计算是当下信息技术领域的热门话题,它正在改变着人们的工作方式和生活方式。
作为一门概论课程,云计算概论课程为我们提供了全面了解云计算的机会。
在这门课程中,我收到了大量的知识和启发,对云计算有了更深入的理解。
1. 云计算的基本概念和发展历程在云计算概论课程中,我们首先学习了云计算的基本概念和发展历程。
云计算是指通过互联网连接分布在全球的计算资源,以实现信息的存储、管理和处理。
它的发展历程可以追溯到20世纪90年代的网格计算和服务计算,随着相关技术的发展,云计算逐渐成为一种主流的计算方式。
2. 云计算的核心技术在课程的进一步学习中,我们深入探讨了云计算的核心技术。
这些技术包括虚拟化技术、分布式存储技术、分布式计算技术等。
虚拟化技术使得物理资源可以被虚拟化为虚拟资源,提高资源的利用率;分布式存储技术克服了传统存储系统的容量和性能限制;分布式计算技术实现了对计算任务的分布式处理。
3. 云计算的应用场景和实践案例云计算的应用场景广泛,几乎涵盖了各个行业和领域。
在课程中,我们学习了不同行业中的云计算应用案例,如云存储、云安全、云办公等。
这些案例展示了云计算在提高工作效率、降低成本、提升数据安全性等方面的巨大潜力。
4. 云计算的挑战与未来发展除了学习云计算的基本概念和应用案例外,我们还深入讨论了云计算面临的挑战和未来的发展方向。
如云计算的安全性、隐私性、可靠性等问题,以及如何应对不断增长的数据量和日益复杂的应用场景。
在未来,云计算将进一步发展,逐渐与人工智能、大数据、物联网等前沿技术结合,为人们提供更便捷、高效的服务。
5. 我的收获和感想通过云计算概论课程的学习,我对云计算有了更深入的理解。
我认识到云计算是一种颠覆性的技术,它将会对我们的工作和生活带来巨大的影响。
我了解到云计算的基本概念、发展历程、核心技术和应用案例,这些知识将对我未来的学习和工作有很大的帮助。
同时,我也意识到云计算面临着一些挑战,如安全性和隐私性等问题需要得到更好的解决。
一、实验目的1. 理解计算机科学的基本概念,掌握计算的基本原理。
2. 掌握算法设计的基本方法,提高算法分析能力。
3. 熟悉计算机编程语言,能够编写简单的计算程序。
二、实验内容1. 计算导论基础知识2. 算法设计与分析3. 计算机编程实现三、实验步骤1. 计算导论基础知识(1)学习计算机科学的基本概念,如计算机系统组成、信息处理过程、数据结构等。
(2)掌握计算机编程语言的基本语法和常用数据类型。
2. 算法设计与分析(1)学习算法设计的基本方法,如分治法、贪心法、动态规划等。
(2)掌握算法的时间复杂度和空间复杂度的分析方法。
(3)针对实际问题,设计合适的算法,并进行优化。
3. 计算机编程实现(1)选择一种编程语言(如Python、Java、C++等)进行编程。
(2)根据实验要求,编写计算程序,实现算法。
(3)调试程序,确保程序正确运行。
四、实验结果与分析1. 计算导论基础知识(1)掌握了计算机科学的基本概念,如计算机系统组成、信息处理过程、数据结构等。
(2)了解了计算机编程语言的基本语法和常用数据类型。
2. 算法设计与分析(1)学会了分治法、贪心法、动态规划等算法设计方法。
(2)能够分析算法的时间复杂度和空间复杂度。
(3)针对实际问题,设计并实现了高效的算法。
3. 计算机编程实现(1)掌握了编程语言的基本语法和常用数据类型。
(2)能够编写简单的计算程序,实现算法。
(3)通过调试程序,确保程序正确运行。
五、实验心得1. 通过本次实验,我对计算机科学的基本概念有了更深入的了解,认识到计算机科学在现代社会的重要性。
2. 在算法设计与分析方面,我学会了如何根据实际问题设计合适的算法,并分析算法的效率。
3. 在编程实现方面,我提高了自己的编程能力,学会了如何将算法转化为程序,并通过调试程序解决实际问题。
4. 本次实验让我体会到理论与实践相结合的重要性,只有将所学知识应用于实际,才能真正掌握。
六、实验建议1. 在实验过程中,应注重基础知识的学习,为后续实验打下坚实基础。
计算机服务专业实习报告(通用8篇)计算机服务专业实习报告(通用8篇)转眼间一个辛苦的实习生活又结束了,回顾这段时间的实习,知识和能力都得到了很大提高,是时候写一篇实习报告好好总结一下了。
但是相信很多人都是毫无头绪的状态吧,下面是小编精心整理的计算机服务专业实习报告(通用8篇),希望对大家有所帮助。
计算机服务专业实习报告1一、实习目的通过在专业对口的公司顶岗实习,对自己大学三年的专业技能学习与课程学习做一个全面的考核。
二、实行时间20xx年x月x日-20xx年x月x日三、实习公司xx公司四、实习地点xx省xx市xx区x路xxx号五、实习岗位网页设计六、实习内容我的专业学的很杂,有xx的学习、有xx的学习,也有xx等等,我们专业是可以从事很多职业的,我在xx网页设计公司是一名平面设计员,在公司的这x个月中,我工作努力,爱岗敬业。
刚来的公司的时候会进行半个月的培训,对于实习只有x个月来硕半个月的培训已经是占据了很长一段时间了,在培训初期都是跟我讲公司的一些发展路线,跟岗位的一些深入了解,在后期的话,主要还是对我们专业技能的培训加深,因为在学校学到的专业知识,其实很大一部份已经不适用于工作当中了,当然不是完全没有用了,对于务实打好基础还是非常重要的了,记得在这家公司,我一开始培训的时候用到的开发软件都跟平时上课用到的版本不同,虽然是同一个软件,但是在一开始接触的时候并不是很习惯,我自己研究了好几天才适应下来,培训当中我当然是受益匪浅了,这些知识是非常珍贵的,是试用语工作当中这是第一部分的培训。
第二部分的正式上岗,期初只是给我们分配一些简单的工作一开始我还很纳闷,因为这些工作太简单可完全是一个稍微懂点的人都会,但是后来我错了,这只是个开始而已,公司只是让我们适应一下平时工作的气氛,原来是我想多了,在后面的工作当中遇到的难题可真是很多,不断的去寻求解决方式,不断的去发现新的问题,在这种状态下我们工作的x个月,也是这x个月的实践工作造就了我,在这x个月实习中我还是比较艰难的完成了顶岗实习的内容。
计算机服务专业实习报告一、实习单位背景我实习的单位是某知名互联网企业,主要从事软件开发和计算机服务工作。
该公司在业界享有较高的声誉,拥有完善的培训体系和晋升机制。
此次实习,我抱着学习的心态进入公司,希望能提升自己的专业技能和实际工作经验。
二、实习内容1. 实习岗位:计算机服务工程师2. 实习任务:(1)参与公司项目的开发与维护,协助团队完成任务目标;(2)学习并掌握计算机硬件、软件及网络方面的基础知识;(3)为客户提供计算机维修、故障排查、系统优化等服务;(4)跟进客户需求,提供技术支持,解决客户问题。
3. 实习过程:(1)实习初期,我主要负责协助团队成员进行项目开发,通过实际操作,熟悉了软件开发流程和团队协作方式。
同时,我主动学习计算机硬件、软件及网络知识,为后期提供计算机服务打下基础。
(2)在实习中期,我参与了公司项目的维护工作,掌握了数据库管理、系统优化等技术。
在此期间,我还为客户提供计算机维修、故障排查等服务,锻炼了自己的动手能力和解决问题的能力。
(3)实习后期,我主要负责跟进客户需求,提供技术支持。
通过与客户的沟通,我了解了市场需求,提高了自己的沟通能力和客户服务水平。
三、实习收获1. 专业技能方面:通过实习,我掌握了计算机硬件、软件及网络方面的基础知识,提高了自己的实际操作能力。
同时,我学会了如何跟进项目进度,提高工作效率。
2. 团队协作方面:在实习过程中,我学会了与团队成员密切配合,共同完成任务。
这使我更加明白,团队协作的重要性。
3. 沟通与客户服务方面:通过实习,我提高了自己的沟通能力和客户服务水平。
在与客户交流的过程中,我学会了倾听客户需求,提供针对性的解决方案。
4. 时间管理方面:实习过程中,我学会了合理安排时间,确保任务按时完成。
这使我更加懂得如何高效利用时间,提高自己的工作能力。
四、实习总结通过这次实习,我对计算机服务专业有了更深入的了解,也积累了丰富的实践经验。
在今后的工作中,我将继续努力学习,提高自己的专业素养,为更好地服务企业和客户做好准备。
有关计算实习报告模板八篇计算实习报告篇1实习目的:通过理论联系实际,巩固所学的知识,提高处理实际问题的能力,了解设计专题的主要内容,为毕业设计的顺利进行做好充分的准备,并为自己能顺利与社会环境接轨做准备。
实习任务:对计算机在学生信息管理方面的应用进行归纳总结,并查阅资料为毕业设计做准备。
实习内容:计算机在学生信息管理中的应用。
随着社会的发展,科技的进步,作为信息载体的计算机日益显露出其举足轻重的地位。
当今社会已步入了信息社会,知识经济将成为新世纪的主导产业。
伴随计算机的逐步推广和使用,计算机已在科研、生产、商业、服务等许多方面创造了提高效率的途径。
我们应该尽快使用现代化管理设备、管理手段、管理方法。
计算机在学生信息管理中的广泛使用,改进了统计手段,改革了统计方法,提供现代化的管理手段和科学的管理方法,并将为开创学生信息管理工作的新局面创造条件。
目前,计算机在学生信息管理工作中,主要可用来进行报表处理,档案管理,文书编辑,信息查询,综合分析。
手工方法所表现出来的种种劣势,使人们慢慢意识到管理现代化已成为当代社会发展的一股不可抗拒的洪流。
实现学生信息管理现代化是一个复杂的系统工程,需要采取科学的管理方法和先进的科技手段。
科学的管理方法在管理中一般是指数学方法、系统方法、信息方法、控制论方法、社会学方法、心理学方法等科学方法,而先进的科技手段主要是运用当代最新科学技术之一的电子计算机来为学生信息管理现代化服务。
电子计算机作为数据处理系统,已逐渐成为学生信息管理现代化的重要工具,在学生信息管理中正在发挥着重要的作用。
在我国,已经开始运用电子计算机进行各种多种信息管理。
管理现代化是现代社会发展的一股不可抗拒的洪流。
近几十年来社会化大生产的发展规模越来越大,综合性越来越强,现代化科学技术也正以史无前例的速度不断分化,不断综合,全方位地向高又立体的微观、宏观方向进军。
现代化管理的内容很多,关系很复杂,它包括人、资金、物质、信息和时间等诸要素,其中起关键作用的要素是人。
题目一:探讨计算机学科从业人员应承担的社会责任计算机学科从业人员应承担的社会责任随着近年来计算机技术的飞速发展以及人们对计算机了解和研究的深入,进而产生了一些不法分子为谋取暴利,设计病毒软件侵害其他用户的生命财产安全,危害社会的现象。
直到目前为止,大学计算机仍然具有良好的就业前景,计算机专业知识丰富的人才也备受北大公司的青睐。
然而,与此同时,由于我国缺乏对计算机专业技术人员的职业道德教育,导致有些拥有尖端计算机技术的人才为谋取个人利益,做出了一些有悖道德和法律的事情,让拥有计算机的普通用户惶惶不安。
因此,一个企业或机构的信息安全与否,与这个单位的计算机专业人员和员工的职业责任和道德素质有直接关系。
所以,加强计算机从业人员的责任和道德教育、规范准则教育有重要关系,是保护信息安全、促进计算机领域健康发展的重要举措之一。
随着信息时代的来临,计算机科学技术对社会的进步与发展越来越重要,因此培养出具有一定专业知识和良好道德修养的高素质人才迫在眉睫。
此下,我认为,职业道德规范包括基本的道德规则和特殊的职业责任。
其中,基本的道德规则包括:1.为社会和人类的美好生活做出贡献;2.恪守公正无私并在行为上无歧视;3.敬重包括版权和专利权;4.做种其他人的隐私,保守机密;特殊的职业责任包括:1.努力在职业工作的程序与产品中实现最高的质量、效益和高度的尊严;2.获得和保持职业技能;3.了解和尊重现有的与职业工作有关的法律;4.接受和提出恰当的职业评价;5.对计算机系统和他们包括可能引起的危机等方面做出综合的理解和彻底的评估;6.重视合同、协议和指定的责任;计算机工作人员的职业责任就是要有过硬的计算机操作技术,充分发挥计算机的功能,在做好预防各种病毒的入侵,黑客的攻击,加大对计算机理论的,软件理论,计算机复制性理论和计算机复杂性理论的开发和研究,使计算机科学与计数这门学科得到长足发展。
另外,计算机技术人员同样要处处为公共利益照相,全心全意投入到工作中,尊重他人隐私,保护国家及公司的机密,用自己的只是为社会贡献一份自己的力量。
根据题目要求,独立完成一篇项目报告,打印并提交。
题目及要求如下。
题目:
假日旅游公司由于业务量增加很快,需要开发一套“旅游信息服务系统”进行业务管理。
业务内容涉及企业内部办公信息化管理系统、业务管理系统(旅行社管理、宾馆管理、景区管理等)、信息发布系统、电子商务系统等模块,通用于所有同类企业。
该系统建设的目标是:为公司提供信息化管理方案;为旅游景区及企业提供宣传促销服务;为旅游消费者提供全面、准确、及时的旅游资讯及完善的电子商务服务。
经过讨论,假日旅游公司决定采用服务外包的方法开发该系统,假设你是苏科软件公司准备竞标该项目的项目经理,请设计该项目的接包业务流程,并写出完整的项目研究报告。
要求:
1、文档排版:(10分)
1)封面设计简洁大方,有公司logo(自拟),项目名称(自拟),班级,学号,姓名等信息。
2)页面设置为A4纸,边距默认,正文为5号宋体,小标题自定义,各章节明晰,格式统一。
3)页脚为“共N页,第i页”的形式,首页和目录页不需要页码。
2、项目报告:接包业务流程完整,应包括从项目信息获取和准
备、立项、投标,启动,……,直至项目收尾的完整业务环节,整体方案内容充实,切实可行,注意理论和项目实际相结合,并能适当展开。
(80分)
特别提醒:只写步骤标题,而不和项目实际结合,不予评分!
3、总结与展望:谈谈你在项目方案设计中遇到的重点、难点、进一步的设想以及可改进的地方。
(10分)。
一、实习单位及岗位实习单位:XX科技有限公司实习岗位:计算机技术支持工程师二、实习目的通过本次实习,我期望将所学理论知识与实际工作相结合,提高自己的实际操作能力和问题解决能力,同时了解计算机服务行业的发展趋势和市场需求,为今后的就业打下坚实基础。
三、实习过程1. 实习初期在实习初期,我主要了解了公司的组织架构、企业文化以及业务流程。
在导师的带领下,我熟悉了公司的工作环境,并开始接触一些基本的计算机维护和故障排除工作。
2. 实习中期在实习中期,我逐渐承担了更多的技术支持任务。
主要包括以下几个方面:(1)为客户提供计算机软硬件的安装、调试和升级服务;(2)协助客户解决网络连接、系统故障等问题;(3)参与公司内部培训,提升自己的专业技能;(4)与同事合作,共同完成项目任务。
3. 实习后期在实习后期,我逐渐成为了一名熟练的计算机技术支持工程师。
以下是我在实习期间取得的一些成果:(1)成功解决了客户在办公自动化、网络连接等方面的50余个问题;(2)参与公司内部培训,提高了自己的专业技能;(3)与同事建立了良好的合作关系,共同完成项目任务。
四、实习收获1. 提升了实际操作能力:通过实习,我熟练掌握了计算机软硬件的安装、调试和升级等操作,提高了自己的实际操作能力。
2. 提高了问题解决能力:在实习过程中,我学会了如何分析问题、查找原因,并采取有效措施解决问题,提高了自己的问题解决能力。
3. 拓宽了视野:通过实习,我了解了计算机服务行业的发展趋势和市场需求,为今后的就业奠定了基础。
4. 增强了团队协作能力:在实习过程中,我与同事建立了良好的合作关系,共同完成了项目任务,提高了自己的团队协作能力。
五、实习体会1. 实践是检验真理的唯一标准。
通过实习,我深刻认识到理论知识的重要性,同时也明白了实际操作能力的重要性。
2. 持续学习是提高自身素质的关键。
在实习过程中,我不断学习新知识、新技能,以适应不断变化的市场需求。
3. 团队协作是成功的关键。
慕测平台测试报告(二)学院:计算机学院姓名:赵红娜专业:软件工程学号:3130608003班级:1301完成日期:2016-10-222016年10月22日1.题目针对以下4个项目编写测试用例进行测试。
代码如下:题目(1)// BinaryHeap class//// CONSTRUCTION: with optional capacity (that defaults to 100)//// ******************PUBLIC OPERATIONS*********************// void insert( x ) --> Insert x// int deleteMin( )--> Return and remove smallest item// int findMin( ) --> Return smallest item// boolean isEmpty( ) --> Return true if empty; else false// boolean isFull( ) --> Return true if full; else false// void makeEmpty( ) --> Remove all items//******************ERRORS************* *******************// Throws Overflow if capacity exceeded/*** Implements a binary heap.* Note that all "matching" is based on the compareTo method.* @author Mark Allen Weiss*/public class BinaryHeap{//@ invariant wellFormed();/*** Construct the binary heap.*/public BinaryHeap( ){this( DEFAULT_CAPACITY );}/*** Construct the binary heap.* @param capacity the capacity of the binary heap.*///@ requires capacity > 0;//@ ensures isEmpty();public BinaryHeap( int capacity ){currentSize = 0;array = new int[ capacity + 1 ];}/*** Insert into the priority queue, maintaining heap order.* Duplicates are allowed.* @param x the item to insert.* @exception Overflow if container is full.*/public void insert( int x ) throws Overflow{if( isFull( ) )throw new Overflow( );// Percolate upint hole = ++currentSize;for( ; hole > 1 && x< array[ hole / 2 ]; hole /= 2 )array[ hole ] = array[ hole / 2 ];array[ hole ] = x;}/*** Find the smallest item in the priorityqueue.* @return the smallest item, or null, if empty.*/public int findMin( ){if( isEmpty( ) )return -1;return array[ 1 ];}boolean wellFormed() {if(array==null) {//array!=nullreturn false;}if(currentSize<0 || currentSize>=array.length) {//currentSize>=0; currentSize<array.length;return false;}for(int i=1; i<currentSize; i++) {if(i*2 <= currentSize && array[i]>array[2*i]) {return false;}if(i*2 + 1<= currentSize && array[i]>array[2*i+1]) {return false;}}return true;}/*** Remove the smallest item from the priority queue.* @return the smallest item, or null, if empty.*/public int deleteMin( ){if( isEmpty( ) )return -1;int minItem = findMin( );array[ 1 ] = array[ currentSize-- ];percolateDown( 1 );return minItem;}/*** Establish heap order property from an arbitrary* arrangement of items. Runs in linear time.*/public void buildHeap( ){for( int i = currentSize / 2; i > 0; i-- )percolateDown( i );}/*** Test if the priority queue is logically empty.* @return true if empty, false otherwise.*/public boolean isEmpty( ){return currentSize == 0;}/*** Test if the priority queue is logically full.* @return true if full, false otherwise.*/public boolean isFull( ){return currentSize == array.length - 1;}/*** Make the priority queue logically empty.*///@ ensures isEmpty();public void makeEmpty( ){currentSize = 0;}private static final intDEFAULT_CAPACITY = 100;private int currentSize; // Number of elements in heapprivate int [ ] array; // The heap array/*** Internal method to percolate down in the heap.* @param hole the index at which the percolate begins.*/private void percolateDown( int hole ){int child;int tmp = array[ hole ];for( ; hole * 2 <= currentSize; hole = child ){child = hole * 2;if( child != currentSize &&array[ child + 1 ]< array[ child ] )child++;if( array[ child ]< tmp )array[ hole ] =array[ child ];elsebreak;}array[ hole ] = tmp;}}/*** Exception class for access in full containers * such as stacks, queues, and priority queues. * @author Mark Allen Weiss*/public class Overflow extends Exception{}题目(2)import parator;import java.util.Random;/*** A class that contains several sorting routines,* implemented as static methods.* Arrays are rearranged with smallest item first,* using compareTo.* @author Mark Allen Weiss*/ public final class Sorting{/*** Simple insertion sort.* @param a an array of Comparable items.*/public void insertionSort( int[ ] a ){int j;for( int p = 1; p < a.length; p++ ){int tmp = a[ p ];for( j = p; j > 0 && tmp<a[ j - 1 ]; j-- )a[ j ] = a[ j - 1 ];a[ j ] = tmp;}}public boolean isSorted(int[] a) {for(int i=0; i<a.length-1; i++) {if(a[i]>a[i+1]) {return false;}}return true;}public static void quicksort( int[ ] a ){quicksort( a, 0, a.length - 1 );}private static final int CUTOFF = 10;public static final void swapReferences( Object [ ] a, int index1, int index2 ){Object tmp = a[ index1 ];a[ index1 ] = a[ index2 ];a[ index2 ] = tmp;}public static final void swap(int[] a,int index1,int index2) {int tmp = a[ index1 ];a[ index1 ] = a[ index2 ];a[ index2 ] = tmp;}private static int median3( int[ ] a, int left, int right ){int center = ( left + right ) / 2;if( a[ center ]<a[ left ] )swap( a, left, center );if( a[ right ] < a[ left ] )swap( a, left, right );if( a[ right ] < a[ center ] )swap( a, center, right );// Place pivot at position right - 1swap( a, center, right - 1 );return a[ right - 1 ];}private static void quicksort( int[ ] a, int left, int right){if( left + CUTOFF <= right ){int pivot = median3( a, left, right );int i = left, j = right - 1;for( ; ; ){while( a[ ++i ] < pivot ) { }while( a[ --j ] > pivot ) { }if( i < j )swap( a, i, j );elsebreak;}swap( a, i, right - 1 ); // Restore pivotquicksort( a, left, i - 1 ); // Sort small elementsquicksort( a, i + 1, right ); // Sort large elements}else // Do an insertion sort on the subarrayinsertionSort( a, left, right );}private static void insertionSort( int[ ] a, int left, int right ){for( int p = left + 1; p <= right; p++ ){int tmp = a[ p ];int j;for( j = p; j > left && tmp < a[ j - 1 ]; j-- )a[ j ] = a[ j - 1 ];a[ j ] = tmp;}}private static final int NUM_ITEMS = 1000;private static int theSeed = 1;}题目(3)public class Statistics {/**** @param numbers* @return the length of the array*/public int calLength(int[] numbers) {int length = numbers.length;return length;}/**** @param numbers* @return the mean value of the array*/public double calMean(int[] numbers) { int length = calLength(numbers);double sum;sum = 0.0;for (int i = 0; i < length; i++) {sum += numbers[i];}double mean = sum / (double) length;return mean;}/**** @param numbers* @return the var value of the array*/public double calVar(int[] numbers) {int length = calLength(numbers);double mean = calMean(numbers);double varsum = 0.0;for (int i = 0; i < length; i++) {varsum = varsum + ((numbers[i] - mean) * (numbers[i] - mean));}double var = varsum / (length - 1.0);return var;}}题目(4)public class Triangle {protected long lborderA = 0; protected long lborderB = 0; protected long lborderC = 0; // Constructorpublic Triangle(long lborderA, long lborderB, long lborderC) {this.lborderA = lborderA;this.lborderB = lborderB;this.lborderC = lborderC;}/*** check if it is a triangle** @return true for triangle and false not*/public boolean isTriangle(Triangle triangle) {boolean isTriangle = false;// check boundaryif ((triangle.lborderA > 0 && triangle.lborderA <= Long.MAX_VALUE)&& (triangle.lborderB > 0 && triangle.lborderB <= Long.MAX_VALUE)&& (triangle.lborderC > 0 && triangle.lborderC <= Long.MAX_VALUE)) {// check if subtraction of two border larger than the thirdif(diffOfBorders(triangle.lborderA, triangle.lborderB) < triangle.lborderC&& diffOfBorders(triangle.lborderB,triangle.lborderC) < triangle.lborderA&& diffOfBorders(triangle.lborderC,triangle.lborderA) < triangle.lborderB) {isTriangle = true;}}return isTriangle;}/*** Check the type of triangle** Consists of "Illegal", "Regular", "Scalene", "Isosceles"*/public String getType(Triangle triangle) { String strType = "Illegal";if (isTriangle(triangle)) {// Is Regularif (triangle.lborderA == triangle.lborderB&& triangle.lborderB == triangle.lborderC) {strType = "Regular";}// If scaleneelse if ((triangle.lborderA != triangle.lborderB)&&(triangle.lborderB != triangle.lborderC)&&(triangle.lborderA != triangle.lborderC)) {strType = "Scalene";}// if isosceleselse {strType = "Isosceles";}}return strType;}/*** calculate the diff between borders** */public long diffOfBorders(long a, long b) {return (a > b) ? (a - b) : (b - a); }/*** get length of borders*/public long[] getBorders() {long[] borders = new long[3];borders[0] = this.lborderA;borders[1] = this.lborderB;borders[2] = this.lborderC;return borders;}}2.软件工具Eclipse 3.测试代码题目(1)import org.junit.After;import org.junit.Before;import org.junit.Test;import org.junit.Assert;public class BinaryHeapTest {@Beforepublic void setUp() throws Exception {}@Afterpublic void tearDown() throws Exception {}@Testpublic void test() {BinaryHeap heap1 = new BinaryHeap(1024);for (int i = 1024; i > 0; i--) {try {heap1.insert(i);} catch (Overflow e) {Assert.fail(e.getMessage());}}if (heap1.wellFormed()) {heap1.buildHeap();}heap1.deleteMin();heap1.makeEmpty();heap1.findMin();heap1.deleteMin();}}题目(2)import org.junit.Before;import org.junit.After;import org.junit.Test;public class SortingTest {private int num;private int[] num1 = new int[50];private int[] num2 = new int[50];private Object[] ref = new Object[] { 3, 4, 5, 6, 9 };private Sorting sorting;@Beforepublic void setUp() throws Exception {sorting = new Sorting();for (int i = 0; i < 50; i++) {num = (int) (Math.random() * 50);num1[i] = num;}for (int i = 0; i < 50; i++) {num = (int) (Math.random() * 50);num2[i] = num;}}@Afterpublic void tearDown() throws Exception {}@Testpublic void test() {sorting.quicksort(num1);sorting.isSorted(num1);sorting.insertionSort(num2);sorting.isSorted(num2);sorting.swapReferences(ref, 1, 5);}}题目(3)import org.junit.After;import org.junit.Before;import org.junit.Test;public class StatisticsTest {private Statistics st ;@Beforepublic void setUp() throws Exception {st=new Statistics();}@Afterpublic void tearDown() throws Exception {}@Testpublic void testCalVar() {int []nums=new int[]{200,300,400,500,600};st.calVar(nums);}}题目(4)import org.junit.After;import org.junit.Before;import org.junit.Test;public class TriangleTest {private Triangle triangle1,triangle2,triangle3,triangle4;@Before public void setUp() throws Exception { triangle1 = new Triangle(4, 4, 4);triangle2 = new Triangle(2,2,3);triangle3 = new Triangle(4,5,6);triangle4 = new Triangle(2,5,9);}@Afterpublic void tearDown() throws Exception{}@Testpublic void test() {triangle1.getBorders();if(triangle1.isTriangle(triangle1)){triangle1.getType(triangle1);} triangle2.getBorders();if(triangle2.isTriangle(triangle2)){triangle2.getType(triangle2);}triangle3.getBorders();if(triangle3.isTriangle(triangle3)){triangle3.getType(triangle3);} triangle4.getBorders();if(triangle4.isTriangle(triangle4)){triangle4.getType(triangle4);} }}4.运行结果5.分数95.5556.收获和体会通过这次试验,让我对软件测试的基本概念,工具,方法都有了清晰的认识,掌握了基本的软件测试流程,提高了代码的编写能力,开扩了眼界,为以后的学习和工作打下了坚实的基础。