近年来,随着就业竞争越演越烈,关于 毕业 生就业质量问题的研讨亦日益广泛深入。下面是我为大家推荐的计算机论文,供大家参考。
计算机论文 范文 一:认知无线电系统组成与运用场景探析
认知无线电系统组成
认知无线电系统是指采用认知无线电技术的无线通信系统,它借助于更加灵活的收发信机平台和增强的计算智能使得通信系统更加灵活。认知无线电系统主要包括信息获取、学习以及决策与调整3个功能模块,如图1所示[3]。
认知无线电系统的首要特征是获取无线电外部环境、内部状态和相关政策等知识,以及监控用户需求的能力。认知无线电系统具备获取无线电外部环境并进行分析处理的能力,例如,通过对当前频谱使用情况的分析,可以表示出无线通信系统的载波频率和通信带宽,甚至可以得到其覆盖范围和干扰水平等信息;认知无线电系统具备获取无线电内部状态信息能力,这些信息可以通过其配置信息、流量负载分布信息和发射功率等来得到;认知无线电系统具备获取相关政策信息的能力,无线电政策信息规定了特定环境下认知无线电系统可以使用的频带,最大发射功率以及相邻节点的频率和带宽等;认知无线电系统具备监控用户需求并根据用户需求进行决策调整的能力。如表1所示,用户的业务需求一般可以分为话音、实时数据(比如图像)和非实时数据(比如大的文件包)3类,不同类型的业务对通信QoS的要求也不同。
认知无线电系统的第2个主要特征是学习的能力。学习过程的目标是使用认知无线电系统以前储存下来的决策和结果的信息来提高性能。根据学习内容的不同, 学习 方法 可以分为3类。第一类是监督学习,用于对外部环境的学习,主要是利用实测的信息对估计器进行训练;第2类是无监督学习,用于对外部环境的学习,主要是提取外部环境相关参数的变化规律;第3类是强化学习,用于对内部规则或行为的学习,主要是通过奖励和惩罚机制突出适应当前环境的规则或行为,抛弃不适合当前环境的规则或行为。机器学习技术根据学习机制可以分为:机械式学习、基于解释的学习、指导式学习、类比学习和归纳学习等。
认知无线电系统的第3个主要特性是根据获取的知识,动态、自主地调整它的工作参数和协议的能力,目的是实现一些预先确定的目标,如避免对其他无线电系统的不利干扰。认知无线电系统的可调整性不需要用户干涉。它可以实时地调整工作参数,以达到合适的通信质量;或是为了改变某连接中的无线接入技术;或是调整系统中的无线电资源;或是为了减小干扰而调整发射功率。认知无线电系统分析获取的知识,动态、自主地做出决策并进行重构。做出重构决策后,为响应控制命令,认知无线电系统可以根据这些决策来改变它的工作参数和/或协议。认知无线电系统的决策过程可能包括理解多用户需求和无线工作环境,建立政策,该政策的目的是为支持这些用户的共同需求选择合适的配置。
认知无线电与其他无线电的关系
在认知无线电提出之前,已经有一些“某某无线电”的概念,如软件定义无线电、自适应无线电等,它们与认知无线电间的关系如图2所示。软件定义无线电被认为是认知无线电系统的一种使能技术。软件定义无线电不需要CRS的特性来进行工作。SDR和CRS处于不同的发展阶段,即采用SDR应用的无线电通信系统已经得到利用,而CRS正处于研究阶段,其应用也正处于研究和试验当中。SDR和CRS并非是无线电通信业务,而是可以在任何无线电通信业务中综合使用的技术。自适应无线电可以通过调整参数与协议,以适应预先设定的信道与环境。与认知无线电相比,自适应无线电由于不具有学习能力,不能从获取的知识与做出的决策中进行学习,也不能通过学习改善知识获取的途径、调整相应的决策,因此,它不能适应未预先设定的信道与环境。可重构无线电是一种硬件功能可以通过软件控制来改变的无线电,它能够更新部分或全部的物理层波形,以及协议栈的更高层。基于策略的无线电可以在未改变内部软件的前提下通过更新来适应当地监管政策。对于较新的无线电网络,因特网路由器一直都是基于策略的。这样,网络运营商就可以使用策略来控制访问权限、分配资源以及修改网络拓扑结构和行为。对于认知无线电来说,基于策略技术应该能够使产品可以在全世界通用,可以自动地适应当地监管要求,而且当监管规则随时间和 经验 变化时可以自动更新。智能无线电是一种根据以前和当前情况对未来进行预测,并提前进行调整的无线电。与智能无线电比较,自适应无线电只根据当前情况确定策略并进行调整,认知无线电可以根据以前的结果进行学习,确定策略并进行调整。
认知无线电关键技术
认知无线电系统的关键技术包括无线频谱感知技术、智能资源管理技术、自适应传输技术与跨层设计技术等,它们是认知无线电区别传统无线电的特征技术[4,5]。
频谱检测按照检测策略可以分为物理层检测、MAC层检测和多用户协作检测,如图3所示。3.1.1物理层检测物理层的检测方法主要是通过在时域、频域和空域中检测授权频段是否存在授权用户信号来判定该频段是否被占用,物理层的检测可以分为以下3种方式:发射机检测的主要方法包括能量检测、匹配滤波检测和循环平稳特性检测等,以及基于这些方法中某一种的多天线检测。当授权用户接收机接收信号时,需要使用本地振荡器将信号从高频转换到中频,在这个转换过程中,一些本地振荡器信号的能量不可避免地会通过天线泄露出去,因而可以通过将低功耗的检测传感器安置在授权用户接收机的附近来检测本振信号的能量泄露,从而判断授权用户接收机是否正在工作。干扰温度模型使得人们把评价干扰的方式从大量发射机的操作转向了发射机和接收机之间以自适应方式进行的实时性交互活动,其基础是干扰温度机制,即通过授权用户接收机端的干扰温度来量化和管理无线通信环境中的干扰源。MAC层检测主要关注多信道条件下如何提高吞吐量或频谱利用率的问题,另外还通过对信道检测次序和检测周期的优化,使检测到的可用空闲信道数目最多,或使信道平均搜索时间最短。MAC层检测主要可以分为以下2种方式:主动式检测是一种周期性检测,即在认知用户没有通信需求时,也会周期性地检测相关信道,利用周期性检测获得的信息可以估计信道使用的统计特性。被动式检测也称为按需检测,认知用户只有在有通信需求时才依次检测所有授权信道,直至发现可用的空闲信道。由于多径衰落和遮挡阴影等不利因素,单个认知用户难以对是否存在授权用户信号做出正确的判决,因此需要多个认知用户间相互协作,以提高频谱检测的灵敏度和准确度,并缩短检测的时间。协作检测结合了物理层和MAC层功能的检测技术,不仅要求各认知用户自身具有高性能的物理层检测技术,更需要MAC层具有高效的调度和协调机制。
智能资源管理的目标是在满足用户QoS要求的条件下,在有限的带宽上最大限度地提高频谱效率和系统容量,同时有效避免网络拥塞的发生。在认知无线电系统中,网络的总容量具有一定的时变性,因此需要采取一定的接入控制算法,以保障新接入的连接不会对网络中已有连接的QoS需求造成影响。动态频谱接入概念模型一般可分为图4所示的3类。动态专用模型保留了现行静态频谱管理政策的基础结构,即频谱授权给特定的通信业务专用。此模型的主要思想是引入机会性来改善频谱利用率,并包含2种实现途径:频谱产权和动态频谱分配。开放共享模型,又称为频谱公用模型,这个模型向所有用户开放频谱使其共享,例如ISM频段的开放共享方式。分层接入模型的核心思想是开放授权频谱给非授权用户,但在一定程度上限制非授权用户的操作,以免对授权用户造成干扰,有频谱下垫与频谱填充2种。认知无线电中的频谱分配主要基于2种接入策略:①正交频谱接入。在正交频谱接入中,每条信道或载波某一时刻只允许一个认知用户接入,分配结束后,认知用户之间的通信信道是相互正交的,即用户之间不存在干扰(或干扰可以忽略不计)。②共享频谱接入。在共享频谱接入中,认知用户同时接入授权用户的多条信道或载波,用户除需考虑授权用户的干扰容限外,还需要考虑来自其他用户的干扰。根据授权用户的干扰容限约束,在上述2种接入策略下又可以分为以下2种频谱接入模式:填充式频谱接入和下垫式频谱接入。对于填充式频谱接入,认知用户伺机接入“频谱空穴”,它们只需要在授权用户出现时及时地出让频谱而不存在与授权用户共享信道时的附加干扰问题,此种方法易于实现,且不需要现有通信设备提供干扰容限参数。在下垫式频谱接入模式下,认知用户与授权用户共享频谱,需要考虑共用信道时所附加的干扰限制。
在不影响通信质量的前提下,进行功率控制尽量减少发射信号的功率,可以提高信道容量和增加用户终端的待机时间。认知无线电网络中的功率控制算法设计面临的是一个多目标的联合优化问题,由于不同目标的要求不同,存在着多种折中的方案。根据应用场景的不同,现有的认知无线电网络中的功率控制算法可以分成2大类:一是适用于分布式场景下的功率控制策略,一是适用于集中式场景下的功率控制策略。分布式场景下的功率控制策略大多以博弈论为基础,也有参考传统Adhoc网络中功率控制的方法,从集中式策略入手,再将集中式策略转换成分布式策略;而集中式场景下的功率控制策略大多利用基站能集中处理信息的便利,采取联合策略,即将功率控制与频谱分配结合或是将功率控制与接入控制联合考虑等。
自适应传输可以分为基于业务的自适应传输和基于信道质量的自适应传输。基于业务的自适应传输是为了满足多业务传输不同的QoS需求,其主要在上层实现,不用考虑物理层实际的传输性能,目前有线网络中就考虑了这种自适应传输技术。认知无线电可以根据感知的环境参数和信道估计结果,利用相关的技术优化无线电参数,调整相关的传输策略。这里的优化是指无线通信系统在满足用户性能水平的同时,最小化其消耗的资源,如最小化占用带宽和功率消耗等。物理层和媒体控制层可能调整的参数包括中心频率、调制方式、符号速率、发射功率、信道编码方法和接入控制方法等。显然,这是一种非线性多参数多目标优化过程。
现有的分层协议栈在设计时只考虑了通信条件最恶劣的情况,导致了无法对有限的频谱资源及功率资源进行有效的利用。跨层设计通过在现有分层协议栈各层之间引入并传递特定的信息来协调各层之间的运行,以与复杂多变的无线通信网络环境相适应,从而满足用户对各种新的业务应用的不同需求。跨层设计的核心就是使分层协议栈各层能够根据网络环境以及用户需求的变化,自适应地对网络的各种资源进行优化配置。在认知无线电系统中,主要有以下几种跨层设计技术:为了选择合适的频谱空穴,动态频谱管理策略需要考虑高层的QoS需求、路由、规划和感知的信息,通信协议各层之间的相互影响和物理层的紧密结合使得动态频谱管理方案必须是跨层设计的。频谱移动性功能需要同频谱感知等其他频谱管理功能结合起来,共同决定一个可用的频段。为了估计频谱切换持续时间对网络性能造成的影响,需要知道链路层的信息和感知延迟。网络层和应用层也应该知道这个持续时间,以减少突然的性能下降;另外,路由信息对于使用频谱切换的路由发现过程也很重要。频谱共享的性能直接取决于认知无线电网络中频谱感知的能力,频谱感知主要是物理层的功能。然而,在合作式频谱感知情况下,认知无线电用户之间需要交换探测信息,因此频谱感知和频谱共享之间的跨层设计很有必要。在认知无线电系统中,由于多跳通信中的每一跳可用频谱都可能不同,网络的拓扑配置就需要知道频谱感知的信息,而且,认知无线电系统路由设计的一个主要思路就是路由与频谱决策相结合。
认知无线电应用场景
认知无线电系统不仅能有效地使用频谱,而且具有很多潜在的能力,如提高系统灵活性、增强容错能力和提高能量效率等。基于上述优势,认知无线电在民用领域和军用领域具有广阔的应用前景。
频谱效率的提高既可以通过提高单个无线接入设备的频谱效率,也可以通过提高各个无线接入技术的共存性能。这种新的频谱利用方式有望增加系统的性能和频谱的经济价值。因此,认知无线电系统的这些共存/共享性能的提高推动了频谱利用的一种新方式的发展,并且以一种共存/共享的方式使获得新的频谱成为可能。认知无线电系统的能力还有助于提高系统灵活性,主要包括提高频谱管理的灵活性,改善设备在生命周期内操作的灵活性以及提高系统鲁棒性等。容错性是通信系统的一项主要性能,而认知无线电可以有效改善通信系统的容错能力。通常容错性主要是基于机内测试、故障隔离和纠错 措施 。认知无线电对容错性的另一个优势是认知无线电系统具有学习故障、响应和错误信息的能力。认知无线电系统可以通过调整工作参数,比如带宽或者基于业务需求的信号处理算法来改善功率效率。
认知无线电所要解决的是资源的利用率问题,在农村地区应用的优势可以 总结 为如下。农村无线电频谱的使用,主要占用的频段为广播、电视频段和移动通信频段。其特点是广播频段占用与城市基本相同,电视频段利用较城市少,移动通信频段占用较城市更少。因此,从频率域考虑,可利用的频率资源较城市丰富。农村经济发达程度一般不如城市,除电视频段的占用相对固定外,移动通信的使用率不及城市,因此,被分配使用的频率利用率相对较低。由于农村地广人稀,移动蜂窝受辐射半径的限制,使得大量地域无移动通信频率覆盖,尤其是边远地区,频率空间的可用资源相当丰富。
在异构无线环境中,一个或多个运营商在分配给他们的不同频段上运行多种无线接入网络,采用认知无线电技术,就允许终端具有选择不同运营商和/或不同无线接入网络的能力,其中有些还可能具有在不同无线接入网络上支持多个同步连接的能力。由于终端可以同时使用多种 无线网络 ,因此应用的通信带宽增大。随着终端的移动和/或无线环境的改变,可以快速切换合适的无线网络以保证稳定性。
在军事通信领域,认知无线电可能的应用场景包括以下3个方面。认知抗干扰通信。由于认知无线电赋予电台对周围环境的感知能力,因此能够提取出干扰信号的特征,进而可以根据电磁环境感知信息、干扰信号特征以及通信业务的需求选取合适的抗干扰通信策略,大大提升电台的抗干扰水平。战场电磁环境感知。认知无线电的特点之一就是将电感环境感知与通信融合为一体。由于每一部电台既是通信电台,也是电磁环境感知电台,因此可以利用电台组成电磁环境感知网络,有效地满足电磁环境感知的全时段、全频段和全地域要求。战场电磁频谱管理。现代战场的电磁频谱已经不再是传统的无线电通信频谱,静态的和集重视的频谱管理策略已不能满足灵活多变的现代战争的要求。基于认知无线电技术的战场电磁频谱管理将多种作战要素赋予频谱感知能力,使频谱监测与频谱管理同时进行,大大提高了频谱监测网络的覆盖范围,拓宽了频谱管理的涵盖频段。
结束语
如何提升频谱利用率,来满足用户的带宽需求;如何使无线电智能化,以致能够自主地发现何时、何地以及如何使用无线资源获取信息服务;如何有效地从环境中获取信息、进行学习以及做出有效的决策并进行调整,所有这些都是认知无线电技术要解决的问题。认知无线电技术的提出,为实现无线环境感知、动态资源管理、提高频谱利用率和实现可靠通信提供了强有力的支撑。认知无线电有着广阔的应用前景,是无线电技术发展的又一个里程碑。
计算机论文范文二:远程无线管控体系的设计研究
1引言
随着我国航天事业的发展,测量船所承担的任务呈现高密度、高强度的趋势,造成码头期间的任务准备工作越来越繁重,面临着考核项目多、考核时间短和多船协调对标等现实情况,如何提高对标效率、确保安全可靠对标成为紧迫的课题。由于保密要求,原研制的远程标校控制系统无法接入现有网络,而铺设专网的耗资巨大,性价比低,也非首选方案。近些年来,无线通信已经成为信息通信领域中发展最快、应用最广的技术,广泛应用于家居、农业、工业、航天等领域,已成为信息时代社会生活不可或缺的一部分[1],这种技术也为解决测量船远程控制标校设备提供了支持。本文通过对常用中远距离无线通信方式的比较,择优选择了无线网桥,采用了桥接中继的网络模式,通过开发远程设备端的网络控制模块,以及相应的控制软件,实现了测量船对远程设备的有效、安全控制。
2无线通信方式比较
无线通信技术是利用电磁波信号在自由空间中进行信息传播的一种通信方式,按技术形式可分为两类:一是基于蜂窝的接入技术,如蜂窝数字分组数据、通用分组无线传输技术、EDGE等;二是基于局域网的技术,如WLAN、Bluetooth、IrDA、Home-RF、微功率短距离无线通信技术等。在中远距离无线通信常用的有ISM频段的通信技术(比如ZigBee以及其他频段的数传模块等)和无线 网络技术 (比如GSM、GPRS以及无线网桥等)。基于ISM频段的数传模块的通信频率为公共频段,产品开发没有限制,因此发展非常迅速,得到了广泛应用。特别是近年来新兴的ZigBee技术,因其低功耗、低复杂度、低成本,尤其是采用自组织方式组网,对网段内设备数量不加限制,可以灵活地完成网络链接,在智能家居、无线抄表等网络系统开发中得到应用[2]。但是,对于本系统的开发而言,需要分别研制控制点和被控制点的硬件模块,并需通过软件配置网络环境,开发周期长,研制成本高,故非本系统开发的最优方案。
GSM、GPRS这种无线移动通信技术已经成为人们日常生活工作必不可少的部分,在其他如无线定位、远程控制等领域的应用也屡见不鲜[3],但是由于保密、通信费用、开发成本等因素,也无法适用于本系统的开发。而无线网桥为本系统的低成本、高效率的研发提供了有利支持,是开发本系统的首选无线通信方式。无线网桥是无线网络的桥接,它可在两个或多个网络之间搭起通信的桥梁,也是无线接入点的一个分支。无线网桥工作在2•4GHz或5•8GHz的免申请无线执照的频段,因而比其他有线网络设备更方便部署,特别适用于城市中的近距离、远距离通信。
3系统设计
该远程控制系统是以保障测量船对远端标校设备的有效控制为目标,包括标校设备的开关机、状态参数的采集等,主要由测量船控制微机、标校设备、网络控制模块、主控微机以及无线网桥等组成。工作流程为测量船控制微机或主控微机发送控制指令,通过无线网桥进行信息传播,网络控制模块接收、解析指令,按照Modbus协议规定的数据格式通过串口发给某一标校设备,该标校设备响应控制指令并执行;网络控制模块定时发送查询指令,并将采集的状态数据打包,通过无线发给远程控制微机,便于操作人员监视。网络通信协议采用UDP方式,对于测量船控制微机、主控微机仅需按照一定的数据格式发送或接收UDP包即可。网络控制模块是系统的核心部件,是本文研究、设计的重点。目前,常用的网络芯片主要有ENC28J60、CP2200等,这里选用了ENC28J60,设计、加工了基于STC89C52RC单片机的硬件电路。通过网络信息处理软件模块的开发,满足了网络信息交互的功能要求;通过Modbus串口协议软件模块的开发,满足了标校设备监控功能,从而实现了系统设计目标。
3.1组网模式
无线网桥有3种工作方式,即点对点、点对多点、中继连接。根据系统的控制要求以及环境因素,本系统采用了中继连接的方式,其网络拓扑如图1所示。从图中可以清晰看出,这种中继连接方式在远程控制端布置两个无线网桥,分别与主控点和客户端进行通信,通过网络控制模块完成数据交互,从而完成组网。
3.2安全防范
由于是开放性设计,无线网络安全是一个必须考虑的问题。本系统的特点是非定时或全天候开机,涉密数据仅为频点参数,而被控设备自身均有保护措施(协议保护)。因此,系统在设计时重点考虑接入点防范、防止攻击,采取的措施有登录密码设施、网络密匙设置、固定IP、对数据结构体的涉密数据采取动态加密等方式,从而最大限度地防止了“被黑”。同时,采用了网络防雷器来防护雷电破坏。
3.3网络控制模块设计
3.3.1硬件设计
网络控制模块的功能是收命令信息、发状态信息,并通过串口与标校设备实现信息交互,其硬件电路主要由MCU(微控制单元)、ENC28J60(网络芯片)、Max232(串口芯片)以及外围电路组成,其电原理图如图2所示。硬件设计的核心是MCU、网络芯片的选型,本系统MCU选用的STC89C52RC单片机,是一种低功耗、高性能CMOS8位微控制器,可直接使用串口下载,为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。ENC28J60是由M-icrochip公司出的一款高集成度的以太网控制芯片,其接口符合IEEE802.3协议,仅28个引脚就可提供相应的功能,大大简化了相关设计。ENC28J60提供了SPI接口,与MCU的通信通过两个中断引脚和SPI实现,数据传输速率为10Mbit/s。ENC28J60符合IEEE802.3的全部规范,采用了一系列包过滤机制对传入的数据包进行限制,它提供了一个内部DMA模块,以实现快速数据吞吐和硬件支持的IP校验和计算[4]。ENC28J60对外网络接口采用HR911102A,其内置有网络变压器、电阻网络,并有状态显示灯,具有信号隔离、阻抗匹配、抑制干扰等特点,可提高系统抗干扰能力和收发的稳定性。
3.3.2软件设计
网络控制模块的软件设计主要包括两部分,一是基于SPI总线的ENC28J60的驱动程序编写,包括以太网数据帧结构定义、初始化和数据收发;二是Modbus协议编制,其软件流程如图3所示。
3.3.2.1ENC28J60的驱动程序编写
(1)以太网数据帧结构符合IEEE802.3标准的以太网帧的长度是介于64~1516byte之间,主要由目标MAC地址、源MAC地址、类型/长度字段、数据有效负载、可选填充字段和循环冗余校验组成。另外,在通过以太网介质发送数据包时,一个7byte的前导字段和1byte的帧起始定界符被附加到以太网数据包的开头。以太网数据包的结构如图4所示。(2)驱动程序编写1)ENC28J60的寄存器读写规则由于ENC28J60芯片采用的是SPI串行接口模式,其对内部寄存器读写的规则是先发操作码<前3bit>+寄存器地址<后5bit>,再发送欲操作数据。通过不同操作码来判别操作时读寄存器(缓存区)还是写寄存器(缓冲区)或是其他。2)ENC28J60芯片初始化程序ENC28J60发送和接收数据包前必须进行初始化设置,主要包括定义收发缓冲区的大小,设置MAC地址与IP地址以及子网掩码,初始化LEDA、LEDB显示状态通以及设置工作模式,常在复位后完成,设置后不需再更改。3)ENC28J60发送数据包ENC28J60内的MAC在发送数据包时会自动生成前导符合帧起始定界符。此外,也会根据用户配置以及数据具体情况自动生成数据填充和CRC字段。主控器必须把所有其他要发送的帧数据写入ENC28J60缓冲存储器中。另外,在待发送数据包前要添加一个包控制字节。包控制字节包括包超大帧使能位(PHUGEEN)、包填充使能位(PPADEN)、包CRC使能位(PCRCEN)和包改写位(POVERRIDE)4个内容。4)ENC28J60接收数据包如果检测到EIR.PKTIF为1,并且EPKTCNT寄存器不为空,则说明接收到数据,进行相应处理。
3.3.2.2ModBus协议流程
本系统ModBus协议的数据通信采用RTU模式[5],网络控制模块作为主节点与从节点(标校设备)通过串口建立连接,主节点定时向从节点发送查询命令,对应从节点响应命令向主节点发送设备状态信息。当侦测到网络数据时,从ENC28J60接收数据包中解析出命令,将对应的功能代码以及数据,按照Modbus数据帧结构进行组帧,发送给从节点;对应从节点响应控制命令,进行设备参数设置。
4系统调试与验证
试验调试环境按照图1进行布置,主要包括5个无线网桥、1个主控制点、2个客户端、1块网络控制模块板以及标校设备等,主要测试有网络通信效果、网络控制能力以及简单的安全防护测试。测试结论:网络连接可靠,各控制点均能安全地对远端设备进行控制,具备一定安全防护能力,完全满足远程设备控制要求。
5结束语
本文从实际需要出发,通过对当下流行的无线通信技术的比较,选用无线网桥实现远控系统组网;通过开发网络控制模块,以及相应的控制软件编制,研制了一套用于测量船远程控制设备的系统。经几艘测量船的应用表明,采用无线网桥进行组网完全满足系统设计要求,具有高安全性、高可靠性、高扩展性等优点,在日趋繁重的保障任务中发挥了重要的作用。本系统所采用的无线组网方法,以及硬件电路的设计方案,对其他相关控制领域均有一定的参考价值。
免费查阅文献的刊物,你可以看看(计算机科学与应用)等等这些
近年来,随着全球网际网路技术的普及、计算机技术的迅猛发展、数字技术的瞬息万变,计算机工程在人们生活、生产中的应用越来越广泛。下面是我为大家整理的计算机工程毕业论文,供大家参考。
计算机软体大体分为三类,一种是总述,一种是系统软体,一种是应用软体,系统软体的作用是促使各个硬体按照一定的规律协调工作,保证计算机处于正常运转状态。而应用软体的作用则是为了实现某种使用愿望而开发出来的软体。
1计算机软体工程专案管理的基本概念
1.1工程专案管理的含义工程专案管理主要是业主通过委托从事工程专案管理的企业,签署相关协议,工程专案管理企业有义务和权力代表业主在工程专案进行的情况卜干预和服务。工程专案管理企业可以协助业主同项目工程总承包签订一系列合同,只是起到辅助性作用,不直接与总承包企业或者施工、勘察、供货和设计签署协议或合同,工程专案管理企业有责任在施工过程中监督合同的完成情况。
1.2软体工程专案的概况
1.2.1管理人员开展有序的专案计划
企业必须把人员管理放在重要位置,在软体工程专案的开发上人员的调配问题是保证工程顺利进行的重要因素,因此,专案能否成功和工作人员的工作能力、写作能力息息相关,针对工程专案的操作类别不同,可以分配成各个研究小组,进行科学合理的针对性开发和高效的协作,有利于工程的快速推进和更加完善。小组内的人员根据自身优势,确定自己的工作内容和工作时间。对专案进行正确的认识和对风险进行评估,与此同时从节约成木的方而出发,形成科学的人力资源调配机制,使专案得以顺利开展。
1.2.2质量和配置管理工作
软体的质量管理工作是整个专案的核心工作,质量管理决定着计算机软体工程专案管理是否真正的成功,通过一系列保证质量的手段,有计划的编制、控制和保证专案质量。保证专案质量的方式可以通过定期的进行质量评估得以实现,在日常专案管理中要不断的对工作进行考查,对于专案不合格的地方要提出意见并且考虑整改措施,不断完善整个软体配置管理的记录工作,使专案的质量能有一定的检测体系,这样开发者会对专案工程的质量问题有比较深入的了解。
1.2.3风险评估和管理工作
风险管理大致分为两种工作,一种是风险识别,另一种是风险评估。得到评估结果以后要针对问题提出相应的解决办法,定期检测计算机软体工程的好处是可以减小产生风险的概率,还可以避免一些因疏忽而产生风险,使专案的损失减少到最低,也减少了因专案风险而造成的一些相关责任人的利益冲突。
2计算机软体工程专案管理中存在的问题
2.1管理团队的协作问题
分工合作是我们完成一个专案的基木因素,在软体开发方而更需要每个人的智慧一起凝聚出果实,共同享受成果,而目前在计算机软体工程专案管理方而资讯的交流方而存在一些问题,例如分工不清、团队不合作等问题。
2.2需求分析和实际中的业务存在差距问题
计算机软体工程专案没有结合实际的活动需求,也没有调查有效的资料分析,因此计算机软体工程专案管理在开发出新的产品以后并没有取得理想的业务效果。
2.3风险管理的问题
专案的风险工作是企业需要考虑的很重要的问题,如果风险没有相应科学管理,很容易带来巨大的损失,但是很多员工并不懂得如何规避风险,缺乏相应的专业知识,更是缺少对风险工作的管理,导致很多企业在风险来临时无法做出正确行动,造成巨大的经济损失。
3计算机软体工程专案管理的对策
3.1对风险管理和工作进度进行有效管理
制定风险管理制度。计算机软体工程专案管理的工作人员必须具有一定的风险识别意识和相应的遇到风险的专业知识,并且能有效的控制风险的能力。在平时要做好风险评估的管理报告,针对可能发生的风险要及时预测并且做出相应的解决行动。设定专门的人员对计算机软体工程专案定期进行风险的评估和检查工作。在整个专案中,根据需要进行多次的风险管理工作,因为风险无时无刻都有可能存在,检查的目的是尽量减少风险发生,在一般情况卜处理风险的措施一般有三种:减缓、规避和转移。提高工程的进度,不断的推进工程的工作效率。要制定详细的工作计划表,并且尽可能达到最高的工作目标。工作人员有严谨的工作态度和高效的作息时间安排,管理人员要密切关注工程进度,不断的督促员工完成应做的工作量,有条理、高效的完成对员工的工作任务的监督工作。
3.2建立完善的管理体系针对计算机软体工程的人员日常管理工作,要建立科学有效的管理方案。合理安排人才资源,确保在进行计算机软体专案工程时人员调配顺利进行。专业知识的培训对于工作人员来说
是必不可少的,可以极大的丰富计算机软体工程专案人员的专业水平和实践能力,减少工作上的失误,提高工作效率和工作人员的素质。奖罚制度是对企业员工优劣的衡量标准,所以在计算机软体工程专案管理方而采取奖罚制度可以极大程度上调动员工的积极性,使员工主动为企业创造效益,企业的发展才能有长远的未来。
3.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程式设计的程式设计师还精通。如何才是软体开发人员的本质力量?什么才能让他们在变化万千的新技术面前屹立不倒,乘风破浪?
2.1计算机工程能力
我们认为计算机工程能力包含两方面的内容:1核心知识架构;2计算机的思维方式。什么是核心知识架构呢?是反应该领域最基本规律和支撑技术的知识。简单地说就是传统的作业系统、编译、资料库。作业系统将硬体、软体、高阶语言和汇编融汇在一起,它几乎包括了软体工程中所有重要的因素。举一个简单的例子,似乎只有面向物件这种“高阶东西”才有的虚拟函式运用,其实在Linux中就有相应的虚档案系统。作业系统是最为复杂的计算机工程之一。编译融汇了大量的演算法,而且能让大家真正看“穿”语言的外表,深入到其内里,体现了最根本的计算机技术。其优化技术,也深刻地和硬体交融在一起,很好体现了底层风范。资料库,不仅是运用演算法最多的地方,甚至是超越作业系统的一个复杂的系统,从快取技术到i/o优化,到索引,再到事务处理,无一不是反映计算机最深刻规律。大家可以发现,所谓核心知识架构,都具有两个特点,反映本质规律,体现软硬融汇交织。也只有这样,才能建立下面谈到的“计算机思维方式”。
2.2核心知识架构
为什么我们没包括一些新兴的语言和技术呢?似乎它们很“实用”。而且已经出现的问题是,按照传统科目和方式学习后,学生在企业什么都不会。这也正是大家关注工程教育的初衷。为什么不强调这些新兴实用技术的教育还在强调“古老”的“基础”。计算机领域一个显著的特点是,表面上知识更新非常快,新技术、语言层出不穷。这很容易导致当我们发现学生能力欠缺时,将问题归罪于新技术的学习不得力,知识结构老化。但其实目前的问题可以从另外一个角度考虑,是否是基础教育不得力?分析国外著名大学,如斯坦福、伯克利的课程,我们发现两个特点:1关键的基础课程,如作业系统、编译原理、资料库,始终是其最重要的课程,并没有过分追逐各种“新潮”技术。2学生一学期能修的课程非常有限,一般为3门课。而国内却呈现相反的状况,比如编译原理被降到了选修课的角色,新潮课程层出不穷,一个学生二年级一学期要修13门课。在这种走马观花的状况下,计算机这种具有强烈“手艺”色彩和工程实践的学科,被完全纸上谈兵化。而一些可怜的实验内容,还被学生的复制拷贝所湮没。我们认为,恰恰是这种情况,使得基础核心知识教育没有工程化,没有充分动手,导致了基础知识教育某种程度上的巨大失败。从以下鲜明的对比可以窥见问题的端倪:国内学生反映作业系统课程是文科课程只需要背条款考试即可;而相对地,国外著名高校作业系统课程要求学生实现“小”作业系统。国内资料库只讲其应用如大量讲解sql等运用,sql即使非计算机专业人士也很容易学习,这也是它被发明的初衷。斯坦福的资料库课程中有一门需要实现一个数据库系统。在笔者走访的计算机工程上优秀的人才,发现其共同的特点就是在诸如作业系统或资料库上都有很深入的学习经历,比如前面提及的自己构建过汉化DOS系统,或者在Unix下,做核心以及驱动很多年等。而当他们接触新技术时,之前深刻的经验和淬炼的思维就让他们如虎添翼,快人一等。更有甚者,国外真正的最顶级专家,都是在这些领域有无与伦比水平的专家,从delphi的缔造者,转战到微软并入主平台的开发,也可看到雄厚的底层知识和能力的巨大作用。所以“老”知识并不是障碍,而是通向天堂的阶梯。究其原因,就涉及到工程能力的第2个方面,计算机思维方式。
2.3计算机思维方式
对非专业人士它是很抽象的概念,而对真正专业人士,这又是一个非常鲜活的概念。这里限于篇幅,我们只举一个简单的例子。面对在C++中外部程式码如何直接修改私有变数的问题,计算机的思维方式就是:物件也是放在记忆体中,只要能拿到物件的地址,并知道物件的布局,那么就可修改。而没有建立这种思维的人,就完全被高阶语言的语法所左右,无从下手。一句话,无法看到本质,没有从下而上的底层思维。核心知识课程的有效深入教学和计算机思维方式建立有何直接关系呢?我们认为核心知识因为其反应了计算机本质规律,而且从底层建立起来,所以对其深入掌握运用后,它从开始的逼迫到最后的陶冶,最终潜移默化地让受众建立起“计算机思维方式”。而这正是计算机工程师安身立命之本,就如同音乐家有其独特的音乐思维方式一样。为什么诸如java之类的课程于建立计算机基本思维不太合适呢?因为它更高层,无法让学生看到最下面。而唯有彻底、深刻和系统的底层淬炼,才能真正建立起“计算机思维方式”。
3如何打造强大的计算机工程能力
大家一方面指责基础课程的“空洞”、“无用”、“陈旧”;另一方面在不断开设的海量新课和技术中压得学生更加远离程式设计,远离实践。即使能培养出熟悉某种语言的学生,也无法看到他们和培训学校有何不同。实训也似乎没有根本解决问题,我们在实践中发现,往往是那些自己醉心于程式设计的学生最后有着卓越的表现。让基础知识能支撑和指导实践,而非仅仅“符号”,并引导学生进行高效的实践。
3.1“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语言来初步接触程式编写,这时并不适合放入太高阶主题。而在教学中,语言的力量已经渗透到一个个工程构建中,随风潜入夜了。为什么不纳入演算法课程?从某种程度上,“程式就是演算法与资料结构吗”?我们认为在系统中运用演算法,演算法才具有生命力。而编译、作业系统、资料库以及我们专门设立的一些课程设计将全面运用各种演算法和资料结构。在实战中运用并学习提升才是王道。这也正是构建式学习的精髓所在,这也正是探索式学习培养学生的创造能力的精髓所在。演算法课已经为我们准备了元件,就看你怎么去组装甚至改造。
3.2以构建主义的思路,深度实践的风格改革课程
前面我们论述了底层知识架构的重要性,那么怎么来将它们实际地建立在学生的工程实践中呢?简单地说就是“构建一个具体而微的系统”。讲作业系统就构建一个小作业系统,讲编译原理就构建一个我译器。同时,设计一些跨度较大的课程设计覆盖这些课程的一些重点内容。构建完整系统本身就可真实淬炼工程能力,而这些内容的复杂性、难度以及运用知识点的广度,本身就超越了简单的企业实训专案,在培养人才方面具有系统性、完整性、挑战性独特优点。我们需要的是运用团队的思路和现代软体工程的手段,将其开发过程管理发起来,从而熟悉企业级开发的工具链,将软体工程学到的知识贯通到实作中。这也回答了“和以前相似的强调基础课程教育,什么特点使得我们的做法能获得强大的工程能力?”这一问题。以前更多注重理论知识的学习,而现在的做法是回归计算机工程的自身科学规律———实践为王。
3.3改革考核评价标准,充分强调动手实践
以前我们一直是卷面考试,实验分数只是象征性的点缀。这本身违反了计算机工程的特点。只有改变评价考核标准,才能真正驱动学生充分锻炼工程。在课程软体开发环境中,我们采取了平时的考试结合期末考试的方式,而两者均为软体编写。期末考试在实验室上机编撰指定题目。不强调对一些函式名等死知识点的记忆,可以用线上帮助。这本身也符合软体开发的规律。
4结束语
我们在计算机工程教育上试图做一些回归本质的工作,也取得了一些效果。比如在软体开发环境中,学生普遍认为:“似乎将3年学的程式课全学习了,收获很大”。更有同学,在外企公司的面试中,直接运用了课堂上的知识,这在传统的教学环节中是难以获取的。但整个工作尚在起步阶段,所以仍有很多工作需要做,许多环节需要优化。我们希望在以后的工作中更深入探索工程教育的规律和本质。
84 浏览 2 回答
141 浏览 2 回答
140 浏览 2 回答
98 浏览 2 回答
336 浏览 2 回答
227 浏览 3 回答
286 浏览 3 回答
160 浏览 3 回答
264 浏览 3 回答
80 浏览 3 回答
140 浏览 1 回答
100 浏览 2 回答
102 浏览 2 回答
255 浏览 2 回答
307 浏览 4 回答