清晨小雨818
5000字计算机毕业论文篇3 浅议计算机数据库安全管理 摘 要:随着计算机和网络的普遍使用,人们或企业通过数据库存放的信息越来越多。计算机数据库的安全与否则涉及到个人隐私或企业等利益各方。 文章 通过对计算机数据库概念和特征的梳理,在明确数据库安全问题的基础上,设定计算机数据库安全管理目标并制定了数据库安全管理系统模式。 关键词:计算机;数据库;安全;模式 八九十年代至此,计算机的使用越来越普遍,个人和企业都倾向于用网络来处理个人的事情,并将很多资料和信息存放在网络上以便使用。而计算机数据库就是对这一活动进行技术支撑。 人们一般将个人资料等存放在计算机数据库中以方便和安全之用。这些个人资料往往包含有个人隐私并且非常重要,只有具有相关权限的人才能够查看相关资料。同样,现代企业几乎都是通过计算机数据库来存储和管理各种业务数据。通过特定的数据库访问模式,可以为企业提供全区域全侯段数据的查询和应用方便,提高 企业管理 效率。企业数据库对企业很是重要。但是如果数据库受到人为或病毒的攻击,个人隐私或企业重要信息就面临被窃取或流失的危险,进而对个人或企业的利益造成损失。 本文通过对计算机数据库概念和特征的梳理,设定数据库管理之目标、分析数据库管理问题进而提出计算机数据库安全管理模式。 一、计算机数据库概念及其安全管理特征 (一)计算机数据库概念 计算机数据库(Database)是为达到一定的目的而将数据组织起来并存储在计算机内数据(记录、文件等)的集合。模型是数据库系统的核心和基础。按照计算机存储和操作数据的方式,从数据库发展形态和模型特点角度,将数据库划分为:网状数据库、层次数据库和关系数据库三类。计算机数据库的应用领域和范围十分广泛。按照数据库应用领域和范围,将数据库划分为:统计数据库系统、海河流域数据库系统、地质数据库系统、生态环境数据库系统、地方志数据库系统等。 总体而言,随着计算机的普及和数据库技术的不断发展,计算机数据库应用范围不断的扩大,受到越来越大的重视,并其安全性得到不断的优化和加强。 (二)数据库安全管理特征 数据库安全管理往往包含数据安全、数据完整、并发控制和故障恢复等四个方面: 1.数据安全 数据的安全是保障数据使用的前提。数据安全涉及数据本身的安全以及数据防护安全两个方面。通常需要注意防止数据在录入、处理、统计或打印中造成的数据损坏或丢失;以及因人为、程序、病毒或黑客等造成的数据损坏或丢失。为了保障数据的安全,通常需要将数据进行分类,也即将需保护信息和其他信息分开;设置用户访问权限,控制不同的用户对不同数据的访问;对数据进行审计和加密。 2.数据完整性 数据的完整是保证接收信息的全面性,包括数据的精确性和可靠性。数据完整性通常包括实体完整性、域完整性、参照完整性和用户定义完整性等四个方面。数据完整与否通常涉及到数据录入等方面。数据由于输入等种种原因,会发生输入无效或错误信息等问题。为了保证数据完整性,通常采用包括外键、约束、规则和触发器等 方法 。系统很好地处理了这四者的关系,并针对不同的具体情况用不同的方法进行,相互交叉使用,相补缺点。 3.并发控制 数据库中的数据信息资源可以说是一个“信息池”,对数据的取用不仅要满足一个用户的使用,还要允许多用户同时对数据的取用。为了保证用户取用数据一致性就涉及到并发控制。并发控制指的是当多个用户同时更新运行时,用于保护数据库完整性的各种技术。并发机制不正确可能导致脏读、幻读和不可重复读等此类问题。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产生不合理的影响。在某些情况下,这些措施保证了当用户和其他用户一起操作时,所得的结果和她单独操作时的结果是一样的。在另一些情况下,这表示用户的工作按预定的方式受其他用户的影响。 4.故障恢复 目前,保护数据库系统免受破坏的措施有很多,它能够保证数据库的安全性和完整性不被破坏以及并发事务能够正确执行,但是计算机的硬件故障、操作人员的事务这些是不能够进行避免的。而数据库中数据的正确性都会受到它的影响,甚至有时会使得数据库受到破坏,导致数据库中的部分或者全部数据的丢失。故障恢复的功能就是能够实现数据库从错误状态向某一已知的正确状态方向进行恢复。 二、数据库安全管理目标 数据的安全和完整使用是计算机数据库管理的目标,包括以下几个方面: 数据共享和统一管理。对具有使用权限的用户实现全区域或全侯段数据信息共享能够提高信息的使用效率,满足企业或个人动态办公的需求。同时数据共享必须保障共享数据的一致性和对数据的统一管理。 数据访问简化。应用程序对数据的访问进行简化,使得在更为逻辑的层次上实现应用程序对数据进行访问。数据访问简化一方面提高了对数据库中数据的使用效率,另一方面提升了个人或企业使用数据的方便性,提高工作效率。 数据有效。数据有效性一方面指数据库中的数据需是可以使用的,不能存在过多的冗杂数据;另一方面数据的逻辑一致性得到保证。 数据独立性保障。数据独立性包括数据的物理独立性和逻辑独立性。把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改,保障数据的独立性,减少程序对数据和数据结构的依赖。 数据安全性保障。是保障在数据库共享情况下维护数据所有者利益。数据的集中存放和管理能够保证数据库安全性。数据库安全的具体目标就是提供充分的服务,并且保证关键信息不被泄露。 三、数据库安全管理存在问题 从数据库系统安全性角度来讲,数据库的安全问题包括操作方面问题、系统管理问题和数据库自身问题等三个方面。 操作方面。操作方面往往涉及到病毒、后门、数据库系统以及 操作系统 等方面的关联性。病毒方面,部分病毒可以依附于操作系统从而对数据库造成危害;操作系统后门在方便特征参数设置等的同时,也给黑客等留了后门使其可以访问数据库系统等。 管理方面。对数据库安全管理意识薄弱,重视程度不够,对数据库等的管理往往提留在设置访问权限等方面。数据库安全管控措施较少或不到位,未能定期检测和发现数据库存在的漏洞以及面临的安全威胁。 数据库自身问题。虽然关系数据库系统应用时间较长,特性较强大,产品也较成熟,但是实际中并没有在操作系统和现在普遍使用的数据库系统体现出其应该具有的某些特征,尤其是那些较为重要的安全特性,由此可见,大多数的关系数据库系统的成熟度还是不够。 四、计算机数据库安全管理措施 (一)用户标识与鉴别 用户识别和鉴别是数据库系统的最外层安全保护措施。数据库系统可使用多种识别方法,提高系统的安全级别。其中用户名输入识别、口令识别、身份随即识别等作为常用的安全防范方法。 (二)安全模式 通过安全模式来判断安全重要方面与系统行为关系,并满足关键数据安全的需求。安全模式通常包括多级安全模式和多边安全模型。多级安全模式首先在军用安全保密系统中使用,包括秘密级、机密级和绝密级三个等级。根据不同的需求设置每一级人员的访问权限。多边安全模式则能防范横向信息泄露。 (三)访问控制 按用户身份及其所归属的某项定义组来限制用户对某些信息项的访问,或限制对某些控制功能的使用。访问控制通常用于系统管理员控制用户对服务器、目录、文件等网络资源的访问。访问控制保证具有访问权限的用户的正常访问,是通过主体访问设置保护网络资源。访问控制的功能主要有以下:防止非法的主体进入受保护的网络资源;允许合法用户访问受保护的网络资源;防止合法的用户对受保护的网络资源进行非授权的访问。访问控制实现的策略:入网访问控制、网络权限限制、目录级安全控制、属性安全控制、网络服务器安全控制等。 (四)安全审计 由专业审计人员根据有关的法律法规、财产所有者的委托和管理当局的授权,对计算机网络环境下的有关活动或行为进行系统的、独立的检查验证,并作出相应评价。安全审计涉及四个基本要素:控制目标、安全漏洞、控制措施和控制测试。其中,控制目标是指企业根据具体的计算机应用,结合单位实际制定出的安全控制要求。 五、结束语 数据安全问题是存在于计算机系统和数据库系统中的常见和最为重要的问题。数据库的安全围绕着防范和减轻风险的角度展开。数据库管理最主要的目的就是通过有效的计划和措施,在保障数据共享的基础上,保障数据的安全,确保安全风险不为用户带来风险等。文章在指出数据库系统中存在安全问题的基础上,从用户识别、设置安全模式、进行访问控制等角度提出了数据库安全管理措施。 参考文献: [1]许婷,杨新荣.数据库安全技术理论研究[J].科技情报开发与经济,2007,4. [2]朱良根,雷振甲,张玉清.数据库安全技术研究[J].计算机应用研究,2004,9. [3]隽军利,李天燕,王小龙.浅析计算机数据库系统在信息管理中的应用[J].科技创新导报,2008,12. [4]刘启原,刘怡.数据库与信息系统的安全[M].北京:科学出版社,2000. 5000字计算机毕业论文篇4 浅谈计算机安全技术与防护 摘要:互连网具有开放性和匿名性的特点,这给计算机黑客、病毒利用网络实施各种犯罪活动创造了机会,同时对网络安全构成了威胁。在我们使用网络的过程中,总会感染各种各样的网页病毒,在收发电子邮件、使用QQ进行即时聊天过程中,也会导致密码被盗等情况。同时,由于安全问题,有些网站的数据被破坏,这给我们的工作带来了极大损失。 关键词:计算机;网络;安全技术;防护技术 互联网以其高效率和快捷方便改变着人们的生产与生活,在社会的各个领域得到了广泛的应用,各行各业用其来处理各种事物,比如电子邮件的发送、网上购物、信息的处理、网上炒股和网上办公。所有这些都与互连网的开放性及匿名性有关。也正因为这些特征使互联网存在着一定的安全隐患。但是网络不安全导致人们对网络望而生畏,以上问题也使人们在应用网络与计算机的过程中遭受巨大损失,我在计算机安全技术与防护方面做如下分析。 一、计算机网络信息存在安全隐患 (一)计算机本身存在的问题 计算机的弱项是面对威胁与攻击时容易被破坏甚至导致瘫痪。因为它自身的防御能力较差,被新病毒攻击时束手无策,在建立网络协议时,有些安全问题没有被安排在内,虽然又新加了许多安全服务与安全机制,但是黑客的攻击还是让计算机本身防不胜防,让一些安全措施显得无力,所以在互联网中的安全问题表现的更加严重。 (二)软件中存在的漏洞 所有的操作系统或网络软件都存在着各种各样的问题,主要是有了黑客的攻击或病毒的入侵以后才进行漏洞的修补,所以在操作系统及网络软件中还存在缺陷和漏洞,这给我们的计算机带来了很大的危险,计算机被接入网络受到的攻击也会更多。 (三)计算机安全配置不正确 进行安全配置时,因为配置不正确导致了安全漏洞的存在。比如,没有对防火墙进行配置,那么本身的作用不能得到很好的发挥,在这种特定的网络应用程序中,启动过程中,很多安全缺口也会随之打开,可以与这一软件捆绑在一起的应用软件随之启用。只有在用户禁止此程序的运行,或者对它进行了合理的配置时,才可以排除各种安全隐患。 (四)使用对象的安全意识差 当用户口令设置较简单,有时还把自己的账号借给他人用或者与他人共用,这些给网络安全造成了一定的威胁。 二、计算机病毒的威胁 随着应用的广泛,病毒的种类也在不断增多,破坏性不断增强,病毒的产生与蔓延使信息系统不再可靠,不再安全,计算机受到的威胁是巨大的,同时也给各个单位造成了很多损失,计算机病毒的入侵手段可以归结为以下几类: (一)数据的欺 非法入侵到计算机,对数据进行修改,甚至借机对假数据进行输入。 (二)特洛伊木马 在计算机内通过不正确的手段装入秘密指令或者程序,通过计算机进行犯罪活动。它通过合法的身份隐藏于其他的程序中,某时刻会发作,这时会产生威胁,当本机在完成任务时,它会实施非授权功能。比如复制一段超过系统授权的程序等。 (三)截收信息 黑客或者病毒在进行攻击时,有可能会利用搭线或者是电磁辐射的范围内进行截收,对重要信息进行截获或者借助于信息流以及自身的流向、通信频度及长度等参数加以分析,对有用的信息进行判断及保留。 (四)对程序的攻击 这种病毒的攻击性较强,活动较频繁,它深深地隐藏于计算机的存储器中,借助于木马对用户进行技术性的欺,对用户进行激活。甚至借助于逻辑炸弹来发作,对系统进行攻击并产生较大的危害性活动。 (五) 其它 网络攻击方式 黑客或者病毒破坏网络系统,使其不可用,导致合法用户对网络资源不能进行访问,拒绝各种服务,有的还会严重破坏计算机系统与网络系统,使系统信息不再完整,有些还有可能假装主机对合法用户进行非法入侵,使系统资源遭受破坏等。 三、常用的网络安全技术 (一)操作系统内核的安全性防护技术 操作系统安全内核技术主要是通过传统网络安全技术进行分析,借助于操作系统这一层次对网络的安全性进行分析与假设,对系统内核中可能存在安全性问题在内核中除掉,进一步对系统的安全性问题进行强调,在技术上不断加强。操作系统平台的安全措施主要有:利用安全系数较高的操作系统;对操作系统进行安全配置;借助于安全扫描系统对操作系统的漏洞进行检查等。美国国防部技术标准将操作系统的安全等级划分成D1、C1、C2、B1、B2、B3、A几个等级,它的安全等级主要是从低到高。当前大多数操作系统的安全等级都达到了C2级,它的特征包括:一是利用用户注册名和口令使系统加以识别;二是系统通过用户的注册名对用户访问资源的权限进行裁定;三是通过系统对所有系统中发生的所有事件进行审核与记录;四对其他具有系统管理权限的用户进行创建。 (二)网络防病毒技术 计算机病毒借助于网络环境对系统进行破坏,它的破坏力非常强,它产生的威胁与破坏力是不可估计的,比如CIH病毒及爱虫病毒就充分说明了,如果不对病毒进行提前预防,它所造成损失更大,给社会带来一系列的问题,所以,我们要加强病毒的预防。网络防病毒技术的具体实现方法主要包括对网络服务器中的文件的频繁破坏,频繁扫描与频繁监测,主要通过工作站对防病毒的芯片、网络目录以及各种文件加强了访问权限的设置等。预防病毒主要借助于网络这一整体,提高管理人员的技术与防范意识,经常对全网的客户机进行扫描,对病毒情况进行监测;通过在线报警技术,使网络上的每一台机器发生故障、被病毒入侵时,网管人员能够检测到并及时解决这些问题,使网络被攻击的损失达到最小化。 (三)对 网络技术 的加密 对网络进行加密技术的提高是保障网络安全的行之有效的一项重要措施,做了加密的网络可以防止非法窃听,还可以防止恶意软件的入侵等,对网络信息进行加密主要是对网内的数据进行保护,对网内的文件、口令及控制信息实施保护,对网上传输的数据加以保护。这种对网络实施的加密主要是通过链路加密、端点加密及节点加密几种方式来实现。链路加密的目的是为了对网络节点之间的链路信息安全进行保护;对各个端点进行加密的目的是完成对源端用户到目的端用户的数据所做的加密保护;对节点进行加密主要是对源节点到目的节点之间的传输链路进行加密保护。各用户针对网络情况对上述三种加密方式结合自身情况进行选择。 根据收发双方的密钥的异同进行分类,对这些加密算法可以分为常规密码算法与公匙密码算法。通过对其应用这一过程,人们主要是把常规密码与公钥密码有机结合。比如:使用DES或者IDEA完成对信息的加密,而使用RSA对会话密钥进行传递。假如根据多次加密所处理的比特进行分类,我们可以把加密算法分为序列密码的算法与分组密码的算法,而序列密码的算法在每次计算时只加密一个比特。 (四)加强防火墙技术 网络防火墙主要是对被保护的网络和外界所设置的屏障,它借助于计算机硬件及软件的组合形成了相对安全的网关,对内部网络进行保护,使其不受非法用户的入侵,通过对它的鉴别、限制与更改,使其跨越防火墙的数据流,对通信网络的安全提供保障,为计算机通信网络的发展提供保障。 (五)加强身份验证技术 身份验证技术主要是用户通过系统显示自己身份证明的一个过程。通过身份认证对用户的身份进行证明。通过这两个过程对通信双方真实身份进行判定与验证,借助于这两项工作完成身份的验证。计算机的安全机制主要是对发出请求的用户做出身份验证,对它的合法性进行确认,如果判定为合法用户,对该用户进行审核,判断其是否对所请求的服务或主机可以进行访问。 总之,网络安全是一项综合性、长期性的任务,它主要涉及到技术、管理以及使用的许多问题,主要包括信息系统自身的安全问题,还包括物理方面的和逻辑方面的相应措施。所以,一定要通过多种防范措施,通过各种比较保密的政策及明晰的安全策略,对信息的机密性、完整性和可用性逐步加强,给网络安全提供保障。 参考文献: [1]陈月波.网络信息安全[M].武汉:武汉理工大学出版社,2005 [2]钟乐海,王朝斌,李艳梅.网络安全技术[M].北京:电子工业出版社,2003 [3]张千里.网络安全基础与应用[M].北京:人民邮电出版社,2007 [4]吴金龙,蔡灿辉,王晋隆.网络安全[M].北京:高等教育出版社,2004 猜你喜欢: 1. 计算机专业毕业论文评语 2. 有关大学计算机专业毕业论文范文 3. 计算机系毕业论文范文参考 4. 大学计算机毕业论文范文 5. 关于计算机专业毕业论文范文 6. 计算机专业毕业论文参考
谦谦妈妈2015
近年来,随着全球网际网路技术的普及、计算机技术的迅猛发展、数字技术的瞬息万变,计算机工程在人们生活、生产中的应用越来越广泛。下面是我为大家整理的计算机工程毕业论文,供大家参考。
计算机软体大体分为三类,一种是总述,一种是系统软体,一种是应用软体,系统软体的作用是促使各个硬体按照一定的规律协调工作,保证计算机处于正常运转状态。而应用软体的作用则是为了实现某种使用愿望而开发出来的软体。
1计算机软体工程专案管理的基本概念
工程专案管理的含义工程专案管理主要是业主通过委托从事工程专案管理的企业,签署相关协议,工程专案管理企业有义务和权力代表业主在工程专案进行的情况卜干预和服务。工程专案管理企业可以协助业主同项目工程总承包签订一系列合同,只是起到辅助性作用,不直接与总承包企业或者施工、勘察、供货和设计签署协议或合同,工程专案管理企业有责任在施工过程中监督合同的完成情况。
软体工程专案的概况
管理人员开展有序的专案计划
企业必须把人员管理放在重要位置,在软体工程专案的开发上人员的调配问题是保证工程顺利进行的重要因素,因此,专案能否成功和工作人员的工作能力、写作能力息息相关,针对工程专案的操作类别不同,可以分配成各个研究小组,进行科学合理的针对性开发和高效的协作,有利于工程的快速推进和更加完善。小组内的人员根据自身优势,确定自己的工作内容和工作时间。对专案进行正确的认识和对风险进行评估,与此同时从节约成木的方而出发,形成科学的人力资源调配机制,使专案得以顺利开展。
质量和配置管理工作
软体的质量管理工作是整个专案的核心工作,质量管理决定着计算机软体工程专案管理是否真正的成功,通过一系列保证质量的手段,有计划的编制、控制和保证专案质量。保证专案质量的方式可以通过定期的进行质量评估得以实现,在日常专案管理中要不断的对工作进行考查,对于专案不合格的地方要提出意见并且考虑整改措施,不断完善整个软体配置管理的记录工作,使专案的质量能有一定的检测体系,这样开发者会对专案工程的质量问题有比较深入的了解。
风险评估和管理工作
风险管理大致分为两种工作,一种是风险识别,另一种是风险评估。得到评估结果以后要针对问题提出相应的解决办法,定期检测计算机软体工程的好处是可以减小产生风险的概率,还可以避免一些因疏忽而产生风险,使专案的损失减少到最低,也减少了因专案风险而造成的一些相关责任人的利益冲突。
2计算机软体工程专案管理中存在的问题
管理团队的协作问题
分工合作是我们完成一个专案的基木因素,在软体开发方而更需要每个人的智慧一起凝聚出果实,共同享受成果,而目前在计算机软体工程专案管理方而资讯的交流方而存在一些问题,例如分工不清、团队不合作等问题。
需求分析和实际中的业务存在差距问题
计算机软体工程专案没有结合实际的活动需求,也没有调查有效的资料分析,因此计算机软体工程专案管理在开发出新的产品以后并没有取得理想的业务效果。
风险管理的问题
专案的风险工作是企业需要考虑的很重要的问题,如果风险没有相应科学管理,很容易带来巨大的损失,但是很多员工并不懂得如何规避风险,缺乏相应的专业知识,更是缺少对风险工作的管理,导致很多企业在风险来临时无法做出正确行动,造成巨大的经济损失。
3计算机软体工程专案管理的对策
对风险管理和工作进度进行有效管理
制定风险管理制度。计算机软体工程专案管理的工作人员必须具有一定的风险识别意识和相应的遇到风险的专业知识,并且能有效的控制风险的能力。在平时要做好风险评估的管理报告,针对可能发生的风险要及时预测并且做出相应的解决行动。设定专门的人员对计算机软体工程专案定期进行风险的评估和检查工作。在整个专案中,根据需要进行多次的风险管理工作,因为风险无时无刻都有可能存在,检查的目的是尽量减少风险发生,在一般情况卜处理风险的措施一般有三种:减缓、规避和转移。提高工程的进度,不断的推进工程的工作效率。要制定详细的工作计划表,并且尽可能达到最高的工作目标。工作人员有严谨的工作态度和高效的作息时间安排,管理人员要密切关注工程进度,不断的督促员工完成应做的工作量,有条理、高效的完成对员工的工作任务的监督工作。
建立完善的管理体系针对计算机软体工程的人员日常管理工作,要建立科学有效的管理方案。合理安排人才资源,确保在进行计算机软体专案工程时人员调配顺利进行。专业知识的培训对于工作人员来说
是必不可少的,可以极大的丰富计算机软体工程专案人员的专业水平和实践能力,减少工作上的失误,提高工作效率和工作人员的素质。奖罚制度是对企业员工优劣的衡量标准,所以在计算机软体工程专案管理方而采取奖罚制度可以极大程度上调动员工的积极性,使员工主动为企业创造效益,企业的发展才能有长远的未来。
建立合作的团队
在员工内部建立有效的交流机制。员工的内部工作经验交流是非常重要的,因此要完善沟通方法,开辟多种交流方式和渠道,不断的增强各个部门的沟通意识,使团队的力量不断凝聚起来。明确分工,责任落实到个人。计算机软体工程管理非常复杂,需要的人员也众多,因此必须要使每个员工明确自己的工作内容和范围,清晰的划分自己所需要负责的区域,清楚自己的责任,这样能够确保每一个步骤都井井有条,非常有秩序。调动整个团队的工作积极性。通过一些活动、奖励措施等使每一个工作人员全身心的投入到工作中去,愿意并想要去做的更好,不断激发团队的潜力和员工的协作能力,这样专案不仅会做的越来越好,员工内部也会越来越和谐并且充满正能量,企业的效益也会不断得到提升。
4结语
计算机软体工程专案管理的工作内容十分的复杂,要保证软体工程按照工程原计划进度顺利开展工作,并且要节约成木、保证质量,必须熟练对计算机软体进行操作,在现在的大多数生产计算机软体的企业中最为重要的就是软体工程专案的管理效率,软体工程专案的成功条件是软体专案要具有科学性和高效性,在此基础上企业的合理管理也是企业走向成功的关键。
1现状分析
培养高质量的软体开发人才一直是社会和行业关注的焦点。早在11年前,对于工程教育的迫切性就被人提出来[1]。工程教育本身也作为一个系统问题被讨论[2]。现在从国家层面在战略上建立了软体学院进行专门培养,各个高校也不断推出新的课程、新的措施方案。在这一领域虽然比过去似乎已经有了翻天覆地的变化,但来自企业的呼吁似乎一直反映出诸多不尽如人意。更多的思路希望将企业的力量直接引入到教学,比如实训基地等[3];而国家层面也非常关注实训[4]。但实际效果可能变得流于表面,因为企业往往难以将核心的工作拿给学生做,而其训练的专案也并未从更全面系统的角度去设计,其锻炼效果就有限了。在软体开发这一领域,由于其具有变化迅速,新技术不断涌现的特点,导致不少在教育内容上选择了追逐新技术、新语言、新平台,以能用会用这些流行主流技术为目标。典型的代表就是北大青鸟,有些二本的学生在毕业前专门花钱去青鸟学习,似乎可以看到这种教育的优势。但另一个矛盾的情况是,往往那些关注员工后劲的公司却不愿意招聘青鸟的学生。如果将目光投向国外的顶级大学,例如斯坦福,其教学上并没有去“依赖”校企合作,以及很热门的“实训”。其核心课程依然是过去的传统经典课程。以一个研究生为例,一学期能修2门课是正常,3门就很优秀。它并没有追逐所谓的新技术。但无人质疑其学生的工程能力、科研能力和创造能力。
2什么是计算机工程能力的核心
什么才是我们软体开发教育的核心知识架构,怎样才能培养学生可持续发展的核心竞争力?我们调查过一些非常高水准的软体开发者,发现他们往往在底层软体上持之以恒地进行长时间深刻的锻炼,然后在未接触的新领域才能非常迅速地掌握核心。例如,一个非计算机专业的系统分析员曾经“只”在DOS这种原始的作业系统下玩了10年,甚至自己写过一个汉化的DOS。他只有书本上的一点点网路知识时,就用一两天时间解决了一个学通讯的研究生1个月都不能解决的网路故障。这是一个典型的例子,他并没有“实际的”网路经验,什么使得他如此轻松地进入了新的领域呢?而另一个曾就职于vmware、google等顶级公司的程式设计师,在Unix下只用C语言做了10年系统级程式设计。当用Java,C++甚至是javascript时,其学习时间只是1天,很快就比做了几年专门java程式设计的程式设计师还精通。如何才是软体开发人员的本质力量?什么才能让他们在变化万千的新技术面前屹立不倒,乘风破浪?
计算机工程能力
我们认为计算机工程能力包含两方面的内容:1核心知识架构;2计算机的思维方式。什么是核心知识架构呢?是反应该领域最基本规律和支撑技术的知识。简单地说就是传统的作业系统、编译、资料库。作业系统将硬体、软体、高阶语言和汇编融汇在一起,它几乎包括了软体工程中所有重要的因素。举一个简单的例子,似乎只有面向物件这种“高阶东西”才有的虚拟函式运用,其实在Linux中就有相应的虚档案系统。作业系统是最为复杂的计算机工程之一。编译融汇了大量的演算法,而且能让大家真正看“穿”语言的外表,深入到其内里,体现了最根本的计算机技术。其优化技术,也深刻地和硬体交融在一起,很好体现了底层风范。资料库,不仅是运用演算法最多的地方,甚至是超越作业系统的一个复杂的系统,从快取技术到i/o优化,到索引,再到事务处理,无一不是反映计算机最深刻规律。大家可以发现,所谓核心知识架构,都具有两个特点,反映本质规律,体现软硬融汇交织。也只有这样,才能建立下面谈到的“计算机思维方式”。
核心知识架构
为什么我们没包括一些新兴的语言和技术呢?似乎它们很“实用”。而且已经出现的问题是,按照传统科目和方式学习后,学生在企业什么都不会。这也正是大家关注工程教育的初衷。为什么不强调这些新兴实用技术的教育还在强调“古老”的“基础”。计算机领域一个显著的特点是,表面上知识更新非常快,新技术、语言层出不穷。这很容易导致当我们发现学生能力欠缺时,将问题归罪于新技术的学习不得力,知识结构老化。但其实目前的问题可以从另外一个角度考虑,是否是基础教育不得力?分析国外著名大学,如斯坦福、伯克利的课程,我们发现两个特点:1关键的基础课程,如作业系统、编译原理、资料库,始终是其最重要的课程,并没有过分追逐各种“新潮”技术。2学生一学期能修的课程非常有限,一般为3门课。而国内却呈现相反的状况,比如编译原理被降到了选修课的角色,新潮课程层出不穷,一个学生二年级一学期要修13门课。在这种走马观花的状况下,计算机这种具有强烈“手艺”色彩和工程实践的学科,被完全纸上谈兵化。而一些可怜的实验内容,还被学生的复制拷贝所湮没。我们认为,恰恰是这种情况,使得基础核心知识教育没有工程化,没有充分动手,导致了基础知识教育某种程度上的巨大失败。从以下鲜明的对比可以窥见问题的端倪:国内学生反映作业系统课程是文科课程只需要背条款考试即可;而相对地,国外著名高校作业系统课程要求学生实现“小”作业系统。国内资料库只讲其应用如大量讲解sql等运用,sql即使非计算机专业人士也很容易学习,这也是它被发明的初衷。斯坦福的资料库课程中有一门需要实现一个数据库系统。在笔者走访的计算机工程上优秀的人才,发现其共同的特点就是在诸如作业系统或资料库上都有很深入的学习经历,比如前面提及的自己构建过汉化DOS系统,或者在Unix下,做核心以及驱动很多年等。而当他们接触新技术时,之前深刻的经验和淬炼的思维就让他们如虎添翼,快人一等。更有甚者,国外真正的最顶级专家,都是在这些领域有无与伦比水平的专家,从delphi的缔造者,转战到微软并入主平台的开发,也可看到雄厚的底层知识和能力的巨大作用。所以“老”知识并不是障碍,而是通向天堂的阶梯。究其原因,就涉及到工程能力的第2个方面,计算机思维方式。
计算机思维方式
对非专业人士它是很抽象的概念,而对真正专业人士,这又是一个非常鲜活的概念。这里限于篇幅,我们只举一个简单的例子。面对在C++中外部程式码如何直接修改私有变数的问题,计算机的思维方式就是:物件也是放在记忆体中,只要能拿到物件的地址,并知道物件的布局,那么就可修改。而没有建立这种思维的人,就完全被高阶语言的语法所左右,无从下手。一句话,无法看到本质,没有从下而上的底层思维。核心知识课程的有效深入教学和计算机思维方式建立有何直接关系呢?我们认为核心知识因为其反应了计算机本质规律,而且从底层建立起来,所以对其深入掌握运用后,它从开始的逼迫到最后的陶冶,最终潜移默化地让受众建立起“计算机思维方式”。而这正是计算机工程师安身立命之本,就如同音乐家有其独特的音乐思维方式一样。为什么诸如java之类的课程于建立计算机基本思维不太合适呢?因为它更高层,无法让学生看到最下面。而唯有彻底、深刻和系统的底层淬炼,才能真正建立起“计算机思维方式”。
3如何打造强大的计算机工程能力
大家一方面指责基础课程的“空洞”、“无用”、“陈旧”;另一方面在不断开设的海量新课和技术中压得学生更加远离程式设计,远离实践。即使能培养出熟悉某种语言的学生,也无法看到他们和培训学校有何不同。实训也似乎没有根本解决问题,我们在实践中发现,往往是那些自己醉心于程式设计的学生最后有着卓越的表现。让基础知识能支撑和指导实践,而非仅仅“符号”,并引导学生进行高效的实践。
“3块连一线”,4门基础课程整合打造核心知识架构
我们将4门基本课程进行贯通式整合,着力塑造学生的“计算机思维”。下层的是3门基础课在上一小节探讨了其在工程能力训练上不可替代的重要地位,对软体开发环境产生支撑。而软体开发环境又通过精心的设计和工程实践,从应用角度将3门课程所学的知识串联起来。从而将基础知识和工程开发更有机整合在一起。首先,阐述为什么将以上课程整合在一起的理由。要回答这个问题,必须先回答什么东西支撑了优秀程式设计师。在我们的调查人员中,无一例外地都具有很深厚的底层软体开发背景。有长期从DOS的Hack入手的;有长期从事Unix核心程式设计的;有从Windows的driver起步的;有以反汇编逆向为根基的。长期在最底层的经历,使他们建立了最真实和能触控的系统观,能以计算机的方式思考。所以面临新技术时,他们能透过新形式很快把握其精髓,深刻地把握其实质。“太阳下面没有真正的新事物”,例如号称21世纪最新的重要的软体技术AOPAspectOrientedProgramming,AOP,其实在20世纪60年代就出现在了汇编一级的软体技术中,它本质就是钩子技术的系统化。在底层的软体世界,我们不仅能够用到那些所谓的最新的技术,而且能看到其本质我们可能就是用机器码自己构建出来的,而不被新技术的华丽外衣障目。这些使得具有底层经验的开发者,更有创造力,更能创造,也更能洞察迷乱后的本质,庖丁解牛,解决那些异常复杂的工程问题。举一个笔者遇到的真例项子,一个具有深刻底层经验的程式设计师一直只有C语言和作业系统程式设计经验和一个只有深刻Java经验的程式设计师,在同时学习Javascript的闭包概念时,后者一个礼拜都还有些似是而非。前者很快就能自如运用,且最后指点了后者1个小时,后者顿时豁然开朗。这是典型的“新”与“老”,上层和底层经验在面对新事物时的对比。既然底层软体赋予我们如此强大的能力,那么哪些是底层软体呢?大家公认,作业系统、编译和资料库由来就是计算机工程自身的根基。所以,我们必须将这3门课涉及的知识好好淬炼。而如何将3门课的知识和我们日常的软体开发联络起来呢?如何用它们指导平时程式的开发呢我们大多数是开发使用者级软体,不会开发核心软体,因此许多人认为几乎整个在核心中的作业系统对使用者级软体开发无从指导?另一门课,《软体开发环境》解决了这一问题。它有一条主线,通过反汇编将C语言和汇编串联起来,让系统级的知识从高阶语言的面纱下展现出来。同时用逆向工程这把庖丁之刃,将编译、连结、面向物件等软体开发中的重要知识块剖剔,让底层与上层贯通一气。而逆向的技术技巧,本身也是非常高阶的软体开发技术。因此,我们用“3块连一线”来总结4门课的关系是最好不过了。为什么不纳入语言课程,比如C/C++语言?从我们的工程经验来看,语言只是计算机原理和思想的载体,是表述方式而已。为了表述形式而专门花大力气是不值得的。比如,国外的著名大学很多都不开设语言课,在其他课程作业中必须用C语言程式设计,学生们就在那里锻炼了。真正的语言的力量并非来自语言本身,而是底层知识为支撑的专案锻炼。我们的思路是以构建式完成大量的完整系统的编写,这样就很好锻炼了软体开发和工程能力。同时,“软体开发环境”本身从逆向层面也对语言有了深刻的剖析,这是纯粹的语言课难以完成的。另外,从大纲安排上,我们在大一就会让学生用C语言来初步接触程式编写,这时并不适合放入太高阶主题。而在教学中,语言的力量已经渗透到一个个工程构建中,随风潜入夜了。为什么不纳入演算法课程?从某种程度上,“程式就是演算法与资料结构吗”?我们认为在系统中运用演算法,演算法才具有生命力。而编译、作业系统、资料库以及我们专门设立的一些课程设计将全面运用各种演算法和资料结构。在实战中运用并学习提升才是王道。这也正是构建式学习的精髓所在,这也正是探索式学习培养学生的创造能力的精髓所在。演算法课已经为我们准备了元件,就看你怎么去组装甚至改造。
以构建主义的思路,深度实践的风格改革课程
前面我们论述了底层知识架构的重要性,那么怎么来将它们实际地建立在学生的工程实践中呢?简单地说就是“构建一个具体而微的系统”。讲作业系统就构建一个小作业系统,讲编译原理就构建一个我译器。同时,设计一些跨度较大的课程设计覆盖这些课程的一些重点内容。构建完整系统本身就可真实淬炼工程能力,而这些内容的复杂性、难度以及运用知识点的广度,本身就超越了简单的企业实训专案,在培养人才方面具有系统性、完整性、挑战性独特优点。我们需要的是运用团队的思路和现代软体工程的手段,将其开发过程管理发起来,从而熟悉企业级开发的工具链,将软体工程学到的知识贯通到实作中。这也回答了“和以前相似的强调基础课程教育,什么特点使得我们的做法能获得强大的工程能力?”这一问题。以前更多注重理论知识的学习,而现在的做法是回归计算机工程的自身科学规律———实践为王。
改革考核评价标准,充分强调动手实践
以前我们一直是卷面考试,实验分数只是象征性的点缀。这本身违反了计算机工程的特点。只有改变评价考核标准,才能真正驱动学生充分锻炼工程。在课程软体开发环境中,我们采取了平时的考试结合期末考试的方式,而两者均为软体编写。期末考试在实验室上机编撰指定题目。不强调对一些函式名等死知识点的记忆,可以用线上帮助。这本身也符合软体开发的规律。
4结束语
我们在计算机工程教育上试图做一些回归本质的工作,也取得了一些效果。比如在软体开发环境中,学生普遍认为:“似乎将3年学的程式课全学习了,收获很大”。更有同学,在外企公司的面试中,直接运用了课堂上的知识,这在传统的教学环节中是难以获取的。但整个工作尚在起步阶段,所以仍有很多工作需要做,许多环节需要优化。我们希望在以后的工作中更深入探索工程教育的规律和本质。
不高。论文80分儿挺好拿的,并不是说可以随便糊弄糊弄就拿80分,而是认真做的话,其实80分很容易,哈工大毕业论文80分不高。毕业论文是按一门课程计,是普通中等专
随着社会的发展和社会对人才的需求,计算机类课程已成为一门所有专业的公共课程。下面是我为大家整理的计算机类 毕业 论文5000字,希望对大家有帮助。 谈计算机
18个学分, 算入绩点。
计算机病毒论文计算机病毒是一个程序,一段可执行码。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒可以很快地蔓延,又常常难以根除。它们能把自身附着在各种
当今时代,随着科学技术不断发展,计算机已成为处理信息的主要工具之一。掌握计算机的基础知识和基本操作技能是科学发展和走向未来信息化时代的需要。下面是我为大家整理的