時間:2023-10-30 10:33:30
引言:易發表網憑借豐富的文秘實踐,為您精心挑選了九篇系統開發的方法范例。如需獲取更多原創內容,可隨時聯系我們的客服老師。
【關鍵詞】敏捷方法;極限編程;校友系統
1.引言
敏捷軟件開發過程建側重于開發成員的協作開發、協作機制的建立和實際的開發步驟,是基于構想、探討和適應的基礎之上。敏捷開發的目標不是“重復”的過程,而是“可靠”的過程[1],以上特性使得如今敏捷開發頗受中小型開發團隊的青睞。
2.軟件工程與敏捷開發
2.1 傳統軟件工程與面臨的問題
早期的軟件開發充滿著個人主觀色彩,缺乏相關規范標準,但經歷了60年代的軟件危機之后,采用軟件工程原理來組織開發軟件項目成為業內一種重要手段。但在隨后的時間里,軟件工程知識體系正被不斷發展和完善,在進入90年代以后,卡耐基梅隆大學軟件學院推出CMM[2],為軟件開發過程提出了明確的管理衡量標準。許多人認為,隨著軟件開發的各個方面中不斷增多的規則和方法,程序員能更好的開發出軟件產品。但隨著越來越多的規則和方法的加入,軟件工程變得龐大和復雜,在現行的實際環境下,軟件開發如果遵循那些詳細制定的規則和方法是非常困難的,過于復雜且難以理解的開發流程和規則,使得完全使用傳統軟件工程方法來開發軟件產品變得越來越難以實現。為了完成開發計劃,開發者往往會省略一些流程以節省時間,程序員越來越希望制定出一套更簡潔的開發流程和規則,刪除一些不必要的步驟以應對不同的開發需求,從而讓軟件開發變得更靈活、快速,而敏捷開發正是因此而誕生的。
2.2 敏捷開發與極限編程
敏捷方法是一種在面對不斷變化的需求中,采用以人為本、迭代、循序漸進的方式快速開發軟件產品的方法。為獲取這種敏捷性,在開發過程中應把軟件項目分割為多個子項目,采用必要的紀律和反饋實踐,保證每個子項目的完整性,具備集成和執行的特性,從而體現讓整個軟件項目具有靈活、適應性的設計原則和設計模式。
當前,常見的敏捷方法有極限編程(XP eXtreme Programming)、SCRUM、動態系統開發方法(DSDM Dynamic System Development Method)、水晶方法(Crystal Methodologies)、自適應軟件開發(ASD Adaptive Software Development)、特征驅動軟件開發(FDD Feature Driven Development)、開放式源代碼(Open Source)等[3]。其中XP以它特有方式,大受青睞。
1999年,Kent Beek提出了“極限編程(XP)”這一創新理念[4]。進入21世紀以來,極限編程成為最流行的敏捷方法,多使用于為中小企業開發需求處于快速變化的軟件。XP提供了一個全局的、價值驅動的開發過程視圖,體現了4個價值目標:交流(communication),簡單(simplicity),反饋(feedback)和勇氣(courage),并遵循5個原則:快速反饋、簡單假設、逐步修改、提倡更改和優質工作[5]。
3.敏捷建模過程
本次校友網站的開發是玉溪師范學院2011年大學生科研立項的項目之一,筆者作為指導教師首先考慮到的問題就是組員均為缺少實際開發經驗的學生,若采用傳統的軟件開發方式,極有可能讓學生在冗長復雜的開發流程中失去興趣,從而影響項目進度與質量。而極限編程作為一種輕量、高效、低風險、可預測且充滿樂趣的軟件開發方式,更適合作為本次校友網站的開發模式。校友網站的開發目的,是為建立一個能讓各級校友溝通交流的平臺。因此開發出的校友網系統應貼切符合學生的應用需求,但在校學生對校友網的功能需求是一個籠統而模糊的概念,并且人數眾多、喜好各異,若要能短期獲得符合公眾真實意愿的需求分析是非常不現實的。而XP中快速反饋、逐步修改的理念正好讓組員能不斷收集完善學生需求,并修改反饋到系統中去。
3.1 需求分析
按照敏捷建模的思路,設計了圖1所示的需求分析以及總結流程。通過對各個模塊的建模應用,作為下一階段的建模基礎。通過模塊間的相互舉證,確保需求獲取的準確和高效。用戶故事(Story)是極限編程(XP)中的重要方法之一,體現了交流、反饋、簡單等原則,它通過精簡、獨立、可靠的素材替代描述,提高溝通效果。
在校友網系統的需求收集過程中,為了使學生能夠更好地表達他們的需求,需求獲取分為兩個階段:第一階段采用問卷調查方式,對不同專業和年級的學生以及部分教師發放問卷,并抽取問卷中類似需求的學生進行歸類;第二階段,通過整體分析問卷,隨機抽取同一類的部分學生完成設計人員所設計的任務,期間不斷溝通,詢問用戶的想法和意圖,完善用戶需求。業務流程建模在需求獲取后,對需求信息進行分析與細化,將業務流程進行提取與整理讓其能體現的整個系統的業務處理過程,使用戶理解全局的邏輯。用戶也能確認是否存在遺漏和特殊流程,從而生成了如圖2所示校友網基本業務流程。
3.2 角色設計與實例建模
建模作為敏捷開發的核心,體現在這里就是關于角色的規劃。通過對基本業務流程進行收集整理后,按照特定的角色對操作整理從而對產品經行實例建模,根據圖2進行角色設計,并分析設計該系統的三類角色:系統管理員、游客、注冊校友。
游客,未進行系統注冊的校友或其他在網絡上瀏覽該系統的人員,游客可以正確瀏覽系統前臺所有模塊。
注冊校友,游客通過在校學號進行系統注冊成為注冊校友,注冊校友享有游客權限外,應具有個性化的個人空間,并且能進入后臺進行個人信息的管理。
系統管理員,系統管理員是保障校友網系統運行所需要的技術支持和管理維護人員,應具有對各管理模塊的管理權限,從而對系統前臺各模塊的內容進行添加、編輯、刪除。
通過對業務流程進行整理后,按照特定的角色實施操作整理,就可對產品的進行實例建模,實例模型是利用對實例和角色的簡單描述并對產品需求進行模型化解釋,從而確定問題領域的作用。在實例建模過程后,不需給出任務操作細節,含有基本的描述即可。在校友網系統業務流程建模后可以發現,除特定的角色的實例復雜之外,其余角色用例建模都較為簡單,在后續功能模塊的設計進行上,能夠得到充分的利用,提高效率。最終我們得出了圖3所示整個校友網的功能流程圖。
4.系統設計
在系統開發過程中考慮到今后服務器負載和開發與維護成本,以及基于XP中逐步修改、提倡更改的原則,對平臺設計采用了基于B/S應用的.NET三層架構。.NET三層架構,是在客戶端與數據庫之間加入一個“中間層”。實際項目開發過程中,整個項目分為三層架構分別包含:表示層(UI)、業務邏輯層(BLL)和數據訪問層(DAL)。
表示層(UI):負責數據展示,將數據傳遞給業務邏輯層,為用戶提供交互操作界面。
業務邏輯層(BLL):負責關鍵業務處理和數據傳遞。復雜邏輯判斷和數據庫的數據驗證都需要在此進行處理,并反饋用戶數據和相關邏輯處理。
數據訪問層(DAL):實現數據保存與讀取,負責數據庫數據訪問。主要為業務邏輯層提供數據,根據輸入數據來操作數據庫。
為了保證項目開發效率,我們在項目中建了BLL,DAL,DBUtility,Model四個類庫和一個web界面。命名為:業務邏輯層(Business Logic Layer):BLL,命名空間設置為Maticsoft.BLL數據訪問層(Data Access Layer):DAL,命名空間設置為Maticsoft.DAL數據層基類:DBUtility,命名空間設置為Maticsoft.DBUtility,此外為了保證了數據傳遞的效率,添加了一個類庫,貫穿于整個三層架構中的,命名為Model為實體類。其中封裝的每個類對應著一個實體類,通常為數據庫中的一個表,將表中字段都封裝成共有屬性。這樣三層架構的搭建完成并有著如下關系:表示層業務邏輯層數據訪問層,他們之間的數據傳遞是雙向的,并且通常借助實體類傳遞數據。這樣設計有幾個優點:
(1)易于項目修改和維護。
(2)易于擴展,今后如有改動只需將原有類庫添加即可。
(3)易于合并和代碼的重復使用。
圖4展示了開發完成后的后臺管理系統界面,其余界面由于篇幅關系不作展示,目前該項目處于結題階段,未對外開放。結題后可登陸玉溪師范學院網站()進行訪問。
5.結束語
本文介紹了使用敏捷開發思想快速開發校友網系統的過程,確保系統開發按期完成,并通過用戶故事和原型迭代分析,完善了系統功能模塊,保證軟件質量。實踐證明:應對開發過程中學生不斷反饋引發的需求不斷變化,敏捷開發及極限編程的思想不失為一種明智選擇,由于篇幅關系,本文未能反映采用敏捷思想的軟件測試環節的過程,但作為敏捷開發中一個重要環節,不斷的測試與反饋才能促使系統的改進才能保證軟件質量。
參考文獻
[1]趙熙朝.敏捷軟件開發過程改進的行動框架[J].Software Engineering and Standardization.2007.
[2]RobertC.Martin.敏捷軟件開發:原則、模式與實踐[M].北京:清華大學出版社,2003.
[3]張友生.系統分析師技術指南[M].北京:清華大學出版社,2007.
[4]Kent Beck.Extreme Programming Explained[M].北京:機械工業出版社,1999.
[5]Sillitti A Succi G.Source Code Repositories and Agile Methods .Extreme programming and Agile Processes in Software Engineering:6th International Conference XP[C].2005.
作者簡介:
關鍵詞:會計信息管理系統 審計 系統分析 系統設計 系統實施
近年來,會計電算化迅速。會計信息系統的開發已由單項處理向較完整的會計信息管理系統發展,由單機向機的應用發展,由單純的會計核算向管理會計應用方向發展。不少地區和行業,已把會計電算化定為會計工作升級的條件之一。此外,會計軟件市場的出現,促進了會計核算軟件的商品化、通用化,有效地推動了我國會計電算化的進程。總體上,會計商品化軟件在企業中得到了廣泛的應用,并已取得了較好的效果和效率。而眾多的中小企業,如浙江省溫州地區中小企業達到16.7萬家,占全部企業總數的90%以上,占整個GDP的83%.但在使用商品化會計軟件上卻不如人意(除了財政部門規定的發票管理系統以外),發展速度遠遠低于全國的水平。其原因除了人為的主觀因素外,最主要的是商品軟件雖然功能較多,但不能適應企業的具體環境(如企業的管理思想、管理方法、經營的外部環境、企業生產規模、產品類型等因素),整體應用效果不很理想。筆者認為,中小企業根據自身特點,從企業的實際出發,自我開發或委托有實力的專業軟件公司開發自己的會計信息管理系統軟件也是有效途徑之一。
本文結合筆者在溫州地區開發幾個會計信息管理系統過程中的情況,僅就系統開發過程中的審計內容和方法作一介紹。
會計信息管理系統開發周期長、技術復雜、投資較大,如果開發的系統在技術、經濟和管理上不可行,或新系統不符合系統目標,或在系統開發階段沒有建立必要的內部控制,待系統運行后再進行修改,這不僅增加成本,而且系統的正常運行,有時甚至無法實現。因此在系統開發前和在開發過程中,都必須嚴格遵循一定的階段和步驟,且每一階段和步驟均有明確的成果,這些成果作為下一步工作的依據,使整個開發工作有、有步驟的完成。系統開發審計就是對會計信息管理系統開發的整個過程進行的審計。按照系統開發的周期,系統開發分為系統分析、系統設計和系統實施三個階段,因此需分別對每一階段進行審計。
一、系統分析階段的審計
系統分析階段包括提出新系統目標、成立開發小組、可行性分析、現狀調查、需求分析和邏輯模型建立。其審計內容和方法如下:
1.與系統分析人員一起確定系統的長期目標(2~4年)和近期目標(1~2年),以確保系統目標滿足單位內外的管理對會計信息的需求,能完成所要承擔的會計工作,要符合單位財會人員的習慣,同時必須保證數據信息的可靠性并具有一定的效率;確定系統與外部環境的信息聯系和接口;確定系統的主要功能和結構;確定系統與企業其他系統(如CAD、CAM)的界面和信息聯系。
2.確保各有關部門派代表參加開發小組并確定其熟悉所屬部門的崗位責任和工作范圍;檢查項目負責人召開的重要會議,看是否均有各部門人員參加。
3.審核企業可以投入的資金、物力、人力及其來源。
4.與系統分析人員共同新系統在技術、經濟、管理等方面的可行性。
5.復核系統分析人員取得的現系統的信息關聯狀況、會計工作流程和會計業務流程、信息載體和信息量等全部詳細資料;審核所建立的新系統的目標能否滿足其處理和控制上的要求。
6.向會計部門查詢,確定該部門就會計處理的立場,審核有關的成本與效益的計算。
7.與系統分析人員一起分析新系統的邏輯模型(重點是數據流程圖)是否滿足會計和財務制度流程的要求,是否充分體現了用戶的需求。
8.全面檢查系統分析階段的現狀分析報告、可行性報告、會計業務作業流程圖、輸入輸出和代碼調查表、系統分析說明書等文檔是否完整、正確。
二、系統設計階段的審計
系統設計是根據系統中提出的邏輯模型,考慮實際的設備、技術條件、條件及條件,確定新系統的實施方案即系統的物理模型。系統設計階段的主要活動有系統總體設計和系統詳細設計。系統總體設計包括功能模塊設計、文件與數據庫設計、機及系統配置方案設計。系統詳細設計包括代碼設計、輸入和輸出設計、用戶界面設計和處理過程設計。其審計和如下:
1.查閱系統設計是否采用了模塊化、自頂向下逐步求精、各模塊之間聯系最少的結構化設計方法,以確保系統“波動效應”盡量小,可修改性和擴展性盡量好;以確保模塊的劃分滿足核算和內部管理的需要,符合會計人員的習慣;以確保系統結構控制圖符合系統的處理要求。
2.審核數據庫文件是否符合控制要求、用戶輸入數據和輸出信息要求。特別要注意文件和數據的安全保密控制和權限控制,以保證未授權人員不準接觸文件和數據。審核字段和記錄的設計,并進行一致性、準確性、合理性的綜合分析,盡量消除冗余和節約存貯空間。
3.審核計算機和網絡系統配置方案。以確保系統環境的合理配置,以較小的投資獲得較好的系統性能;硬件的配置要符合目的性、先進性、配套性、經濟性;軟件配置要選擇合理的操作系統、語言編譯系統、數據庫管理系統;網絡系統的配置要符合標準化、主流化、實用性和技術性能指標好的原則,實現數據、程序與硬件等資源的共享。
4.抽查部分代碼,看其是否符合國際、國家、行業頒發的標準代碼設計。檢查代碼在邏輯上能否滿足用戶的需要,在結構上能否與處理的方法相一致。檢查代碼是否符合惟一性、直觀性、可擴展性和合法性。確保一級會計科目的代碼應符合財政部頒發的會計制度規定的科目編碼。
5.審核系統的輸入輸出設計是否符合《會計核算軟件基本功能規范》的要求,以保證輸入和輸出數據的合法性和正確性。特別要保證輸入數據的質量和糾錯能力,竭力避免“垃圾進,垃圾出”的情況;并采取一定的控制措施,確保“正確的輸入,正確的操作,正確的輸出”的原則。檢查輸出報表的設計是否滿足對外報送和對內管理的要求。復核系統的輸入輸出設計是否包含一定的審計線索,以便能由系統的輸入順查到輸出,或者由輸出逆查到輸入。
6.審閱處理過程設計是否符合《會計核算軟件基本功能規范》的要求。以確保具有符合國家統一會計制度的規定的自動編制會計報表的功能和允許使用的多種核算方法;以確保有適當的控制措施,使所有經過審核的業務,均能完整的被處理;確保結賬功能的設計能自動檢查本期輸入的會計憑證是否全部入賬,并保證賬證、賬賬相符;以確保機內銀行存款日記賬與輸入的銀行對賬單及適當的手工輔助自動進行銀行對賬,自動生成銀行存款余額調節表。
7.審核新系統的實施方案,以確定整個系統設計的文檔(系統總體設計書、詳細設計報告、系統設計報告)是否齊全、正確。
三、系統實施階段的審計
系統實施階段是將新系統付諸實施的過程。它的主要活動是根據系統設計所提供的控制結構圖、文件與數據庫設計、系統配置方案及詳細設計資料,編制和調試程序,進行系統試運行、系統轉換等工作,將技術設計轉化為物理實際系統。其審計內容和方法如下:
1.與程序設計人員一起選擇合適的程序開發工具、合適的數據結構和合理的算法;檢查是否采用了結構化程序設計方法;查閱程序中采用何種控制措施,確定各種必須的內部控制是否都以納入所設計的程序中;檢查程序流程圖是否正確,檢查源程序的正確性、可讀性、可測試性和可維護性是否達到要求;檢查程序文檔是否完整和規范。
2.參與和監督程序的分調試和總調試。調試時需精心組織測試數據模型,即有正常的、有效的各類業務數據,又有不完整的、無效的、不合理的、不合邏輯的數據。分調試時以查明該模塊是否按預定的要求接收并處理正常的業務,并發現是否拒絕不正常的業務且按預定的要求給出錯誤的信息并給予記錄,以確保每一模塊內部控制關系的正確和數據處理內容正確;總調試時要測試各模塊接口之間的各種可能的使用形態及其組合情況,查出系統中屬于相互關系方面的錯誤和缺陷,以保證各控制信息關系的正確。
3.與有關人員一起參加系統的試運行,試運行應采用并行運行方式,試運行的期限不低于三個月。檢查試運行記錄和試運行報告,核對新舊系統處理結果,看其是否達到預定的目標,有無發現系統存在的;查明實際的電算化會計信息管理系統與原來設計考慮的差異是否合理,系統能否正式投入運行;審核所選的系統轉換方式是否合理。
4.審核被審單位電算化會計信息管理系統的操作管理制度,查明系統的操作員、管理員、程序員的工作職責是否明確,有無相互兼任的情況。查明未經授權批準、不掌握密碼的人能否接觸程序和數據并對其修改;實地觀察系統操作人員的操作情況,查明輸入數據是否經審批,正確的數據能否被完整準確地輸入系統,錯誤的數據能否被發現并經過適當的程序更正后重新向系統提交;查明是否制定了嚴格的硬件、軟件管理制度,制定的制度是否符合內部控制的原則并有效執行;檢查系統修改的文檔資料,查明每次修改是否按規定的程序進行,已修改過的程序是否妥善保管;實地觀察系統的運行狀態,檢查系統的運行是否正常;參與系統運行后的審核和評價。
5.詳細檢查系統實施階段的程序設計規格書、源程序清單、程序測試報告、系統測試報告、操作手冊等文檔是否完整準確。
四、結束語
會計信息管理系統開發的審計,是一種事前審計,它具有積極的意義。因此,審計人員、特別是單位內部審計人員對會計信息管理系統的開發進行審計,這對于開發活動的恰當控制,系統開發方法的性、先進性和合理性,系統開發過程中產生的系統資料和憑證的規范性,系統運行以后數據處理的合法性、正確性、完整性和效率性,以及事后審計的可審性,都具有很大的作用。
:
關鍵詞:C程序設計 單片機系統開發 教學方法
隨著微電子技術的發展和廣泛應用,基于單片機上的系統開發,C語言作為一種高級的編程語言,越來越受到人們的關注。現在,無論是嵌入式系統開發企業還是電子設計競賽、畢業設計等,一般都以C語言為主要開發工具。結合單片機的系統資源,用C語言開發符合實際工程需要的單片機系統,對于編程者來說就有重要的意義。
1.C在單片機教學中的地位
C語言作為一種結構化的程序設計語言,它是程序開發工具中使用最廣泛一門編程語言。C語言具有很強的功能性、結構性、可移植性。用C語言編寫程序比匯編更符合人們的思考習慣,程序開發者可以擺脫與硬件不必要的接觸,更專心地考慮程序的功能和算法而不是考慮一些細節問題,這樣就減少了開發和調試的時間。由于它具有良好的程序結構,適用于模塊化程序設計,因此采用C語言設計單片機應用系統程序時,采用結構化的、自頂向下、逐步求精的程序設計方法,將功能模塊化,由不同的模塊完成不同的功能。這樣可使整個應用系統程序結構清晰,易于調試和維護。
2.單片機教學現狀
單片機技術是現代電子工程領域一門飛速發展的技術,是現代電子技術中的一項不可缺少的重要技術。隨著技術的不斷進步和日益普及,單片機技術已滲透到各個領域,影響著我們的日常生活和工作。因此電子技術及相關專業的學生學習單片機技術越來越成為社會發展的需求。當前,各大高校的電子、計算機類專業均開設單片機課程。
《單片機》是我院電子系一門實踐性極強的專業主干課程,是我校電子系重點建設課程之一,是本專業學生的必修課程。為了提高我系單片機教學效果,我們對單片機教學進行了大膽改革,使用C語言開發單片機,且課程的設計打破了學科體系的框架,將單片機和C語言的相關知識和技能按“項目”進行整合,并將《C程序設計》課程列為電子類專業核心基礎課程之一。因此,《C程序設計》課程教學效果的好壞,將直接影響學生后續專業課程的學習。
從近幾年我系《C程序設計》課程的教學效果來看,學生普遍反映該課程的學習比較困難,課程的語法知識較多,理解和記憶都不太容易,即使記住了語法知識也不能靈活應用;不知道學習C語言究竟有何用處,學完C后不能很好地利用C進行單片機小型系統的開發,缺乏知識的靈活應用能力。因此,根據以往單片機教學所得經驗,我覺得教師有必要在《C程序設計》課程的教學過程中在以下幾個方面引起足夠的重視,并在教學中加以改進,為后續單片機課程的學習打下堅實的基礎。
3.《C程序設計》課程教學方法探索
3.1上好每堂課,激發學生的學習興趣
語言程序設計教學被認為是一種需要師生雙方改進的一門課程,因為大多數語言教材中通常先給出一般的語法格式,然后逐步講解語法要點,再給出實例。這種順序灌輸會使學生失去學習的興趣,所以我認為在課堂教學環節應采取以學生為主體、以教師為主導的教學模式,要求學生自己先看有關知識點,并識記。教師采取精講實例,在這過程中引出相關知識點,然后再舉一類似實例讓學生自己分析,鞏固知識點。教師應把主要精力放在算法的分析和各語句語法的具體應用上,同時培養學生自學能力,采取互動機制,迫使學生主動學習。
3.2注重演示,強化實驗,提高實踐操作能力
因為授課對象是一年級新生,所以教師多用通俗易懂的語言進行講解,多舉實例,使學生容易理解和消化。在教學過程中,盡量采用講解、演示方法,如在講解經典算法后,按照理論方法所述,用DEV C++軟件進行編程演示,從而加深學生對教學內容的理解。
在教學過程中,教師應將理論知識與實驗內容進行整合,根據教學內容并結合實際應用設置實驗題目,讓每個學生獨立完成。遇到學生不能解決的問題,教師應利用多媒體進行演示解決問題的過程,從而加深學生對教學內容的理解并提高實踐操作能力。
3.3培養良好的編程風格
3.3.1優化程序
由于在許多工業測控領域中的嵌入式系統都采用單片機開發,它們所需要的計算和控制工作日趨復雜,其中軟件的設計是最復雜和困難的,工作量大,特別是對于控制系統,設計人員需要考慮單片機的軟硬件資源分配,但是單片機系統是一種資源十分有限的系統。這主要表現在CPU和片內結構簡單、程序存儲器資源的不足。因此在用C語言進行單片機開發時,如何使用好這些有限的資源就顯得十分重要。雖然C語言具有許多的優點,但是生成的代碼相對要長,基本多占用存儲空間20%―50%。因而,在“C程序設計”課程教學中,教師不僅要教會學生如何編寫程序,而且應在教學過程中向學生灌輸優化代碼的思想,讓學生從大一開始就有開發項目的一些經驗。
3.3.2合理選用數據類型
C語言在程序開發中提供了的豐富的數據類型,尤其是關于用戶界面開發和一些動畫與圖像技術的實現。但是在開發單片機系統時,我們要按照實際需要,合理地選用數據類型。C語言中有Char等少數的數據類型是機器語言直接支持的數據類型,用此類數據類型的語句所生成的代碼較短,而其它的數據類型如整型、浮點型等數據要有一定的內部程序或內部函數的支持,相對來說較復雜的數據類型的語句生成的代碼也復雜,不利于轉化成單片機的代碼。因此,在“C程序設計“教學過程中,要向學生適當說明選擇合適數據類型的好處,并盡可能地減少程序中使用的數據類型的種類,為以后學生的單片機學習打好基礎。
3.3.3灌輸模塊化程序設計思想
在普通微型計算機上進行C語言程序開發設計時,只需考慮程序功能實現,而不必考慮程序代碼的長短。但是在單片機上進行C語言程序設計就必須考慮系統的硬件資源,要求設計的軟件程序結構是合理、緊湊和高效的。同一任務,有時用主程序完成是合理的,但有時需子程序效率最高,占用資源最少;有時并不是程序的算法越簡單、長度越短越好,由于有一些算法要調用一些內部的子程序和函數,生成的機器代碼質量反而較低。不同的算法對程序代碼效率影響很大。因此,在進行“C程序設計”教學時,教師應適當向學生灌輸模塊化程序設計的思想,在不影響程序功能實現的情況下可以采用一些優化算法,并且把程序分成若干個功能獨立的模塊,為學生今后的單片機項目開發做好鋪墊。
4.結語
單片機系統采用C語言開發與設計,極大地促進了單片機在生產、生活各個領域的應用,提高了程序開發效率。因而,C語言學習效果的好壞,對今后單片機課程的學習具有深遠的影響。除了講解C語言的基本語法外,更重要的是改善教學方法,利用各種方法培養學生的學習興趣,并向學生灌輸良好的編程風格與編程方法,為今后的單片機課程的學習打下良好的基礎。
參考文獻:
[1]向艷.“C程序設計”課程教學體系和模式探討[J].計算機教育,2010,(3):112-114.
[2]董蘊寶,潘旭君.淺談C語言在單片機中的程序設計[J].科技信息,2009,(13):59-67.
[3]張洪靜.電類專業C語言教學探討[J].電腦知識與技術,2010,(29):8280-8281.
[4]林益平,趙福建.單片機C語言課程教學的探索與實踐[J].電氣電子教學學報,2007,(2):104-106.
[5]石愛榮.C語言程序設計課程教學探析[J].警官教育認論壇,2007.2:158-160.
摘要:眾所周知,高等職業院校計算機專業畢業生的軟件系統開發能力普遍不高,該文從分析原因入手,提出提高高職計算機專業學生軟件系統開發能力的有效方法,即培訓實驗體驗法。
關鍵詞:高職學院;軟件系統開發力能;培訓實驗體驗法
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2009)28-8009-02
Discussing on Improving the Ability of Software System Development of Students of Computer Major in High Vocational College
WANG Jun-ping
(Electronic Information Department, Xianyang Vocational Technical College, Xianyang 712000, China)
Abstract: As we know, Commonly graduates of computer major don't have the high ability in the development of software system in higher vocational college. The paper analyzes the reasons, then points out the effective teaching methods, that is, training, experimenting and experiencing, to improve the ability of developing software system in higher vocational college to students of computer major.
Key words: Higher vocational college; The Ability of Developing Software System; Training Experimenting & Experiencing
前些年,高校計算機專業畢業生較少,供不應求,學生一畢業就有單位要。隨著社會的發展,目前出現了一種奇怪的現象:一方面,各行各業缺乏大量計算機技術人員;另一方面,相關院校培養出的大量計算機專業的畢業生卻難以找到工作或不能勝任現有的工作。究其原因,其中一條就是:社會對計算機人才的需求越來越高,既要求學生具有較強的軟件開發能力,又要具有一定的系統開發的工作經驗。用人單位對計算機專業畢業生的要求幾乎達到了學校與公司的“無縫”鏈接。但是,高職院校計算機專業的學生的軟件系統開發能力普遍不高,具有系統開發經驗的就更少,有的畢業生連一個很簡單的軟件系統都沒有開發過,高職院校培養的學生在系統開發能力和經驗上與社會要求脫節。為此,我們在分析原因的基礎上,提出提高高職計算機專業學生軟件系統開發能力的有效方法,即培訓實驗體驗法。
1 學生軟件系統開發能力不高的原因分析
1.1 培養過程中重理論輕實踐
在高職計算機專業人才培養過程中重理論輕實踐,可以從計算機專業教學計劃的課程設置與教學過程中找到相關的依據。專業必修課是高職學生必須修讀和掌握的課程,是一個學生學好專業的基礎,也是一個學生從事工作以后進一步提高和發揮自身潛力的根本。在培養學生過程中,重視這些基礎理論是十分正確、十分重要的,也是用人單位選擇人才的一個基本的、重要的條件。但是,我們在重視理論教學的同時,對實踐教學卻重視不夠,主要體現在:1) 在一些實踐性較強的課程中,理論課時占的比重還比較大,老師講得多,學生練得少,學生實踐操作的機會少。2) 任課教師重理論的講解和分析,對這些理論和技術在實際中的應用介紹卻比較少,一般滿足于一些驗證性實驗的指導,對提供給學生進行的一些設計性或綜合性的實驗缺乏足夠的熱情,培養的學生只能做一些簡單的驗證性的編程。3) 學生實驗指導書注重課本的配套練習,強調驗證性的實驗,而針對實際應用的實驗例子、設計性和綜合性的實驗例子很少,指導教師往往也因為實驗課時量少,也沒有給出更多的實用例子給學生練習。針對學生的設計性、綜合性實驗訓練少,造成學生在學完一門課程后,只知道編寫一些簡單的程序,對實際的應用和多種技術的綜合應用知之甚少。由于學生每門課程都沒有得到很好的實踐訓練,一個綜合多種技術的軟件系統開發對他們來說自然就不知所措,到畢業還不具備高職學生所必須掌握的技術、方法和技能。有些學生從入學到畢業,連一個簡單的軟件系統都沒有設計過,只能勉強編出幾個簡單的程序,這樣就很難適應社會的要求。4) 課程設置更多考慮了培養學生技術的寬度與廣度,但是對培養學生綜合技術的應用和掌握技術的深度存在著不足。比如,學生學了多門軟件開發工具的課程,從學程序語言的數量來說夠多了,但是沒有真正能夠用一種語言來開發系統。
1.2 制定或執行標準不夠嚴格,學生動手能力差
目前高等院校的計算機教學缺少制訂實驗教學或實踐環節的質量標準或執行的標準不夠嚴格,學生動手能力差。一方面,我們比較注重專業課程的教學大綱與實驗大綱的制訂,但是卻缺少課程實驗教學或實踐環節的質量標準或者是執行不夠嚴格。另一方面,高職計算機專業是一個實踐性很強的專業,應該有課程實驗教學或者實踐教學的質量標準,即學生學習了一門課程后要達到什么樣的技術水平,必須確定一個量化的標準,如Visual Basic課程,學完后,學生要學會用Visual Basic來設計與開發一個系統,當學生達到這一質量標準才能得到相應的學分。但是,現在我們往往都是用理論考試來代替了這個質量標準和要求,從根本上造成學生應付理論考試,忽略對動手能力和應用能力的鍛煉。學生學完課程后,只能編寫一些簡單的程序應對考試,不能夠獨立設計與開發一個綜合的系統。
1.3 提高學生實踐能力的主要場所沒有得到充分利用
大部分高等職業院校用于提高學生實踐能力的主要場所,如實驗室、實習實訓基地等,沒有得到充分的利用,開放實驗室沒有真正落到實處。學生到社會見習、實訓時間少,學生真正了解公司、企業對技術的需要,了解公司的運作,能夠參與軟件開發或者接受公司軟件開發培訓的機會就更少。所以,學校所教、學生所學與公司、企業對人才的需求就產生很大的差距。學生掌握編程工具和編程能力不足,綜合各方面技術來獨立開發軟件系統的能力更顯得困難。
1.4 學生掌握的課程內容分散而且各自獨立
軟件系統開發需要具備軟件工程、數據庫原理、程序設計的基本理論以及熟練掌握一門編程語言、一個數據庫系統、以及多媒體技術等多個處理和編輯系統。但是,學生掌握的是分散的、各自獨立的課程內容,缺少融合多課程知識的經驗和能力,在軟件開發過程中就出現了困難:1)不能熟練操作編程工具和數據庫系統;2)不知如何實現開發的系統與數據庫連接;3)系統開發時,對數據庫操作編程必須用到的語言程序感到無所適從;4)對要開發的系統不知從何入手。這是學生缺乏有效的指導和實驗方法,掌握的課程內容分散造成的,也是很多學生擁有自己的電腦,卻只是用于上網聊天玩游戲的主要原因。
2 提高高職計算機專業學生軟件系統開發能力實驗方法的設計
為了幫助學生提高軟件系統開發能力,我們根據計算機軟件生命周期原理,針對需求分析、系統設計(包括框架設計和數據庫設計)、詳細設計、程序設計、軟件測試等5個階段從實驗方法、實驗路線的研究出發,設計出了針對高職計算機專業畢業生的一套有效方法,即培訓實驗體驗法。
2.1 實驗方案
指導思想:先培訓,然后在老師指導下完成。
實驗目標:完成一個簡單的功能比較完整的軟件系統。
參與對象:高職二年級以上的學生,5人/組。
指導老師:1人/組。
實驗設備:在課余時間利用開放實驗室及學生自有的電腦。
實驗方法:先案例培訓、學生結合案例實現與老師分段結果檢查相結合的方法。
實驗路線:先由指導老師結合具體的案例進行培訓,把系統開發的全過程進行講解,然后由老師出題或學生自命題進行開發。老師提出完成系統的各時間段,以及每個時間段要完成的內容和進度,學生在在老師的指導下完成。
實驗步驟:第1階段,利用課余時間組織學生進行培訓,用6~8課時對具體的案例進行講解。第2階段,給出系統名稱后,要求學生在20~30天的時間內結合案例寫出軟件需求分析和系統的框架設計,明確系統所要實現的功能模塊。第3階段,要求學生在30天左右時間內結合案例對系統進行詳細的設計。第4階段,要求學生在30~60天的時間內結合案例編寫代碼。第5階段,要求學生在30天左右時間內結合案例進行系統調試修改。第6階段,學生在30天左右時間結合案例寫出系統使用說明書以及總結報告。
2.2 實驗方法
實驗方案確定以后,我們召集參與實驗的學生進行培訓,由指導老師先對一個比較具有代表性的軟件系統進行講解和剖析,從軟件系統運行環境、開發工具、數據庫、系統的集成等開發過程進行介紹,使學生了解在系統開發中自己缺少什么知識。然后根據學生的具體情況,布置學生自行修讀相關的技術、工具等知識,并在一定時間內完成,寫出修讀的總結或讀書報告。最后指導老師給出具體的題目讓學生去實現。
實驗從2008年10月開始,到2009年6月結束,參與的是2006級計算機科學與技術專業的20名學生,他們基本具備開發系統所需要的知識和技術,分4個小組,每個小組由1名指導教師輔導。
2.3 實驗效果
對學生進行的2期試驗結果如下:1) 軟件需求分析和系統的框架設計文檔,書寫得比較完整、規范,符合系統的功能要求的,共有18人;寫得一般的,共有2人;寫得差的,共有0人。2) 對系統進行詳細地設計,功能較為完整、規范的,共有15人;完成得一般的,共有5人。3) 編寫代碼能力強的,共有5人;一般的,共有10人;較差的,共有5人。4) 系統調試修改、刻錄打包。完成得好的,共有12人;一般的,共有7人;較差的,1人。5) 書寫系統使用說明書文檔。完成好的,共有17人;一般的,共有3人;較差的,0人。總體效果比較好。
3 經驗體會
本次實驗我們的主要經驗是:1) 該方案包含一個比較系統的培訓過程,這正是高職學生普遍缺少的經歷和經驗。所以,經過培訓的學生在撰寫需求分析與框架設計文檔、系統詳細設計、系統測試方面完成得比較好。而一般沒有經過培訓的學生,很多人在做的時候不知從何下手,撰寫出來的文檔既不統一,也不規范,指導教師花了大量的時間和精力幫他們修改和指正。而經過培訓的學生撰寫出來的文檔規范,系統設計比較清楚、系統測試操作得當,指導教師在這方面的工作量就大為減少。2) 在系統調用數據庫的連接編程方面,實驗小組的學生基本都能獨立完成,而一般學生,大部分都需要教師的指導,并且花較大的精力指導才能完成。這方面的編程與操作是學生開發系統時遇到的難點之一,它涉及到多個系統的操作,需要學生的綜合運用。實驗小組的學生由于經過培訓,有教師的詳細講解以及有相應的案例作參考,這一難點得到了較為有效的解決。3) 高職學生基礎普遍不十分好,對軟件系統開發都有畏難情緒,經過這次的成功實驗體驗,會讓他們的樹立信心,提高軟件開發的積極性。
該方法只是作為提高學生軟件系統開發能力的起步階段,但是通過對學生的訓練,學生能夠掌握系統開發的各個環節和基本要求,學會編寫開發過程中所必須的各種文檔,掌握系統開發所必須的開發工具、技術和技能。經過該方法培訓的學生初步具備開發軟件系統的基本能力,再進一步通過參與實際的項目開發,軟件系統開發能力將會得到進一步的提高。
4 總結提高
本次實驗總結出來的有效實驗方案,可以在高職計算機學生中逐步推廣,師資不足的,可以從軟件公司聘請。也可以與軟件公司合作,公司負責培訓、指導,學生免費為公司軟件開發流水線工作。這樣,就可以使高職計算機專業學生的計算機軟件系統開發能力得到全面提高。
參考文獻:
[1] 李文敬,廖偉志,陸建波.計算機高職應用性人才培養的研究與實踐[J].廣西師范學院學報,2007,28(s2):156-160.
摘要:回顧了電子商務系統開發方法的歷史演變過程,從全局層、概念設計層、導航設計層和系統實施層四個層次對五種主流的電子商務系統開發方法RMM、OOHDM、CMD2WEB、WSDM 和Autoweb 進行了全面的分析和比較,指出了各自的優勢和劣勢。
【論文“電子商務系統分析設計方法比較研究”分三個部分,本文是第3部分】:
一、主流電子商務系統開發方法的歷史演變;
二、電子商務系統開發方法的比較框架;
三、電子商務系統分析設計各開發方法的比較。
3. 電子商務系統分析設計各開發方法的比較
用上面建立的比較框架對五種電子商務系統開發方法———RMM[ 5 ] 、OOHDM[ 9 ] 、CMU2WEB[ 12 ] 、WSDM[ 11 ] 和Autoweb[ 4 ]進行全面的分析和比較。
3.1 全局層的比較
3.1.1 開發階段
五種開發方法對于各開發階段的涵蓋情況如表1 中的第1 項所示。從表中可以看到,由于電子商務系統開發的特殊性,概念設計階段和導航設計階段是所有這五種開發方法都涵蓋的開發階段。另外,由于系統開發的最終目的是要生成實際可用的物理系統,所以有四種方法涵蓋了系統實施階段。最后,還可以發現Autoweb 的方法最為全面和復雜,涵蓋了所有的系統開發過程,甚至還包括了其他四種方法所沒有的系統維護階段。
3.1.2 各階段輸出結果
僅僅從開發方法涵蓋的階段的多少無法判斷它們孰優孰劣,還需要進一步分析和比較它們對各個開發階段支持的深度。對于開發人員來說,電子商務系統開發各個階段的銜接工作尤為重要,它主要表現在:一方面是上一個階段中將有哪些結果輸出到下一個階段中,另一方面是下一個階段需要依靠上一個階段中的哪些輸出結果為基礎。這就是所謂的系統開發的一致性問題,只有連續的一致性才能確保系統開發的每個階段都圍繞著同樣的主題進行。 在這五種方法中,RMM 的一致性最高,在它的開發過程中,每一個階段都完全利用了上一階段的輸出結果。如片斷設計需要使用實體設計生成的ER 圖,而片斷設計生成的ER + 圖也正是導航設計所必需的設計信息。另外,Autoweb方法的一致性也很高,特別是在它的基礎結構設計、訪問路徑設計和表達設計過程中,這三項設計環環相扣,每一項設計都為后續的設計提供基礎和依據。CMU2WEB 方法的一致性最低,這也是由于這種方法主要集中在系統的概念設計階段造成的。
3.1.3 開發環境的支持
如果開發方法能夠提供CASE 環境來輔助開發人員開發,將大大加快系統的開發速度,提高開發人員的工作效率。各種開發方法對開發環境的支持如表1 中第2 項所示。從表中可以看到,CMU2WEB 和WSDM 沒有任何的開發環境支持,與之相對照的是Autoweb 的開發方法,它為開發人員提供了除了系統維護階段以外的所有階段的CASE 環境,這就意味著這種開發方法能夠大大簡化和加速電子商務系統的開發過程。
3.2 概念設計層的比較
3.2.1 設計驅動方式
RMM 的方法繼承于ER 方法,因此屬于數據驅動方式;OOHDM 方法采用面向對象的設計思想,屬于模型驅動方式;CMU2WEB 方法的主要組成部分是實體和關系,因此也屬于數據驅動方式;WSDM 以對用戶分類、建模為開端,屬于模型驅動方式;Autoweb 方法的概念設計階段采用HDM-lite 模型,因此它也屬于模型驅動方式。
3.2.2 對網絡資源和媒體的支持
作為電子商務系統與傳統信息系統最重要的不同之處,各開發方法對網絡資源和媒體的支持是評價它們的一個重要標準。這五種方法對網絡資源和媒體的支持程度如表1 中第3 項所示。除了CMU2WEB 以外,其他四種開發方法都采用實體屬性或者對象屬性的方法來表示各種網絡資源和媒體,例如,在OOHDM 開發方法中,可以為產品對象定義一個屬性———外觀,則這個屬性就可以用來添加能夠展示產品外觀的圖像信息。
3.3 導航設計層的比較
3.3.1 系統鏈接的方式
良好的、系統的鏈接將指引系統使用者正確地使用系統資源,因此系統鏈接的方式也是電子商務系統的一個基本設計方面。所有的電子商務系統開發方法都在概念設計階段定義了鏈接的表述方式。
RMM 方法使用三種不同類型的鏈接:條件索引鏈接、條件指導鏈接和條件索引指導鏈接。條件索引鏈接主要用于數據庫檢索,條件指導鏈接則用于系統向導式的導引,條件索引指導鏈接則適用于上述兩種情況的綜合情況。
OOHDM和WSDM 都采用面向對象的設計思想,所以它們的鏈接方式只有一種,即使用簡單的有向箭頭來表示對象之間的鏈接關系。
由于導航性能是電子商務系統的一個基本指標,CMU-WEB 方法主要依靠鏈接來確定應用系統的可用性。在CMU2WEB 模型中,鏈接主要有三種形式:一種表示信息塊之間的關系,一種表示信息塊及其描述內容的聯系,還有一種則表示信息塊和頁面之間的導航路徑。
Autoweb 模型中,各個信息集合之間的鏈接分為以下四種類型:索引鏈接、指導鏈接、索引指導鏈接和完全鏈接。每種鏈接都針對不同的系統導航情況。
3.3.2 系統訪問的結構
五種開發方法的系統訪問結構比較如表1 的第4 項所示。系統訪問方法主要分為兩種,一種為有向箭頭,另一種為導航約束。OOHDM、CMU2WEB、WSDM 方法采用的有向箭頭方式只能簡單表示訪問單元之間的單向或雙向聯系,但是RMM 和Autoweb 方法采用的導航約束方式卻可以為系統的鏈接增加更多的維度,例如,當一個客戶在網上選購貨物時,Autoweb 方法設計的系統就能夠利用索引指導鏈接為客戶提供相關產品的信息。
3.4 系統實施層的比較
3.4.1 系統的物理表現形式
一個好的開發方法需要平穩地把握從設計階段到實施階段的過渡,并且能夠提供相關的工具來簡化從邏輯模型到物理系統的轉變過程。對此,五種開發方法分別有不同的支持程度:
RMM 方法采用生成HTML 模板的方法,將HTML 頁面中的每個對象與邏輯模型中的節點和訪問單位相關聯。OOHDM方法具有專門的抽象界面設計階段和系統實施階段。在抽象界面設計方案中描述導航對象、用戶界面對象、多媒體對象等信息;在系統實施階段,OOHDM 提供專門的OOHDM-Web 環境幫助開發人員生成頁面模板。
CMU-WEB 方法沒有涵蓋系統實施階段。 WSDM 具有實施設計階段和系統實施階段,在實施設計階段中,開發人員需要從系統可用性出發,根據WSDM 的指導原則設計整套電子商務系統實施的方案,然后在系統實施階段付諸實施。
與其他開發方法相比,Autoweb 方法具有更完善的物理設計階段,在這個階段中,開發人員建立系統表達模型和風格表單,然后在Autoweb 所提供的CASE 環境中自動生成網頁。
3.4.2 系統生成的自動化程度
RMM、CMU2WEB 和WSDM 都沒有提供任何的輔助工具來自動生成電子商務系統的頁面,OOHDM 和Autoweb 在一定程度上提供了自動生成網頁的工具。OOHDM提供了OOHDM2Web 環境,在這個環境下,軟件自動生成由HTML 代碼和OOHDM2Web 函數庫調用相結合的頁面,所以它產生的頁面必須在OOHDM2Web 環境下運行。
Autoweb 則提供了一個被稱為“Schema & DataEntryGenerator”的自動系統生成器,在開發人員輸入設計完成的HDM2lite 概念模型后,系統自動輸出相應的關系數據庫以及對應的系統頁面,因此,具有更廣泛的應用意義。
3.4.3 系統維護的支持程度
五種開發方法對系統維護的支持程度如表1 中第5 項所示。除了Autoweb 以外,其他四種開發方法都不支持適應型和完善型的系統維護,從而大大降低了它們所開發的電子商務系統的擴展能力,這也是目前電子商務系統開發方法需要迫切改進的一個地方。不過,由于大多數開發方法(CMU-WEB 除外) 都具有十分徹底的分析階段,所以它們大部分都支持改錯型的系統維護,即系統設計的過程可以反復進行。另一方面,Autoweb 為系統維護提供的支持遠遠領先于其他開發方法,對于電子商務系統的更新、擴展和完善提供了很大的幫助。
4. 結論
通過對RMM、OOHDM、CMU2WEB、WSDM 和Autoweb五種電子商務系統開發方法在全局層、概念設計層、導航設計層以及系統實施層四個層次的比較,可以總結出以下幾點:
1) 盡管CMU2WEB 方法在采用量化標準評價電子商務系統設計方案可用性方面有新的突破,但由于它還只是一個概念模型,對于整個電子商務系統的開發過程支持還不夠完善,因此不具有太大的實用意義。
2) OOHDM 和WSDM 方法采用了面向對象建模的思想,這種模型驅動的設計方式與傳統的數據驅動方式相比,更能夠適應電子商務系統復雜、多變的開發特點。
3) Autoweb 最引人注目,它在比較框架的每個項目中都表現出色; 并且在這五種方法中,Autoweb 是唯一建立了CASE 環境的一種開發方法,這種CASE 環境將大大降低開發人員的工作強度,提高電子商務系統的開發效率。
參考文獻
[ 1 ] Lang M. A study of practice in hypermedia system design[A] . European Conference on Information Systems ( ECIS) [ C ] . Bled ,Slovenia , 2001. 8 - 10.
[ 2 ] Halasz FG, Schwartz M. The dexter reference model [A] . Proceedings of the NIST Hypertext Standardization Workshop [ C] .Gaithersburg , Maryland : NIST , 1990. 95 - 133.
[3 ] Garaotto F , Paolini P , di Milano P , et al . HDM- A model-based approach to hypertext application design[J ] . ACM Trans Information Systems , 1993 , 11 (1) : 1 - 26.
[ 4 ] Fraternali P , Paolini P. A conceptual model and a tool environment for developing more scalable and dynamic web applications [ A ] .Proceedings of International Conference on Extending DatabaseTechnology[C] . Valencia , Spain : Springer , 1998. 421 - 435.
[ 5 ] Isakowitz T , Stohr EA , Balasubramanian P. RMM: A methodology for structured hypermedia design [ J ] . Communications of the ACM , 1995 , 38 (8) : 34 - 44.
[ 6 ] Lee H , KimJ ,Gul Y. A view2based hypermedia design methodology[J ] . Journal of Database Management , 1999 , 10 (2) : 3 - 13.
[ 7 ] Rumbaugh J . Object 2Oriented Modeling and Design [ M ] . New York : Prentice2Hall , 1991.
[ 8 ] Lange DB. An object2oriented design method for hypermedia information systems[A] . Proceedings of the 27th Hawaii InternationalConference on System Sciences[C] . Hawaii : IEEE Computer Society Press ,1994. 336 - 375.
[ 9 ] Schwabe D , Rossi G. The object2oriented hypermedia design model [J ] . Communication of ACM , 1995 ,38 (8) : 45 - 46.
[ 10 ] Schwabe D , de Almeia Pontes R. OOHDM2Web : rapid prototyping of hypermedia applications in the WWW[ R] . Pontifcia Universidade Catlica do Rio de Janeiro , 1998.
[11 ] De Troyer O , Leune K. WSDM: a user centered design method for web sites [A] . Proceedings of the Seventh International WWW Conference[C] . Brisbane , Australia : Elsevier ,1998. 85 - 94.
[ 12 ] Bajaj A , Krishnan R. CMU2WEB : A conceptual model for usablemweb applications[J ] . Journal of Database Management , 1999 , 10(4) : 33 - 43.
[13 ] Lee H, Lee C, Yoo C. A scenario2based object2oriented hypermediamethodology [J ]. Information and Management , 1999 , 36 :121 - 138.
[ 14 ] Fraternali P , Paolini P. Model2driven development of web applications : the autoweb system[J ] . ACM Transactions on InformationSystems , 2000 , 28 (4) : 323 - 382.
[ 15 ] Baskerville R , Pries2Heje J . Racing the e2bomb : How the Internet is redefining information systems development methodology [A]. Realigning
【關鍵詞】開放式數控 實驗教學 課程研究
【中圖分類號】G424.31 【文獻標識碼】A 【文章編號】2095-3089(2015)11-0048-03
The Development of an Open CNC Experimental Teaching Platform
HAN De-dong, FU Yun-zhong, HAN Zhen-yu, LIU Jian-kang
(Mechanical Manufacturing and Automation Department, Harbin Institute of Technology, Harbin 150001, China)
【Abstract】To improve the teaching effect of practical course of numerical control technology, and to promote practical ability of students, an open CNC experimental teaching platform based on motion control card was developed combining important knowledge points in the course of numerical control technology. The developed teaching platform was applied in the teaching of practical course of numerical control technology and achieved good effect.
【Keywords】open CNC; experimental teaching; curriculum research
引言
改革開放以來,我國制造業已經取得了顯著的成就,但是仍然處于工業現代化的進程中,與發達國家相比還有相當大差距[1]。數控技術是現代制造業的核心技術,是機械制造自動化的重要基礎技術,數控機床的品種、水平和生產制造能力,直接反映一個國家工業的綜合實力。現階段我國國產數控機床基本以低檔經濟型和中檔普及型數控機床為主,高檔數控機床市場份額的70%~80%、數控系統(普及型、高級型)的90%都被發達國家占領[2]。我國數控技術專業人才的缺乏是導致該現狀的主要原因之一,最新調查顯示,我國數控工程技術人才嚴重不足,尤其是專業知識層次較高并且具備一定動手能力的高級工程技術人才更顯緊缺[3]。
數控技術課程是本科教學中機械類專業必不可少的重要課程,是一門多學科交叉,涉及機械設計、機械制造、電工電子學、計算機程序設計、自動控制原理、力學等多門學科知識,是一門理論性和實踐性要求都很高的課程。其中數控技術實踐課對實現課程教學目標起著重要的作用,是學生掌握數控機床基本操作技能,了解數控機床的基本機構原理,熟悉現代CAD/CAM自動加工技術的應用方法和基本流程的有效途徑。是培養學生理論聯系實際、分析問題和解決問題的能力,以及啟迪學生的創新思維、發掘其創新潛力的重要手段[3]。
由于數控技術課程的特殊性,目前本科學校對數控技術專業人才的培養,普遍缺乏一個系統的、全面的培養方案,雖然很多高校對數控技術課程教學模式進行了一系列改革和創新[4-7],但是僅僅停留在教學模式或授課方式的調整創新層面,對于具體的課程內容規劃以及重要專業知識點如何在教學中體現,相關的研究則非常少。
本文針對數控技術課程中數控機床本體結構原理、電氣系統原理、控制系統原理、G代碼譯碼、插補原理、運動控制、人機界面等重點知識點的講授問題,設計搭建了基于運動控制卡的開放式數控系統實驗平臺,編寫了相應的教學用數控軟件系統,并應用在數控實踐課程教學中。
一、數控實驗平臺硬件系統設計
1.機床本體結構設計
傳統數控技術實驗教學中,大多使用商業數控機床演示給學生看,但是商業數控機床機械結構大都有保護外殼,學生無法觀看其內部結構組成,所以為了將數控機床機械結構展現給學生,本文自行設計了數控機床的機械本體。學生可以從對機床機械本體的參觀和學習中,學習到數控機床坐標系的設置、工作臺驅動原理、進給軸限位和回原點原理等基礎知識。
數控實驗平臺機床機械本體采用傳統三軸銑床結構,XY軸工作臺采用雙座標工作臺,Z軸工作臺采用單軸工作臺,每個軸都對應安裝了限位開關和原點開關。工作臺工作行程150mm,滾珠絲杠導程4mm。工作臺滾珠絲杠與伺服電機之間采用聯軸器連接。
2. 電氣系統設計
PC機和數控系統的結合使數控技術有了很大的發展,給數控系統提供了更多的軟件工具和硬件資源,目前基于PC的開放式數控系統的主流結構形式主要有以下幾種:PC嵌入NC板卡、NC板卡嵌入PC、PC+SoftCNC。由于本實驗平臺主要用于本科生和研究生的數控技術實驗教學,可以讓學生認識并實際編程實現數控系統特定功能,所以開發的實驗平臺復雜程度要易于教學,還應該保證平臺安全可靠防止學生在做實驗時造成事故。結合這些因素,對上述三種結構進行了對比分析,認為“NC板卡+PC”結構更適合用來開發實驗平臺,所以本文選用運動控制卡和普通PC機來搭建實驗平臺的控制系統。實驗平臺電氣系統結構如圖1所示。
圖1 電氣系統框架圖
通過實際對實驗平臺電氣系統的接線練習,學生可以真實地了解到數控系統的控制系統和電機驅動系統的結構組成,從而對數控系統控制信號的產生到執行這一過程有了一個直觀的認識,同時鍛煉了學生的動手能力。
二、實驗平臺數控系統軟件設計
傳統數控實驗課程中,多使用校友或企業捐贈的老舊數控機床作為實驗平臺,使用FANUC、西門子或華中數控等商業數控系統,由于商業數控系統的封閉性,只能教學生學習怎樣使用數控系統,而不能對數控系統底層的基本原理進行實驗教學。針對這一問題,本文開發了基于運動控制卡的數控實驗平臺控制系統,從而使學生可以從源代碼級別學習了解數控系統程序原理,更加深刻地理解NC代碼譯碼、刀具補償、插補原理、運動控制等數控系統課程的關鍵知識點。通過基本算法的編程實驗,培養學生的程序思維,在程序編寫中培養發現問題,解決問題的能力。
1. NC代碼譯碼模塊開發
NC代碼的譯碼是數控系統的關鍵技術之一,在NC代碼譯碼模塊中將涉及到譯碼方式、代碼格式、譯碼具體流程、錯誤診斷、刀具長度/半徑補償、機床坐標系、系統參數等數控系統關鍵知識。本文以模塊的開放性為指導思想對該模塊進行開發,以便于學生理解和修改,使學生可以將新的G代碼指令、新的刀具補償算法等新功能添加到模塊中去,提高模塊的可維護性和升級性。
NC代碼的譯碼方式主要有兩種模式:解釋型和編譯型。解釋型譯碼模式實時地逐行翻譯、執行G代碼,具體流程為譯碼器翻譯完成當前行G代碼后將得到的刀具路徑信息送去執行,然后再進行下一條G代碼的譯碼,如圖2所示;編譯型譯碼模式譯碼器接受G代碼文件后,依次對其每一行進行翻譯處理直到文件末尾,最后生成一系列執行步,再經刀具補償的統一處理后,生成最終的一系列執行步并傳遞給相應模塊進行執行,如圖3所示。
圖2 解釋型譯碼模式
圖3 編譯型譯碼模式
解釋類型譯碼模式下,如果上一運動段已執行完畢,但是當前段還停留在譯碼階段,則會破壞加工的連續性,這就要求系統必須有很強的實時性。編譯類型譯碼模式下,譯碼與任務執行是兩個獨立的任務,有明確的先后順序,所以譯碼是一個非實時的任務,由于本文使用的運動控制卡提供了連續插補功能,編譯型更適合本課題的譯碼任務。
譯碼模塊逐條讀取NC代碼文件,進行信息提取,并將提取到的信息壓入緩存中,其信息提取流程圖如圖4所示。首先去掉當前行的所有空格,并進行大小寫字母轉化處理,從而得到格式統一的便于讀取的新代碼行,然后初始化信息存儲結構體,為信息存儲做準備。下一步是按順序讀取各個由地址符和地址值組成的功能字[4,2],首先讀取當前行號,即“n”的讀取,行號讀取結束后,根據函數指針數組和字地址的ASCII碼值,調用對應的讀取函數,完成功能字的讀取,比如接下來的字母為“x”,則調用函數read_x()來讀取該功能字,如此按行號依次執行,直到NC代碼文件末尾,將讀取信息存儲到block結構體中,整個過程伴隨著錯誤診斷。
圖4 信息提取流程圖
2.刀具補償模塊開發
刀具半徑補償和長度補償功能不僅解決了使用不同的刀具加工同一工件、刀具磨損等問題,而且方便了按照工件坐標系編制的NC程序的處理執行,可以大大提高編程效率和加工效率,所以刀具補償功能是數控技術課程中的一個重要知識點。為了讓學生更好地理解刀具補償功能的基本原理和實現方法,本文開發了針對刀具半徑補償的刀具補償模塊。
對當前運動段進行半徑補償時,需要用到下一運動段的信息,二者共同決定了補償的轉接類型。如圖5所示,首先從隊列中提取相鄰兩個運動段分別放入緩存器R1、R2中,刀補函數參考R2中運動段對R1中當前運動段進行刀補處理,根據轉接類型,求解轉接節點坐標,生成新的執行步并壓入處理后隊列尾端,然后再將緩存器R2中的運動段移入緩存器R1中,如此循環直到運動段隊列末尾。
圖5 刀具半徑補償的實現方法
3.人機界面的開發
人機界面是將數控系統各個模塊連接起來的橋梁,是用戶與數控系統信息交互的窗口,是學生學習過程中感受最為直觀的模塊,為了鍛煉學生的編程能力,提高學生對課程的學習興趣,本文將數控系統各個模塊的程序接口都開放出來,使學生可以利用MFC等工具自行編寫人機界面,從而實現數控系統的控制。本文開發的人機界面如圖6所示。
圖6 數控系統人機界面
三、結語
本文緊密結合我國制造業在學校教學過程中的實際需要,對數控技術課程具體教學內容在實踐課程中的體現方式進行了研究,開發了基于運動控制卡的數控系統實驗教學平臺,不僅實現了教學模式的創新,更深入到教學內容層面,將數控技術重要知識點在本文開發的實驗平臺上實際展現出來,給學生創造了主動參與、自主協作、探索創新的機會,提高了學生的學習興趣,鍛煉了學生的動手、動腦的能力,取得了良好的教學效果。
參考文獻:
[1] 盛斌, 魏方. 中國制造2025[J]. 中國海關, 2014, 8: 053.
[2] 趙秋艷. 2014年數控機床需高端發力穩固中端[J]. 裝備制造, 2014, 4: 048.
[3] 鄭德星. 高校本科數控技術教學改革探索[J]. 考試周刊, 2012 (46): 128-129.
[4] 張紹杰. 項目教學法在數控教學中的應用[J]. 山東工業技術, 2014, 18: 217.
[5] 黨寅生. 數控車一體化教學方法的應用探討[J]. 中國機械, 2015 (2).
關鍵詞:餐飲;需求分析
1系統開發背景
隨著社會的進步與變革,學校食堂原有的消費和管理模式已不能適應新的發展要求,基于目前現狀我們設計了餐飲收銀管理系統。刷卡在食堂內代替現金、票證來完成相應的功能。此種管理模式代替了傳統的消費管理模式,為學校食堂管理帶來了高效、方便與安全。
建立先進的餐飲收銀管理系統可以加快實現高等教育現代化,而餐飲收銀管理系統的推廣運用,則是推進高校食堂信息化管理的重要舉措之一。餐飲收銀管理系統可供學生用于校園食堂內部處理雜務,購買食品、飲料時刷卡,卡內沒有余額的時候進行充值。并可以定期對食堂內的員工進行業績評定,使學生直接參與食堂的管理對有問題的地方提議,實現學生與食堂管理者之間的互動,還可以對員工的基本信息進行綜合的管理。
為了能夠不斷提高工作效率和經濟效益,我認為最有效和可行的方法就是在企業內部實現信息化理他可以減少工作人員對帳目維護所花費的時間,減少管理人員,減輕工作人員勞動強度,提高工作效率延長自動化系統的開放時間,甚至實現24小時不間斷開放,實現食堂的信息化管理。
2系統開發方案
系統的開發采用軟件工程的理論和開發方法。經過需求分析、概要設計、詳細設計、編碼和測試、運行和維護等階段。系統設計為面向對象和不斷完善的快速原型開發模型相結合的方法。界面設計風格統一,各功能模塊完整實用,實現穩定的、功能強大的、交互式的服務行業管理系統。本管理系統用 PowerBuilder 9.0 開發,該開發工具的開發環境隨身攜帶的 Adaptive Server Anywhere 本身就是個功能強大的 DBMS,但出于學習應用和適用于大型系統的要求,我門選擇了oracle數據庫,oracle數據庫是目前最為流行和實用的數據庫管理系統,能夠為開發任何一個大型數據庫管理系統提供有力的支持和幫助。
3系統開發目標
開發本系統的目的是要為學校食堂和其他刷卡的餐飲部門提供一套運行穩定、安全可靠、操作簡便的管理系統。幫助食堂處理日常工作業務,規范管理各項工作和操作流程。
系統應具備以下基本特點:
3.1. 易操作性:考慮到食堂應用計算機系統的實際情況,系統設計要貫穿“簡便實用”的原則,確保非專業人員容易操作。除提供友好的人機界面,操作簡單的快速簡潔的按鈕。
3.2. 安全可靠性高:要通過對各級操作員進行有效的權限控制,對不同崗位人員要有不同的權限限制,保證數據的安全性和保密性。并且還應具備數據備份和恢復等功能,避免因意外情況丟失系統數據。
3.3. 報表要全面:系統應提供各種報表,保證使管理者能在第一時間準確掌握各種營業數據,為經營決策提供有效的數據參考和理論支持。
3.4. 擴充性好:要考慮到系統在長期使用過程中會不斷涌現出新技術和新的管理模式,因此要采用標準的開發工具和技術,提供開放的數據接口,保證能同其它軟件交流數據。
4系統開發思想
本管理系統的開發思想概括為如下幾點:
4.1.站在消費和管理為一體的高度進行分析與設計。
4.2.先進性與實用性相結合,以滿足現有用戶的需求,兼顧將來的發展,便于系統的二次開發和重用。
4.3.經濟性與可靠性相結合,以經濟為主,在可靠性允許下的情況下,盡可能的降低系統造價。
4.4.系統功能的強大性和使用的簡易性相結合,以功能強大為主系統簡單易學,非專業人員經短期培訓即可使用,降低系統的運行成本。
5系統的需求介紹
本管理系統的目標是開發一個學校食堂餐飲收銀管理系統。經過對用戶需求的分析。本系統在功能上分成:
5.1學生信息維護
學生信息維護模塊由四個功能模塊組成,分別是:增加、刪除、保存、退出。
5.2刷卡充值管理
刷卡充值管理是通過刷卡和充值對卡內的金額進行增加和減少操作,進行操作之前必須輸入卡號,因為卡號是唯一標識。用戶必須輸入金額和卡號,否則無法完成該操作,另外操作的時候必須保證飯卡處于非掛失狀態在標志狀態中可以看到飯卡的壯態。
5.3磁卡掛失
當磁卡丟失的時候為了避免別人用卡進行消費所以添加了磁卡掛失功能模塊,當磁卡丟失的時候持卡人拿著自己的相關證件到食堂管理員處辦理相關掛失手續。在本軟件中體現在察看過相關證件后輸入卡號,即可進行掛失處理。當持卡人在一段時間內又找到自己丟失的飯卡時,可以持自己的有效證件到管理員處辦理飯卡的重新啟用手續。體現在軟件上只是輸入卡號然后點擊開始就可以了。
5.4綜合管理
綜合處理模塊可以分為對刷卡充值監控和結算帳目兩個功能模塊。通過建立一個數據窗口和在數據庫中添加一個表,可以實現對刷卡和充值的操作的信息記錄,防止管理員和工作人員在操作失誤的情況下無憑據可查,管理員在每隔一段時間對相關數據進行清空以避免數據過多造成存儲空間的浪費,如果希望長期備份可以將數據打印出來做長期的存儲。
5.5員工信息管理
員工信息管理模塊用于維護食堂員工的信息,包括員工編號、員工姓名、姓名、年齡、住址、工資、備注和評分構成。在窗口中可以完成增加、刪除和保存的功能。
5.6員工工資管理
員工工資管理模塊用于對員工的工資進行管理,員工工資由基本工資和獎金構成,獎金由最高獎金和員工的評分的平均分數除以一百乘以最高獎金。
5.7員工業績平定模塊需求分析
員工業績評定模塊用于學生食堂工作人員對員工的工作態度服務態度進行評定每個學生都有權利對員工進行評定,員工業績評定模塊可以分成員工業績評定和查看評分結果兩個界面,其中查看評分結果選項只有以管理員身份錄才有權利查看。
8、退出系統等模塊構成
退出功能相對來說非常簡單,指的是退出當前界面回到主界面。使用一個按鈕和一條語句就可以實現。
6總結
餐飲收銀管理系統其功能基本符合用戶需求,能夠實現點菜后的自動下單,具有完善、細致的功能和清晰、友好的用戶界面,以及各類相關報表的打印。并提供部分系統維護功能,使用戶方便進行數據備份和恢復、數據刪除。同時也考慮到了單位編碼以減少數據冗余的問題,對于數據的一致性的問題也通過程序進行了有效的解決。本系統的使用不僅使食堂管理員從繁瑣的記賬和核算工作中解脫出來,提高了工作效率,而且更重要的是它通過完善的報表分析使提供信息的速度明顯加快,管理基礎數據更加科學化,管理人員擺脫了事務性工作轉而從事管理專業工作,為決策提供了快捷和強大的數據支持。把計算機用于餐飲管理,可在很大程度上提高管理者分析和決策的科學性,改進經營管理水平,帶來更多的顧客,使企業取得更好的經濟效益。
參考文獻
[1]李茜.POWERBUILDER程序設計基礎.清華大學出版社,2005:69~72
[2]董浩.中小型飯店信息管理系統.吉林大學碩士論文,2003:19~34
[3]張長富,李勻.PowerBuilder 9.0開發人員指南.北京希望電子出版社, 2004:109~112
[4]華傳銘,張正坤,吳曉英等.PowerBuilder數據庫開發實例解析.機械工業出版社.2003:15~26
關鍵詞:機械模具;三維仿真系統;產品設計;生產指標;工業經濟
1 拉鏈產業與計算機仿真技術
我國在拉鏈生產行業當中起步較早,自1980年至今的發展極為迅速,誕生出一大批以拉鏈生產為主要業務的企業,也使得拉鏈生產的規模逐漸擴大。到了1999年,我國在拉鏈方面的產量能夠占據全球拉鏈總產量的半數左右,總長度超過100億米,一舉成為全球范圍內拉鏈生產量最大的國家。
雖然目前我國的拉鏈生產量仍然占據著世界的首位,但是由于各類文化產業的沖擊,對于生產與制造行業來說,也要順應潮流,將產品推陳出新,也要與世界范圍內各家具有特色的著名拉鏈廠商進行競爭。我國拉鏈市場當中常用的銷售手段為降低價格,雖然銷售量持續增長,但是利潤與以往相比卻并沒有顯著的增加,質量方面也難以達到世界先進水平,行業內部的相關人士擔心長此以往,我國拉鏈行業將逐漸成為夕陽產業,在價格戰的硝煙當中漸漸消失。從另一個角度來思考,其實這種價格戰屬于世界同行業競爭的前奏,降價是一種應對高精尖產業的有效有段之一,在工藝水平、產品質量以及創新性方面達不到國際先進標準時,低廉的價格自然也會成為一種優勢,甚至能夠依靠價格的低廉使我國進入到WTO以及國際市場競爭的行列當中。之所以我國拉鏈的價格持續降低,也是在警示著我國的拉鏈生產企業,要將市場的供求作為關注的主要對象,不僅要將產量予以控制,還要通過各種手段提高質量,以此來開辟更為廣闊的國際市場。
持續的價格競爭雖然能夠在短時間內取得利潤,但是畢竟這種競爭方式屬于最為低級的手段之一,如果將一個拉鏈生產企業所有的希望放在倚靠價格取勝這一個方面,最終該企業將會走上滅亡的道路。因此在價格降低的同時,要將關注點放在這樣的價格降低是否真的是由于成本降低,還是純粹的為了市場而進行惡性壓價。但是大量的市場營銷經驗告訴人們,將競爭對手打垮后獨享市場的情況是不可能實現的,因此還是要將所有的注意力放在提升自身方面,在產品的質量、工藝以及制造方面延伸出更多的優勢,才能夠達到獲得市場份額的最終目標。
計算機仿真學的基礎為多元化的學科理論,其方法為計算機軟件結合各種相關實驗的研究數據最終得出的結論,在實際的應用當中不僅能夠將實驗的結果予以準確實現,還能夠通過不斷的實踐對更為深入的機理與規律進行探索,在科學的領域當中持續保持先驗性。另外,還可以通過建立數學模型的方式并對其進行改良以及更新換代,作為替代實際產品接受檢驗、測量的有效工具,能夠充分應用于各種工程或非工程的領域當中。
本次研究當中,將針對拉鏈生產行業的“仿真系統”進行深入研究,模擬拉鏈的開合效果,再通過這種效果的設計給出拉鏈應該具備的各項指標與性能數據,進而對這些數據進行評估與分析,縮短新產品的開發流程與周期,降低開發與制造成本,提升市場熱度與產品質量,實現利潤方面的豐收,在國際市場當中開辟出更為廣闊的發展路徑,在高檔拉鏈的市場當中搶占地位、份額與利潤,為我國的制造生產行業發展提供參考依據。
2 三維仿真系統開發步驟
三維仿真系統開發的基礎為生命周期法,在階段方面歷經了認識、概念、形式、實現以及測試等五個明顯的階段與周期。
在三維仿真系統開發的過程當中,主要包括以下幾個步驟:
第一,進行軟件分析,分析當中要包括操作者對于系統的使用習慣、使用需求以及軟件本身所具有的功能等方面;
第二,進行軟件框架設計,其中包括對總體系統的設計、總體工作流程的設計以及單個模塊的分解分析等;
第三,進行軟件設計。在進行軟件設計的過程當中,工作內容主要包括數據分析、模型框架設計、知識庫組建、UI設計等方面。數據分析當中包括對數據文件、數據傳輸、動態數據交換等方面進行分析與設計,模型框架設計中包括對拉鏈拉合的受力模型、人工神經網絡、工作模式識別、混沌遺傳算法等方面的設計,UI設計主要針對主界面當中能夠反饋、收集以及拋棄的信息進行集中的歸納總結與設計;
第四,進行程序編制,其中包括建立三維產品接口,搭建設計平臺、選取模式識別算法、BP算法、混沌遺傳算法、建立拉鏈拉合受力模型,進而將整個由數學數據建立起來的結構經過轉變后形成程序語言進行表達。隨后還要建立相關的知識庫,以及對數據進行傳輸的相關程序;
第五,進行系統集成,工作內容包括將算法、數據以及知識庫等模塊進行集成,進而形成三維仿真系統,隨后對其中的各個模塊接口問題、集成問題予以解決,最終完善三維仿真系統。
3 三維仿真系統的功能與開發內容
與拉鏈生產相關的系統全稱為“機械模具三維仿真系統”,這一系統將針對對象程序設計專門的方法,在拉鏈產業當中,應用最為先進的操作系統與語言環基于拉鏈生產行業設計的三維仿真系統當中包括了幾大功能,分別為:仿真、設計、預報與尋優。
仿真指的是建立力學模型,模擬模具的裝配過程,對相關的參數進行檢驗后,進行形成完善的拉鏈拉合過程模擬系統。
設計指的是搭建設計平臺,對新類型的產品、模具以及產品庫進行設計與建立。
預報指的是對拉鏈拉合的輕滑度、拉頭拉片結合強力與抗張強力、抗扭力、自鎖強力以及模具裝配的干涉現象進行觀察與監測。
尋優指的是對于特定型號的拉鏈進行最佳靜態參數的考量、拉頭最佳參數確定后的動態考量、鏈牙最佳參數確定后的動態考量,對以上幾個方面進行評估后選定最佳的配比路線,具體工作包括:
3.1 權限管理
針對功能、圖檔以及查閱等方面的授權的限制與開放。
3.2 圖檔管理
將相關文檔形成圖像后輸入數據庫當中,方便日后的查詢、瀏覽、修改、刪除、打印、復制等相關操作。
3.3 設計庫
基本的三維儲存格式總共有12種,主要針對拉頭、拉片、鏈牙進行分類,其中包括尼龍、金屬、塑鋼等不同的材質,另外還包括不同的型號,在數據庫儲存時刻采用SQL-Server。
3.4 靜態尋優
當用戶確定產品材質與型號后,可通過力學性能的選擇,最終形成單個拉頭、拉片以及鏈牙的三維造型、組合造型、尺寸、力學指標等參數,以及標準狀態下所能顯示的力學性能指標圖表,通過模擬監測流程將局部能夠放大、縮小,對整體能夠放大、縮小,對關鍵尺寸的衡量、標注,對具體規格的網格與實體,包括還可以采用動畫的方式進行動態模擬。
3.5 動態尋優
在國際拉鏈產業當中,拉鏈具有一個標準的規格與數據庫,因此可以通過已有的數據庫作為基礎,將拉頭以及鏈牙的關鍵尺寸輸入到數據庫當中,系統即可給出相應的樣品型號,通過自我需求的調整之后,能夠產生最后確定的三維樣品,根據樣品可得到三維組合圖樣以及在常規狀態下或不同狀態下進行檢測的五個力學性能指標參數。對于輕滑度參數的獲取,可以通過下拉角度的調整對不同輕滑度參數進行確定,同時還可以通過動畫進行模擬。對于新型拉鏈的制造,可以通過設計庫當中的已有數據調用某些鏈牙結構,將與之能夠匹配的拉頭結構進行組合,進行優化的動態設計,使其能夠符合現實的力學性能參數。
3.6 模具裝配三維CAD設計系統
將模具當中的標準配件進行設計后,能夠得到一個完整的標準配件庫,可以將不同的產品進行各種形式的組裝,再通過模具進行裝配方面的動態模擬,對其工作流程進行模擬后,可以將運動過程當中所產生的所有參數進行監測與統計,使得模具開發人員能夠對這些參數進行修改、調整、加入或刪減。
3.7 拉鏈產品設計平臺
接入POV-Ray共享軟件,為設計人員提供拉鏈產品的造型設計。
4 三維仿真系統主要模塊的設計理念
在拉鏈產業三維仿真系統的開發當中,所采用的技術要具有科技、難度、交叉等顯著的應用特點,其中將計算機圖形學、OPENGL編程、機械力學、VC#圖形編程技術、分形與混沌理論、人工智能理論、SQL Sercer數據庫技術等進行綜合利用,同時采用以下技術手段:①將計算機圖形學引入力學模型仿真當中;②將混沌理論引入仿真系統當中;③將傳統力學模型與人工智能模型進行融合;④圖形編程技術。
4.1 采用干涉現象檢測八叉樹算法
在拉鏈設計的三維仿真系統當中,主要的仿真模塊功能包括:按照用戶的操作實現:①移動與旋轉三維實體;②計算系統當中的所有靜態或動態信息;③對于運動當中的實體進行監測,觀察其是否與其他物件發生干涉的情況。
八叉樹數據結構是近幾年當中通過CAD軟件發展而來的一種新型數據結構,屬于三維實體模型描述方法當中的一種,在機械制造、幾何運算、機器人設計以及產品生產機械的三維仿真系統當中得到了大量的應用,同時取得了令人滿意的效果。
因此在布局的過程當中,要通過計算機屏幕上對三維實體進行各種操作,進而完成整個仿真的流程。如果對一個三維實體進行操作時,首要考慮的問題就是這一實體是否與其他的實體產生交集、碰撞,因此干涉試驗在任何一個步驟的操作當中都具有必要性。
假設現在要對i進行操作,ST代表狀態空間書,SO代表A的狀態數。
其具體的流程包括:
第一步,將ST空間樹以及代表A的狀態樹SO進行初始化,隨后將第i個操作對象A從ST當中將其信息全部清除,也就是說對ST進行所有節點整數的i位置進行檢查,如果為l,需要將i位置的第16位改為0,將A進行移動操作,對SO狀態樹的根節點狀態進行確認,同時賦予打錢狀態下的節點集;
第二步,對當前的節點集進行確認,換個角度來說,也就是對SO當中能夠組成當前節點集的單個節點進行確定,同時將半滿節點與全滿節點進行集合的分析;
第三步,將當前節點集當中的節點狀態為全滿的節點予以確認,并進行二次集合操作;
第四步,將全滿節點進行排序,對其ST節點的狀態進行依次檢查,如果某一點的狀態為半滿或全滿,則將會發生干涉,流程結束,否則繼續對下一個節點進行檢查;
第五步,對所檢查節點集當中的所有半滿節點進行二次集合;
第六步,將半滿節點集當中的節點進行編號,同時選取下一個節點為當前節點;
第七步,對ST當中與當前節點產生對應的節點狀態進行檢查,如果節點狀態為全滿,則將會發生干涉,流程結束;如果節點狀態為半滿,進行第八步;如果節點狀態為全空,進行第九步;
第八步,在SO當中的當前節點選取8個初始化后的子節點,將其進行二次集合后形成當前節點集,同時轉為第二步;
第九步,對半滿的節點集進行檢查并確定是否檢查結束,結束后進行第十步;如果未檢查結束,則轉為第六步;
第十步,對當前節點集進行檢查,確認是否為根節點,如果是根節點,則不會發生干涉現象,流程結束;如果不是根節點,則進行第十一步;
第十一步,將當前節點集轉換為上層節點集,如果無任何剩余節點,則執行第十步;如果有剩余節點,執行第六步。
4.2 力學與人工智能模型的結合技術
4.2.1 力學模型的建立
在力學模型的建立當中,主要工作包括拉鏈在轉彎狀態下的受力分析、在扭曲狀態下的受力分析、在特殊環境下的受力分析、拉鏈拉和過程當中鏈牙的嚙齒原理、拉動角度問題、拉頭提拉結合力、極限扭力以及抗張抗壓強力。
4.2.2 以力學模型為基礎的人工智能建模
以力學模型為基礎所建立的數學模型由于計算速度無法加快,計算后得到的數據又不具有時效性,因此在很大程度上影響了仿真的效果。因此應用人工神經網絡,能夠忽略前期對先驗知識的采用,只需要根據研究對象的數據進行直接的模型建立,使其在高度非線性、嚴重不確定性的系統建模與控制方面具有極強的解決能力。但是由于在問題的處理當中,人工神經網絡對問題的原理無法理解,同時也無法對其中表示的物理意義予以表達,因此將力學模型與人工神經網絡進行結合后,不僅能夠準確表達物力意義,還能夠準確描述工藝的整個過程。
4.3 以混沌變量為基礎進行變步長梯度下降算法的尋優
在非線性問題的尋優過程當中,梯度法為常用的計算方法,但是由于該方法具有收斂速度較慢、在收斂的過程當中過度依賴變量尺度等缺陷,因此在小點的計算過程當中應用較為適宜。
混沌在自然界當中屬于無序的常見現象,雖然從表面看上去沒有任何邏輯可言,但是卻具有著獨特的內在結構,具有隨機、遍歷、規律等顯著特點,在一些領域當中應用能夠根據自身的隨機性規律進行不重復性的遍歷狀態。
參照這兩種方法的特點,將兩者結合后形成以混沌變量作為基礎的變尺度梯度下降優化算法,能夠采用梯度下降法當中的初始解作用,將k個具有細微差異的混沌變量陸續家在職變步長當中,通過梯度下降進行尋優,如果在尋找的過程中發現與初始值相比更好的優化點,則采用改值替代初始值,否則將會繼續尋優。在不斷的運用過程當中,變步長的因子將會逐漸縮小,因此在最優點臨近處將不會產生拉鋸現象。
參考文獻
[1]Vamaguchi K,Kunii T L,Fujimure K.Octree-Related Data Structure and Algorithms [J].IEEE Computer Graphics and Applications(S0272-1716). 2011,21(4):53-59.
[2]Colorni A.Dorigo M,Maniezzo V.Distributed Optimization by Ant Colonies[C].//Procoflst European Conf. Artificial Life. Pans, France: Elsevier,2011.
關鍵詞:變電仿真、仿真培訓系統、管理探析
中圖分類號:TM63 文獻標識碼:A
變電仿真培訓系統是適應電力發展的必然要求, 這種培訓系統有助于提高變電運行人員的技術水平, 為確保電力企業安全生產起到極為重要的作用。仿真培訓系統的開發與管理一定要做好, 既要功能完善、靈活、實用,又要具有一定的先進性, 同時要滿足電網培訓的需要。
一、以沈陽供電公司為例,闡述變電仿真培訓的必要性
沈陽供電公司為經濟發達,發展迅速的省會城市,2013年截止到10月份總送電量為221.42億千瓦時,在全省排名第一,公司所屬變電站277座,其中220千伏變電站21座,66千伏變電站256座,變電總容量為1962.26萬千伏安,變電系統職工總人數約五百人。
各種技術培訓活動應該在對變電運行人員中進行,最為有效的方法就是仿真培訓。它是借助物理模擬技術與計算機技術,給受訓者提供一個近似的變電站工作平臺和作業環境,使受訓者能在有限時間里,獲得比傳統培訓方法更好的效果。變電仿真培訓系統可以為變電運行人員提供逼真的變電站真實環境,解決了變電站無法動手,無法從以前的事故教訓中吸取經驗教訓的問題。通過對員工技能的培訓,達到提高變電運行人員的運行操作素質,增強其安全運行能力的目的,從而適應日趨發展變化的電網建設。
二、變電仿真培訓系統培訓流程
企業培訓的流程見圖:
變電仿真培訓系統培訓流程也不例外,其培訓內容在技能培訓范圍內由變電仿真站根據預培訓時間及受培單位要求擬定,并征求委培單位的修改意見,最后根據相應崗位、等級的崗位培訓與考核標準確定教學計劃。教學模式采用講、練相結合的辦法。首先由教練在多媒體教室進行教學內容講解和演練,然后由輔導教練在多媒體教室輔導學員進行練習,同時教練、助理教練輔導學員上仿真機操作。考試采用考察及最后筆試形式,考察在平時上仿真機練習過程中完成,筆試成績為本期教學內容完成后進行筆試考試,總成績為考察與考試成績的平均值。根據學員的反饋意見,對培訓內容、方式等作進一步修改與完善。
三、現階段各種仿真系統存在的局限性
1、局限于針對性相對較弱。采用物理模擬的仿真站限制受硬件建造的影響,對于變電站場景或界面來說只能是一個相對典型的形式,采用虛擬變電站環境的仿真站只是其中一部分,有限的能力使變電站無法具有靈活配置基礎,真正面對的作業對象之間存在很大差異,使變電站運行人員與仿真環境很難同步,因而在事故處理的訓練與倒閘操作運行時,受訓人員受到很大限制。
2、事故仿真能力是有限的。實際工作中事故形態在變電站中是復雜多樣的。如果事故發生時,除了產生斷路器跳閘及相應的聲、光信號動作外,惡劣情況爆炸、燃燒、濃煙、設備損毀甚至人員傷亡也有可能出現,對于現有仿真系統通常只能模擬前者,而后者的模擬能力是接近于零。
3、仿真能力不足出現的異常情況。在變電站的日常運行工作中,概率遠比事故高得多的常態是異常情況的發生,實際上,復雜的異常清況,高于一般的事故判斷和處理的難度。成為變電站運行人員能力、素質、技術水平的真正挑戰是其頻繁、多發、隨機的特點。這些事件的仿真能力明顯不足是現有仿真系統的短板。
4、變電站運行方式與仿真培訓模式的沖突。需要接受培訓的人員脫產一段時間是現有仿真培訓模式的需要。限制是由于仿真站的布點影響,易地進行也是常態。措施的推行是由于變電站運行工作具有連續性的特點,以及少人值班、減人增效等因素,使脫產培訓的安排日益困難。
5、有待提高現有仿真培訓的方式方法。密不可分的仿真培訓質量、仿真設備配置、培訓方法等,一般根據初次培訓與復審兩大類進行培訓,是目前的仿真培訓站培訓的形勢,不同層次的運行人員培訓內容卻都大致雷同,缺乏一定的針對性,受訓人員的積極性很難被提高。
四、在現有條件的基礎上提高仿真培訓水平的方法
1、診斷學員錯誤,采取糾正措施并分析原因。在進行培訓倒閘操作時,每一步操作都在仿真培訓系統中與標準操作進行對比,判斷學員的學習問題,判斷是否有操作錯誤,分析操作順序如果不對可能是操作錯誤,提示當前應該操作哪個設備,是不是違反了五防。在進行巡視培訓時,學員巡視過的巡視點被仿真培訓系統準確記錄下來,并判斷學員在巡視點狀態是否正確。在學員處理事故時,監視學員操作也是仿真培訓系統要做的,給學員操作處理給出指導。
2、調整學習內容和進度,根據學員的水平與學習情況選擇。例如,培訓初期,對仿真環境不熟悉與學員知識水平的限制,操作若嚴格按操作票校驗,那就很難完成培訓任務。由易到難分為幾個培訓級別,是有些系統根據實際情況將倒閘操作培訓劃分的,引導學員循序漸進地學習。
3、生成解答與自動解決問題。操作票專家系統,根據系統所要求的操作任務與當前狀態,操作票被自動生成,作為了標準答案,用于校驗學員操作是否正確,在倒閘操作培訓中。處理指導專家與故障診斷系統,根據系統當前故障后的現象,生成指導學員如何由故障現象診斷故障元件、確定故障元件后如何處理故障的報告。
4、學員的學習行為被評價。操作培訓結束后,根據學員所犯的操作錯誤與事先確定的操作評分原則,對其操作進行評分。在巡視培訓后,根據學員對巡視點的誤判、漏判與巡視評分原則等情況,進行巡視評分。
5、各種問題與練習被自動生成。突發事件有時自動生成。在學員培訓過程中,仿真系統如果自動生成一些突發事件、異常事件、故障而增加培訓的難度。那么自動生成技術問答試卷,任意抽取試題,生成試卷在系統題庫中生成,這樣減輕教員負擔并且提高培訓效率。
五、闡述變電仿真培訓系統的保證措施
1、確保培訓正常進行的管理體系,培訓基地為保證培訓質量、規范辦班程序,建立了一整套完善的培訓管理制度,包括變電仿真站管理制度、培訓教師職責、學員管理制度等。
2、充分發揮兼職教師作用,在培訓期間充分發揮專兼職教師的作用,除仿真培訓專職教師講課外,根據生產實際情況,從變電站聘請2名經驗豐富的站長擔任兼職教師,使仿真培訓更具有實效性和針對性。加強對仿真培訓教師的培訓,將專兼職教師送出去參加仿真培訓教師資格培訓,并取得資格證書通過對兼職教師的培訓認證,從而提高培訓者的綜合素質。
六、變電仿真培訓系統發展展望
由于變電仿真培訓系統畢竟有別于實際變電運行系統,所以只用把變電運行實際系統的保護邏輯關系通過聲光圖形信號等表示出來就可以完成實訓的各種內容,未來發展中,完全可以把變電仿真培訓系統開發成像堆砌積木一樣的組態形式,這樣就可以隨機組合成任意運行方式的變電運行系統,使之與實際更加相近,同時各組態模塊之間的接駁形式也可考慮設計為標準觸片或插拔件,使之安裝更加簡單,而傳輸形式可以考慮無線傳輸。通過硬件的仿真度的提高,也直接影響到軟仿真系統的設計與模擬。變電仿真培訓系統將來也不僅為培訓提供方便,也為變電站的設計提供實驗模板。
總之,變電運行仿真培訓,是在借助計算機和物理模擬技術的幫助下,為參訓人員提供一個模擬變電站工作環境的平臺,使之能將平時學到的理論知識結合實際操作,得到更加有效的水平和技能提高的培訓手段,是我們在進行學校授課,單位培訓,業務考核等工作時最為有效的手段和方法。我們必須對變電仿真培訓現狀有一個清醒的認識,在硬件條件無法達到最好的前提下,研究出一套切合實際,行之有效的培訓計劃和方案。
參考文獻:
[1].張東英.基于網絡系統的變電站仿真培訓.[J].電力系統自動化.2011.
[2].王兆安.變電仿真系統培訓的意義.[J].中國電力.2012
作者簡介: