時間: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年