HI,欢迎来到学术之家股权代码  102064
0
首页 精品范文 编程技术论文

编程技术论文

时间:2022-09-19 08:59:22

开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇编程技术论文,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。

编程技术论文

第1篇

一、计算机数据库中编程技术的作用

(一)鉴别身份

在应用数据库时,有一个验证程序,针对全部用户,即鉴别使用用户的身份。在端口计算机和访问计算机的身份鉴别中要使用身份鉴别。当我们想要使用计算机时,用户需要连接相应的HTTP和SSH,输入用户名和密码,来鉴别用户的身份。使用的人需要严格保守密码,同时存留在对应的服务器上。将编程技术运用到计算机数据的使用和建立中,能够实现企业关联数据和内部文件的安全管理,以免由于企业信息泄露,给企业造成经济损失。

(二)可用性

将编程技术运用到数据库系统中,其可用性十分强。成功解决不均衡的负载和一些数据库中的故障等问题是对可用性的要求。当计算机的主接口出现了问题,留作备用的接口将会自动替代问题接口进行工作,这样可以使其他故障不对其产生作用,保证网络在工作过程中的持续稳定性。另外,接收大量的网络数据时,主接口就可以在备用接口的帮助下,完成数据的接收和传输工作,确保计算机能够正常运作。

(三)隐藏信息的特性

在进行通讯连接时,由于计算机中NAT技术的作用,内部网络中的网址会被隐藏,此时显示在数据中的结果是通过公共网络网址进行访问的,这就是编程技术的隐藏性。换句话说,企业的平常管理工作中,用户可以使用计算机直接访问外部网络,然而对企业内部网络的搜索和查看,这些是外部网络无法实现的,成功实现了安全管理及保密企业信息。

二、计算机软件工程的数据库编程技术

(一)设计、开发编程技术

数据库正式投入使用后,需要随时关注系统的运作情况,在系统运行的过程中,尽早发现没有处理的问题并进行分析。所以,就要折返到编程阶段,尽早处理在编程阶段没有处理的问题,完善优化数据存储系统。与此同时,运用不同的编程技术来应对不同的软件应用,根据各种软件应用的不同特性,采取不一样的编程技术,对软件运用中有待处理的问题进行分析,保证软件可以平稳的运作,而且还能够合理化的运用系统资源,假若一部分数据出现传输问题,也能够运用编程技术将出现问题的部分进行调整。

(二)加密数据库文件

当今社会,信息化高速发展,在聊天记录、网络搜索中都存在大量的个人隐私,人们对个人隐私的重视度也逐渐提高,而计算机数据库作为专门存储网络信息的工具,其保密性能的高低,直接关系到人们生活、工作中的信息安全问题。一方面,要分析数据库中存储的基本信息,并加上基本的保护在其中的隐私类消息上,一旦有信息外漏的情况产生,编程师就要及时通过编程的方式处理这个问题,经过编程,加密保护数据库中的文件。在实行加密保护的同时,还要与计算机软件工程的现实情况进行结合,从而充分发挥加密保护的作用;另一方面,加密保护的功能还可以进一步更深层次的设计,将加密保护分成几个层级,以满足不同用户的要求,同时每个用户都可以设置自己的专用登录密码,然后系统编程会确认登录密码的正确与否,并根据对应的密钥,实现深层次加密信息;最后,在数据库编程时,由于信息不同的选择造成各系统间的冲突,能够运用系统间的优化体系,优化处理产生的问题。

(三)设计存储模式

如今的生活中,由于计算机的使用越来越普遍,数据库技术就要保护更多的网络信息数据。一方面,软件系统的设计要以软件功能系统的选取为重点,也可以将其他工程项目设计过程中的理念运用其中,优化设计方案,从而使设计出的数据库能够更加稳定的运行;另一方面,在数据库进行实际存储时,可以将各类信息进行分类存储,方便人们二次使用数据。最后,将优化的数据系统运用到数据库存储模式中,在数据库开始使用后,可以将产生的问题尽早优化,同时还能够将没有解决的问题尽早发现,以使数据库的存储更加方便用户使用。

三、结语

由此可见,将数据库编程技术分析工作做好,意义十分重大。这对于计算机数据库实际应用的提高十分有利,可以扩大编程技术的运用优势,在国家信息化发展方面,提供更多的技术方面支持。所以,基于计算机软件工程的数据库编程技术在今后的计算机研究工作中应予以更多的重视,并科学的评测此类技术的实际运用效果,用以增加适用范围,使其在国家经济社会的发展中发挥作用。

软件工程硕士论文参考文献:

[1]张学立,田林琳.基于计算机软件工程的数据库编程技术浅谈[J].时代农机,2018,45(11):163.

[2]赵云祥.基于计算机软件工程的数据库编程技术策略探讨[J].电脑知识与技术,2018,14(16):16-17.

第2篇

方之熙博士负责英特尔研究院全球五大研究方向之一即嵌入式系统研究工作,并通过中国研究院的研究成就推动英特尔的全球研究与市场战略的实施。同时还负责建立和扩展英特尔及英特尔研究院在计算领域与本地政府、学术界和产业界的联系,进一步加强英特尔与各方在前沿技术领域的研究合作。

2010年4月,经过12年的发展以及近半年的艰苦调研,在方之熙博士的领导下,英特尔在中国创建了首个全球级别的嵌入式系统研究院,这也是业界首个专注于嵌入式系统的工业研究院。随后在短短半年时间里,方博士又带领原有研究团队攻克了全新的研究领域的定义难题,还在全世界范围内招募了顶尖的科学家加入。目前,研究院已建立起强大的研究团队,全面涵盖嵌入式应用、互连嵌入式技术、嵌入式软件、嵌入式架构、嵌入式输入输出技术、先进移动技术等系统领域,“立足中国,服务中国”,致力于为全球及中国市场提供突破性的手持、消费电子及嵌入式技术。

方之熙院长一直努力推动英特尔与中国产业界、学术界、政界的合作,已分别与科技部、清华大学、无锡市政府、中国移动、广电总局等单位开展了一系列合作,并在三网融合、物联网、人机交互、LTE等热门技术领域取得了出色的成绩,有力推动了云计算、物联网、三网融合等产业的发展。方院长领导促成了英特尔与清华大学合作成立了先进移动计算技术研究中心,与无锡政府共同成立了英特尔中国并行计算中心等一系列合作项目,与中国移动合作研发了更加绿色、灵活的C-RAN无线接入网方案。英特尔中国研究院举办与参与的嵌入式研究论坛、三网融合技术研讨会等,也成为推动本地嵌入式技术合作与创新的重要平台。

2011年,在云计算、虚拟化、移动互联网等主导技术的驱动下,市场风起云涌,IT产业也迎来了一场深刻的变革。虽然中国在三网融合、互联网、云计算方面都走在前沿,但嵌入式系统的研究仍面临很多挑战。英特尔中国研究院院长方之熙博士利用他在学术界以及硅谷科技界30多年来的技术及经验积累,在中国创建了英特尔首个全球级别的嵌入式系统研究院,并快速将研究成果投入到产品开发阶段,同时联手中国的产学研合作伙伴,共同推动中国嵌入式产业进入智能、互联的新发展阶段。

履 历

方之熙 英特尔中国研究院(Intel Labs China, ILC)院长

方之熙拥有复旦大学学士学位以及内布拉斯加大学林肯分校博士学位,并在伊利诺斯大学香槟分校完成了博士后研究工作。

加入英特尔之前,方之熙曾任职于惠普研究实验室以及Convex和Concurrent计算机公司。

1995年加入英特尔,作为早期研究骨干协助建立和发展了英特尔研究院的前身英特尔微处理器研究院,是英特尔编程技术实验室的创始人。曾担任企业技术事业部(英特尔研究院的前身)亚太区总经理兼CRO、企业技术事业部下属的微处理器技术实验室中编程系统实验室(PSL)的总监兼首席科学家。负责制定编程技术方面的长期技术战略,领导整个实验室进行多核编程、二进制思维、低能耗编程、Java/C++托管运行时间和指令级并行处理等领域的技术创新,以及与硬件团队共同开发uArch和平台功能。

方之熙拥有30 项专利,已发表技术论文85篇。

第3篇

并行计算是发挥处理器多核的关键优势,编程面临的同步机制又出了新的研究――事务内存(TM),它有望取代互斥锁方法。

――Intel编程系统实验室Ali-Reza Adl-Tabatabai

目前,解决并行编程面临的大问题――对共享内存的同步访问,基本办法就是使用互斥锁,但这种机制存在一些缺陷,无法用来构建大型的并行应用程序。在过去的几年间,一种新的同步机制被逐步研究出来了,我们称之为事务内存(transactional memory,TM),它有望取代互斥锁用于大型并行程序。

使用这种机制的编译器,程序员能够独立运行一段并行代码,而无需考虑对其他线程的影响,这对于并行编程的调试来说至关重要。同时,系统中还能够同时运行多个事务。

