您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页软件工程认知实习

软件工程认知实习

来源:华佗小知识


哈尔滨理工大学

软件工程认识实习报告

学生姓名: 于硕 学 号:

学 院: 哈尔滨理工大学荣成学院

系 别: 软件工程系

专业班级: 软件工程10-1

报告题目: 软件工程认识实习

指导教师:

2012年1月

- 1 -

目录

摘要

正文

一、认识软件工程

1、软件工程定义与目的

1.1.1软件工程定义

1.1.2软件工程的目的

1.2.2软件工程学习的内容

2、软件工程的内容

1.2.1软件工程研究内容

1.2.2软件工程学习的内容

3、软件工程的发展历史及趋势

1.3.1软件工程的发展历史

- 2 -

1.3.2 软件工程的发展趋势

二、认识软件开发

1、软件开发流程

2、软件开发所需的知识和技能

3、软件编程语言

4、目前的软件行业现状

2.4.1 国外软件产业发展现状

2.4.2 国内软件产业发展现状

2.4.2 我国软件业发展的机遇

三、关于软件的热点问题

1. 软件外包

3.1.1软件外包的定义

3.1.2中国软件外包现状

- 3 -

2.物联网

3.2.1 物联网定义

3.2.2 物联网的分层

3.云计算

3.3.1云计算的定义

3.3.2云计算的应用

四、认识实习心得与体会

4.1我的职业理想与规划

4.2 心得与体会

中文摘要

随着软件工程学习的深入,除了对基本专业知识的掌握外,对软件工程总体的把握显得越来越重要,因此这次认识实习学到的知识对于我们认识软件工程和规划今后道路来说非常重要,通过这次认识实习,了解了软件工程的定义、目的历史、热点问题等,掌握了软件开发的流程,编程语言和行业现状。并对今后的学习和职业道路有了自己的规划,明确了自己的方向。

- 4 -

关键字:软件工程,定义,软件开发,编程语言,热点问题,心得

English abstract

With the in-depth study in the software engineering, in addition to the basic professional knowledge, grasp of the overall software project becomes more and more important, so this practice knowledge for our understanding of software engineering and planning future development is very important, through this practice, we understanding of the software engineering definition, objective history, hot issues and so, grasp the process of software development, programming languages and trade current situation. And has our own planning to the future of learning and occupation road, clear our own direction.

Keyword:Software engineering, definition, software development, programming language, hot issues, experience。

一 、认识软件工程

1、软件工程定义与目的

1.1.1软件工程定义

软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、

- 5 -

设计模式等方面。

1.1.2软件工程的目的

软件工程的目标是明确的,就是研制开发与生产出具有良好的软件质量和费用合算的产品。

费用合算是指软件开发运行的整个开销能满足用户要求的程度。

软件质量是指该软件能满足明确的和隐含的需求能力的有关特征和特性的总和。

2、软件工程的内容

1.2.1软件工程研究内容

软件工程学主要研究软件结构、软件设计方、软件工具、软件工程标准和规范,以及与软件工程有关的理论等。

1.2.2软件工程学习的内容

从软件的生产管理技术来分:软件的需求定义和分析技术;软件设计技术和设计审查技术;软件设计表现技术;软件测试技术;软件可靠性的理论及其评价方法;软件扩充和维护;软件成本估算等。

从内容上可分为理论、结构、方法、工具等部分。其中理论与结构是方与工具的基础及前提。在方与工具方面存在着这样的关系:为了找出行之有效的方法就应该具

- 6 -

备合适的工具;反之,为了制造、改进软件工具,也应先有合适的方法

3、软件工程的发展历史及趋势

1.3.1软件工程的发展历史

(1)、早期软件的出现

计算机出现之前,就已经有很多数学家为计算机软件的出现打下了坚实的数学理论基础,比如著名的数学家“阿兰.图灵”和他的导师一起努力,在20世纪三、四十年代年代就创建立了“图灵机”理论,从理论上解决了计算机软件和核心——“计算复杂性”以及“算法表示”问题。

(2)、现代计算机软件的问世

1946年,伴随着第一台电子计算机的问世诞生了。以写软件为职业的人也开始出现,他们多是经过训练的数学家和电子工程师,硬件通常用来执行一个单一的程序,而这个程序又是为一个特定的目的而编制的。

1954年,“约翰.巴科斯”建立了高级语言的思想,并设计出了世界上第一个真正意义上(至今广泛应用)的高级语言,第一个完全脱离机器硬件的高级语言—Fortran问世

1961年第一个数据库管理系统—IDS由通用电气(GE)公司的Charles Bachman开发出。

(3)软件危机的出现

- 7 -

60年代中期软件开始作为一种产品被广泛使用,出现了“软件作坊”专职应别人的需求写软件。 “软件危机”就这样开始了!1968年北大西洋公约组织的计算机科学家在联邦德国召开的国际学术会议上第一次提出了“软件危 机”(software crisis)这个名词。 概括来说,软件危机包含两方面问题:一、如何开发软件,以满足不断增长,日趋复杂的需求;二、如何维护数量不断膨胀的软件产品。同年秋季,NATO(北约)的科技委员会召集了近50名一流的编程人员、计算机科学家和工业界巨头,讨论和制定摆脱“软件危机”的对策。在那次会议上第一次提出了软件工程(software engineering)这个概念。60年代末“软件危机”后出现的第一个生命周期模型。如下所示:分析 → 设计 → 编码 → 测试 → 维护,使人们认识到了文档的标准以及开发者之间、开发者与用户之间的交流方式的重要性。

1969年UNIX出现

1969年12月,Internet 的前身——美国的ARPA网投入运行,它标志着我们常称的计算机网络的兴起。

1969年,提出了结构化程序设计方法,

1970年,第一个结构化程序设计语言—Pascal语言出现,标志着结构化程序设计时期的开始,即PO(面向过程的开发或结构化方法)以及结构化的分析、设计和相应的测试方法。

1971年,大、超大规模集成电路计算机,应用更加广泛,出现了微型计算机。

(3)现代软件的发展

- 8 -

1972 C语言出现

1975年的第六版 UNIX才开始走出贝尔实验室

1983年 C++出现

1983年IBM DB2数据库产品推出的。

1984年Tuxedo作为第一个严格意义上的中间件产品由AT&T的贝尔实验室开发完成。

1985年Windows 1.0正式推出。之前软件结构体系也是Mainframe结构,该结构下客户、数据和程序被集中在主机上。

90年代,中间件技术才开始迅速发展,建立在计算机和网络技术基础上的计算机网络技术得到了迅猛的发展。

1993年美国宣布建立国家信息基础设施NII 后,全世界许多国家纷纷制定和建立本国的NII ,从而极大地推动了计算机网络技术的发展,使计算机网络进入了一个崭新的阶段。目前,全球以美国为核心的高速计算机互联网络即Internet已经形成。

1994年 PHP出现。

1995年 Java出现。

1996年 JavaScript出现 。

- 9 -

2000年 C#出现。业务基础平台作为一个新的软件层级尤为引人注目。业务基础平台是以业务导向和驱动的、可快速构建应用系统的软件平台

2006年被炒得沸沸扬扬的SOA(Service-Oriented Architecture)作为下一代软件架构,主要用于解决传统对象模型中无法解决的异构和耦合问题。

软件的发展史其实就是在裸机(硬件)和终端用户之间不断沉淀(平台化)的过程。当与裸机接近的某个层次发展成熟后,与 这个层次相关的创新和成果会明显减少,而从这个层次更靠近终端用户业务的层次的创新和成果会增多。就这样不断不断的沉淀形成平台,不断的向用户和业务领域 靠拢。

1.3.2 软件工程的发展趋势

Internet及其上应用的快速发展与普及,使计算机软件所面临的环境开始从静态封闭逐步走向开放、动态和多变。软件系统为了适应这样一种发展趋势,将会逐步呈现出柔性、多目标、连续反应式的网构软件系统的形态。面对这种新型的软件形态,传统的软件理论、方法、技术和平台面临了一系列挑战。从宏观上看,这种挑战为我们研究软件理论、方法和技术提供了难得的机遇,使我们有可能建立一套适合于Internet开放、动态和多变环境的新型软件理论、方法和技术体系。从微观的角度来看,Internet的发展将使系统软件和支撑平台的研究重点开始从操作系统等转向新型中间件平台,而网构软件的理论、方法和技术的突破必将导致在建立新型中间件平台创新技术方面的突破。

二、认识软件开发

1、软件开发流程

- 10 -

(1)需求调研分析

相关系统分析员和用户初步了解需求,然后用WORD列出要开发的

功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。

系统分析员深入了解和分析需求,根据自己的经验和需求用WORD或相关的工具再做出一份文档系统的功能需求文档。这次的文档会清楚例用系统大致的大功能模块,大功能模块有哪些小功能模块,并且还例出相关的界面和界面功能。系统分析员和用户再次确认需求。

(2) 概要设计 首先,开发者需要对软件系统进行概要设计,即系统设计。概要设计需要对软件系统的设计 进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、 运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。

(3) 详细设计 在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实 现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。

(4) 编码 在软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。

- 11 -

(5) 测试 测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。

(6) 软件交付准备 在软件测试证明软件达到要求后,软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。

(7) 验收 用户验收。

(8) 软件运行维护

2、软件开发所需的知识和技能

软件开发基础知识和技能:程序设计基础、网页设计基础、关系数据库基础、面向对象的可视化程序设计、数据库应用与开发、客户/服务器开发技术、软件工程、客户端编程、WEB程序设计、WEB开发技术、高级.NET开发技术、嵌入式系统开发、数据结构、操作系统、IT产品服务与营销等。

3、软件编程语言

它并不是特指某一种具体的语言,而是包括了很多编程语言,目前流行的VB、C++、Java、C#等。

(1)Pascal语言:

Pascal是一种计算机通用的高级程序设计语言,由瑞士Niklaus Wirth教授六十年代末设计并创立的。

- 12 -

Pascal的主要特点有:严格的结构化形式、丰富完备的数据类型、运行效率高、查错能力强等特点。

由于上述特点,Pascal可以方便用于描述各种算法和数据结构。对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯。

(2)C语言:

C语言是介于汇编语言和高级语言之间的语言,属于高级语言,也称为中级语言,是集汇编和高级语言优点于一身的程序设计语言。于1972年在美国贝尔实验室里问世。早期的C语言主要用于UNIX系统。成为当代最优秀的程序设计语言之一。

C的特点 :

1. 是一种结构化语言。层次清晰,便于按模块化方式组织程序,易于调试和维护。

2. C语言的表现能力和处理能力极强。

3. 由于C语言实现对硬件的编程操作,所以既可用于系统软件的开发,也适合于应用软件的开发

4. 由于C语言允许直接对位、字节和地址进行操作,能实现汇编语言的大部分功能。

5. 目标代码质量高,程序执行效率高。

C语言的弱点:非强类型;语法不严格,使得编程者无法过多地依赖C编译程序

- 13 -

去查错;缺少实时检查,如数组越界等。

C语言作为一门面向过程的计算机语言,至今已有三十多年历史,应用广泛,无论是Windows还是Linux,你所看到的底层都是用C写的。大部分的网络协议也都是用C实现的。

(3)C++语言 :

C++是于1986年由AT&T贝尔实验室开发的,语言开发的目的在于通过数据封装减少程序变量的副作用,从而降低程序的复杂性并提高程序的可靠性。C++是C语言的直接扩展,C++的多继承机制能更好地描述对象的属性和行为。 C++是C的扩展,但C++可以作为一种全新的语言来看。

