算机系毕业论文
算机系毕业论文
计算机专业是一门硬件与软件相结合、面向系统、更偏向应用的宽口径专业,由于现代化社会的不断需要,计算机专业专业是一门很热门的专业,对于临近毕业的计算专业同学来说,论文是他们专业担心的问题,在写作计算毕业论文时,最重要的就是选题,下面我们就给大家讲解一下计算机专业论文题目,供给大家作为一个选题参考。
一、计算机专业论文题目
1、高职院校计算机专业公共课程的模块化教学探究
2、中职计算机专业基础教育专业教学内容改革分析
3、基于计算机专业程序控制的新能源汽车电机驱动系统的开发与应用
4、中职计算机专业基础教育专业教学内容改革分析
5、大数据时代的计算机专业网络安全及有效防范措施
6、计算机专业网络安全中的防火墙技术应用研究
7、计算机专业网络通信安全中数据加密技术的应用
8、行动导向教学法在高职计算机专业网络教学中的应用
9、在慕课时代中高校计算机专业应用基础教学技巧的创新探究
10、新形势下高校公共计算机专业机房管理和维护探析
11、面向新工科的嵌入式计算机专业系统教学体系设计
12、计算机专业应用与创新型人才的培养路径
13、面向师范生的大学计算机专业公共课教学改革研究
14、信息化背景下高校计算机专业教育专业教学改革的方向与实践探究
15、基于体系结构的B777飞机中央维护计算机专业系统研究
16、微电网下多能源协同控制策略的计算机专业实现
17、印染厂生产排程计算机专业辅助管理实践探索
18、关于计算机专业平面设计课程教学改革探究--以广东工商职业学院为例
19、微课应用于高校计算机专业教学中的相关思考
20、互联网+教育专业混合教学模式下高校计算机专业教学的创新与突破研究
21、浅论大数据背景下的计算机专业科学现状及发展趋势
计算机专业毕业论文怎么写
计算机专业毕业论文范文
摘要: 能量管理系统(EM S) 是当代大电网运行不可缺少的手段, 但是我国各电力公司EM S 应用软件的实用化程度还较低。最近, 国家电力公司对于各调度部门的EM S 提出了实用化要求, 并提出了考核标准, 各调度部门都在为这一目标而努力。因国内网省调大部分采用国外的EM S, 不具备考核统计功能, 作者根据国调中心提出的实用化要求, 对湖北EM S 进行了EM S 考核监视管理系统的研究和实施。该系统深入 EM S 核心内部, 结合外部软件编程, 对EM S 的运行参数进行人工设置并对EM S 应用软件的运行状态及结果进行实时考核统计和控制。该系统对EM S 各应用软件进行了全方位、功能全面的自动不间断规范化考核监视, 为EM S 的实用化打下了坚实的基础。
关键词: EM S; 监控系统; 电力系统
中图分类号: TM 734 文献标识码:A
1 引言
在全国电网互联和电力市场的推动下, 为了对大电网的安全、优质、经济运行和环保及效益进行协调优化, 能量管理系统(EM S) 将会有一个更大的发展, 并将成为当代大电网运行不可缺少的手段。但是, 目前国内各电网的EM S 均缺乏全方位的, 功能全面的考核监视管理系统, EM S 的管理维护和考核监视主要是由运行人员手工完成, 自动化程度较低, 可靠性、准确性也较低。EM S 应用软件的使用和系统质量还有待时间的考验, 为进一步促进EM S 应用软件基本功能的实际应用, 充分发挥其在电网安全、优质、经济运行中的作用, 并配合中国一流电网调度机构考核验收来规范和指导基本功能的验收工作, 国家电力调度通信中心制定了EM S 应用软件基本功能实用要求及验收细则[ 1 ] , 要求狠抓EM S 的实用化工作。笔者根据国调中心调自[1998 ]126号文 “关于印发《能量管理系统(EM S) 应用软件功能要求及其实施基础条件》(试行) 的通知”及其附件, 国调中心[ 1999 ]207号文“EM S 应用软件基本功能实用要求及验收细则”, 以及湖北省电力调度通信局自动化科制订的“EM S 考核监视管理系统功能规范”, 以湖北电网EM S 功能的实用化改进和考核管理为课题, 设计并建立了EM S 考核监视管理系统。
该考核监视管理系统在对EM S 应用软件的功能进行实用化改进的基础上, 可以对EM S 应用软件的运行状态及结果进行实时监视和控制, 自动计算及生成EM S 运行考核指标和报表。该考核监视管理系统可以显著地减少运行人员的分析计算工作量, 把运行人员从大量复杂、烦琐的数据检索和计算工作中解放出来, 提高了工作效率和准确性。通过对 EM S 各运行模块的监视和控制, 有效地改善了 EM S 的运行性能。该系统还可以将EM S 的实时运行状态, 中间计算信息及计算结果在Internet 网络上发布, 实现系统的无人值守及远程监控和故障诊断, 具有实用价值。该系统的研制成功为EM S 的实用化打下了坚实的基础, 充分发挥EM S 在电网安全、优质、经济运行中的作用。
2 EMS 考核监视管理系统原理和结构
考核监视管理系统硬件主要包括考核监视计算机、网络适配器和激光报表打印机等。其硬件配置如图1所示。考核监视计算机通过双网分别与EM S 和管理信息系统(M IS) 相连, 其中一个网出现故障时, 不影响系统的正常运行, 即具备双网切换能力。
图1 EMS 考核管理系统的硬件结构 Fig. 1 Hardwares for superv isory con trol system of EMS
考核监视管理系统软件包括EM S 自动考核监视软件、考核指标统计管理软件和网上信息发布系统三部分。其流程图如图2所示。
考核监视管理系统从EM S 获取有关实时数据和运行状态信息, 通过标准网络数据通信接口, 将这些实时数据和运行状态信息传送到EM S 自动考核监视管理计算机。通过数据格式转换软件, 在本地机上建立考核管理系统专用实时数据库, 并完成数据的计算、统计、分析和处理, 生成报表、曲线等考核监视结果, 刷新考核管理系统本地实时数据库。将数据与管理信息系统(M IS) 共享, 在网上发布相关信息, 并根据需要发信给电子值班员。
图2 EMS 考核管理监视系统原理框图 Fig. 2 Block diagram of superv isory con trol system of EMS
流程图的第一步是在EM S 上完成必须的源程序修改和程序编制, 这是专门针对湖北EM S 系统 (ABB S. P. I. D. E. R 系统) 设计的。因为某些EM S 考核指标的统计信息在现有湖北电网EM S 的运行状况和输出条件下是无法得到的。为此, 针对EM S 源程序进行了修改和扩充。增加了EM S 的控制参数的设定和计算结果的输出。
3 系统主要功能
EM S 考核监视管理系统有如下具体功能:
3. 1 EMS 计算数据的实时监视
3. 1. 1 母线平衡监视
计算厂站母线进出线路、变压器的有功功率和无功功率实时数据的代数值和净值。并将净值和门槛值进行比较, 筛选出母线不平衡的站。用排序方式, 按净值的偏差大小显示各厂站的站名、净值及其所属的量测分量。正常厂站用绿色显示; 净值偏差超过基准值的3. 0% 时, 用黄色显示; 净值偏差超过基准值的5. 0% 时, 则用红色显示。同时可用曲线方式分别显示各厂站的净值偏差。曲线密度为每个实时数据库数据刷新周期(目前定为1 m in) 1个点, 保存时间为3天, 曲线横纵坐标可在线修改。并监视净值更新情况, 若净值连续超过30 m in 不更新, 则可认为该路RTU 停运, 记录该路RTU 停运和恢复运行的事件。事件保存时间为2个月。如果全部RTU 不更新, 则提示运行人员EM S 系统死机或EM S 考核监视管理系统与EM S 的网络通信中断, 并将此全停信息送电子值班员告警。
3. 1. 2 线损监视
计算线路两侧有功功率实时数据的差值。并将差值和阈值进行比较, 筛选出线损异常的线路。用排序方式, 按净值的偏差大小显示各厂站的站名、净值及其所属的量测分量。正常数据用绿色显示; 净值偏差超过基准值的3. 0% 时, 用黄色显示; 净值偏差超过基准值的5. 0% 时, 则用红色显示。
3. 1. 3 变损监视
计算变压器两侧、三侧的有功功率实时数据的差值。并将差值和阈值进行比较, 筛选出变损异常的变压器。输出结果同线损输出结果类似。
3. 1. 4 电压合理性监视
计算多母线各段母线电压实时数据的差值。并将差值和阈值进行比较, 筛选出电压异常的母线。输出结果同线损输出结果类似。
3. 1. 5 遥信.遥测的一致性监视
根据开关状态和线路潮流值相一致的原则, 筛选出位置异常的开关。即遥测不为零, 而遥信位置断开的开关和遥测为零, 而遥信位置闭合的开关。输出各个位置异常的开关的名称和实际状态。
3. 1. 6 遥信取反监视
监视实时系统中进行了遥信取反定义的开关。
输出进行了取反的开关的名称和实际状态。
3. 2 EMS 模块运行状态监视
3. 2. 1 模块投运状态监视
湖北电网EM S 的应用软件包括实时数据快照模块(SN P)、状态量和模拟量的修正模块(SAR)、网络拓扑及模型建立模块(NMB )、母线计划模块 (BSK)、状态估计模块(SE)、网络参数更新模块 (N PU )、安全分析模块(SA )、网络灵敏度分析模块 (N S)、调度员潮流模块(DPF)、短期负荷预计模块 (SL F)、自动发电控制模块(A GC) 等功能模块。EM S 考核监视管理系统可以实时监视EM S 各模块的投运状态和控制模式, 并可以区别EM S 各模块投运状态和退出状态。在必要时候将模块退出运行的信息送电子值班员进行告警。可以区别EM S 的各种控制模式: 实时状态估计、实时调度员潮流、研究状态估计和研究调度员潮流的方式。对EM S 各模块的投运状态和控制模式的变化, 作为带时标事件记录下来, 保存时间为2年。
3. 2. 2 模块运行状态监视
实时监视EM S 各功能模块的运行状态。可以区别EM S 各模块的关闭状态、初始化状态、起动预备状态、请求执行状态、正在执行状态、超时状态、闭锁状态、执行完成状态、出错状态和停止状态等。在 EM S 应用监视器的流程图上, 标明各模块的运行状态。并将各模块运行状态的变化, 作为带时标事件记录下来, 保存时间为2年。统计各个模块连续处于出错状态的次数。并设置各模块的连续出错状态次数的限值, 若超过此限值则将出错信息送电子值班员进行告警。
3. 2. 3 模块计算中间结果分析
可以检查EM S 各功能模块软件运行过程中间出现的异常情况, 检查引起异常的原因, 并获取 EM S 各功能模块软件运行过程出现的信息。将其在网页上发布允许运行人员通过远程互连网进行监视和故障诊断。
3. 2. 4 模块计算结果监视
可以实时监视EM S 各功能模块的计算结果, 包括状态估计(SE) 和调度员潮流(DPF) 应用模块的迭代过程和收敛情况。并按月进行SE、DPF 软件收敛、不收敛资料的统计, 将统计资料保存2年。
3. 3 模块运行的控制管理
可以对模块的控制方式进行在线设定, 并能够进行模块计算迭代过程和计算收敛精度的控制。这是对EM S 应用软件的源程序、画面和数据库进行改造, 调节改变有关算法的控制参数, 使运行人员可以直接在EM S 监视器画面上对状态估计和调度员潮流等模块计算的过程和计算的收敛精度进行控制。
3. 4 EMS 计算结果的统计分析
对SE、DPF 模块的计算结果进行统计分析。按照不同电压等级量测类型基准值, 计算状态估计的估计值和调度员潮流的计算值的偏差, 自动查找不合格的计算点, 得到EM S 状态估计合格率指标和调度员潮流计算合格率指标。将计算结果和分析结果形成报表输出。
3. 5 EMS 考核指标的管理
建立EM S 考核管理数据库, 根据EM S 数据库和统计的运行历史资料, 自动地逐次计算EM S 运行考核指标, 包括: ①状态估计覆盖率; ②状态估计月可用率; ③遥测估计合格率; ④单次状态估计计算时间; ⑤调度员潮流月合格率; ⑥调度员潮流计算结果误差; ⑦单次潮流计算时间; ⑧负荷预测月运行率; ⑨月负荷预测准确率; bk月最高(低) 负荷预测准确率。
3. 6 EMS 考核管理的信息发布系统
EM S 考核管理的信息发布系统由当地机上的考核信息查阅管理软件和网上信息发布系统组成。通过建立EM S 考核监视管理系统主页, 将考核管理信息在网上发布。使运行人员既能在EM S 考核监视管理系统的本地机上查阅信息, 也能在通过网络进行网上查阅, 便于运行和管理人员查看。
EM S 考核监视管理系统在实现上述主要功能的基础上, 综合目前已有的A GC 运行统计功能, 作为EM S 考核监视管理系统的一个子系统。
4 系统特点
(1) EM S 功能的实用化改造
EM S 考核监视管理系统的考核管理范围很广, 实现的功能全面, 实用化程度高。其考核管理范围包括EM S 应用软件的所有功能模块。其实现的功能有: EM S 计算数据的实时监视、EM S 模块运行状态监视、EM S 模块运行的控制管理、EM S 计算结果的统计分析、EM S 考核指标的管理及EM S 考核管理的网上信息发布。这其中有一部分功能在现有湖北电网EM S 的运行状况和输出条件下是无法实现的。为此, 笔者针对EM S 源程序进行了详尽的分析, 并对相关模块的功能进行了修改和扩充。增加了 EM S 状态估计(SE) 和调度员潮流计算(DPF) 计算次数和收敛次数的统计结果, 并增加了SE 和DPF 的控制参数的设定功能。
(2) 全自动免人工在线维护
考虑到随着电力系统的不断扩展, 由EM S 管理的电力系统元件和设备将不断增加。若要求运行人员对EM S 考核监视管理系统进行手工维护, 势必将增加运行人员的工作量, 提高对运行人员的要求和降低EM S 考核监视管理系统的自动化程度、实用性及可靠性。为此, 本EM S 考核监视管理系统采取自动跟踪EM S 元件设备参数变化的方式, EM S 对新增线路、变压器、发电机、母线和厂站等遥测、遥信量, 均可以自动增加并进行监视考核。这使得运行人员无须深入了解、学习和掌握EM S 的数据结构和数据内容, 就可以熟练操作本系统, 满足了实用性和通用性的要求, 并提高了EM S 考核监视管理系统的可靠性。
(3) 系统自动不间断运行及错误监控
EM S 考核监视管理系统对EM S 服务器运行状态可以进行监视, 能够自动识别EM S 服务器的在线及备用状态, 并能够在EM S 服务器进行切换之后, 自动与其同步。而在EM S 单机服务器运行时, 自动由平常与EM S 备机服务器相连的工作模式改为与EM S 主机服务器相连, 继续对EM S 进行考核监视。EM S 考核监视管理系统具有自我运行监视软件模块, 一旦发现考核监视管理系统出现异常, 能够自动复位, 可以(在硬件环境条件允许的情况下) 对 EM S 的进行连续不间断的考核监视。
5 结束语
EM S 考核监视管理系统于2000年8月初设计实现后, 进行了全面测试并投入试运行。测试和试运行结果表明EM S 考核监视管理系统的各项功能均已实现, 计算结果准确可靠。EM S 考核监视管理系统能自动发现EM S 系统计算数据的非正常数据, 各模块的出错状态。可以对EM S 的状态估计模块和调度员潮流计算模块的计算过程和计算结果进行控制。EM S 考核监视管理系统满足了EM S 运行管理人员进行EM S 计算数据分析, 运行状态监视、计算过程及结果分析和EM S 考核指标及报表的统计计算的需要, 可代替由运行人员手工进行的繁重而复杂的数据检索和计算, 保证计算的可靠性和准确性, 自动生成EM S 考核指标及报表, 减少了形成EM S 考核指标及报表的人为主观因素和由此可能产生的误差, 大大节省了时间, 提高了工作效率。该系统为 EM S 的实用化打下了坚实的基础, 有助于EM S 充分发挥其在电网安全、优质、经济运行中的效益。
该EM S 考核监视管理系统的硬件设备包括考核监视计算机、网络适配器和激光报表打印机, 考核监视计算机可以是一台高性能的商业机或工控机实现。整个系统的硬件设备配置经济, 具有很高的性价比。该系统的软件部分除了针对湖北电网EM S (ABB SP IDER 系统) , 对其某些应用软件进行了修改和数据格式转换外, 其它功能模块均为通用型标准化设计, 适用于其它各种类型的EM S。因此该 EM S 考核监视管理系统有较高的推广应用价值。
参考文献:
[1 ] 国调中心[ 1999 ]207号文《关于印发“EM S 应用软件基本功能实用化要求及验收细则”的通知》[Z].
[ 2 ] SP IDER operator’ s nanual ( ABB EM S 操作手册) [Z]. 收稿日期: 2000212204; 改回日期: 2001202214。
作者简介:
彭 波, 博士生, 研究方向为电力系统稳定与控制及管理信息系统;
周良松, 博士, 副教授, 研究方向为电力系统稳定与控制, 电力系统自动控制及计算机监控;
夏成军, 博士生, 研究方向为电力系统稳定与控制及人工智能的应用;
万 磊, 高级工程师, 湖北电力调度通信局自动化科。
计算机工程毕业论文精选范文
近年来,随着全球网际网路技术的普及、计算机技术的迅猛发展、数字技术的瞬息万变,计算机工程在人们生活、生产中的应用越来越广泛。下面是我为大家整理的计算机工程毕业论文,供大家参考。
计算机软体大体分为三类,一种是总述,一种是系统软体,一种是应用软体,系统软体的作用是促使各个硬体按照一定的规律协调工作,保证计算机处于正常运转状态。而应用软体的作用则是为了实现某种使用愿望而开发出来的软体。
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年学的程式课全学习了,收获很大”。更有同学,在外企公司的面试中,直接运用了课堂上的知识,这在传统的教学环节中是难以获取的。但整个工作尚在起步阶段,所以仍有很多工作需要做,许多环节需要优化。我们希望在以后的工作中更深入探索工程教育的规律和本质。
上一篇:普通高工论文查重
下一篇:医科毕业论文