数据库采用面向事务的思想已经有很多年了,而且一直都很成功。TM将这一思想引入C++、Java这样的主流编程语言,所产生的新语言将成为并行计算的基础。在使用互斥锁机制时,程序员经常面临着易于使用和可扩展性之间的矛盾。如果太简单,用起来会很方便,但在同步时会成为瓶颈,影响程序的可扩展性;为了削除瓶颈,又很容易引入死锁和数据冲突等新问题。

更为重要的是,在如今的软件业中占据重要地位的构件中,互斥锁没有用武之地。这是因为互斥锁不能用于开发构件,在更换环境之后使用原先的互斥锁,很有可能会引入新的问题,这是一件非常危险的事。

TM最大的好处就是能够将一段代码申明为一个事务,并可以独立运行调试。独立运行的环境是由系统负责的,这样,同步控制难题的压力就由应用程序开发者转换到了系统设计者身上,从而提高了程序员的效率。

在运行时,代码直接调用TM库中的资源,而由TM库来统一管理内存资源。只要还没有事务写入的内存位置,其他并行的事务就可以对它进行读写。

和使用互斥锁一样,程序员依然需要自行控制高层次的数据冲突,以确保数据安全。这和多线程编程一样,应用程序中的高层数据关系是系统无法感知的,只有人为解决同步冲突与协作的问题。

但与使用互斥锁不同的是,程序员无需处理互斥锁瓶颈的问题,而可以专心优化所开发的组件,以避免事务之间的冲突。他们依然需要关心程序内在的可扩展性问题和底层的算法与数据结构,但是,最困难的使用互斥锁的问题就交给编译器和TM库去解决了。可以说,事务内存的思想削除了易于使用和可扩展性之间的矛盾。

实际上,TM和近年出现的改进程序健壮性的其他语言特性,如垃圾回收(GC)机制,颇有几分相似,同样是把编程中的一些难题交给系统统一处理。我所在的实验室在TM核心技术方面已经发表了很多论文,但我们的终极目标是想将类似的并行编程技术实用化。

第4篇

论文摘要:针对现今高校人工分派监考工作所带来的任务繁重,低效,错误率高等弊端,本文设计了基于Web技术的高校监考安排系统.通过对系统中不同角色的分析,建立了角色间的关系.经测试,该系统可以较好地应用于教务监考安排工作.

O 引 言

考试管理是高校各项管理工作的重中之重,严格的考试管理体系可以帮助各高校客观正确的衡量教学水平、加强学风建设和提高教学管理效率但是,考试管理工作有其 自身的复杂性,因为每个班级每学期都有八、九门左右的科目需要安排考试,因此,科学高效地安排监考人员是考试管理工作的核心.而现今,安排教师监考时仍采用人工处理的方法 ,不得不查询大量的表单和数据,使考试管理工作变得更加复杂而低效.为适应高校监考实际要求,更好地进行管理工作,本文采用 B/S模式建成了一个完整统一、技术先进、高效稳定的教务监考管理系统,该系统集教务工作自动化和信息化为一体,可为教务工作有关部门提供优质、高效的业务管理和事务处理,实现了统一的信息浏览、考试信息管理及安排,安排监考教师并对监考情况统计等功能.

1 高校监考管理系统的总体设计

排监考需要考虑考试教室、班级、课程和监考老师、时问等诸多因素,尤其困难的是,要兼顾各类因素,以保证不会出现时间、班级等排重的情况.经过反复实践,确定分步骤完成排监考任务,这样既可避免考虑因素太多,顾此失彼,又可使程序设计模块化,增强程序的可扩展性和可重用性.主要的排监考步骤是,先按时问排出每个时间片(半天为一个时间片)所排的课程,这当中要求同一时间片不能有同一教室,同一班级,还要尽可能地用尽教室;然后再在每个时间片中排监考老师.对于有特殊排监考要求的,可建单独的程序模块专门处理.为了便于学生及教师进行操作,本系统采用B/S模式开发.该系统将各种用户分成四种角色即学生、教师、教务管理人员和系统管理员,其功能分别描述如下:

(1)学生角色:只能查看本学期课程考试安排的时间、地点及违纪信息.

(2)教师角色:提交课程结课信息后,可预约考试时间,或提出特殊安排监考要求,教务办审核无误后,为该教师分配考试安排,同时教师可查看本学期所有课程监考人员.

(3)专业教务管理员角色:专业教务管理员可以由各院的教务主任或教务秘书担任,其权限有:查看本院本学期所有教师的课程安排,在教师人数充足的前提下,根据教师预约的考试时间或特殊要求,查看该时间学生是否空闲,且能否找到该时间无课的教师和教室,若能,则根据教室容纳的考试人数为该课程分配监考教师.若教师人数不充足,则教务管理员有权拒绝教师请求,并为其分配其他考试时间.同时,教务管理员有添加教师及学生考试违纪情况和打印监考安排的报表功能.

(4)系统管理员:系统管理员可以由教务处管理员担任,其主要功能是负责对院系信息管理,及对其他角色用户的权限授予、编辑与修改.本系统涉及班级、课程、教师等多类实体,系统的 E—R图如图 1所示,其中既有一对一关系,也有一对多关系和多对多关系.

2 教务监考管理系统的功能结构

该系统主要功能模块包括:基础信息维护、功能设置、数据库管理、报表统计等模块,该系统各模块细化后,其组织结构如图2所示

3 教务监考管理系统的数据流程

数据流图(DFD)是一种图形化技术,描绘信息流和数据从输入到输出过程的变换.在数据流图中没有任何具体的物理元素,而是描绘信息在软件中流动和被处理的情况.设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需考虑怎样具体地实现这些功能,因此,数据流图是今后进行软件设计的很好的出发点.

第 1步:从教师基本信息表、课程基本信息表、班级基本信息表中分别提取出任课教师的姓名和编号、课程编号和名称 、班级编号和名称及学期;

第 2步:对某班、某学期的课程进行设置,包括上课科目,任课教师,每周上课时间,开课学期等,存储到“班级课程安排表”中;

第 3步:对该班当前学期已结课程进行考试安排,将考试时间,地点,监考教师等信息存储到“考试计划表”里;

第4步:考试结束,将监考情况(包括监考教师及学生违纪情况)存储到“监考情况记录表”里,图4是教务监考管理系统的数据流程.

4 教务监考管理系统的实现

1.开发环境

该系统前端采用 ASP.NET编程语言,后台采用SQL SERVER 20O0数据库,软件环境要求:WindowsXP;硬件配置要求:具有奔腾处理器的微机,VGA及其兼容的显示器,256M以上的 RAM存储器.

2.编程技术

利用结构化编程技术,尽量细化排监考工作,以使每项工作模块化,从而可任意组合,为实现各种排监考打下基础;利用面向对象编程技术,能产生高效提供信息的数据库,并使其易于维护;使用控件可增强应用的界面,提高系统可用性.

5 总 结

在各校教务工作中,排课程、排监考是最困难的程序设计工作,这是因为各个学校的师资、教室等资源的配置不同,更重要的是各学校人为设置了许多条条框框,这样就造成了无法设计一个放之四海而皆通用的程序,本文设计的排监考程序,虽力求完善,但也很难做到百分之百通用.所以,要建立真正通用的排监考系统,一方面可在排课算法及程序设计开发工具上继续下工夫研究。另一方面,也应重视考试制度的规范化,这仍是一个值得继续重视并加以研究的问题.

参考文献

[1] 郑华.基于 ASP教学管理平台的设计与实现[D].北京:北京邮电大学,2008.

第5篇

高职学校人工分派监考工作现状是任务繁重,低效,错误率高等弊端,通过基于Web技术的高校监考布置系统的设计,针对系统中不同角色的分析,建立了角色间的关系,有效的解决了教务监考布置工作。

考试管理是高校各项管理工作的重中之重,严格的考试管理体系可以帮助各高校客观正确的衡量教学水平、加强学风建设和提高教学管理效率但是,考试管理工作有其自身的复杂性,因为每个班级每学期都有八、九门左右的科目需要布置考试,因此,科学高效地布置监考人员是考试管理工作的核心。而现今,布置教师监考时仍采用人工处理的方法 ,不得不查询大量的表单和数据,使考试管理工作变得更加复杂而低效。为适应高校监考实际要求,更好地进行管理工作,本文采用 B/S模式建成了一个完整统一、技术先进、高效稳定的教务监考管理系统,该系统集教务工作自动化和信息化为一体,可为教务工作有关部门提供优质、高效的业务管理和事务处理,实现了统一的信息浏览、考试信息管理及布置,布置监考教师并对监考情况统计等功能。

排监考需要考虑考试教室、班级、课程和监考老师、时问等诸多因素,尤其困难的是,要兼顾各类因素,以保证不会出现时间、班级等排重的情况。经过反复实践,确定分步骤完成排监考任务,这样既可避免考虑因素太多,顾此失彼,又可使程序设计模块化,增强程序的可扩展性和可重用性。主要的排监考步骤是,先按时问排出每个时间片(半天为一个时间片)所排的课程,这当中要求同一时间片不能有同一教室,同一班级,还要尽可能地用尽教室;然后再在每个时间片中排监考老师。对于有非凡排监考要求的,可建单独的程序模块专门处理。为了便于学生及教师进行操作,本系统采用B/S模式开发。该系统将各种用户分成四种角色即学生、教师、教务管理人员和系统管理员,其功能分别描述如下摘要:

1.学生角色摘要:只能查看本学期课程考试布置的时间、地点及违纪信息。

2.教师角色摘要:提交课程结课信息后,可预约考试时间,或提出非凡布置监考要求,教务办审核无误后,为该教师分配考试布置,同时教师可查看本学期所有课程监考人员。

3.专业教务管理员角色摘要:专业教务管理员可以由各院的教务主任或教务秘书担任,其权限有摘要:查看本院本学期所有教师的课程布置,在教师人数充足的前提下,根据教师预约的考试时间或非凡要求,查看该时间学生是否空闲,且能否找到该时间无课的教师和教室,若能,则根据教室容纳的考试人数为该课程分配监考教师。若教师人数不充足,则教务管理员有权拒绝教师请求,并为其分配其他考试时间。同时,教务管理员有添加教师及学生考试违纪情况和打印监考布置的报表功能。

4.系统管理员摘要:系统管理员可以由教务处管理员担任,其主要功能是负责对院系信息管理,及对其他角色用户的权限授予、编辑和修改。本系统涉及班级、课程、教师等多类实体,系统的 E―R图如图 1所示,其中既有一对一关系,也有一对多关系和多对多关系。

一、 教务监考管理系统的功能结构

该系统主要功能模块包括摘要:基础信息维护、功能设置、数据库管理、报表统计等模块,该系统各模块细化后,其组织结构如图2所示

免费论文下载中心 http:// 3 教务监考管理系统的数据流程

数据流图(DFD)是一种图形化技术,描绘信息流和数据从输入到输出过程的变换。在数据流图中没有任何具体的物理元素,而是描绘信息在软件中流动和被处理的情况。设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需考虑怎样具体地实现这些功能,因此,数据流图是今后进行软件设计的很好的出发点。

第 1步摘要:从教师基本信息表、课程基本信息表、班级基本信息表中分别提取出任课教师的姓名和编号、课程编号和名称 、班级编号和名称及学期;

第 2步摘要:对某班、某学期的课程进行设置,包括上课科目,任课教师,每周上课时间,开课学期等,存储到“班级课程布置表”中;

第 3步摘要:对该班当前学期已结课程进行考试布置,将考试时间,地点,监考教师等信息存储到“考试计划表”里;

第4步摘要:考试结束,将监考情况(包括监考教师及学生违纪情况)存储到“监考情况记录表”里,图4是教务监考管理系统的数据流程。

二、教务监考管理系统的实现

1.开发环境

该系统前端采用 ASP。NET编程语言,后台采用SQL SERVER 20O0数据库,软件环境要求摘要:WindowsXP;硬件配置要求摘要:具有奔腾处理器的微机,VGA及其兼容的显示器,256M以上的 RAM存储器。

2.编程技术

利用结构化编程技术,尽量细化排监考工作,以使每项工作模块化,从而可任意组合,为实现各种排监考打下基础;利用面向对象编程技术,能产生高效提供信息的数据库,并使其易于维护;使用控件可增强应用的界面,提高系统可用性。

第6篇

【关键词】SOPC;光电开关;恒流驱动电源;调光

1.总体方案设计

设计一套模拟路灯控制系统,能够控制多条支路的路灯开关,设定支路控制器,支路控制器有时钟功能,能设定、显示开关灯时间,控制整条支路按时开灯和关灯;能根据环境明暗变化,自动开灯和关灯,独立控制每条支路上的开关灯时间;能根据交通和环境自动调节亮灯状态,当有移动物体经过时候自动亮灯,超出灯的一定覆盖范围自动熄灯,不同路灯之间能够平滑切换;能够对监控路灯故障,发出报警信息。

方案设计如图1所示,采用可扩展性能和系统控制性能较强的FPGA器件作为核心,用可编程技术把整个系统的控制功能集中在一块芯片上,即SOPC可编程片上系统,在FPGA嵌入高性能的嵌入式IP核(Nios)处理器软核,通过模拟处理器,提供丰富的接口资源,直接连接时钟、键盘显示、转换点测量装置光电开关、光敏器件单元控制器等设备,整个系统灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件在系统可编程的功能。

由于FPGA控制容易实现,资源丰富,液晶显示准备采用128*64的模块,而且设置多级显示菜单,键盘采用4*4的行列式键盘,提高了人机交互的便捷性,使操作界面更加美观性。

在这个方案中Cyclone、数字电位器、电平转换、光电开关驱动、键盘显示等都属于支路控制器部分,可以根据路灯支路的多少进行增加或者减少;继电器、LED恒流源、比较器等属于单元控制器。

2.主要电路设计

①FPGA底层设计

首要任务就是用FPGA模拟处理器。在FPGA中我们定义了A/D采样模块、锁相环模块、CPU模块。

CPU模块是真个FPGA模拟的核心,加载在嵌入式IP软核,CPU模块下根据电路需求又定义了1个矩阵键盘模块、1个时钟模块、2个功率控制模块、2个故障告警模块、1个动态存储器模块;分别处理键盘输入、实时时钟、恒流源输出功率调节等。

从上面,我们知道如果需要更多的扩展路灯,在资源够用的情况下,在FPGA定义更多的功能模块就可以了,如所图2所示,所以说用FPGA方案具有良好的扩展性。

②LED恒流源调节电路

本设计采用FPGA,则在硬件电路方面的要求不高,我们利用LM324运放和三极管构成恒流源如图3所示。

来自FPGA的调节指令加在具有256个抽头的数字电位器MAX5402上,MAX5402两端最大有10KΩ电阻,通过串联20KΩ的电阻对5V进行分压,转换成为电压信号,不同的调节等级转换为不同的电压等级加在恒流源上,调节恒流源的输出功率。

LED_CS用于对LED灯进行抽样,送入电压比较器中比较,如果没有电压,说明LED灯故障,如果有电压而且到一定程度说明LED正常。

3.软件控制和人机交互

软件实现的功能如下:①控制切换过程;②时间设定;③测试状态显示;④故障报警判断、⑤环境判断、⑥人机交互等。

简要主控软件流程如图4所示。

为了方便操作,人机交互界面设计的非常人性化,液晶采用菜单式命令进入操作,方便快捷,用一个“灯”的图形变化显示标明路灯的工作状态,形象生动。

4.切换点控制流程

切换点控制流程如图5所示。

5.设计创新

本设计创新的设计了人性化人机交互界面,预留可扩展路灯端口,自制恒流源,可调光功能,灯运行状态显示,单元控制器具有调光功能,路灯驱动电源

输出功率能在规定时间按设定要求自动减小,该功率应能在20%~100%范围内设定并调节,调节误差≤2%。

参考文献

[1]吴继华.Altera FPGA/CPLD设计(基础篇)[M].人民邮电出版社,2005.

[2]周立功等.SOPC嵌入式系统基础教程[M].北京航空航天大学出版社.

[3]Nios II Software Developer’s Handbook ALTERA co.

作者简介:

第7篇

关键词:综合飞行/火力控制,计算机网络,仿真

 

引言

为了更好地开展现代战机空战中自动攻击引导问题的研究,我们进行了空战自动引导系统仿真设计。本系统应用分布仿真技术、数据库技术和虚拟现实技术,采用DSP、高性能工控机及PC机进行设计,研制了战机空战中自动攻击引导仿真系统,用于自动攻击引导控制律研究与仿真验证。本文从硬件和软件两方面分别予以介绍。

1 系统硬件设计

系统中“我机”除增加了基于DSP设计的飞/火综合控制器,用于实现所设计的引导控制律之外,“敌”、“我”两机硬件组成基本相同,如图1所示。

由图可见,“敌”、“我”双机的硬件结构可以分成两部分:第一部分为模拟座舱,主要由操纵装置及传感器、左/右操纵台和两块大屏幕显示器(视景显示和虚拟仪表显示各一块)组成;第二部分为计算机网络,由仿真计算机、虚拟仪表计算机和集线器组成。论文参考。

1.1模拟座舱

“敌”、“我”双机均可进行人工或自动驾驶。人工驾驶时,进行双机的攻击演练。自动驾驶时,“我机”可以进行自动攻击导引。

“敌”、“我”双机驾驶舱布局相同,驾驶杆、油门杆、脚蹬等操纵部件采用飞机的实装部件,仪表板为虚拟仪表显示器。左操纵台为启动控制、油门杆,右操纵台为驾驶仪状态、气动参数及飞控系统传动比等控制/显示部分。布局如图2。

驾驶杆、脚蹬、油门杆等操纵部件的操纵信号由相应的位置传感器以模拟量形式送至虚拟仪表计算机的A/D接口卡;

启动控制部分包括:系统供电、引导方式选择、自动驾驶仪启动、起落架收放控制、襟翼位置控制及风力、风向选择;

驾驶仪状态由8个带灯按钮和2个拨动开关完成飞控系统各种状态的控制;

气动参数与飞控系统传动比使用20个多圈电位器完成相应参数和传动比的调整。

1.2计算机网络系统

计算机网络系统主要由两台工控机和两台PC机组成,由网卡和集线器(HUB)组成星形网络,实现相互间的数据通信。网络数据传输采用TCP/IP协议,采用Windows Socket的Client/Server模式,实现数据传输的功能。

PC机、工控机及DSP功能如下:

飞行仿真计算机(PC机) 软件任务调度;软件用户界面的输入;各种参数曲线的显示;实时显示飞机的运动状态和视景;支持三种视角(座舱、后视、前视);网络通信。

虚拟仪表计算机(工控机)硬件调参数据的采集;将飞机的状态实时显示在虚拟仪表显示器上;网络通信。

DSP(飞/火综合控制器)实时解算“我机”攻击引导律。

2 系统软件设计

仿真系统软件平台为WindowsXP,所有软件均建立在该平台上。在软件编写过程中,使用了VC、C++Builder等软件。所有的程序均使用统一变量名形式,程序都为32位代码,提高了与操作系统的兼容性和运行速度。

两台PC机及两台工控机(“我机”与“敌机”各使用一台PC机和一台工控机)通过以太网络联系在一起,完成仿真任务。飞行仿真计算机主要完成飞机气动方程和飞行控制律解算、飞机图像的变换和视景显示;虚拟仪表计算机主要完成控制信号采集和输出,座舱内各仪表(气压高度表、升降速度表、空速表、马赫数表、地平仪、航姿器)的显示。我机的基于DSP技术研制的飞/火综合控制器完成攻击引导律的解算。

仿真计算的步长为10ms,视景刷新率为25F/s,仪表刷新率为25F/s。

2.1 软件结构

所有的软件均采用模块化设计,以便于调试和移植。系统包含以下主要的程序模块:

任务程序模块 人工/自动引导方式选择、参数设定;

接口程序模块 控制量输入及测量信号输出;

方程解算程序模块 飞机气动方程、飞行控制律解算;

DSP程序模块 “我机”攻击引导律解算;

视景程序模块 飞机图像的变换和视景显示;

虚拟仪表程序模块 座舱各虚拟仪表显示。

2.2 各软件模块功能

2.2.1 飞行仿真计算机软件功能

通过网络接收虚拟仪表计算机数据;

实时计算飞机模型的响应及飞控系统输出;

实时显示飞机和视景,支持三种视角(座舱、后视、前视);

将飞机位置、速度、姿态等状态量通过网络送至虚拟仪表计算机;

显示飞机舵面动作及起落架收放;

关闭仿真程序;

以曲线显示双机飞行轨迹,并可选择送至打印机输出。

“我机”任务系统中飞行仿真计算机软件功能还增加有:通过网络接收“敌机”姿态及速度、高度等信息;与DSP进行数据传输。

2.2.2 虚拟仪表计算机功能

提供软件操作面板,进行各参数设定;

提供人工/自动引导方式切换开关,实现两种引导方式转换;

在硬件方式下通过接口程序采集驾驶杆、油门杆及脚蹬信号的输入;

通过网络接收飞机位置、速度、姿态等状态量数据;

将飞机状态信息通过虚拟仪表实时显示;

显示攻击引导方式(人工/自动)、自动驾驶仪、起落架收/放相应状态;

主要飞行参量以模拟信号形式输出。

2.2.3 DSP飞/火综合控制器功能

实时计算攻击引导律;

与“我机”飞行仿真计算机进行数据通信。

3 主要技术难点及解决措施

3.1 系统运行实时性的要求

程序运行过程中需要进行双机模型仿真、控制律及引导律解算,另外还有控制信号的采集、双机数据的输出及处理,所有这些都需要大量的计算,增加了实时仿真的技术难度。为达到系统实时性要求,在系统硬件和软件设计上均采取了相应的解决方法。论文参考。论文参考。

3.1.1 硬件设计方面

采用高性能的工控主机(P43.0 G CPU, 1024M内存,120G硬盘),提高主机处理能力。

采用高性能DSP(TI公司的16位定点C2000系列TMS320LF2407,性能优良且价格适中)进行控制律和引导律解算。

采用多功能智能型通信接口卡(ADVANTECH研华公司系列产品):PCL-818H(A/D16路单端或8路差分;DI/O16路);PCL-727(D/A 12路;DI/O16路);PCL-711B(A/D8路;DI/O16路)扩展卡PCLD-8115。增强数据处理能力,减小主板CPU负荷。

采用硬件定时中断卡(PIO-D64),减轻软件中断处理负担。

3.1.2 软件设计方面

采用主循环加消息驱动的机制,充分利用操作系统后台处理能力。

采用四阶龙格库塔算法,解算飞机12阶微分方程。

线性化微分方程减少系统处理的数据量。

3.2 飞控系统及攻击引导律实现

飞控系统保证飞机模型的正确实现,优质的飞行控制律设计则是空战仿真系统中的关键之一。考虑到今后对攻击引导律进一步研究的需要,系统允许“我机”实时选择不同的引导律进行攻击引导,以验证各种攻击引导律的优劣,从而实现对“敌机”最优的攻击方法。因此,我们在仿真演示系统的研发过程中,借鉴并采用目前一些成熟的飞控系统仿真和编程技术及成果,在提高研制效率的同时,还大大增强了系统的可靠性与可维护性。

3.3 数据动态刷新与同步

为了进行实时的空战演示,双机的高度、速度、姿态等信息需要及时传输并处理。系统中数据传输采用Windows Socket的Client/Sever模式,此模式可以有效解决网络中资源、运算能力和信息不对称的问题,并且为异步通信的进程建立联系,实现双方数据的同步。

4 结束语

本文针对双机空战模拟实时性及有效性的双重要求,设计并实现了一种基于工控机和DSP的仿真演示系统。该系统充分利用现代计算机技术、自动控制技术和面向过程编程技术,通过对现代战机飞控系统有效模拟,实现研究攻击引导律的完美平台。经反复调试和验证,系统性能稳定,工作可靠,可用于自动攻击引导律工程实现研究。

参考文献

1 王涛,吴文海. 多型飞控系统模拟器的设计. 飞行力学,1999,17(4):61~65.

2 张启,陈欣. 一种基于工控机的飞控系统模拟器. 工业控制计算机,2005,18(3):33~37.

3 雷亚平,杨忠,沈春林. 基于DSP的UAV飞控计算机设计与半物理仿真. 飞机设计,2004,3(1):55~59.

4 程文俊. 飞翼式飞机起飞着陆仿真技术研究:[学位论文]. 南京:南京航空航天大学, 2005. 58~67.

5 凌利. 现代战机引导及其效能评估研究:[学位论文]. 南京:南京航空航天大学, 2005. 33~35,63~65.

第8篇

关键词:应用型人才培养;课程体系;模块化教学体系;人才培养模式;企业实训

经济社会的发展需要大量既有扎实理论基础又有较强实践能力的计算机软件应用型人才,而国内许多应用型高校的计算机软件相关专业仍延续着研究型高校的人才培养目标与模式,过分强调理论知识的系统性教授,缺少对学生工程能力和职业素质的训练,毕业生的专业能力与软件产业界的需求往往存在较大的脱节,难以快速融入现代IT企业的运作,一方面用人单位觉得软件人才匮乏;而另一方面有相当多的毕业生却找不到合适的岗位。因此,应用型高校必须主动适应经济社会发展对具有创新能力的软件工程应用型人才的需求,明确专业能力培养目标及其内涵,探索能力培养的方法与途径,构建与软件产业需求相适应的软件工程专业教学体系与教学模式[1-3]。

1软件工程专业人才培养规格

1.1专业人才培养目标

培养具有良好的科学与工程素养,系统掌握计算机基础理论、软件开发、软件管理等计算机应用技术,能运用工程化方法、技术和工具从事软件分析、设计、开发、维护等工作,具备工程项目的组织与管理能力、团队协作能力的高级应用型软件工程人才。

1.2专业人才能力分析

应用型人才的主要任务是将成熟的技术和理论应用到实际的生产和生活中,其培养的关键是强调对学生专业核心能力的培养[4]。对于应用型软件工程人才,其专业核心能力包括以下几个方面。

1) 软件分析与设计能力。掌握用户需求调研和需求分析方法,能够将需求转换为系统的设计;掌握结构化和面向对象分析方法与设计方法,熟悉常用的软件分析与设计开发工具;熟悉UML建模技术和常见的软件设计模式;能够设计和定义软件构架、模块划分的接口协议;具备数据库结构设计能力;能够运用相关工具进行模块的详细设计;能够设计用户界面;具备用户需求说明书、软件规格说明书、概要设计说明书、数据库设计说明书、详细设计说明书等软件开发文档的撰写能力。

2) 软件实现能力。掌握结构化程序设计技术和面向对象程序设计技术,至少熟悉一门高级语言编程技术;熟悉常用的IDE开发工具,掌握软件的编辑、编译、运行和调试技术;掌握Web程序设计技术,熟悉HTML语言、JavaScript语言、Java EE和.Net等常见Web应用构建技术,具备界面设计、脚本编程、业务逻辑编程和系统部署能力;能够运用开发工具的联机帮助来解决编码问题;能够运用打包工具制作产品的安装程序,能够编写用户使用手册、安装说明等文档;能够将子系统集成为一个完整的系统,并能在集成过程中优化系统;能够配置系统调试环境,具备关键代码性能优化的能力;熟悉数据库编程技术,具备应用SQL语言对MSSQLServer、Oracle、DB2等常见数据库进行数据操作的能力;掌握数据库系统的安全保护技术和性能调优技术;掌握Linux、WinCE、Android等常见平台下的嵌入式开发技术;熟悉嵌入式应用软件的编程、调试、部署技术;具备硬件驱动程序开发能力。

3) 软件测试能力。掌握常见的单元测试、集成测试、性能测试和回归测试技术;掌握常用的白盒与黑盒测试方法,具备测试用例的设计能力;掌握常用的软件测试工具;熟悉实际的软件测试流程,能够搭建测试环境;掌握软件测试管理技术,具备软件测试计划、软件测试报告等测试文档的撰写能力。

4) 工程综合能力。熟悉RUP、XP等常用软件开发过程模型,具备针对具体项目选择适当模型的能力;掌握项目范围界定、计划制订及进度监控技术;掌握软件配置技术,能够使用配置管理工具;掌握软件开发风险评估与控制技术;掌握常用的软件项目管理工具;能够基于用户的反馈情况进行软件产品的维护,并能对用户进行培训;具备软件开发计划、可行性分析报告等项目管理文档的撰写能力。

2提升软件工程专业能力培养途径

2.1改革人才培养模式

建立“2+1+1”三段式期制的人才培养模式,同时坚持工程能力和素质培养4年不断线的原则,将工程项目教学法贯穿整个教学环节,提高学生的学习兴趣,增强学生的工程意识,强化工程实践能力。

前4学期“重基础”,即重点完成对学生专业基础知识和基本技能的培养。通过强化数理基础模块和专业基础模块教学,促进学生创新思维的形成和创新方法、创新工具的掌握,为后续的专业模块学习和工程能力的培养打好基础。从第二学期开始为每位学生配备校内专业指导教师,负责对学生在校期间的学习、专业选择、学习进程规划和学习方法等进行指导。

第5学期是在大二结束时安排一个企业实训学期(企业实训I),即通过适当压缩原第4学期教学周数,从而形成一个包括暑假在内共12周的第5学期(变传统的8学期制为期制)。作为第一阶段的企业实训,主要是培养学生的软件测试能力,并对软件的工程化开发流程形成清晰的认知。同时,该阶段也能使学生学习和实践软件企业的管理运作,熟悉业务流程及项目开发流程。作为校企联合培养第一环节,该阶段由企业安排资深工程师作为企业指导老师,对学生在现场实践期间进行指导。自此,针对每位学生的“双导师”指导模式正式形成。

第6、7学期“精方向”,即在双导师指导下,学生在特定的专业方向进行深入学习。采取基于项目的教学模式和以问题为导向的探索式学习模式,培养学生从工程全局出发、综合运用多学科知识、结合各种技术和现代工程工具解决工程实际问题的能力,同时培养学生的自主学习能力、创新意识和探索未知领域的兴趣。另外,通过加强与软件企业合作,完善双方模块的学分认证标准。学生在此环节获得的学分双方互认,并颁发相关证书,从而将软件行业所需要的专业能力融入人才培养体系。

第8、期“强工程”,学生将利用一年时间到企业进行项目实训和做毕业设计(论文),通过企业项目实训和毕业设计(论文)等工程实践环节,强化学生从事工程实践所需的专业技术能力,进一步锻炼学生的工程实践能力和独立工作能力。毕业设计(论文)的选题要求来源于企业,做到100%真题真做。

2.2构建模块化教学体系

2.2.1模块定义

应用型人才应该具有运用科学理论知识和方法来综合分析、解决问题,以及将解决方案付诸实施的实践能力,而传统的教学体系以课程为教学单位,教学内容存在重知识体系而轻社会需求,重知识传授而轻能力培养等问题。为此,围绕应用型软件工程人才的专业核心能力,通过将理论教学与工程实践紧密地结合在一起构成“模块”,以取代传统教学体系的“课程”。“模块”作为面向专业能力培养最小的教学构成单位,是围绕特定能力培养相关教学活动的有机组合,具有可重组性和教学内容的非重复性,其对应能力的培养环节连贯、递进,可适应不同类型软件工程师的培养需要。

2.2.2构建思路

软件工程专业模块化教学体系构建要求从传统的知识输入为导向的课程体系构建,转变为以能力输出为导向的模块体系构建。“知识输入为导向”指的是以学科体系为导向,构建课程体系;“能力输出为导向”指的是以岗位需要的专业能力为导向,构建模块化教学体系。基于“面向专业能力需求反向推导”

的思路,即通过对IT企业相关岗位群的调查与分析,确定学生应该具备的专业能力,再将抽象的专业能力具体化为能力要素,对一组相关的能力要素进行优化整合形成能力单元,围绕一组特定的能力单元及其对应的知识单元的培养(知识点的组合)设计相应的教学活动,从而形成“模块”。通过若干个相关模块的有机搭配构成软件工程专业应用型人才培养所需的模块化教学体系,从而将传统的按学科知识体系构建专业课程体系,转变为按专业能力构建模块化教学体系(如图1所示)。

模块化教学体系以专业能力为主线,将理论教学和实践教学有机结合,强调知识和方法如何运用于实际工程领域。在模块化教学体系中,一个模块针对特定的能力单元设置,一项专业能力的培养可由一个或若干个模块来支撑。模块化要求人们转变思维方式,即要适应从“专业课”到有功能性单元的“模块”的转化,对传统课程体系的教学内容进行拆散、揉和与优化,以面向能力培养构建模块的教学内容。如将原有的Java语言程序设计、SQLServer数据库等课程中的高级应用和难点部分进行整合,设置Web应用系统开发模块,重点培养基于Web平台的应用系统设计开发能力。模块既包含理论知识的讲授,又有工程实践训练,采用典型的真实工程项目,对学生的工程能力进行培养。

2.2.3进程安排

在软件工程专业模块化教学体系参考教学进程

中,执行计划总学分为180学分。第1至4学期主要学习公共基础模块和专业基础模块;第6、7学期在校学习专业模块,第5、8和期到企业进行实训,结合工程实际完成项目实训和毕业设计(论文)。教学进程如表1所示。

2.3引入企业实训环节

软件工程专业能力的获取是在运用智力、知识、技能的过程中经过反复训练而形成的[3]。为此,围绕提升学生的软件测试能力、软件实现能力、软件分析与设计能力和工程综合能力这4项专业核心能力,分阶段设置3个独立的企业实训学期(如表2所示),使学生置身于真实的企业场景、管理制度、竞争压力、团队协作等环境之中,以培养学生软件开发、团队合作以及项目管理的能力。

1) 企业实训I,安排在第5学期。通过适当压缩原第4学期教学周数,从而形成一个包括暑假在内共12周的第5学期(变传统的8学期制为期制)。作为第一阶段的企业实训,主要是培养学生的软件测试能力,并对软件的工程化开发流程形成清晰的认知[5]。

2) 企业实训II,安排在第8学期。通过将原大三下学期的暑假与大四上学期结合,得到一个约28周的第8学期,作为第2阶段的企业实训,用于强化学生软件的实现能力和分析与设计能力。为了使学生能在特定的软件开发领域获得深入训练,形成个人的专业特长,该阶段应分不同的方向(如Java、.Net及嵌入式软件等方向)在相应的企业进行。

3) 企业实训III,安排在第期(原大四的下学期),按一个标准学期的20周设置,并与毕业设计相衔接。针对实际项目(产品),由学生组成项目组,负责整个项目(产品)开发的全过程,并按企业或用户要求对项目(产品)的完成情况进行评估并答辩,根据项目(产品)中每位学生完成情况确定其毕业设计等次。

以上的企业实训方案很好地体现了分步进阶的专业能力培养原则,它对学生软件专业能力提升的思路是:以软件测试技术与技能训练为主的能力培养以软件实现技术与技能训练为主的能力培养以产品或系统构建能力培养为主的能力培养以综合项目解决方案制定为主的能力培养以适应社会并能够独立完成产品/系统研发工作为主的能力培养。同样,对于各个阶段企业实训内容的安排,也是按照由浅入深、由单项到综合的方式,层层递进地实现能力的渐进培养。另外,企业实训的各个阶段均设置考评环节,并按企业对应岗位的技能要求对学生进行能力考评,对应关键能力培养的企业实训环节(如软件实现能力),不合格者将要继续本阶段的训练,直到能