C++的特点:面向对象、继承、封装、多态性。 由于C++是C的扩展,所以也具有C的特点。

C++在C的基础上,加入了面向对象编程思想,也就决定了C++的效率在某一方面是不如C的。但由于时代的发展,项目或工程的庞大化,基于面向对象的思想显然更能适应。即C++在这方面能比C要做得更漂亮。现在不少系统级编程都是用C++实现,许多应用级别的软件也是用C++实现。

这里要注意一点,就是C++并不是完全的面向对象语言。它是提供了面向对象的模型以及思路,但是同时兼容了面向过程的模型。

(4)Java语言 :

- 14 -

Java语言来自于Sun公司的一个叫Green的项目,其原先的目的是为家用消费电子产品开发一个分布式代码系统。

Java的特点:

1. 简单性:风格类似于C++,Java摒弃了C++中容易引发程序错误的地方,如指针和内存管理。

2. 面向对象:Java是一种完全面向对象语言。

3. 分布式:Java包括一个支持HTTP和FTP等基于TCP/IP协议的子库。

4. 健壮:Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。

5. 结构中立:Java将程序编译成一种结构中立的中间文件格式。

6. 安全:

1)删除了香指针和手动释放内存等功能,避免了非法内存操作。

2)当Java用来创建浏览器时,语言功能和浏览器本身提供的功能结合起来。

7. 可移植的:同体系结构无关的特性使得Java应用程序可以在配备Java解释器和运行环境的任何计算机系统上运行。

- 15 -

8. 解释性。Java解释器能直接运行目标代码指令。链接程序通常比编译程序所需资源少。

9. 高性能。如果解释器速度不慢,Java可以在运行时直接将目标代码翻译成机器指令。Sun用直接解释器一秒钟内可调用300,000个过程。

10. 多线程:Java提供的多线程功能使得在一个程序里可同时执行多个小任务。多线程带来的更大好处是更好的交互性能和实时控制性能。

11. 动态:动态特性允许程序动态地装入运行过程中所需要的类。在运行时确定引用的好处是可以使用已被更新的类,而不必担心会影响原有的代码。

Java在诞生之后不久,便受到广大群众的欢迎,甚至有人说出有了Java,可以不要C/C++了。一度把Java提到了很高的地位。这当然是对Java的一种赞赏,只是有点过了。到今天,Java依然不能取代C,C++,而且还出现了新的对手――.Net。

Java目前主要应用:Web浏览器、网络应用系统。

(5)C#语言.

C#是一种精确、简单、类型安全、面向对象的语言。微软总裁兼首席执行官Steve Ballrner把它定义为:.Net代表一个集合,一个环境,它可以作为平台支持下一代Internet的可编程结构。C#是.net的代表语言。

C#的特点:

- 16 -

1. 完全面向对象。

2. 支持分布式,之所以有C#,是因为微软相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上。所以C#一出生就注定了能很好解决分布式问题。

3. 跟Java类似,C#代码经过编译后,成为了一种IL(中间语言)。在运行时,再把IL编译为平台专用的代码。

4. 健壮,C#在检查程序错误和编译与运行时错误一点也不逊于Java,C#也用了自动管理内存机制。

5. C#不像Java那样完全摒弃了指针和手动内存管理。C#默认情况下是不能使用指针的,程序员在有必要时可以打开指针来使用。这样可以保证编程的灵活性。

6. 安全性:C#的安全性是有.net平台来提供的。C#代码编译后成为IL语言。是一种受控代码,.net提供类型安全检查等机制保证代码是安全的。

7. 可移植性:由于C#使用类似Java的中间语言机制。使得C#也跟Java类似,可以很方便的移植到其他系统。在运行时,再把中间代码编译为适合特定机器的代码。

8. 解释性:C#也是一种特殊的解释性语言。

9. 高性能:C#把代码编译成中间语言后,可以高效的执行程序。

10. 多线程:与Java类似,可以由一个主进程分出多个执行小任务的多线程。

