时间:2023-08-18 17:38:36
导语:在软件设计与开发的撰写旅程中,学习并吸收他人佳作的精髓是一条宝贵的路径,好期刊汇集了九篇优秀范文,愿这些内容能够启发您的创作灵感,引领您探索更多的创作可能。
关键词:BPA;电网规划;软件;开发
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)36-0231-04
1 背景
PSD-BPA电力系统分析程序(以下简称“BPA程序”),是中国电力科学研究院在引进消化原版BPA程序代码后重新开发的一款电网仿真计算软件,具备电力系统潮流、稳定、短路电流、小扰动、无功优化、动态等值等计算分析功能,其新一代集成操作环境(PSDEdit平台)在文件操作、数据编辑、参数维护、结果分析、仿真计算等方面做了大量更新升级,使用更加便捷。
然而,BPA程序在实际使用过程中仍然存在一些不足,主要体现在计算数据与设备参数双向转换、设备典型参数管理、设备参数智能纠错、计算数据自由组合查询和数据修改批处理等方面,难以满足目前大电网仿真计算数据维护使用要求。
本文面向BPA软件平台,研究开发具有电网计算数据参数管理、数据查询和纠错检查等功能的智能辅助软件(以下简称“辅助软件”),以提高仿真数据处理效率,降低人工维护出错率,对提升电网规划设计工作水平有积极意义。
2 功能设计
BPA程序的数据以文本方式管理,数据格式定义十分严谨,设备信息和参数都隐含在数万行的文本数据中,难以归类、查询、统计和管理。结合上海电网规划仿真实际工作需要,本文开发的辅助软件主要功能为:1)数据双向处理功能;2)典型参数管理功能;3)数据智能纠错功能;4)自由组合查改功能;5)通用批处理功能;6)潮流调制辅助功能。开发过程中,为确保软件功能的实用性和先进性,开发人员与需求方需保持紧密联系,随时开展信息交互和意见反馈(图1)。
本文辅助软件是针对BPA格式计算文件的数据处理和电网设备的参数管理辅助工具,在专家干预基础上形成典型参数库,为规划数据搭建和参数校核纠错提供支撑,其数据处理流程图如图2所示。
3 软件开发
BPA智能辅助软件具备“数据双向处理、典型参数库管理、数据智能纠错、自由组合查询修改、通用批处理、潮流调整辅助处理”六大类使用功能。从软件开发角度看,具备“底层、中间层、用户层”三级架构(图3),自下而上形成BPA智能辅助软件面向用户的最终使用功能。
软件开发工具选用Visual Studio 2015,数据库开发选择ACCESS 2007,开发工具界面友好、与EXCEL等常用办公软件结合度高、开发周期短。本文结合BPA数据格式定义和实际电网仿真计算需求,开发完成六大类功能模块如下:
1)数据双向处理
目前BPA软件的数据以文本方式存放,电力系统的设备信息和参数都隐藏在数万行的文本数据中,且数据交叉存放的情况十分普遍,客观上造成计算数据中的设备信息难以统计和管理。本辅助软件可以读入BPA数据,识别各类型卡片及字段,提取参数纳入数据库和EXCEL表进行集中管理,且具备“提取参数”和“复原参数”双向导入导出功能,该功能模块流程图如图4。
2)典型参数库管理
本功能模块具备“提取参数”和“生成参数”功能,其中“提取参数”指从仿真计算数据中提取出各种型号的线路、变压器和发电机元件参数,经过专家干预处理,形成电网仿真计算的典型参数库;“生成参数”指从典型参数库中选配出型号、规模、来源均合适的元件模型参数,并同步生成所需要的仿真计算数据卡,该功能模块流程图如图5。
3)数据智能纠错
BPA平台中数据格式要求十分严格,人工维护数据极易出错。智能纠错功能可以扫描BPA潮流、稳定数据文件,自动校核数据格式和参数取值方面的错误,给出存疑数据推荐值,具备一键式纠错处理和逐条逐项处理等不同纠错处理模式,该功能模块流程图如图6。
4)自由组合查询修改
该功能可实现对BPA潮流、稳定数据的模糊查询、精确查询和按节点名查询,并且可以在查询结果中再次进行多轮精细化查询。对查询结果可以进行批处理修改操作,如指定字段的部分内容替换、指定位置的内容替换、指定字段的数值统计与调整,修改后的数据可导回原文件保存,该功能模块流程图如图7。
5)通用批处理
该功能可轻松实现节点负荷分配、机组类型设置、线路型号和线路额定电流填写、节点分区编码等大批量共性数据替换任务,该功能模块流程图如图8。
6)潮流调整辅助处理
特大型电网的潮流数据在调制潮流时,收敛性较差,人工手动逐点修改数据的工作效率太低。潮流调制辅助功能,可以根据分区信息筛选操作对象,批量调制发电机出力、负荷值、机端电压等关键设备参数,可有效提高大电网潮流调制的工作效率,该功能模块流程图如图9。
4 运行实例
本软件的“自由组合查改”功能模块,提供了“模糊查询”、“精确查询”和“按点名查询”三种查询模式(图10、图11),其中模糊查询模式可实现多轮次递进式查询,精确查询模式则可实现多达三组的组合条件约束查询,按节点名查询方式可实现特定查询需要。经检验,该功能模块可满足目前规划仿真计算时的所有数据查询需求,具有查询速度快、效率高,数据定位准确等特点,且具备查询结果批处理修改功能。
算例的具体操作步骤如下:
1)选择待处理BPA格式计算数据,潮流数据以“*.dat”为后缀,稳定数据以“*.swi”为后缀,必选项;
2)选择“模糊查询”按钮,填写查询关键字,如“南桥”,必选项。若选择“精确查询”按钮,可采取“AND”、“OR”策略,自由组合最多三组查询条件;
3)c击“刷新查询”按钮,第一次查询或重新查询使用,查询结果显示在右侧“查询处理结果”文本框区域中;
4)选择待处理数据卡片类型,如“B”,必选项;
5)选择批处理策略(共四种:“字段替换”、“字段全覆盖”、“字段数值调整”和“任意位置替换”),选择待处理字段名称,填写待处理字段的筛选阈值和目标值,必选项;
6)点击“执行按钮”,批处理结果即可在“查询处理结果”文本框区域更新显示,处理过程信息在“执行”按钮下方的文本框中显示;
7)点击“导回原文件”按钮,将所有处理结果全部导回到左侧的原文件中更新显示;
8)点击“另存为”或“保存”按钮,将所有处理结果保存到源文件中;
9)点击“调用计算程序”,可直接调用默认BPA主程序打开保存后的计算数据;
10)双击右侧“查询处理结果”文本框中任意一行数据,激活“参数校核”按钮,对选中数据行开展进一步参数校核处理;
1)选择待校核数据卡的典型参数筛选字段,如线路数据卡的“类别”、“线型”、“电压”和“来源”,必选项;
2)填写待校核阈值参数,如线路数据卡的“长度”参数,本软件可自动折算出所需典型参数数据,必选项;
3)勾选待替换字段,点击“替换”按钮,将本软件自动生成的典型参数替换到原始数据卡中;
4)点击“保存”按钮,将参数校核后的原始数据卡保存到查询结果文件中;
5)在查询主界面中,点击“更新”按钮,可将步骤“14”中保存的数据卡更新至“查询处理结果”区域,进一步点击“导回原文件”、“保存”或“另存为”按钮,可将参数校核结果数据导回并保存到BPA源文件中。
5 结束语
面向BPA的电网规划智能辅助软件,立足需求、积极创新,具备数据双向处理、典型参数管理、数据智能纠错、自由组合查改、通用批处理和潮流调制辅助等六大主体功能,已能满足电网规划仿真计算数据处理基本需求。经过大量的软件功能测试和电网规划仿真计算实际应用,全面检验了BPA智能辅助软件的先进性、可用性和可靠性。项目成果的应用,提高了仿真计算数据维护的工作效率,降低了数据处理出错概率,加快了潮流调制收敛的工作速度,具有较好的推广应用价值。
参考文献:
[1] 印永华, 卜广全, 汤涌, 等. PSD-BPA 软件新一代集成操作环境使用指南[M]. 北京: 中国电力科学研究院, 2015.
[2] 印永华, 卜广全, 汤涌, 等. PSD-PF潮流程序用户手册(V4.3)[M]. 北京: 中国电力科学研究院, 2015.
[3] 印永华, 卜广全, 汤涌, 等. PSD-ST暂态稳定程序用户手册(V5.0)[M]. 北京: 中国电力科学研究院,2015.
关键词:SOPC;Nios II IP核;Flash
中图分类号:TP316文献标识码:A文章编号:1009-3044(2010)17-4707-02
The Design and Development of the Software and Hardware Based on SOPC Technology
WAN Ya-pin
(Department of Photo-electricity Equipment, the Academy of Equipment Command & Technology, Beijing 101416, China)
Abstract: With extensive application of soft nuclear SOPC technology, the embedded system design process is becoming flexible and efficient. With an example of Flash controller based on the Nios II, this paper introduces the hardware and software development process of SOPC system.
Key words: SOPC; Nios II IP core; Flash
SOPC(System On a Programmable Chip)[1]是指用可编程逻辑技术把整个系统放到一块硅片上,它是一种特殊的嵌入式系统。它一方面是片上系统(SOC),单个芯片完成整个系统的主要逻辑功能;同时还是可编程系统,具有灵活的设计方式,并具备软硬件在系统可编程功能。该技术将EDA、计算机设计、嵌入式系统、工业自动控制系统、DSP及数字通信系统等技术融为一体,结合了SOC和PLD、FPGA各自的优点,目前已经被广泛应用于许多领域。与基于ASIC的SOC相比,SOPC具有开发软件成本低、硬件实现风险低、产品上市率高、系统结构可重构及硬件可升级、高附加值、易学易用等优势。该技术最早是美国Altera公司提出的,目前Altera Quartus II设计软件的所有版本已包含了SOPC Builder这种系统级开发工具。有了SOPC Builder这个平台,可以自动集成系统组件,快速开发定制新方案,为已有方案添加新功能提高性能。通过该软件库中的组件可以快速地完成系统硬件的开发设计。同时库中还包含了一系列IP核(Intellectual Property Core),即知识产权核,用户可以通过调用这些预先定义并验证好的模块减轻开发负担,避免重复劳动。
2004年6月,Altera公司在全球范围内推出了支持Cyclone II 和Stratix II等新款FPGA系列器件的Nios II 嵌入式处理器。该处理器使用32位的指令集结构(ISA),完全与二进制码兼容。这是一种可配置的软核嵌入式处理器,与传统的硬核SOPC[2]或者固核[3]解决方案在外设、存储器接口、性能特性和成本方面都有明显优势。开发系统可提供三种处理器以及超过60个设备IP核由开发者自由选择,并且Nios II内核在FPGA中所占资源很少,用户甚至可以获得超过200DMIPS性能。在性能提升方面,它支持多CPU内核、多种FPGA系列、多处理器系统、硬件加速以及定制指令。
1 开发流程
基于Nios II的SOPC系统设计流程如图1所示,下面简要叙述开发流程。系统的顶层电路设计在Quartus II中完成,硬件和软件设计分别借助SOPC Builder和Nios II IDE工具。此过程都是在线可编程的,测试满足性能要求后将程序下载到外部存储器件后就完成了系统开发。
首先根据所设计系统的性能和经济要求选定FPGA器件,进行整体的方案设计和资源估计,接下来在Quartus II 中建立新工程,启动SOPC Builder进行Nios II嵌入式处理器的硬件设计,创建Nios II系统模块;然后回到Quartus II,将刚才创建的图标添加到工程的BDF文件中然后锁定管脚完成电路设计,再编译工程文件并下载,完成硬件设计过程。
用户在完成硬件设计的同时可以进行软件开发。一些算法或控制程序可以用C语言预先编写,在Nios II IDE环境中对软件进行编译和调试。在系统开发调试过程中可以将编写好的软件直接下载到开发板上运行,达到功能要求后下载存储于Flash中。
创建Nios II系统模块时,要在SOPC Builder的元件池中选择合适的CPU和器件。其中CPU有快速型、经济型和标准型三种可选内容,器件包括标准设备60余种,如UART、间隔时钟、并行I/O接口、SPI、DMA和SDRAM控制器、存储器接口、以太网接口、JTAG UART接口和用户逻辑接口等。如果这些标准的设备不能满足要求,用户可以自己创建设备并通过用户逻辑接口向导将其集成到系统中,形成用户定制设备。同时用户也可以自定义命令,这种用户定制指令虽然没有自定义外设速度提高幅度大,但是它灵活、简便,使设计者能够直接将定制逻辑集成到算术逻辑单元(ALU)中去,是处理算数运算和加速逻辑的有效途径。选定的系统模块后指定基地址,系统会自动分配默认的基地址,用户也可以根据要求更改这些默认值。进行系统设置然后生成模块。
2 Flash控制器
Flash是闪速存储器,和Sram、Sdram相比,Flash的读写操作比较慢,所以一般用来存储程序和需要掉电保存的数据,在系统启动后,由系统把程序从Flash中读出,然后写入Sram或Sdram中运行。由于不同厂家的Flash的擦写时序往往是不一样的,Nios只支持部分常用的Flash,对于不支持的Flash类型,只能由设计者自己完成自定义组件来驱动所选择的器件。但是,Nios支持CFI(Common Flash Interface,公共Flash接口)命令集,因此,只要选择了CFI接口的Flash,就可以获得支持。另外,Flash和Sram都挂在同一个Avalon三态总线桥上,因此它们可以共用一些引脚。
Flash可以被当作普通内存来访问,也可以使用系统提供的函数来访问。访问Flash有两种方式,一种是单一访问,读写的对象是整个Flash;另一种是细粒度访问,读写的对象是Flash内的块。
Nios II IDE软件提供flash programmer这种方便的Flash编程途径,通过这个编程器允许用户直接把程序或者数据写入Flash中。除了CFI Flash,此编程器还可以编程任何连接到FPGA上Altera公司的EPCS串行设置器件。
整个硬件设计过程先在Quartus II中建立工程,接着打开SOPC Builder选择CPU、UART和Flash等其它必要的外部接口以及存储元件,设置和分配好基地址后生成元件;然后回到Quartus II中的顶层电路,打开刚才生成的元件并配置和分配管脚完成电路设计,最后编译下载到电路板。
进行软件设计时打开Nios II IDE软件,建立新的软件工程,设置工程路径指向当前硬件设计系统,编写程序,编译、运行并调试,调试成功后,可将程序通过软件中的Flash Programmer工具下载到外部Flash。
如果需要更改,调试通过后可以重新进行硬件设计,此过程实现极为简单,更新过程自动化,突出体现了SOPC设计灵活高效的特性。
3 结束语
基于Nios II的串口通信设计过程分为软硬件两部分,借助了Altera公司的软件开发平成。SOPC技术利用IP库,可快速生成系统,开发周期短,灵活高效。
参考文献:
[1] 任爱琴.基于FPGA的嵌入式系统设计[M].西安:西安电子科技大学出版社,2004:181,192-198.
[2] 潘松.SOPC技术实用教程[M].北京:清华大学出版社,2005:1-3.
[3] .基于SOPC的嵌入式系统设计[J].仪器仪表用户,2008,2(15):59-61.
[4] 高旭东.利用Nios II自定义指令实现高速DSP[J].电子技术,2006(12):41-42.
关键词:计量管理;系统设计;软件开发
中图分类号:TP311.52文献标识码:A文章编号:1007-9599 (2012) 06-0000-02
一、引言
计量体系控制着企业的生产过程,其有效运行与否对于企业的运转是相当重要的。实验室内部的计量工具以及相关设备的有效管理,是准确检测数据,保证其可靠性的前提。长久以来,各企业和单位内部的计量工作都是通过人工的手工尽心,由于其工作效率低、过程繁琐、并且较容易出错、测量难查询等等,已经不足以满足目前的计量管理的需要。目前,应用计算机来解决并适应复杂的管理要求和计量认证是一种合理的发展趋势,形成管理的网络化和智能化更能很好的解决上述问题。鉴于此,相关部门对计量要求和工作性质都做了具体的修订和更新,以更满足现有计量检验工作。由于管理章程的实施,原有的计量管理系统或者程序需要更新,来提高工作质量以及效率,本文依此对系统进行设计。
二、系统的相关介绍
(一)计量管理系统
计量管理学科作为计量学和管理学相互融合的一门新学科,计量学主要是来研究测量、保证准确和统一的一门科学,而管理学主要是研究系统活动的规律和基本方法的科学。管理学应用于企业日常生活的方方面面,它的存在产生以及发展适应了现代化社会大生产的需要,管理学本身就是一门交叉学科,具有综合的作用。计量管理学将两学科有机的结合起来,能够更好的提高企业的工作效率。
在计量管理系统的使用中,可将其分为两个层次,即数据采集和信息使用。然而数据采集又分为被检定计量器具的信息和设备本身的信息以及计量标准信息的采集,其中备件信息的采集主要根据不同人员的不同分工来共同完成采集,设备信息以及计量标准嘻嘻的采集主要是由相关设备管理部门的人员进行数据的录入以及设备的维护;以及快速的查询和统计功能使得信息得以高效的使用,使用者可以得到每一类的需求统计,并对这些统计数据及时分析,进而为相关决策提供可靠准确的依据。计量管理系统的应用在一定程度上提高了工作效率,建立了较好的社会形象,并得到了预想的效益和效果,已经成为现在日常工作中不可或缺的系统工程工具。
(二)职能划分
在阅读计量管理的工作流程和了解工作人员的职能基础上,可以将各工作人员的职能按如下方式来划分:(1)主要负责人员:主要来负责制定各种计划表、申请表、统计表等等。(2)计量人员:核对(1)中负责人员制定的检查检清册,根据实际工作中的具体情况来提交个工作过程的申请表,以及相关仪器的具体使用情况,并且及时如实填写清单以便录入和检测校核之用。(3)检定人员:检定仪器仪表,并将结果反馈给相关部门。(4)录入人员:将(3)中检测人员反馈的检测结果录入计算机中,并通过计算机传递给相关负责人。
三、系统内部结构设计
(一)设计特点
本文中所述系统采用的模式是客户/服务器,这种模式的特点如下:(1)拥有数据管理系统,进行数据管理,便于实验操作。(2)系统内部客户端用来访问显示个更新各类数据。(3)用户提出申请,此类申请通过系统内部服务器来传输并且提交,客户端内部包括两方面,即用户可视界面和企业内部逻辑,现行网络上传输的各种数据是通过客户端向服务器提出并传送服务请求,同时客户端所显示的响应结果以及错误信息通过服务器发送并且传输。(4)具有双侧结构的数据库程序在一定程度上很好的分离了程序和数据,所以可以分两方面进行程序的开发和维护,与此同时也在很大程度上减少了工作量,降低网络流量的使用。(5)以服务器为桥梁,客户端接收到各类授权信息,这就决定了此类组合的框架具有良好的可靠性和较高的安全性,来满足不同种类的需求。
(二)设计要求
在充分了解计量管理系统的工作流程和性质的基础上。对于设计过程中的要求,提出以下几个方面:(1)应该根据自适应的检测设定周期,在用户所要求的计划区间内,得到计量工具的周检清册以及相关的年度计划表。(2)能够资识别相关程序,并且可以转换并且核对计量人员从上个工作环节提交的计量申请表。 (3)系统还应该适用于各类或者任何组合条件,来检测和查询计量工具的检测计划以及相关的检测记录等等。 (4)应该提供输入功能,用来输入计量工具的检测和校准记录,并且根据检测得到的结论等等,来自动记录和更新计量器具内部的记录已将相应的检测项目的内容,以便于下次检测和校核的准确,形成一种良性的循环。 (5)系统内部还应该设有计量工具的预警提示和超时报警功能,并且配有相应工具来打印预警提醒表和超时报警表,来保证系统安全高效的运行, (6)客户端通过服务器授权,在这个授权的范围内,计量人员有权限直接改变仪表仪器的位置以及查看加亮的数据,使用人员也可以直接查看仪表仪器的测量情况,以便于正常的简便的工作。
(三)数据库的内部设置
系统内部数据库的设置从以下几个方面来进行考虑,如数据可的可扩展性、规模、服务器的维护成本等方面,并且数据库的软件选为MySQL。此款软件完全符合最新的标准,并且将所有数据库关联在一起并使其具备应具有的基本功能,来满足计量工作中对于数据使用的全部要求。MySQL的特点主要是:安装过程较为方便简单,查询速度较其他软件来说较快,跨平台使用特性较好,并且能提供相关技术来支持储存过程和触发器。
1.用户组以及用户组权限划分。数据库内部的用户是广泛的,具有全局性的,并且是对内部所有数据表都有效地。然而,对于某一个数据表而言,通过管理只需要让给中类别的用户具有相应的权力即可,并非所有用户要掌握所有的权力,这样可以方便用户以及权限的管理。在该系统的数据库中引进用户组的概念,这样可以使用户的管理简单化。数据库中的对象以用户组的形式存放在数据库中,不同的用户组分别属于不同的数据库,依据实际需求的分析把数据库的用户以及用户的权限按着如下分类进行划分:第一,系统内部管理人员,主要负责数据库内部服务器的管理以及维护。第二,计量管理小组,主要负责日常的计量检定以及相关结果录入的工作。第三,计量负责小组,主要是从事核对、反馈、以及执行计量人员所提交的各类申请表,比如检定申请表等。第四,科室计量工作小组主要负责提交检测申请表,添加仪器仪表中的鉴定表中的设备,同时还负责管理并记录数据库的使用部位,并在科室内部做好备注。第五,科室技术人员工作小组,可以直接查询科室内部仪器仪表数据计量的情况。
2.数据结构。数据库的构成有以下几个方面,即器具状态记录表、检测表及其记录表、用户表和报废表。
(四)客户端的软件设计
客户端软件通过Delphi来开发客户端软件,软件的菜单和功能如下所示:(1)文件,文件菜单主要具备导入、输出、打印和退出的功能。软件菜单和功 (2)配置,配置菜单主要具备数据备份、数据导入、密码更改和周期的设置等功能。(3)查询修改,查询修改菜单主要具备简单查询和组合查询两方面的功能。 (4)报表,报表主要应该能够制定并能够传送如下表格如年度计划表、管理统计表、周期检定清册和科室仪表清册等。(5)计量审核,计量审核菜单主要具备仪器传送审核、新增仪器审核、仪器改级审核、一起延期审核、一起的封存、开封、报废的审核等功能。(6)帮助。
五、结语
本文阐述了计量管理系统的基本框架和整体设计方案,以及客户端软件的开发应用,将整套系统投入运行之后,可以对仪器仪表的检测结果、有效使用率、使用寿命以及仪器的性能等等方面进行进一步的分析和统计,为以后仪表仪器的购买和检测标定提供了可靠的依据。另外系统的操作界面简单美观,易于操作,因此可以在短时间使工作人员掌握系统的使用方法,将系统应用于日常的工作中。自系统开始投入使用到现在,工作人员通过系统对于设备的信息等情况有比较清晰的了解,因此管理效率得到一定的提高,同时还保证仪器的周期性检定。在不断地使用过程中,系统还会不断地改善和提高,以适应更广泛的要求。随着该计量管理系统的逐步建成和完善,计量工作可以完全的拜托手工或者人工的计量工作模式,各设备以及各设备内部零部件的详尽信息都可以随时随地的通过网络来进行检索和查询。在仪器仪表的检测中起到了作用,在一定程度上提高了计量工作的效率并且真正的实现的工作的自动化和无纸化。
参考文献:
[1]郑建挺,范泽辉,潘光斌,李双军.知识化计量管理系统设计技术研究[J].中国计量,2006,(10):2-3
[2]王峰.计量管理系统的开发及其安全性分析[J].计算技术与自动化,2007,(03):14-19
摘要:近些年来,随着时代经济的飞速发展以及科技的进步,当下主流的编程语言中,C++语言作为一种特殊的编程语言,主要来源于C语言的演化,同时C++语言跨平台软件开发的如何设计始终是当前软件开发行业领域研究的热点之一。本文在对基于C++语言的跨平台软件开发设计研究时,首先分析了C++语言,其次分析了跨平台软件开发环境,最后探讨总结了C++语言的跨平台软件开发设计过程。
关键词 :C++语言;跨平台;软件开发;设计研究
现如今计算机语言中C++语言使用频率和次数最多,同时编程速度较高,进而广泛的应用于跨平台软件的开发设计中。跨平台作为软件开发中的重要概念之一,不仅仅依赖于实际的操作系统,结合跨平台开发的实际需求,逐渐推动了现代化软件工程的蓬勃发展。因此本文对基于C++语言的跨平台软件开发设计进行研究有一定的经济价值和现实意义。
1、C++语言的相关概述
C++语言主要是由C语言演化而来的,C语言开发演化过程中,逐渐注重系统软件开发的特性,并伴随着C++语言的兴起,其新特性逐渐增加。当前C++语言和其它相对高级的语言相比较而言,有着特殊的运行性能,在实际的运行过程中,并不需要借助于虚拟机将其作为中介,进而将C++语言的运行效率显著提高。
同时C++语言在实际的开发过程中,往往有着相对较低的开发成本,C++语言应用的过程中,逐渐被引入各种各样的特性,将其在泛型编程拓展过程中,对于高层次的软件工程问题有着一定的积极作用。
总之,C++语言有着相对根本性的优势,不仅仅可以用于高级系统程序的设计和3D游戏的开发应用,同时也可用于数值科学计算以及通用程序设计等。
2、跨平台软件开发环境
2.1 跨平台的相关概念
跨平台作为现代化软件开发中相对重要的一种概念,不仅仅对操作系统没有一定的依赖性,同时对于硬件环境也没有一定的依赖性,而在实际的开发应用程序过程中,更要将其在另一个操作系统下保持有着正常性的运行,基于跨平台的实际需求,就要结合现代软件工程的发展,对各种不同的平台加以支持,进而将其带给市场的潜力充分发挥。
2.2 跨平台软件开发需要的环境
一般而言,开发环境构成的过程中,往往需要有着一定的软件编辑器、程序调试器以及程序编译器三种,但是就其实质性而言,Sandbox这种软件不仅仅可以实现代码的编译,同时也可实现代码的调试,其内部同样各种各样的平台中往往需要有着各种各样的代码库和依赖库。开发程序中,同样也存在多种类型的源代码,在C++语言的软件开发和编译中,就要做好最终结果质量的控制,并有最好的代码产生,在对错误捕捉和调试过程中往往需要一定的支持。
跨平台软件开发主要是将抽象实现的一种重要因素,往往需要将抽象以及相关的一些设计逐渐的借助于新的开发手段进行开发研究,实现在不同平台上都能实现特殊的编译。
3、C++语言的跨平台软件开发设计
C++语言跨平台软件开发设计过程中,更要做好各个环节的综合设计,就其实质性而言,C++语言的跨平台软件开发设计可以从以下几个环节做起:
3.1 将语言的扩展特性避免
一般而言,任何语言在编程的过程中,往往都是对相对较老的程序以及文件进行选择。这些相对较老的程序包含一些原有的程序和基本公式,相对来说这些程序和公式不仅仅有着规范性,同时也有着标准型,而当前现代化的新程序库相对来说是杂乱无章的,在跨平台上产生过程中,常常面临各种各样的故障,虽然会获得一定的支持,同时也会有不精确定义的事故存在。
C++语言的跨平台软件开发设计过程中,就要避免语言存在一定的扩展特性,这种跨平台开发过程中往往有着相对较高的异常灵敏度,无限度的对新特性利用中,就要借助于C++语言标准函数的基本模型,并保证开发软件和产品有着相对较强的稳定性。
3.2 将动态处理实现
C++语言跨平台软件开发中,就要对多种环境运行的可移植代码库加以编写,在实际的项目开发过程中,就要对可能存在的问题加以避免,并处理好一个平台在另一个平台上没有特性这一问题,进而实现动态性的处理。
3.3 借助于脚本文件实现管理
就C++语言的跨平台软件开发设计而言,就要做好脚本文件的基本管理工作,保证编写的程序代码不仅仅有着简单易懂的特点,同时也要有着一定的简洁性,对合理的软件结构进行构建,将和平台相关的一些文件以及数据库充分的分隔,在实际的开发过程中借助于脚本文件进行某种程度上的编译,将其在各个部位合理的分配。对应用程序使用的过程中,就要将配置文件中的相关配置选项调出来,进而将里面的程序读取,并在跨平台软件开发过程中,尽可能的保证平台相关联的文件进行全部的分离,借助于特殊的手段将该功能充分实现。
3.4 对安全的数据串行化使用
现如今,C++语言的跨平台软件开发设计过程中,对于如何保证跨平台数据存储的安全性和可靠性这一问题,始终是当前软件开发设计的核心问题之一,而C++语言的跨平台软件开发设计过程中,可以借助于软件的fread指令,做好对每个编译器和单一目标平台的综合性处理,并在实际的跨平台操作环境中,借助于实际方法对数据进行不同程度上的存储和加载,进而对平台的独立性加以保障,借助于跨平台将数据在目标文件进行存储过程中,一般而言,不同的平台间往往有着一定的差异,在实际的处理过程中,同样也将会有着多样性的结果特征。
3.5 C++语言跨平台开发中的编译和测试
C++语言跨平台开发变异和测试过程中,更要做好科学化的编译和测试,在实际的跨平台软件开发过程中,尽可能的保证相关联的一些代码在长时间的使用过程中,保证其代码可以在另外的平台上加以检测,并借助于不同的平台进行测试,进而将bug及时的发现。
3.6 实现抽象
一般而言,实现抽象主要是对跨平台应用程序中被移植过程中有着一定的有效性,通过对这种方式加以借用,进而实现软件的单独性开发,并将具有独立性和简洁性的程序拿出,在实际的跨平台开发设计过程中,往往需要对多种函数进行利用,进而在实际的开发过程中,并不用对所有的函数进行变异,而C++语言跨平台软件设计过程中,主要是对封装方法加以采用,进而将抽象的过程实现,这种封装方法相对来说,需要视情况而定,一旦存在相对特殊的情况时,就要借助于其它的方式做好程序的基本调用工作,并做好对该功能的基础命名工作。实现抽象的过程中,一旦对该程序及其公式使用之后,就要将该功能的主要程序直接调用,并将该功能充分实现。
3.7 C++语言跨平台软件开发的实现过程
C++语言跨平台软件设计开发的实现过程中,首先就要做好功能模块实现过程和非功能模块实现过程,在代码编写之前,就要对源代码在文本编写过程中的相关编辑策略加以规定,对\t格式加以统一,并使得代码的结构尽可能有着简单化的基本特点。
C++语言跨平台软件开发实现过程,同样也要对统一的工程宝建立,并对跨平台的代码库加以建立,借助于平台依赖库对平台相关代码进行封装,做好对处理器差异、编译器差异的合理控制,保证有着对齐的内存和有着顺序的字节,并将平台无关的代码实现,做好内存的管理。
操作系统和接口库实现的过程中,往往不同的操作系统将会存在各种各样的系统限制,在实际的开发设计过程中,更要对限制的参数进行适当的调整,并做好对文件描述符的基本限制,尤其是在Unix系统中,就要借助于文件的描述符这种系统性的资源,提高程序的通用性和灵活性。网络程序开发过程中,任何一个网络连接将会对一个文件描述符占用,一旦程序将很多的Socket连接打开,其程序在实际的运行过程中借助于fopen将难以打开文件。对这一问题如何加以解决呢?可以将其系统逐渐的升级为64位系统,同时还可以采用64位方式编译程序,对sys/io.h中的函数操作文件加以使用,并对文件池技术加以采用,将一部分文件描述符预留。进程和线程在实际的限制过程中,就要对线程数进行创建,并将符的数量以及进程线大小的限制加以描述,其操作系统抽象层中操作系统函数不能直接的被调用,更应该将其在一个操作系统抽象层中包装的库中实现,将其在底层的操作系统中直接的脱离出来,并保证系统调试有着相对有效的起点。
用户界面的实现过程中,就要做好跨平台软件图形界面的基础设计工作,将程序基础的逻辑代码和数据构成,金可的借助于跨平台的开发工具包,借助于C++语言实现,进而开发利用C++语言跨平台应用程序的一种用户界面,进而做好相关界面的控制。
结语
总而言之,本文在对C++语言的跨平台设计进行研究时,通过对C++语言和跨平台需要的环境进行分析,进而对C++语言跨平台设计做了主要的探讨,进而总结出,C++语言跨平台设计过程中,不仅仅要有着相对丰富的经验,同时更要在开发的软件中将更多的功能和实际的操作容积加入,借助于相对优越的设计,综合性的提高软件的额功能。本文研究分析C++语言的跨平台设计时,希望其中的设计思路以及相关的理论基础为更多的跨平台开发设计工程师给予一定的帮助,同时本文中存在的不足之处还望更多相关研究人员给予指正。
参考文献:
[1] 张驰. 基于C++语言的跨平台软件开发的设计与实现[D]. 北京交通大学,2010.
[2] 侯成杰. 航天器C语言软件常见编程错误分析及检测方法研究[J].空间控制技术与应用,2013,06:53-57.
[3] 杨波,沈承舒. 面向嵌入式软件开发的C语言程序设计课程改革探索[J]. 计算机教育,2014,05:105-107.
[4] 吴兴华. 基于C语言软件开发的效率、移植及调试[J]. 数字技术与应用,2013,12:172.
[5] 杨鹏. 基于C++语言的跨平台软件开发的设计[J]. 硅谷,2014,04:19+21.
[6] 徐巍. 跨平台移动开发框架的比较分析与实例开发[D]. 吉林大学,2014.
[7] 谢东来. C语言软件设计中的主要问题分析[J]. 计算机光盘软件与应用,2013,04:235-236.
【关键词】教育软件;教学设计师;职能
“教育软件已经成为国内软件开发的重点产品,被誉为中国软件业最后也是最大的一块阵地。”据介绍,国内教育软件主要分为:课程辅导类、外语辅导类、电脑学习类、学前教学类、百科益智类。纵观这五大类产品,在定位、制作、模块构思、背景设计、趣味互动性方面均不尽人意,少有精品;更有甚者认为“教育软件痼疾缠身”。目前,教育软件企业基本处于无章可循或有章不循的混沌阶段,缺乏科学化、系统化的管理;特别是缺乏既了解教育又了解技术的“复合型”人才,这使得教育软件企业在项目规划、需求分析、用户培训、应用深化等方面成效不高,严重阻碍了教育软件质量的提高。
教育软件开发是一个系统化、专业化的工作。教育软件企业为了应对竞争,促进教育软件的健康发展,对教学设计师的需求日趋明显。教学设计师在教育软件开发中扮演着关键的角色。教育软件产品与教学设计师的个人风格、兴趣爱好、专业能力和综合素质密切相关,因而教学设计师的能力在很大程度上制约着教育软件企业的发展。教学设计师如何适应现代企业发展需要,成为适应市场变化需要的复合型高素质人才,是现代教育软件企业所面临的一个重要问题。
1.教学设计师
教学设计师(instructional designer)的定义有很多种, 正如在2002年Challenges of Being an Instructional Designer for New Media Development: A View from the Practitioners一文中指出的“教学设计师的定义将会随着技术的变革而同步发展”。 笔者认为,从职位要求的技能角度来看,教学设计师是指负责组织教学内容以促进学习者有效学习的人,其主要职责是根据用户的需求,确定学习内容和范围,制定教学策略,采用合适的传播媒体,测试最终产品的可用性,评估与修正产品。
教学设计师虽然与传统教师有很多相似之处,但也与传统教师有明显的区别。教学设计师不仅可以在学校辅助各领域的学科专家制定教学策略、选择教学媒体,也可以在企业内部指导人力资源建设,在教育类公司进行教育产品的设计开发等。所以,与传统教师相比,教学设计师的工作范畴要广得多。他们利用教学设计技术,展现专业价值,是将教学设计理论应用于实践的探索者。在实际工作中,教学设计师一般不直接参与教学,不直接面对学生,而是通过指导、帮助学科教师间接起到提高教学质量的作用。教学设计师是学科教师的支持者,是学科教师教学过程设计的指导者、帮助者和教学软件设计制作的主要承担者。
通过如此类比,不难发现,教学设计师作为一个专门职业,其产生太有必要了。而当前教师专业发展的定位应该是要求“如何看懂教学设计然后有效执行”,这样的定位比要求教师“如何设计基于现代教学理论的教学设计,并且还要有效执行”相对简单,也就是要求教师只要具备耐心即可,而不是具备耐心和创造这两种天分。
2.教学设计师在教育软件企业中的职能
2.1 调研与分析职能
现代教育软件企业究竟需要什么样的设计人才呢?教育软件运作是一个非常复杂的过程,一个好的教育软件产品首先必须要有一个正确的市场定位,也就是要确定目标顾客。另外,还包括产品的风格定位、设计定位、类别定位、价格定位、销售定位、品牌目标定位等。做好这些定位的关键在于前期调查,包括教育软件市场调查、教育软件企业调查和销售场所调查。因此,教学设计师要具备的首要条件就是要有很强的调查分析能力。
在该阶段中,教学设计师需要需求分析、客户分析、培训内容分析、培训方案及课件脚本设计、培训目标与策略设计。分析与设计是教学系统设计方法中的基本技能,越来越多的企业人士认识到前期分析与设计对最终目标所具有的重要性。分析与设计也被作为基本技能纳入教学设计师的必备技能之中。
2.2 组织与实施职能
有了前期的调查和产品的一系列定位,接下来就是设计环节,这是教育软件开发的关键,也是教学设计师的核心工作。此环节要求教学设计师具备基本的设计知识和软件技术的掌控能力,有独特的品味和较强的设计资源和设计元素的整合能力。教学设计师要掌握各种教育软件性能和作用,不仅要熟练地掌握驾驭这些为自己的设计服务,而且还要能发现或善于设计新的教育软件产品。因此,在该环节中教学设计师的职能应该包括团队协作能力、组织能力、项目实施中的监控与反馈能力、创新意识与能力。教学设计师善于团队协同工作是基本要求。在组织项目实施过程中,教学设计师必须学会敏锐地发现问题,善于及时修正与完善问题解决方案。具备优秀的组织技能, 能够和团队成员协同工作;具备思考问题、解决问题的能力。
2.3 学科整合与技术开发职能
开发技能有初级和高级之分,常用多媒体教学软件的开发是初级教学设计师必备的技能,而具备数据库和程序设计能力属于高级教学设计师必备的技能。这一阶段是教育软件模型的设计与修改阶段,需要教学设计师有一定的研究能力,能够对信息进行筛选、综合、利用,并且能够对设计进行描述,有创新思维并具有一定的创新能力。该阶段,首先是由软件设计专家决定软件的内容,但是关于怎样使内容更好地组合才能最有益于受众,教学设计师会提出相关的建议,设计总体方案,并协助市场人员与客户、学科专家沟通。教学设计师鉴别大量的教学系统设计模型,选择并应用其中的一个模型,分析教学任务,内容和环境。
因此,教学设计师需要具备专业学科知识,主要包括教育学、心理学、管理学的基本知识;熟悉信息图示和流程图分析;具有分析可用性的实践经验, 掌握常用多媒体教学软件的开发,精通数据库和程序设计;了解系统开发的具体步骤与过程,如需求分析并确定教学目标、教学目的的分析、分析学习者和环境、编写教学目标、开发教学策略教学材料、实施形成性评价、修改教学材料、总结性评价。
2.4 产品试行与修改职能
当教学设计师协同软件开发师完成教育软件的设计与开发后,就应该在小范围内开展该产品的试行与测评。在试行与测评过程中,教学设计师是最优秀的形成性与总结性评价人员,因为他们熟悉教学设计过程,明确良好的教学系统具有的特征,能把握评价教学的各项标准。以验证新的系统或课程对学习者的学习效果如何。他们会运用相关标准对个方面做出评定,并应用评价结果做出结论或进行长期规划。
因此,该环节则需要教学设计师有一定的分析、鉴别问题等综合能力,还有掌握规划策略。在应用、评价阶段,教学设计师辨别影响选择技术和运用技术的因素,运用合适的评估策略来评估产品的有效胜,修正教学材料,使项目获得成功。教学设计师可以根据形成性评价中收集的数据,对教学材料的内容和使用过程进行修改。修改过程中要注意全面分析,以清楚、准确的方式进行总结。
参考文献
[1]王亚平.教育软件透析[J].教学与管理,1999.10.
[2]汪晓东.教育软件痼疾缠身[J].教育信息化,2006.10.
[3]李文超.教学设计师:如何在高校中培养[J].中国电化教育,2004.12.
关键词:电力;设备管理;设计;开发
中图分类号:TP18TN15.853文献标识码:Adoi: 10.3969/j.issn.1003-6970.2011.03.005
Design and Development of the Electrical Technology Equipment Management System
CAI Wei
(School of Computer Engineering, Nanjing Institute of Technology, Nanjing 211167, China)
【Abstract】The development of electric industry changes with each passing day, how to manage the more and more equipment is a problem to be resolved. In the paper, take computer equipment as example, a system which can manage company’s computer equipment better and better is designed and developed. Then the scientization and standardization level of company’s computer equipment management is greatly enhanced.
【Key words】Electric power; Equipment management; Design; Development
0引言
电力行业由于其行业复杂性,需要各种各样的设备协同工作。近年来,行业规模不断扩大,装机容量成倍增长,同时,信息化建设的不断推进,也使行业内部的IT设备数量剧增,如何对越增越多的各种设备进行有效管理是一个亟待解决的难题[1]。
本文针对上述问题,以计算机设备的管理为例,设计开发了一款计算机设备管理软件,以实现对计算机设备的有效管理。
1系统背景
电力行业的信息化建设日新月异,需要的计算机设备越来越多,对于一个电力公司而言,少则几百台计算机,多则数千台,主要包括文件服务器、数据库服务器、应用服务器、台式计算机、笔记本电脑等等。如果以手工方式对计算机设备进行管理,计算机设备管理员已经无法应付繁琐的管理工作,主要存在如下压力:
(1)计算设备的领用、借用、维修等台帐管理繁琐,各种纸质记录难以进行查询,并且存在记录不准确、不及时的现象。
(2)员工对自己使用的计算机设备情况不十分清楚,特别是借用的设备,存在机器已经归还、但台帐记录没有更新等错误情况。
(3)员工需要领用、借用机器时不知道公司是否有满足需要的设备,不能自己根据需要进行选择。
(4)公司领导不能及时了解公司的设备使用情况,例如是否存在闲置现象?某些品牌或型号的机器维修是否过于频繁?
(5)计算机设备管理员无法及时跟踪设备的使用情况。
基于以上情况,本文设计开发了一个有针对性的计算机设备管理系统,实现计算机设备的高效管理,包括计算机设备台帐管理和各种查询功能,以及设备申请、领用、借用的流程管理等功能。
3功能概述
公司领导基于此软件可以了解全公司计算机设备的基本信息和在一段时间内计算设备的领用、借用和维修信息,重点在于信息查询和统计汇总功能,不需要进行数据的修改。计算机设备管理人员借助此系统可以实现对全公司计算机设备的有效管理,主要包括计算设备基本信息、维修信息和领用借用信息等。设备管理人员可以按照部门、人员的层次对计算机设备及其维修信息进行管理,也可以在全公司范围内对计算机设备情况进行综合查询。同时可以借助此软件实现员工对计算设备的自我管理,使员工可以对自己使用的计算机设备信息可以进行查询,但不能查询和修改其他人员的计算机设备情况。
计算机设备管理系统的用例图如下:
图1计算机设备管理软件用例图
3需求分析
3.1角色定义
针对该管理软件,定义如下角色:
(1)高层管理者:公司的高层管理人员,主要利用系统查询公司的计算机列表、维修情况,期望具有比较灵活的查询条件和丰富的统计功能。
(2)部门经理:公司的部门经理,主要利用本系统查询本部门人员所领用、借用、代管的计算机。
(3)计算机设备管理员:全公司计算机设备的管理人员,对公司所有的计算机设备及维护信息有维护权,主要期望比较方便的数据录入功能和查询功能。
(4)普通员工:公司的其他员工,只能查看自己领用、借用、管理的计算机设备信息和维修信息,同时能够查询公司目前闲置(可借用)的计算机列表。
3.2模块划分
计算机设备管理软件可分为如下模块[2]:计算机信息维护模块、计算机维修信息维护模块、计算机领用信息维护模块、计算机借用信息维护模块和权限模块等。模块的功能描述见4.3小节的用例说明表。
3.3用例说明
用例是系统中的一个功能单元,可以被描述为参与者与系统之间的一次交互作用。用例是系统帮助参与者完成一个完整工作任务的系统功能。它由启动人启动,经过若干步骤完成一个任务并给使用者返回一个可见的结果。在需求分析中建立详细的用例说明表将对软件的后续开发工作起到极大的支撑作用。
以计算机信息维护为例,建立如下用例说明表:
计算机设备管理员利用此功能增加、修改、删除计算机设备信息,既实现计算机设备台帐的管理。当查看具体计算机设备的基本信息时,要求同时可以看到其历次维修信息的列表。
其他模块的用例说明表类似,不再重复说明。
4所用技术与运行环境
本系统软件基于ExtJs2.2和Struts 1.3进行开发。ExtJS是一种主要用于创建前端用户界面[3],与后台技术无关的ajax框架。可以把ExtJS用在Java、.Net、Php等各种开发语言开发的应用中。不刷新页面的后台异步传输是其一大特点,同时,ExtJs的强交互性也可以为用户提供一个更高和更全方位的网络体验,兼顾了桌面应用的交互性和传统Web应用的部署灵活性。Struts是一款优秀的MVC(Model-View -Controller)框架[4],MVC模式使得代码的弹性大大增加,Model部分是业务与应用领域相关逻辑、管理状态的对象,Controller部分接收来自View所输入的数据并与Model交互,是业务流程的控制器,View部分则负责展现数据、接收用户的输入。与ExtJs整合后,主要使用Struts的Model和Control功能,View由ExtJs实现[5]。
该设备管理软件的运行环境如下,数据库服务器的操作系统为AIX 5.3,数据库为DB2 V8.2,应用服务器操作系统为Windows 2003 Server,中间件服务器为WebLogic Server 8.1.5(中间件服务器可替换成其他的主流中间件服务器,如:WebSphere、JBoss等,本软件可以跨平台部署)。
5结论
近年来,电力行业在信息化意识、信息化建设推进的广度和深度、经验积累等方面都取得长足的进步。但是,面对需求快速增长且不断变化的电力市场,电力行业仍然面临着一系列的挑战和任务。如何对日益增多的各种设备进行有效的管理其中的重点,本文设计开发的计算机设备管理软件,可以对公司的所有计算机设备进行更加严格、规范、全面地管理,从而大大提升公司计算机设备管理工作的科学化、规范化水平。
参考文献
[1] 河南省电力公司焦作供电公司. 电网工程项目管理[M]. 北京:中国电力出版社,2007
[2] 严丽平;袁可风;宋凯. 基于Ajax技术的Web应用开发研究[J]. 华东交通大学学报,2007
[3] 王冠宇,蔡大鹏等.Extjs框架点击流在电子政务中的应用研究[J]. 微计算机信息,2010
[4] 龚瑜,江红,黄永. 基于Struts的Web开发[J]. 计算机与数字工程,2009
网络化在线考试作为网上远程教育的重要组成部分和发展分支,己经在国外一些发达国家得到蓬勃发展,国内外已经有很多计算机“程序设计”类考试的软件,它们大多具有上机考试和自动评阅的功能,但受考试题型限制很大,通常采用客观题的形式,并对程序设计类试题的评分方法很不完善,往往是“非对即错”,并不能真实的反映考生的项目开发能力。为了能够客观、真实、迅速的评价出一个人的项目开发能力从而缓解目前社会急切需要具有高水平的项目开发者的问题,开发一套能够定向评测软件开发能力的测试系统对网络发展具有重要意义。
1 系统需求分析
本系统可分为管理子系统和考试子系统。主要用户包括考生和管理员。
1.1 对于考官功能如下
1.1.1 试卷管理
通过试卷管理可以制定多种组卷方案,在进行考试参数设置的时候,管理员可以选择使用其中的一套组卷方案。可以建立、编辑、浏览和删除组卷方案,试卷的生成、编辑、删除和打印等功能。
1.1.2 参数管理
考试参数包括考试标识、考试时间、监考密码、是否显示题号、是否显示成绩、设置考试场次等,可以对以上各项参数进行管理。
1.1.3 题库管理
题库管理的基本功能包括题型的管理、试题的管理,试题的统计。
1.1.4 基本资料管理
管理所有的考生的基础信息,包括考生信息的导入、导出、查看、编辑、删除等,导入功能提供从Excle表导入考生基本信息到系统数据库的功能,导出功能是将数据库中的考生导出到Excel电子表格文件中。
1.2 考生的基本功能如下
1.2.1 用户管理
提供了注册、登录以及基本信息的维护的功能。
1.2.2 参加考试
输入准考证号和密码进行登陆,登陆成功后跳转到客观题的说明页面,提醒考生答题规则。点击按钮可跳入答题页面,考生在答完一道题目后,单击“下一题”按钮,将会跳转到下一题目。单位时间内无论是否答完系统都会自动跳入下一题。答主观题时,考生在编辑代码的过程中,可以进行调试、编译、查看帮助文档等操作。在完成该题目后,点击按钮,该系统将会调用已写好的测试用例进行测试,并将得分情况提交到服务器,同时跳转到下一题目。
1.2.3 评分及查看成绩
在全部题目完成后,点击提交,系统会对客观题目进行判分,对操作题目除了给出评分外,还会给出一份考生项目开发能力的评测报告。
经过对本系统的开发需求进行全面分析,总结出该系统实现的主要功能包括:管理子系统的试卷管理、题库管理、参数管理考生基本信息管理和考试子系统的用户管理、参加考试、自动评分及查看成绩。
2 系统总体架构设计及功能模块设计
2.1 体系结构设计
.NET软件开发技能测评系统采用三层开发方式,基于B/S架构,三层开发即指数据持久层、业务逻辑层和表现层,表现层作用是显示业务处理结果,提供给用户交互接口,根据用户的请求调用不同的业务逻辑。业务逻辑层的作用是完成具体的业务逻辑操作,返回处理结果。数据持久层的作用是完成完成业务逻辑对数据库的访问。分层开发的目的是为了实现“高内聚、低耦合”。易于控制、易于扩展、易于分配资源。降低了应用程序开发和维护的成本,增强了系统的复用性,系统的扩展性大大增强。表现层采用的技术主要是ASP.NET,其特点是页面和代码分离,页面技术有HTML、Javascript和CSS以及ASP.NET服务器控件,交互逻辑处理主要由事件处理函数完成。业务层使用C#编写的类封装具体的业务逻辑和数据访问。模型层主要是对数据表的封装。
2.2 动态模型设计
根据需求分析,得出系统完成的主要功能包括:考官的试卷管理,参数设置,考生信息管理,题库管理;考生的用户管理,参加考试,评分及查看成绩。系统的总体功能结构图如图1所示。
2.3 数据库设计
本系统面向的用户主要是考生、和考官。对考生用户来说,最重要的是方便考生考试和成绩的查询。对于考官用户来说,最重要的是方便考试系统的管理和维护。这就要求数据库结构能够满足各种信息的输出和输入。在对考试系统进行系统设计的基础上,可以得到下面所示的主要数据项和数据结构:
2.3.1 管理人员表
包括的数据项有姓名、密码、权限等。
2.3.2 考生信息表
包括的数据项有姓名、性别、身份证号、工作单位、工作岗位、工作证号、考试科目、专业、职称等。
2.3.3 考生答案备份表
包括的数据项有姓名、身份证号、考试科目、试卷编号、试题类型、试题卷面题号、考生答案。
2.3.4 考生成绩表
包括的数据项有姓名、身份证号、考试科目、试卷编号、试卷名称、总分等。
2.3.5 考生答题状态表
包括的数据项有姓名、身份证号、试卷编号、试卷名称、考试科目、当前状态、开始时间等。
2.3.6 科目与专业表
包括的数据项有考试科队专业等。
2.3.7 单位信息表
包括的数据项有单位名称等。
2.3.8 试卷信息表
包括的数据项有试卷名称、试卷编号、考试科目、专业、单选、题数、单选题总分数、多选题数、多选题总分数、判断题数、判断题总分数、填空题数、填空题总分数、简单题数、简答题总分数、考试时间、考试开始日期、考试结束日期、卷面总分、试卷难度系数等。
基于需求分析,本系统使用面向对象的方法进行设计,主要方法是分析动态模型,并进一步得出最终的解决方案—类图。
3 系统实现
3.1 系统开发工具以及开发环境
本系统采用vs2008开发平台,数据库使用的是Sql Server 2008,测试及源代码版本管理采用VS开发环境集成的TFS工具。为了保证系统运行的效率和可靠性,系统服务器应该具有较高的软硬件配置,对于客户端来说,要求不高。
3.2 管理子系统的实现
试卷管理模块可以对组卷方案进行管理,也可以对试卷进行管理。题库管理模块可以对题型及试题进行管理。打开试题维护窗口,选择一种试题类型后,在试题维护窗口可以对试题添加、编辑、及查找。
3.3 考试模块的实现
输入准考证号,登录系统后即可参加考试,试题类型分为选择题、判断题以及主观题。选择题目主要是单选,考生答完后,系统会自动评分,客观题评分的主要依据是在数据库里把选项和正确答案保存后,用户的答案和题库里的正确答案比对,记录正确个数,根据每个题目的分值和正确个数评出选择题目和判断题题目的分数。为项目操作通过单元测试、UI测试、功能测试后,给考试出一份项目测试报告。点击“下载项目开发能力报告”按钮后,会下载一份word格式的能力评测报告。
4 结束语
以互联网为主要手段的现代远程教育己成为当今教育发展的趋势之一。在国内外,远程教育不断蓬勃发展。而题库系统更是远程教育的一大重要组成部分,因此,基于Web的题库系统的研究对于发展远程技术教育尤为重要。本系统还有许多新的问题需要解决,需要在实际应用中不断积累和完善。
作者简介
关键词:平面设计软件;photoshop;二次开发
中图分类号:TU17 文献标识码:A
现代社会分工的细化使得平面设计这一视觉传达设计行业得到了快速的发展。作为平面设计工作的重要基础,平面设计软件是设计工作中的重要辅助工具。虽然,平面设计软件企业针对平面设计工作不断完善自身的软件系统,但是,不同的设计单位对软件需求也存在不同。这时,单纯依靠软件开发企业的更新与完善已经不能满足设计工作的需求。必须使用软件二次开发的方式使软件能够更加符合日常设计工作需要,提高设计效率。而通用型二次开发更是根据我国用户的实际情况进行的完善性开发,其对平面设计人员的使用等有着重要的意义。
1.平面设计软件二次开发现状探讨
目前,我国平面设计软件的二次开发主要由两种方式。一种是通过adobe公司的官方授权,而软件开发企业进行开发。另一种是软件平面设计人员或软件开发人员为了自身使用便捷性等进行的私自开发。受不同开发方式的特点使得两种方式开发中都存在着诸多的不足。例如:软件开发企业受市场利润、开发人员对平面设计专业理解不深等因素影响,软件开发中存在诸多的不足。而平面设计人员针对平面设计工作需求进行的二次开发虽然具有较高的效果,但是由于不能进行市场运作,好的软件系统只能在自己或朋友间使用。针对,adobe photoshop的友好界面以及允许用户二次开发的特点,现代平面设计人员越来越多的根据自身习惯以及使用需求进行二次开发。而商业企业也通过编程人员对平面设计工作了解的加深、网络调查问卷等形式为二次开发提供了基础需求信息。针对这样的环境,现代平面设计软件如何进行二次开发是软件开发企业面临的首要问题。笔者以自身开发编程经验以及对平面设计人员的调查走访等作为基础,对平面设计软件的二次开发进行了简要论述。
2.平面设计软件二次开发重点与方式
2.1以平面设计软件需求为基础确定开发方向与重点
现代软件开发企业在进行平面设计软件二次开发前,应加强对平面设计软件市场情况、应用需求等内容的调查与分析。以此为基础确定平面设计软件二次开发方向与重点。通过对市场情况、使用人群的调查使企业能够针对市场运营情况、平面设计人员使用需求等确定开发方向与重点。以此使二次开发后的平面设计软件能够更具市场竞争力、更加符合平面设计人员的需求,为提高平面设计软件二次开发市场价值、市场竞争力奠定基础。
2.2加强平面设计专业应用的深入了解与理解,实现科学的平面设计软件二次开发
加强平面设计专业应用的深入了解与理解是现代平面设计软件二次开发的关键。只有针对专业应用的、面向应用对象的二次开发才能够使二次开发后的平面设计软件符合专业应用需求,提高二次开发软件的市场竞争力。首先,平面设计软件二次开发企业应按照开发功能、开发方向等对平面设计工作、专业应用等进行深入的了解。并采用调查问卷、从业人员调查等方式对现代平面设计工作软件需求进行调研。在此基础上,分析平面设计软件允许二次开发的实际情况,开展软件二次开发。通过这样的方式能够使平面设计软件二次开发企业所开发的产品更加符合市场需求,促进企业产品市场竞争力的提高。
2.3以photoshop为例对平面设计软件二次开发流程、重点进行分析
Photoshop作为现代平面设计中最为常用的平面设计软件,从业人员对其功能需求、适用性等都有着较高的要求。虽然,adobe公司通过不断地更新对软件系统进行了完善,但是,该软件的二次开发仍具有较高的市场价值。
Photoshop的开放体系结构是该软件获得全球平面设计用户认可与推崇的关键。通过允许用户和开发者采用高级编程语言进行扩充、修改等二次开发满足用户的特殊要求。
首先,在软件二次开发过程中必须遵循一定的基本原则,使二次开发过程能够在基本原则的指导下有序的开展,实现平面设计软件二次开发的目的。在photoshop平面设计软件的二次开发中,应遵循模块化设计原则。以模块化设计原则使原有问题简单化、是复杂需求以模块方式逐个完成。通过模块设计原则使设计过程或测试过程中能够独立进行测试与优化,促进二次开发工作效率与工作质量的提高。
遵循具有良好用户界面原则使减少使用过程工作量的关键,在photoshop软件二次开发过程中应将良好用户界面的便捷操作、帮助等功能作为开发的重点,避免误操作等造成的损失。
结构合理性是软件二次开发的重点。根据photoshop原有结构为基础,在原有合理的结构基础上进行相应补充是现代photoshop平键设计软件二次开发的主要方式。通过模块化设计将平面设计软件需求在原有合理结构下进行补充,实现二次开发的最终目的。
以photoshop第三方插件二次开发为例,首先应了解调用插件的主程序,以此为宿主进行二次开发。然后根据二次开发滤镜的功能需求对滤镜行为的饱和度、亮度、滤波等进行模块设定与开发。在此基础上,通过模块与主程序的兼容性测试、模块稳定性测试等确定开发质量与效果,实现平面设计软件二次开发设计的目的。
Photoshop中的SDK提供了一些插件实例,这为photoshop的二次开发提供了很好的基础。我们在进行插件开发与编写时,可以通过对实例的简单变更实现插件的制作。
void PluginMain (const short selector,
PISelectionParams *selectionParamBlock,long *data,short *result);
这是photoshop的入口函数原型,如果想通过插件的编写实现区域的选择可以通过
selectionParamBlock->documentInfo->selection->bounds 来获取。根据插件程序编写的实际需求对实例中的相关函数参数进行改变即可以实现基本的插件编写。
3.关于平面设计软件二次开发方向的探讨
在现代平面设计软件二次开发市场调研中可以看出,不同行业对平面设计软件的插件有着不同的需求。而这一需求正是现代平面设计软件二次开发企业所面对的市场。针对需求进行的二次开发设计能够使二次开发企业以市场为导向提高市场竞争力,促进企业的健康发展。
平面设计软件作为现代平面设计工作的重要辅助系统为平面设计工作有着重要的影响。现代平面设计软件二次开发企业应正确认识平面设计软件二次开发的市场环境与市场需求。以规范化的市场运作为平面设计软件二次开发提供良好的发展环境。针对平面设计常用软件的市场占有率、行业应用情况等确定设计开发方向。以模块化的优势进行平面设计软件的二次开发,以此为平面设计从业人员提供便捷实用、行业特点插件、高效应用等设计功能。以此促进平面设计软件质量的提高、促进平面设计软件功能的丰富,为现代平面设计工作提供更加完善的、具有行业应用针对性的工作平台。
参考文献:
[1]王靖《photoshop软件二次开发功能需求的探讨》软件开发与编程2010.6
[2]宋海涛《以面向对象为基础进行平面设计软件的二次开发》视觉传媒与软件开发2010.1
[3]陈龙《平面设计软件二次开发基本原则的探析》软件开发与开发管理 2010.11
关键词:BIM技术,设备软件,协调机制,全生命周期
基金项目:“十二五”国家科技支撑计划项目—基于建筑信息模型综合规划设计技术研发应用(2012BAJ09B04)
1 前言
所谓BIM技术,即Building Information Modeling建筑信息模型技术。集几何图形和设计、计算及其相关信息兼备的数字化三维模型。建立跨专业的动态设计关联;做到一次修改,处处更新。提供强大的信息平台,使各种数字化的分析、模拟比较,以及自动图形输出成为可能[1]。
建立基于建筑信息模型的设备设计软件系统框架和数据架构,能够在不同设计阶段、设备系列不同设计计算软件(暖通空调设计、建筑给排水和电气设计计算软件)之间,实现数据共享,避免数据的不一致,减少二次输入,提高设计效率和设计质量。研究与应用智能化、可视化、模型设计、协同等技术,创建建筑、结构和设备设计协同工作平台;积极推进协同设计技术的普及应用,通过协同设计技术改变工程设计的沟通方式,减少“错、漏、碰、缺”等错误的发生,提高设计产品质量。针对实现设备各个专业之间的信息充分互用,提高信息的复用率,从而达到降低设计和管理成本,提高设计和生产效率[2]。
2 建立BIM软件的协同机制
BIM带来的是激动人心的技术冲击,而更加值得注意的是BIM技术与协同设计技术将成为互相依赖、密不可分的整体。协同是BIM的核心概念,同一构件元素,只需输入一次,各工种共享元素数据并于不同的专业角度操作该构件元素。从这个意义上说,协同已经不再是简单的文件参照。可以说BIM技术将为未来协同设计提供底层支撑,大幅提升协同设计的技术含量。BIM带来的不仅是技术,也将是新的工作流及新的行业惯例。
未来的协同设计,将不再是单纯意义上的设计交流、组织及管理手段,它将与BIM融合,成为设计手段本身的一部分。借助于BIM的技术优势,协同的范畴也将从单纯的设计阶段扩展到建筑全生命周期,需要设计、施工、运营、维护等各方的集体参与,因此具备了更广泛的意义,从而带来综合效率的大幅提升[3]。
3 软件操作和图形平台
如果想要进一步提高设备软件的竞争力,就要建立三维的图形平台。因为很多用户采用AutoCAD进行二维图纸的绘制,如果能够成功地将用户二维图纸成功转化为三维效果图,更方便设计人员直观地了解管网和设备的空间布置情况,能及时进行管网和设备的碰撞检查。
采用3D的图形平台,不仅能够吸引设计单位的用户,同时吸引一些施工单位的新用户。设备软件特点包括管网复杂,设备多,尤其设计人员画好二维的CAD图纸,能够转换成三维图,首先检查自己的设计是否合理,同时很方便施工单位查看设计效果,能够及时、有效地和施工单位进行沟通,提高效率。同时还可以增加施工单位新用户,在施工过程中,施工人员有时看不太懂平面图或是理解有误,容易造成施工单位的时间和工程损失,因此施工单位需要购买软件,有效地避免损失,提高效率。
4 加强碰撞检查
在当今设计工程中,在大型公建中设备专业投资已占总工程投资的1/3以上,在设计阶段,分析计算,管道碰撞检查等越来越引起设计者和施工者的关注,在全生命周期内,运行维护管理也是以设备专业为主,包括设备运行能耗监测,设备运行状况管理。结合平台和建筑软件的发展,开展设备软件深层次的开发。
5 改进了传统数据库的管理功能
基于关系型数据库的设备信息管理平台主要收录二维图纸、文字与照片。同一数据库的各类数据之间、不同的管理层级数据库之间、设计变更与数据库之间、设备维修更新设计与数据库之间均存在着严重的“信息孤岛”现象。这种二维、静态、孤立的数据系统从根本上无法实现设备BIM全生命周期管理所需的设备专业设计、设计变更、竣工信息和管理信息的时时更新等功能[4]。
BIM 技术通过统一的三维数据模型,为相关数据建立了丰富的关系数据表,将如上三类信息有机整合在几何模型与构件属性之中,为比对数据、生成明细表、提取构件等查询分析活动建立有效的方式,同时,借助用户的人性化参数实时输入和更新功能,真正实现数据管理及成果表达向三维、动态、交互式的转变。
6 增加多联机
多联机是最近几年发展起来的一种新型中央空调系统,具有节能、舒适、控制灵活等特点,可满足不同规模建筑物的要求。
多联机模块:可完成图纸绘制及系统计算,提供室内、外机数据库的维护和扩充功能。目前库中有大金、海尔、美的、海信、日立等厂家的常用系列及产品类型,并链接有产品实际照片,方便用户选取。应该建立多联机模块,而且数据库中需要更多的产品类别,才能提高市场竞争力。
7 形成完整的生命周期管理平台
3维BIM 系统则可实现建筑和设备各类构件的更新管理与其他非几何信息的植入,二者结合可从全方位对于建筑设备信息进行集成,实现数据、用户界面、应用程序和模拟计算的有效结合,使建筑内暖通空调、给排水和电器专业的管理可预测、可协作、可视化、可分析,并与数字管理相衔接。不仅可为建筑内设备的监控、维修、更新、记录研究服务,对于建筑物冷暖负荷、水力计算等模拟结果和能效分析的可视化提供了可能[5]。
8 结论
集成主要暖通空调、建筑给排水和电气设计软件,同时创建拥有全生命周期的建筑、结构和设备设计协同工作平台;能够提升设计人员的工作效率,专心于方案设计,而不是绘图。提高准确性,实现建筑节能设计,轻松完成协调工作,让所有项目参数者,如设计人员、施工管理人员和项目维护人员进行无障碍的沟通,能够将有关项目信息进行连续积累,避免遗漏和丢失。实现设备各个专业之间的信息充分互用,提高信息的复用率,从而达到降低设计和管理成本,提高设计和生产效率。
参考文献
[1] 邱相武, 赵志安, 邱勇云. 基于BIM技术的建筑节能设计软件开发研究[J].建筑科学, 2012 (06): 24-28
[2] 邱勇云, 邱相武, 赵志安. 基于BIM的暖通3D CAD开发研究[J].暖通空调, 2011 (04): 65-68
[3] 赵志安. 基于BIM概念的管道综合碰撞检查软件[A];BIM与工程建设信息化——第三届工程建设计算机应用创新论坛论文集[C], 2011年