力考评达标为止。各阶段的企业实训环节均有对应学分,学生必须修满相应学分,方允许毕业。

3结语

新建应用型本科高校在培养人才目标、生源和师资力量方面与传统综合性重点大学有显著差异,因此,不能简单地继承和延续综合性重点大学的培养目标和培养模式,而必须主动适应经济发展对具有创新能力应用型人才的需求,充分发挥自身的优势和特点,在特色中求生存、求发展。近年来,合肥学院软件工程专业按照“重基础,精方向,强工程”的基本原则,建立了“2+1+1”三段式期制的人才培养模式,实行了3学期的企业实训环节,同时,提出通过将传统的、按学科知识体系构建专业课程体系,转变为按专业能力体系构建专业模块体系,并紧密围绕模块体系展开系列教学改革,如编著适应模块化教学需要的特色系列教材、建立多元化的师资队伍、引入校企合作及模块互换学分互认机制等。几年来的教学实践证明,采用模块教学体系在培养企业真正需要的、具有创新意识和国际化视野的软件工程师方面取得了良好的效果,对于保证应用型人才培养目标和培养要求的实现具有重要的借鉴意义。

参考文献:

[1] 陈旭东,卢苇,赵宏,等. 软件工程特色专业建设探索[J]. 计算机教育,2008(8):46-48.

[2] 叶立青,吴晓蔑. 应用型本科生培养模式的创新与构建[J]. 吉林工学院学报,2003,23(1):16-17.

[3] 胡智喜,唐学忠. 计算机科学与技术产学研结合应用型人才培养模式的探索与实践[J]. 电脑知识与技术,2008,3(8):1751-1752.

[4] 郭建东,刘乃琦,刘贵松,等. 软件技术教学内容与教学模式研究[J]. 学科建设与教学研究,2005(3):19-22.

[5] 檀明,袁,钟伯成,许强. 借鉴德国FH的应用型计算机专业人才培养模式改革[J]. 电脑知识与技术,2010,6(13): 3431-3433.

Software Engineering Talents’ Cultivation in Capability-oriented Mode

TAN Ming, ZHANG Xiang-dong, XU Qiang, LIU Deng-sheng

(Department of Computer Science and Technology, Hefei University, Hefei 230601, China)

第9篇

但是由于计算机公共基础课是针对低年级学生的,比如在清华主要是针对大一的学生。这些学生刚刚进入大学,对自己的本专业还没有一个清晰地认识,更不知道学习计算机课程是为了什么,加之中学时应试教育的后遗症,学生中普遍存在“死读书”的现象。就是说不知道也不关心为什么学习计算机技术,没有动机,缺乏学习主动性,更谈不上创造性思维。

针对上述情况,我在计算机公共基础课中,一开学就启发学生自己进行调查研究、查阅资料,撰写小论文阐述计算机技术在各自专业中的应用,论文成绩作为期末成绩的加分。学生对于这种方式非常欢迎,纷纷到图书馆查阅资料,走访本系学长、教授,有的班还为此举行班级研讨会,请本系教授作报告。

这里,摘录来自清华大学不同院系学生的小论文,以展示在大学一年级学生眼中计算机技术与各专业的关系。

周丹彤:

计算机技术在土木工程领域有着十分广泛的应用,在对图形的处理方面发挥了传统人工绘图无法比拟的优越性。计算机辅助设计(Computer Aided Design,CAD)是随着计算机技术和计算机设备的飞速发展而产生的一门新兴学科,是建立在近代计算机软、硬件技术和工程技术基础之上的交叉学科。

计算机程序设计技术在CAD技术的应用与开发方面均有着不可替代的作用。

ADS(AutoCAD Development System)系统能利用C语言的结构化编程手段,使应用程序以外部可执行文件的方式在AutoCAD环境中运行。ADS实际是一组可以用C语言来编写AutoCAD应用程序的头文件和目标文件。ADS应用程序级可以充分利用AutoCAD本身具有的强大功能,同时有拥有C语言运行函数库的全部功能。而从AutoCADR13.0版开始,AutoCAD提供了更为高级的开发工具ARX(AutoCAD Runtime Extension),它以C++为基本开发语言,充分发挥了面向对象变成的诸多优势,使得应用程序运行速度更快,访问和操作图形数据库更为方便。正如C++语言可以兼容C语言一样,在ADS和ARX之间,AutoCAD提供了成为ADSRX的编程手段和程序库,实现了对ARX和ADS程序的兼容。

而最新出现的ObjectARX在建筑结构等各种交互计算与绘图的应用领域发挥着重要的作用。在AutoCADR14.0以后的版本,用户可以利用ObjectARX编程环境,采用面向对象的C++语言来开发ObjectARX应用程序。

使用ObjectARX对AutoCAD进行二次开发,要求开发者必须具备一些基本编程知识,其中包括C或C++知识、面向对象编程概念、Microsoft Visual C++的使用,以及AutoCAD的基本操作方法等。

陈颖:

C语言比其它的程序设计语言应用范围更广。具体到本专业的应用,在单片机中应用最广,其他还用在DSP程序的开发,以及Matlab程序编写上。

在目前以及可预见的未来,单片机发展的主流在于:单片机的真正单片化、低功耗、电源电压允许宽范围波动。单片机的单片化,使得电路设计越来越简单,同时必然使得单片机型号明显增多,对开发应用人员来说,便会针对不同情况选择不同型号的单片机,C语言则使此项工作简单易行。

聂慧饶:

传统的机械制造周期长,精度低,大批量生产,很显然已经不适合21世纪的需求。传统的生产方式已经制约了机械制造技术的发展。而不幸的是,在我国,大部分地区的制造行业仍然使用的是传统的生产模式,这不仅给我国带来了极其严重的环境污染,还造成了大量的资源浪费,与我国的“可持续发展”战略背道而驰。而作为机械人,我们必须担起祖国的大任。

在21世纪,生产必然要求产品开发周期短,产品的精度高,能够满足各种用户的不同要求(即不需要大批量生产)。这其中的每个过程都与软件技术密不可分。计算机辅助设计在产品的设计与开发中有极大的作用。数值模拟在生产过程中的应用也相当广泛。传统的手工生产也正在被后起之秀“机器人”逐步取代,使用机器人可以有效地解决生产过程中的精度问题。

在这里,我的意思并不是每个机械人都必须同时掌握软件开发技术。毕竟,作为机械人,我们只需要在机械制造领域有所作为就够了。但我们还是要学习计算机语言掌握住适当的编程技术,为以后同软件专业的人才共同开发出自己的软件打好基础。虽然当前机械制造领域内已有许多现成的软件,但它们也并非都相当成熟,而且绝大多数不出自我国之手。市场上,何曾见过完全由我国自主开发的大型软件?所以,发展的空间还是很大的。

21世纪有太多的软件技术等我们去开发,有太多的机械制造技术等我们发展。

侯鉴玻:

我是一名来自精仪系的学生,初步了解,程序设计技术在我们系也应用得非常广泛,根本缺不了。因此,下面我简单介绍一下程序设计技术在我们专业的一些应用。

ActiveX控件在程控仪器控制程序设计中的应用。

......

程序设计在机械设计计算中的应用。

......

程序设计在画法几何中的应用。

......

程序设计在水泵轴类零件强度校核的应用。

......

程序设计在机床PLC故障显示的应用。

......

其实,程序设计技术在我们专业的应用还有很多,也正是它的应用使得我们专业很多领域发展的越来越快。通过这次搜集资料,我学到了好多东西,也进一步认识到了程序设计的重要性。程序设计基础这门课非常必要,学好了它,以后我们才能进一步学习程序设计,才能在专业上有所发展和突破。

潘宁:

汽车被称为“轮子上的计算机”,对一辆汽车的先进程度的评价标准,已经逐渐从看其发电机的功率有多大,转变为主要看其芯片的计算能力有多强、汽车软件的功能有多强。现代汽车是以计算机为中心的高度自动化、集成化的控制系统,该系统随着汽车功能的不断增多而日见完善和复杂。

国外有人预计,将来汽车中90%的创新有赖于电子技术,而创新中的大部分将依靠软件来实现。

陈颖:

程序设计在任何一个工科领域都有广泛的应用,而对于强调信息快速传递处理的工业工程专业更是如此。比如在供应链管理方面,工业工程的专业人员需要做到信息共享,这样能将整个供应链,从供应商、生产商到零售商――整合到一起,更快地响应客户需求,降低库存,提高供应链绩效。为了达到这一目标,就要依赖各种高级管理软件。要想更进一步优化这一信息管理系统,取得效率的最大化,就需要设计新的算法做出新的软件。这是一个没有最好只有更好的方向,更是程序设计在工业工程专业的应用中最具有挑战性的方向。

具体说来,程序设计在工业工程专业中的应用可以分为以下几个方面。

1、生产方向

建模与仿真(Modeling and Simulation)

开发语言:C/C++

应用软件:Flexsim,Promodel, Anylogic, MATLAB