- 17 -

11. 组件模式:C#很适合组件开发。各个组件可以由其他语言实现的,然后集成在.net中。

C#目前主要是应用在网络编程上,其他领域比如数据库、窗体编程,都逐渐在增大。

4、目前的软件行业现状

2.4.1 国外软件产业发展现状

发达国家已经认识到软件的重要性,并将其视为国家关键技术,软件技术的研究和软件产业的发展是当今发达国家竞相扶持的重点,并成为国家间相互竞争的武器,一些发展中国家也在积极发展自己的软件行业,争取抓住机遇,迎头赶上。

在软件产业发展中,发达国家占有明显优势,美国已经成为全球软件发展的龙头,大多数先进的软件技术及产品都源于美国,世界软件市场的份额分配大致为:美国60%,西欧20%,美国12%,其他8%。

发展中国家在软件行业发展中以印度较为突出,其软件行业已在世界市场占有有利地位,在世界银行对7个软件出口国的比较研究中,从提供软件服务的规模和质量看,印度名列第一。1995年,印度约有90%的软件出口,目前,印度已有近百个软件企业通过了ISO-9000质量认证。

2.4.2国内软件产业发展现状

(一)在全球软件产业中的地位低微,与周边国家相比也存在较大差距

- 18 -

从总量以及所占比例来看,2000年,我国软件产业占全球市场的份额虽然与周边国家如印度、韩国所占的份额相差不多,比爱尔兰略低0.3个百分点,似乎差别不大,但是考虑到软件产品质量、软件开发的规范程度、软件出口或满足国内市场的程度等方面,我国与这些周边国家以及爱尔兰相比则存在很大差距。 (二)软件产业对国民经济发展的贡献较低,发展速度不能适应国家信息化的要求。 1996—2001年,我国软件产业国内市场增长速度分别为46.8%、31%、26.4%、27%、33%、34%,年均增长率约为30%,虽然高于世界软件产业的平均增长速度,但比印度软件产业起飞时期低20个百分点,比爱尔兰低50个百分点,难以满足国家信息化建设对软件产业的要求。

(三)软件产业的发展空间巨大,但国产软件的市场份额十分有限

我国目前正在大力推行国民经济与社会信息化建设,但是,信息化的迅猛发展并没有形成对国产软件有效的需求,反而有助于公司在我国的发展。

(四)缺乏核心产品和关键技术,核心竞争力薄弱

在我国,国外软件产品占据了2/3的国内市场,其中在系统软件方面几乎没有我国自主版权软件的立足之地,国产支撑软件只是凤毛麟角,应用软件同样面临剧烈竞争。缺乏基础和核心技术以及具有自主知识产权的软件产品,自主创新能力弱,不仅使得大量利润流入外国企业,严重影响我国软件产业的积累和再循环能力,而且还严重威胁着我国的信息安全。

(五)产业发展基础薄弱,无力与公司抗衡

软件产业是以智力和资本密集型为主要特点的,人才是软件技术创新的根本,是软件

- 19 -

产业竞争的焦点。在人才结构上,高级开发人才、通晓金融懂管理的人才、软件工程过程管理人才和软件技术工人均严重不足。某些省区对软件人才的吸引力较弱,省区内高校培养的软件人才供给不足且流失严重,造成软件设计专业技术人员缺乏。再加上“一低两高”(劳动生产率低,人力成本高,开发成本高)的现状,发展速度之慢也就不足为怪了。

(六)软件企业内部及国家落实中存在诸多问题

由于软件企业固定资产少、无形资产比重大,缺少可供抵押或质押的资产,很难争取到银行贷款。同时,由于软件企业的规模较小,前期研发投入过大,而且研发费用很难转化为固定资产,与传统制造业的盈利模式有所不同,同时发行股票的规模也无法放大,因而,在目前实行股票发行核准制的情况下,证券公司在推荐软件企业发行股票方面积极性不高,软件企业上市存在实际的困难。在税收优惠方面,现有的软件产业是从软件产品销售收入比例和自产软件产品销售收入比例等方面来界定软件企业,而将软件服务业、软件产业孵化器、软件企业的分支机构以及国产软件的代理和分销商排除在外,实际上使软件产业链条上各环节、各要素处于不平等的地位,导致有些环节发展滞后,成为整个软件产业发展的“瓶颈”。