其中Flexsim是一个基于C语言程序设计的软件,工业工程系学生一般在大三上学期会学到

应用举例:奥运园区垃圾回收系统仿真,大型超市排队系统仿真

*制造系统实体建模

应用软件:ProE, AutoCAD

*管理信息系统(MIS)和物流信息系统

MS 的access和borland 公司推出的delphi是数据库管理软件,应用于管理信息系统就是MIS.

应用数据库软件:SQL-server,DB2,MSAccess, Oracle

用户界面开发语言:VB,JAVA

应用举例:企业MRP, ERP系统开发与维护

2、物流方向

*物流网络规划

应用软件:使用LINGO,LINDO, MATLAB等解线性规划问题

应用MATLAB, C/C++, JAVA等实现优化算法:如VRP(车辆路径规划问题),TSP(旅行商问题)等优化的开发

3、人因方向

*实验设计

统计软件:SPSS

实验界面设计:基于VB, JAVA

*虚拟现实

*用户可用性(usability)

从研究内容上看,工业工程关注工程运作的效率、成本、质量等方面问题。

在考虑效率问题时,工业工程涉及到优化,其中包括线性规划、动态规划等等,一般会在运筹学中学到。这些问题如果是小规模的则可以通过手动解决,但大规模的就只能通过算法解决,而算法都是通过程序(一般是通过C++程序设计)实现的。

举个例子:工业工程的经典问题――选址问题,一般都是先建立模型,然后列出模型的约束条件,再就是解这个模型,实际问题一般规模比较大,都是通过设计算法来解决这个问题,而算法设计要通过程序来实现。

第10篇

论文摘要:本文阐述结构化方法和面向对象方法的基本概念与特点和这两种软件开发方法具体的分析设计过程,讨论了各自在不同软件开发中的应用及局限性,提出了在选用面向对象方法开发大型软件系统的同时可结合结构化方法。

一 引言

结构化方法是强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。结构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,它有结构化分析(SA)、结构化设计(SD)和结构化程序设计(SP)等方法。面向对象方法是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。

二 结构化方法

结构化方法包括基本的结构化方法、复杂的结构化方法IDEF体系、Jackson方法。结构化方法的特点:①把一个复杂过程用多个单个小过程来实现;②用数据流图,可以完成整个分解过程;③结果的唯一性,同一个问题,不同的人分解出来的结果基本是一样的。也即,用结构化方法,基本上是有标准答案的;④较适合初学者学习,一个连续的处理过程。

什么是软件体系结构?一个程序和计算机系统软件体系结构是指系统的一个或多个结构。结构中包括软件的构件,构件的外部可见属性以及它们之间的相互关系。体系结构并非可运行软件,它是一种表达,使软件工程师能够:①分析设计在满足规定需求方面的有效性;②在设计变更相对容易的阶段,考虑体系结构可能的选择方案;③降低与软件构造相关的风险。软件体系结构之所以重要的三个关键原因:①软件体系结构的表示有助于对计算机系统开发感兴趣的各方(共利益者)开展交流;②体系结构突出了早期设计决策,这些决策对随后的所有软件工程工作有深远的影响,同时对系统作为一个可运行实体的最后成功有重要作用;③体系结构“构建了一个相对小的,易于理解的模型,该模型描述了系统如何构成以及其构件如何一起工作”。系统的体系结构是一个关于系统形式和结构的综合框架,包括系统构件和构件的整合。软件体系结构必须对系统结构以及数据和程序构件间的相互协作方式进行建模。

三 面向对象方法

面向对象方法包括基本的面向对象方法、RUP。

⑴面向对象的概念

属性——说明一个类的数据集合;类——封装数据和过程的抽象,这些是说明某些真实世界中的实体的内容和行为所必需的。换种方式说,类是一组相似对象的概括说明(如:模板、模式、蓝图);对象——某个特定类的实例。对象继承类的属性和操作;操作——也称作方法和服务,表现类的某个行为;子类——超类的特化,子类可以从超类继承属性和操作;超类——也称作基类,是一组相关类的泛化。

⑵面向对象的特点

①基于映射:把现实世界的工作过程或系统,用代码系统中的相对应的元素模拟出来,就完成了软件的设计和开发;②事物对象;事物的特征对象的属性;事物的行为对象的方法;事物之间的信息交换与协同类方法调用;③由于现实事物的复杂性,为了要更好地完成上面的模拟/映射,需要从多个角度描述系统或过程;④静态关系:多态、继承、聚合、状态转换;⑤动态关系:用例、活动、序列、协作。⑥结果的唯一性,同一个问题,有经验的人和没有经验的人,进行面向对象设计时,结果可能会判别很大;⑦适用范围:设计复杂系统、设计高质量系统、设计与现实世界对应程度比较大的系统。

四 结构化方法、面向对象方法的由来与发展

最初,只有完全一项计算任务的程度,并无所谓编程方法,更无软件工程方法。随着软件复杂度的提高,出现了复杂问题分解为简单问题的一种思路:函数、模块。在20世纪70年代初,软件危机问题出现之后, 随着软件工程思想的确立,从模块化思想逐渐发展出了一个软件开发规范体系:结构化方法。包括结构化的模型图:程序流程图、功能分解图等;结构化的开发建议:高内聚、低耦合;结构化的过程指引:基于瀑布模型的软件生命周期以及相关的工具、语言,这也成为了第一个软件工程方法。结构化方法继续发展,出现了其它新的结构化方法的分支。PAD方法:强调程序结构的分解;Jackson方法:强调数据结构与软件结构的一致;信息建模分析方法:数据流图、实体关系图。新的设计理念:数据驱动;IDEF体系:从信息建模分析方法发展出来;模型图;工具;设计规范。而另外一个重要的软件工程方法——面向对象方法,则是沿着另外一条路发展的。60年代为程序仿真而开发的Simula语言,为了更好的模拟现实世界以进行仿真,引入了类概念和继承机。70年代末,另一个专用的面向对象语言Smalltalk开始进行设计,并在80年提出一个完善版本。但这时只在实验室和科研活动中使用。随着软件复杂程度的进一步提高,低耦合、高内聚的要求进一步提高,促进了面向对象开发思想的发展,低耦合、高内聚是获得较好软件质量的要求,但数据耦合是结构化方法无法解决的问题,要么有大量的全局变量;要么是每个函数都有大量的参数,因此,把数据和代码集成封闭在一起,成了一个合理的要求,由此,出现了面向对象的思想。

结构化方法是强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构化分析方法给出一组帮助系统分析人员产生功能规约的原理与技术。它一般利用图形表达用户需求,使用的手段主要有数据流图、数据字典、结构化语言、判定表以及判定树等。结构化语言就是将自然语言加上程序设计语言的控制结构就成了结构化语言,专门用来描述加工逻辑。所以,它既有自然语言灵活性强、表达丰富的特点,又有结构化程序的清晰易读和逻辑严密的特点。 结构化语言的显著特征是代码和数据的分离。这种语言能够把执行某个特殊任务的指令和数据从程序的其余部分分离出去、隐藏起来。获得隔离的一个方法是调用使用局部变量的子程序。通过使用局部变量,我们能够写出对程序其它部分没有副作用的子程序。这使得编写共享代码段的程序变得十分简单。如果开发了一些分离很好的函数,在引用时我们仅需要知道函数做什么,不必知道它如何做。切记:过度使用全局变量会由于意外的副作用而在程序中引入错误。结构化语言比非结构化语言更易于程序设计,用结构化语言编写的程序的清晰性使得它们更易于维护。这已是人们普遍接受的观点了。比如作为结构化语言的C语言主要结构成分是函数C的独立子程序。在C语言中,函数是一种构件(程序块),是完成程序功能的基本构件。函数允许一个程序的诸任务被分别定义和编码,使程序模块化。可以确信,一个好的函数不仅能正确工作且不会对程序的其它部分产生副作用。PASCAL是世界上第一个结构化语言,曾被认为是计算机专业理想的教学语言,在数据结构等课程中一般用PASCAL语言举例。Access数据库是一种关系型数据库,所有的关系型数据库都是基于结构化查询语言SQL的。Visual FoxPro不但仍然支持标准的Xbase结构化程序设计,而且在语言上还有进行了扩展,提供了面向对象程序设计的强大功能和更大灵活性。

随着计算机及其用户越来越复杂,程序员的任务也越来越繁重,所以,与其相关的编写代码的时间也就越来越长了。接下来发生了有趣的事情,程序达到一定大小以后,为其编写代码所需的时间比预期的要长的多。事实是当程序达到一定大小时,人脑就不能跟踪所有的复杂性了。复杂性完全是产生事故的原因,战胜复杂性的方法就是编写一些小的“无错”程序,并把它们连在一起,形成一个大的“无错”程序,这就是面向对象编程的起源。

面向对象的程序设计OOP是Delphi延生的基础。OOP立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进Windows编辑所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清析、编写容易。说它是一场革命,不是对象本身而言,而是对它们处理工作的能力而言。对象并不与传统程序设计和编程方法兼容。只是部分面向对象反而会使情形更糟。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。而Delphi是完全面向对象的,这就是使得Delphi成为一种触手可及的促进软件重要的开发工具,从而具有强大的吸引力。

面向对象的程序设计方法与编程技术不同于标准的结构化程序设计。程序设计人员在进行面向对象的程序设计时,不再是单纯地从代码的第一行一直编到最后一行,而是考虑如何创建、利用对象来简化程序设计,提高代码的可重用性。对象可是应用程序的一个自包含组件,一方面具有私有的功能,供自己使用;另一方面又提供公用的功能,供其他用户使用。随着面向对象技术成为研究的热点出现了几十种支持软件开发的面向对象方法。其中,Booch, Coad/Yourdon, OMT, 和Jacobson的方法在面向对象软件开发界得到了广泛的认可。特别值得一提的是统一的建模语言UML,该方法结合了Booch, OMT, 和Jacobson方法的优点,统一了符号体系,并从其它的方法和工程实践中吸收了许多经过实际检验的概念和技术。

结束语

面向对象仍将是主流,但结构化方法并不会,相反在某些领域还会有进一步应用。面向对象方法在八十年代已经得到了很大的发展,并且已在计算机科学、信息科学、系统科学和产业界得到了有效的应用,显示出其强大的生命力。可以展望在九十年代内,面向对象方法将会大更深、更广、更高的方向上取得进展。

参考文献

第11篇

1软件工程实践性教学环节的思考

关于软件工程实践性教学环节的思考,本文主要从教学体系、设计思路、阶段划分等方面进行分析。

1.1软件工程实践性教学环节的指导思想

关于教学环节的指导思想,学校应该树立明确目标,对学生进行工程能力以及基础理论教学方面的培养。并明确软件工程实践教学在课程教学中的地位。只有这样才能对原有的教学进行改革,充实软件工程实践性教学内容,改进教学方法。在新的教育模式下,学生才能多与社会接触,增加实践经验。举个例子,某高校在进行软件工程专业课教学之前,学校领导要求教师必须要将实践规划到教学内容当中,教师通过将课程分为“理论课程”和“精品”实践课程,实践课程主要是利用学校资源,开拓新的实践基地,从而增加学生实践操作的机会。该学校老师还为此探索出一条新的教学模式,即“理论教育+实践训练+社会实训+学生就业”教学模式。

1.2工程教学的阶段划分

工程实践阶段的划分非常重要,本文建议将工程教学的阶段分成四部分,即基础实践教学、专业实践教学、综合实践教学以及软件工程项目实践教学。这四个部分中,主要是以循序渐进的方式进行教学,学生从基础到专业,到最后的工程实践,由浅到深进行教学,从而提高学生的实践技能。基础实践教学必须要从大一开展教学,其中主要是进行一些软件基础设计方面的讲解,其目的就在于培养学生的软件编程能力。在大二的时候,老师可以根据学生的情况开展专业实践教学课程,该阶段的教学主要培养学生的逻辑思维能力,让学生能进一步提高软件程序设计水平。到了大三阶段,学生在拥有专业理论知识和专业技能之后,学生能进一步接受程序设计、高级编程技术、NET构架技术等方面的实践教育和培训。而最后一个阶段则是软件工程项目实践教学,该阶段主要在大四进行。其主要教学内容是将实际的工程项目融入到毕业教学当中,老师通过工程技术和相关理念渗透到教学当中,对学生的工程技术和实际的软件开发技能进行培养,从而提高学生软件开发的实际操作水平。

1.3建立软件学习基地

建立软件学习基地的目的是让学生能在模拟环境中,体验社会企业软件开发的实际操作和工作内容,丰富学生的工作经验。此外,学生还必须要“走向社会”,在社会企业中不断探索实践。在实践基地当中,学校能与企业互相合作,并通过企业提供的相关项目,让学生亲手完成项目的设计。在进行实践教学的过程中,老师应该要对基地的环境、合作企业、设计内容等方面进行考虑。举个例子,某高校已经对大四学生开展实践基地,教师在开展实践前要从以下几个方面进行思考:基地环境、实践工具、培训指导等。在实践基地当中,该学校老师将学生分成4-7个小组,每组3-5人,小组成员内部进行分工合作,并将分工后的工作名单上交,包括企业交流、会议记录、设备管理等。在分工合作的过程中,老师不能对学生进行过多的干涉,应该让学生在实践过程中进行领悟,必要时给出相应的指导。在完成实践之后,学生要各自完成自己的毕业论文,老师也要对学生的情况(软件工程实践能力和综合素质)等方面进行评估,并反馈给学校领导,优秀的地方要继续发扬,做得不足的地方要及时进行调整,以便能让学生能在更加良好的教学模式下成长,提高专业水平和实践能力,以更好地适应社会企业的发展需求。

2结束语

目前,软件工程实践性教学模式已经在我国高校专业教学中得到实践和发展。学生能通过实践性教学,不断提高自身的专业技能和软件工程开发能力。根据市场调查统计发现,在经过实践教学之后,毕业生的市场适应能力得到提升,综合素质也得到明显改善。实践证明,开展软件工程实践教学能有效提高学生的团队合作意识、实践能力,对学生未来的就业有着非常重要的促进作用。

作者:吕超单位:呼和浩特开发区管委会

第12篇

随着计算机技术的发展和互联网时代的到来,人类已经进入了信息时代,也有人称为数字化时代。随着人们对信息管理及其运用需求的日益迫切及信息技术的迅速发展,信息系统的整合及运用在办公管理中得到越来越广泛和深入的应用。在线题库是现阶段研究开发的一个热点。它是典型的集管理信息系统以及网络编程技术,是高校教学工作的重要工作内容之一。是建立在网络上的应用系统,客户端的配置可以极为简单,使学生对知识的学习不受地域的局限。相对于传统的书面作业而言,计算机题库系统采用试题库方式提供试题来源,教师所要做的只是精心设计题目、维护题库,学生在线学习,自动评分,提高了学生的学习能力,大大减轻了教师的负担。一个完备的在线题库系统可以使学生在网上学习过后及时检验自己的学习效果,发现自己的不足,使得学习效率得到很大提高。

一、在线题库系统的设计

在线题库系统分为题库功能模块设计和数据库设计两大部分。

(一)功能模块设计

在线题库系统主要由教师和学生二大模块组成,各模块功能如下:

1、教师模块

该模块主要是教师通过登录该系统能够修改密码,对学生、班级、试题难度进行管理,添加修改学生、添加试题、查询成绩等。

2、学生模块

该模块主要是学生通过登录该系统能够修改密码,选择相就的试题进行练习,查看做过的试题及分数等。

用户登陆后系统根据用户类型判断是教师还是学生,教师就进入教师页面,主要有题库管理、成绩查询、修改信息,班级管理和学生管理等。学生进行学生模块进行练习及信息修改等。

(二)数据库设计

在对题库系统数据库部分进行设计的过程中,通过对系统功能进行需求分析得到系统的基本信息表。数据库主要设计以下几个表,它们分别是:题目范围表、答案表、学生表、用户表、用户类型表。

1、学生表

学生表用来存放学生的具体信息,包括8个字段,stuid为学生在数据库中的唯一标示区别其他字段的,其他字段全是他的属性(有账号,性别等),classId和userid是它的两个外键,表示他和这两个表有外键关系,用来说明他是哪个班的及谁是他的辅导员,这样再添加学生时就可以将班级和用户关联上学生。

2、用户表和用户类型表

用户表用来存放用户的具体信息而用户类型表是表示此用户的类型,在登陆的时候,就可以根据用户类型id就可以知道此用户是什么类型,进入不同的页面了,其他的字段是用户表的基本信息。

3、题目表、题目范围表题目表存储的是与题目相关的所有信息。

4、答案表

答案表记载了学生在某个试题的答案。

二、在线题库系统的具体实现

从系统功能模块划分中可以看出,系统总体上有两个功能模块组成,一个是学生模块,一个是教师界面。各模块虽然是独立的,但又统一于同一数据库中。

(一)系统的主要功能详细设计

模块化设计的要求不仅是为了提高代码的重用性,更重要的是为了提高代码的可维护性和稳定性。题库系统主要用教师和学生二大模块组成,本系统可进行查询、考试、出题等操作,主要模块代码如下:

1、选择题目范围和题目难度。

具体的代码实现如下所示:

题目描述:

答案A:

答案B:

答案c:

答案D:

正确答案: br>

2、修改密码界面

关键代码实现如下所示:

if(!user.getUserPass().equals(userpass)) { JOptionPane.showMessageDialog(null,

“输入原密码不正确 ,请重新输入!");

request.setAttribute("user",user); return “password”;

} else if(!newpass.equals(newpass1))

{JOptionPane.showMessageDialog(null,

“两次输入不一样,请重新输入!");

request.setAttribute("user",user);

return “password”; }

indexMangerService.updatepass(user.getUserId(), newpass);

JOptionPane.showMessageDialog(null,”修改成功,检验是否成功!");