关于知识产权保护方面,目前版权法的执行仍未取得预期效果

2.4.3我国软件业发展的机遇

(一)入世给我国软件业带来的机遇。使我国有权参与制定相关的规则和协议,进而处于主动地位加入WTO后,一些国家对我国设置的贸易障碍将会取消, 对中国出口商品的歧视性行为也会得到抑制。同时中国将变被动为主动,可以从本国利益和实际出发,提出一些有利于本国经济发展的建议, 从而为我国争取应有的权利。

- 20 -

(二)我国通过采购等方式为软件产业的发展营造良好的和经济环境。

三、关于软件的热点问题

1 .软件外包

3.1.1软件外包的定义

所谓软件外包就是一些发达国家的软件公司将他们的一些非核心的软件项目通过外包的形式交给人力资源成本相对较低的国家的公司开发,以达到降低软件开发成本的目的。众所周知,软件开发的成本中70%是人力资源成本,所以,降低人力资源成本将有效地降低软件开发的成本。

3.1.2中国软件外包现状

全球软件外包市场规模已达1000亿美元。发包市场主要集中在北美、西欧和日本,接包市场主要是印度、爱尔兰等国家。其中,美国市场被印度垄断,欧洲市场则被爱尔兰垄断。现在,菲律宾、巴西、俄罗斯、澳大利亚等国也加入了世界软件外包的竞争行列。

虽然中国IT外包服务市场一直高速增长,但截至目前,IT外包服务的用户群还相当狭小。就 IT外包服务的内容和服务方式而言,还主要局限于基础架构层面的网络基础设施和桌面设备的支持与维护。计世资讯的《2003~2004年中国IT服务市场研究年度报告》显示, 2003年中国IT外包市场规模达35.2亿人民币,同比增长42.5%。中国软件外包的主要目标市场是日本和美国。

2.物联网

- 21 -

3.2.1 物联网定义

物联网概念”是在“互联网概念”的基础上,将其用户端延伸和扩展到任何物品与物品之间,进行信息交换和通信的一种网络概念。其定义是:通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物品与互联网相连接,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一种网络概念。

3.2.2 物联网的分层

从技术架构上来看,物联网可分为三层:感知层、网络层和应用层。感知层由各种传感器以及传感器网关构成,包括二氧化碳浓度传感器、温度传感器、湿度传感器、二维码标签、RFID 标签和读写器、摄像头、GPS等感知终端。感知层的作用相当于人的眼耳鼻喉和皮肤等神经末梢,它是物联网获识别物体,采集信息的来源,其主要功能是识别物体,采集信息。 网络层由各种私有网络、互联网、有线和无线通信网、网络管理系统和云计算平台等组成,相当于人的神经中枢和大脑,负责传递和处理感知层获取的信息。应用层是物联网和用户(包括人、组织和其他系统)的接口,它与行业需求结合,实现物联网的智能应用。

物联网的行业特性主要体现在其应用领域内,目前绿色农业、工业监控、公共安全、城市管理、远程医疗、环境监测、老人护理、个人健康、智能家居、智能交通和环境监测等各个行业均有物联网应用的尝试,某些行业已经积累一些成功的案例。

3云计算

- 22 -

3.3.1云计算的定义

什么是云计算?云计算是一种基于因特网的超级计算模式,在远程的数据中心,几万甚至几千万台电脑和服务器连接成一片。因此,云计算甚至可以让你体验每秒超过10万亿次的运算能力,如此强大的运算能力几乎无所不能。用户通过电脑、笔记本、手机等方式接入数据中心,按各自的需求进行存储和运算。

3.3.2云计算的应用

(1)云物联

物联网的两种业务模式:

1.MAI(M2M Application Integration), 内部MaaS;

2.MaaS(M2M As A Service), MMO, Multi-Tenants(多租户模型)。

随着物联网业务量的增加,对数据存储和计算量的需求将带来对“云计算”能力的要求:

1.云计算:从计算中心到数据中心在物联网的初级阶段,PoP即可满足需求;

2. 在物联网高级阶段,可能出现MVNO/MMO营运商(国外已存在多年),需要虚拟化云计算技术,SOA等技术的结合实现物联网的泛在服务:TaaS (everyTHING As A Service)。

- 23 -

(2)云安全

云安全,顾名思义,是一个从“云计算”演变而来的新名词。“云安全(Cloud Security)”通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,推送到Server端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。

(3)云存储

云存储是在云计算(cloud computing)概念上延伸和发展出来的一个新的概念,是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。 当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统中就需要配置大量的存储设备,那么云计算系统就转变成为一个云存储系统,所以云存储是一个以数据存储和管理为核心的云计算系统。

(4)云游戏

云游戏是以云计算为基础的游戏方式,在云游戏的运行模式下,所有游戏都在服务器端运行,并将渲染完毕后的游戏画面压缩后通过网络传送给用户。在客户端,用户的游戏设备不需要任何高端处理器和显卡,只需要基本的视频解压能力就可以了。

就现今来说,云游戏还并没有成为家用机和掌机界的联网模式,因为至今X360仍然在使用LIVE,PS是PS NETWORK ,wii是wi-fi。但是几年后或十几年后,云计算取代这些东西成为其网络发展的终极方向的可能性,非常大。

- 24 -

四、认识实习心得与体会

1.我的职业理想与规划

作为一名大二学生,还有两年时间毕业,我给自己做的规划如下:

(1)在校时间

a.在校期间完成基本学业,牢固掌握基础课,学好专业课,为考研和就业做准备,利用课余时间深入学习软件编程技术,linux技术,数据库语言,汇编语言,数据结构等,提高自己的专业能力。

b.积极参加各种活动,提高自己的交流能力,语言表达能力,团队合作能力。

c.利用课余时间或假期,寻求专业方面的实践,在实践中掌握和巩固学到的知识。

(2)毕业后1~3年

利用3年时间熟练掌握软件编程,积累大量软件编程经验,学习企业管理知识,成为一个出色的初级软件工程师。

2 .心得与体会

通过对软件工程的认识实习,我受益良多。以前一直对软件存在一些偏见或者是误解,认为软件就是程序,软件的开发就是编写程序,只要编写完了程序,就可以完成任务。但是通过认识实习,我认识到了我以前的错误,软件其实不仅仅是程序,软件开发其实也不

- 25 -

仅仅是编写程序,软件是思想在硬件上的载体和体现,处理的是逻辑和信息。唯有对软件和软件工程的开发过程,有充分的认识,才能开发出好的软件产品。

从认识实习中我也发现,编程其实是一种乐趣与苦恼共存的创造性活动,变成不仅仅能够满足我们内心深处进行创造的渴望,还能预约我们的内心情感。

通过在认识实习中的自主学习,我知道我需要掌握如何在最小的成本中,训练自己的基本工程素质和能力,如何激发自己的积极性等,也让我明白了扎实的专业基础的重要性和团队协作能力的重要性。剧本这些能力会让我们在今后的学习和将来的工作中少走弯路。

认识实习虽然结束,软件之路才刚刚开始,也许在学习和今后的工作中会疲惫会有很多失败很多挫折,但是既然选择了这条路并且对其保持有充分的热情,就不会放弃,相信我会在软件行业走得更好,走的更远。

参考文献:

[1]百度百科

[2]维基百科

[3]赛迪网

[4]杨芙清.软件产业面临新的发展机遇[J].软件世界,2000,(5).

致谢

- 26 -

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务