劉揚 王鋒
摘?要:就當前分布式系統(tǒng)課程的教學存在的缺乏實踐性教學、缺少案例分析問題,提出了結合區(qū)塊鏈技術進行分布式系統(tǒng)課程改革的思路。分布式系統(tǒng)課程應該更加注重實踐性、多元化和更新快的方式,以提高學生的學習效果和對分布式系統(tǒng)的理解。通過引入區(qū)塊鏈技術案例,可以結合實際應用來講解分布式系統(tǒng)相關概念和技術,增加學生的興趣和掌握程度。在考核方面,除了傳統(tǒng)方式,還采取小組項目作業(yè)和開放性項目評估等方法來測試學生的實際能力和成果。最終目的是讓學生更好地理解分布式系統(tǒng)的工作原理和區(qū)塊鏈技術的應用,同時培養(yǎng)他們的團隊協(xié)作和創(chuàng)新能力。
關鍵詞:課程改革;分布式系統(tǒng);區(qū)塊鏈技術;案例教學
Abstract:The?lack?of?practical?teaching?and?case?analysis?in?the?current?distributed?systems?courses?has?led?to?the?proposal?of?incorporating?blockchain?technology?to?reform?the?curriculum.?The?focus?of?the?distributed?systems?course?should?be?on?practicality,?diversity,?and?the?ability?to?keep?up?with?rapid?advancements,?aiming?to?enhance?students'?learning?outcomes?and?understanding?of?distributed?systems.?By?introducing?blockchain?technology?cases,?the?course?can?illustrate?concepts?and?technologies?related?to?distributed?systems?through?real-world?applications,?thereby?increasing?students'?interest?and?mastery.?In?terms?of?assessment,?in?addition?to?traditional?methods,?group?projects?and?open-ended?project?evaluations?can?be?implemented?to?test?students'?practical?skills?and?achievements.?The?ultimate?goal?is?to?enable?students?to?better?understand?the?workings?of?distributed?systems?and?the?applications?of?blockchain?technology?while?fostering?their?teamwork?and?innovation?abilities.
Keywords:Curriculum?reform;?Distributed?systems;?Blockchain?technology;?Case?teaching.
一、概述
分布式系統(tǒng)是支撐大規(guī)模服務的網絡化計算機系統(tǒng),如今已成為支撐云計算、大數(shù)據(jù)等新型計算機應用的計算與存儲基礎設施和經濟社會發(fā)展的重要信息基礎設施。通過本課程的學習,研究生能夠深入理解分布式系統(tǒng)的基本原理和設計思想,掌握分布式系統(tǒng)的設計方法和實現(xiàn)技術[1],能夠根據(jù)應用場景和需求完成分布式應用系統(tǒng)的設計與優(yōu)化,為從事分布式計算機系統(tǒng)及相關產品的研發(fā)工作奠定重要基礎。
區(qū)塊鏈技術的發(fā)展和應用逐漸成為了熱點話題,其基于分布式系統(tǒng)的實現(xiàn)方式也受到了廣泛關注。區(qū)塊鏈是分布式系統(tǒng)的一個重要應用場景[2]。區(qū)塊鏈的本質就是一種分布式系統(tǒng),通過結合區(qū)塊鏈的案例,可以更好地讓學生了解分布式系統(tǒng)的實際應用。區(qū)塊鏈技術具有很高的前沿性和應用價值。區(qū)塊鏈技術在金融、物流、醫(yī)療等領域都有廣泛的應用,結合區(qū)塊鏈進行分布式系統(tǒng)教學,可以使學生了解到最新的前沿技術,并掌握更具市場需求的技能。區(qū)塊鏈技術的復雜度和安全性都非常高[3],通過結合區(qū)塊鏈案例進行分布式系統(tǒng)的教學,可以讓學生更加深入地理解分布式系統(tǒng)的設計和實現(xiàn)原則,同時也可以讓學生了解到如何保障分布式系統(tǒng)的安全性。
因此,在計算機專業(yè)教育中,將分布式系統(tǒng)課程與區(qū)塊鏈案例結合進行課程教學,不僅可以幫助學生深入了解分布式系統(tǒng)的原理和實現(xiàn),還能夠讓學生了解區(qū)塊鏈技術的應用場景和實現(xiàn)方式,提高他們對分布式系統(tǒng)的認知水平。
區(qū)塊鏈作為一種新型的分布式計算平臺,已經與人工智能、量子信息、移動通信、物聯(lián)網并列為新一代信息技術戰(zhàn)略發(fā)展方向。本課程引入區(qū)塊鏈作為教學案例,能夠幫助學生更深入地理解分布式系統(tǒng),從而建立區(qū)塊鏈系統(tǒng)思維,具體創(chuàng)新點如下:
(1)案例教學強調培養(yǎng)學生的獨立思考能力、系統(tǒng)思維方法和求知創(chuàng)新精神,強調理解分布式系統(tǒng)的設計與演化思路的理解,培養(yǎng)學生建立分布式系統(tǒng)思維能力,并運用區(qū)塊鏈系統(tǒng)思維去分析和解決實際問題。
(2)從分布式系統(tǒng)角度對區(qū)塊鏈所涉及的典型區(qū)塊鏈體系架構等進行全面對比講解,使學生能夠搭建區(qū)塊鏈平臺,設計實現(xiàn)基于區(qū)塊鏈的分布式應用系統(tǒng),為今后從事分布式系統(tǒng)軟件開發(fā)、區(qū)塊鏈平臺開發(fā)、區(qū)塊鏈核心技術研發(fā)和工程應用打下堅實的基礎。
(3)通過將區(qū)塊鏈引入案例教學,引導學生學習領會習總書記在中央政治局第十八次集體學習中的講話精神:“區(qū)塊鏈技術的集成應用在新的技術革新和產業(yè)變革中起著重要作用,要努力讓我國在區(qū)塊鏈這個新興領域走在理論最前沿、占據(jù)創(chuàng)新制高點、取得產業(yè)新優(yōu)勢”。以講話精神為動力源泉,引導學生積極了解區(qū)塊鏈上升為我國國家戰(zhàn)略并作為核心,?技術自主創(chuàng)新的重要突破口的內涵意義。通過案例學習,掌握區(qū)塊鏈技術的精神實質和內核,從而更好地將區(qū)塊鏈技術應用于各行各業(yè),推動產業(yè)變革,為國家戰(zhàn)略新興信息技術的發(fā)展和建設做出積極貢獻。
將分布式系統(tǒng)課程與區(qū)塊鏈案例結合進行課程教學有以下優(yōu)點:
(1)課程實踐性強。通過區(qū)塊鏈案例,可以讓學生更加深入地理解分布式系統(tǒng)的概念和原理,并且能夠親自實踐相關技術,提高學生對于分布式系統(tǒng)的理解和掌握。
(2)激發(fā)學生興趣。區(qū)塊鏈是當下熱門的技術之一,將其作為案例來教學,可以引起學生的濃厚興趣,從而提高學習積極性。
(3)增加就業(yè)競爭力。區(qū)塊鏈技術在金融、物流、醫(yī)療等領域都有廣泛的應用,結合區(qū)塊鏈的分布式系統(tǒng)教學,可以使學生掌握更具市場需求的技能,增加未來就業(yè)競爭力。
二、課程改革思路
目前,我們國家急需各類分布式系統(tǒng)人才,而區(qū)塊鏈技術人才更是短缺。分布式系統(tǒng)人才在各類大數(shù)據(jù)中心建設、云計算基礎設施建設方面能發(fā)揮才能。而區(qū)塊鏈底層系統(tǒng)架構設計人才則需要掌握多項交叉學科的專業(yè)技能,并深入理解區(qū)塊鏈底層設計原理,兼?zhèn)浞植际较到y(tǒng)架構設計的經驗,更要懂應用場景的具體業(yè)務邏輯。雖然已有部分高校展開交叉學科教育、區(qū)塊鏈專項技能培訓,但能夠從分布式系統(tǒng)角度構建區(qū)塊鏈應用系統(tǒng)的專業(yè)人才在市場上仍十分稀缺。因此,迫切需要加大分布式系統(tǒng)特別是區(qū)塊鏈系統(tǒng)人才的培養(yǎng),加快區(qū)塊鏈技術與行業(yè)領域融合的創(chuàng)新型人才隊伍建設,通過高校、企業(yè)、行業(yè)的聯(lián)動,培養(yǎng)學科交叉、知識融合、技術集成的復合型人才,形成區(qū)塊鏈理論研究型、技術研發(fā)型、應用集成型的人才梯隊,取得人才合力和團隊優(yōu)勢。
案例教學通過平時課堂討論、自選課題匯報答辯和區(qū)塊鏈平臺實驗進行考核,可以綜合評價學生對課程核心知識的掌握情況,以及運用區(qū)塊鏈思維解決實際工程應用問題的能力。自選課題匯報答辯主要考查學生的自主學習能力和技術探索能力,通過查閱相關技術文獻和閱讀源代碼,采用自主選題的形式,進行小組匯報答辯。自主選題可以是區(qū)塊鏈內核算法分析,也可以是某種區(qū)塊鏈應用系統(tǒng)的設計與實現(xiàn),重點考核對區(qū)塊鏈系統(tǒng)架構和核心技術的認識水平,以及應用區(qū)塊鏈思維解決工程問題的能力。
針對分布式系統(tǒng)課程的教學改革,也可以從學生需求和社會需求出發(fā),推行以下策略:
(一)從學生需求出發(fā),優(yōu)化教學內容,改進教學模式
(1)建立特色教學體系。通過構建個性化的學習框架,搭建學科交叉的教學面,滿足學生全面發(fā)展的需求。在課程初期講授相關專業(yè)知識,為后續(xù)微服務技術的引入打下基礎;中期選擇與實際項目相關的案例進行案例教學;后期由學生自主設計項目方案,以支持學生的個性化發(fā)展[4]。
(2)優(yōu)化教學內容。在課程安排上根據(jù)課程需要進行深化教學,在教學框架上分為理論基礎,工程項目教學,開放性課題設計,并引入案例教學法,將課程內容項目化處理。
(3)改革教學方法和考核辦法。引入案例教學法,讓學生通過項目任務的完成來掌握知識點。改革考核方式,提高能力考核,鍛煉學生的各方面能力。
(二)從社會需求出發(fā),推動產學研合作
(1)建立長效合作機制。與企業(yè)建立合作關系,實現(xiàn)產學研一體化,讓課程教學內容更加貼近實際需求。
(2)推行“走出去、請進來”的模式。教師和學生到企業(yè)實地參觀考察,認識和發(fā)現(xiàn)工程問題[5],并邀請企業(yè)人員參與校內教學的建設和指導,使教學內容更加豐富。
(3)開展創(chuàng)新創(chuàng)業(yè)項目。通過開展創(chuàng)新創(chuàng)業(yè)項目,讓學生深入了解市場需求,鍛煉學生的創(chuàng)新能力和實踐能力,為畢業(yè)后就業(yè)做好準備。
本課程合作單位為河南中盾云安信息科技有限公司(簡稱“中盾云安”),其在區(qū)塊鏈領域具有堅實的研究和應用基礎,能夠為本項目提供區(qū)塊鏈實驗平臺和行業(yè)應用案例,從而為本課程的順利實施奠定良好的行業(yè)基礎。
因此,針對分布式系統(tǒng)課程的教學改革,可以從多個方面進行優(yōu)化,包括建立特色教學體系、優(yōu)化教學內容、改革教學方法和考核辦法等方面,同時與企業(yè)建立長效合作機制,推行"走出去、請進來"的模式,并開展創(chuàng)新創(chuàng)業(yè)項目,以滿足社會對分布式系統(tǒng)領域專業(yè)人才的需求。
三、優(yōu)化教學內容
《高級分布式系統(tǒng)》是一門探究性、實踐性較強的課程,采用理論與實踐相結合、課內與課外相結合的教學方式。在授課過程中引入案例教學,選擇具有前沿代表性的分布式計算系統(tǒng)——區(qū)塊鏈作為課程案例,從分布式系統(tǒng)理論和技術角度對區(qū)塊鏈系統(tǒng)的內核關鍵技術進行對比介紹,搭建實驗平臺,讓學生充分理解和掌握分布式系統(tǒng)的集中式、分散式、對等式等多種體系結構設計思想,分析和了解水平擴展、垂直擴展等系統(tǒng)擴展性方法的特點和應用場景,并從分布式一致性和容錯角度理解區(qū)塊鏈共識機制。通過案例教學,有利于培養(yǎng)學生對分布式系統(tǒng)前沿知識的敏感性和理解力,提高學生的動手能力和專業(yè)實踐能力,并且培養(yǎng)學生的自主學習和終身學習能力,能夠通過自主學習以適應經濟社會發(fā)展的需要。
結合具體的區(qū)塊鏈應用案例,如數(shù)字貨幣、供應鏈金融等,介紹區(qū)塊鏈技術在實際應用場景中的應用過程和效果。通過對案例的深入分析和討論,學生可以更好地掌握區(qū)塊鏈技術在分布式系統(tǒng)中的應用方法和實現(xiàn)原理。具體的教學目標如下:
教學目標1.掌握分布式系統(tǒng)相關概念、原理和方法,理解比特幣、以太坊、超級賬本三種主流的區(qū)塊鏈系統(tǒng)技術架構,初步建立分布式系統(tǒng)能力思維。
教學目標2.掌握數(shù)字簽名、hash函數(shù)、共識機制、P2P網絡、智能合約等區(qū)塊鏈核心技術和方法,學會運用分布式一致性和分布式系統(tǒng)容錯等思想理解區(qū)塊鏈系統(tǒng)的特征和設計思路。
教學目標3.了解區(qū)塊鏈在各行業(yè)中的應用需求,學會運用區(qū)塊鏈系統(tǒng)思維分析與設計各行業(yè)的實際應用問題。
教學目標4.閱讀和學習區(qū)塊鏈相關的國內外文獻,了解區(qū)塊鏈系統(tǒng)的優(yōu)勢與劣勢,以及未來發(fā)展與演化趨勢。
案例教學通過平時課堂討論、自選課題匯報答辯和區(qū)塊鏈平臺實驗進行考核,可以綜合評價學生對課程核心知識的掌握情況,以及運用區(qū)塊鏈思維解決實際工程應用問題的能力。自選課題匯報答辯主要考查學生的自主學習能力和技術探索能力,通過查閱相關技術文獻和閱讀源代碼,采用自主選題的形式,進行小組匯報答辯。自主選題可以是區(qū)塊鏈內核算法分析,也可以是某種區(qū)塊鏈應用系統(tǒng)的設計與實現(xiàn)[6],重點考核對區(qū)塊鏈系統(tǒng)架構和核心技術的認識水平,以及應用區(qū)塊鏈思維解決工程問題的能力。
通過案例教學和相關考核,能夠完全覆蓋“課程目標1.掌握區(qū)塊鏈相關概念、原理和方法,理解比特幣、以太坊、超級賬本三種主流的區(qū)塊鏈系統(tǒng)技術架構,初步建立分布式系統(tǒng)能力思維”、“課程目標2.掌握數(shù)字簽名、hash函數(shù)、共識機制、P2P網絡、智能合約等區(qū)塊鏈核心技術和方法,學會運用密碼學和分布式一致性等思想理解區(qū)塊鏈系統(tǒng)的特征和設計思路”、“課程目標3.了解區(qū)塊鏈在各行業(yè)中的應用需求,學會運用區(qū)塊鏈思維分析與設計各行業(yè)的實際應用問題”,和“課程目標4.閱讀和學習區(qū)塊鏈相關的國內外文獻,了解區(qū)塊鏈系統(tǒng)的優(yōu)勢與劣勢,以及未來發(fā)展與演化趨勢”。
本課程引入區(qū)塊鏈作為分布式系統(tǒng)的教學案例,通過對區(qū)塊鏈這一分布式計算平臺的深入學習和實驗驗證,提高對分布式系統(tǒng)的原理、概念和技術的認識理解。通過案例教學,學會從區(qū)塊鏈系統(tǒng)角度理解DC/EP的思想、原理和發(fā)展目標,理解我國為什么要打擊ICO、挖礦、虛擬數(shù)字貨幣交易等行為,對比特幣等虛擬數(shù)字貨幣有更加深入和清醒的認識,同時也更加支持我們國家發(fā)展法定數(shù)字貨幣,擁抱DC/EP,擁抱區(qū)塊鏈。
本課程內容分為基礎知識篇、思維角度篇和應用案例篇3個模塊,如圖1所示。基礎知識篇介紹分布式系統(tǒng)與區(qū)塊鏈的發(fā)展,初步了解分布式系統(tǒng)的基礎知識,引入區(qū)塊鏈與分布式系統(tǒng)的聯(lián)系,為后續(xù)學習奠定基礎。思維角度篇通過從通信、一致性、可擴展性等不同的角度來看區(qū)塊鏈,更深入了解區(qū)塊鏈的特性,進而理解分布式系統(tǒng)這把“雙刃劍”。應用案例篇將高級分布式系統(tǒng)課程與區(qū)塊鏈創(chuàng)新應用案例相結合,通過對區(qū)塊鏈案例的分析,了解分布式系統(tǒng)的設計和構建,深入理解分布式系統(tǒng)的底層架構。

圖1?課程內容模塊
四、案例教學設計
本案例教學以“學生主體、團隊合作、教師輔導”為教學思想,以課堂講授為主,通過“互動、開放”的課堂形式,采用探究式學習、問題導入式的教學方法,激發(fā)學生的學習興趣。通過課堂討論和課后實驗,督促學生積極開展自學和文獻資料查閱,加深對教學內容的理解[7],并能夠依據(jù)當前熱點問題發(fā)表自己的見解,達到教學目標的要求。本課程是將區(qū)塊鏈作為分布式系統(tǒng)的教學案例,在講解分布式系統(tǒng)的過程中引入區(qū)塊鏈平臺和實驗,從而對分布式系統(tǒng)的體系架構、技術和方法有更加深入的認識,建立分布式系統(tǒng)思維能力的同時構建區(qū)塊鏈系統(tǒng)思維[8]。本教學的內容框架如下:

圖2?教學內容框架設計
第一章?分布式系統(tǒng)概論:介紹區(qū)塊鏈系統(tǒng)的異步、共識、一致性、拜占庭容錯等核心概念。通過對這些核心概念的理解,進一步來掌握CAP理論、FLP理論、BASE理論、ACID理論、一致性理論等分布式系統(tǒng)的基本理論和思想,并將其與區(qū)塊鏈的基本原理和技術進行對比和聯(lián)系。
第二章?分布式系統(tǒng)體系結構:通過對比特幣、以太坊、超級賬本等主流區(qū)塊鏈系統(tǒng)技術架構進行比較,初步建立分布式系統(tǒng)能力思維。這些區(qū)塊鏈系統(tǒng)代表了不同的設計理念和架構,通過研究它們,以便進一步理解分布式系統(tǒng)的集中式、分散式、對等式等多種體系結構設計思想,以及水平擴展、垂直擴展等系統(tǒng)擴展性方法。
第三章?分布式通信機制:介紹區(qū)塊鏈底層網絡系統(tǒng),包括P2P對等網絡以及Gossip協(xié)議等。從區(qū)塊鏈底層網絡系統(tǒng)的角度出發(fā),深入理解其關鍵技術,并進一步探索和理解分布式系統(tǒng)的網絡機制和通信技術。通過更全面地理解區(qū)塊鏈技術與分布式系統(tǒng)的關系,為進一步研究和應用高級分布式系統(tǒng)提供扎實的基礎。
第四章?分布式命名與資源管理:介紹區(qū)塊頭、區(qū)塊體、Merkle樹、hash函數(shù)等區(qū)塊組織機構與查詢方法。理解高級分布式系統(tǒng)中結構化命名與非結構化命名等資源管理技術。
第五章?分布式系統(tǒng)的同步與并發(fā)機制:介紹公鏈與聯(lián)盟鏈中不同的智能合約執(zhí)行模式,和交易并發(fā)控制方法。理解分布式進程同步與互斥、分布式系統(tǒng)并發(fā)控制與死鎖處理等關鍵技術。
第六章?分布式共識與一致性:介紹分布式一致性和容錯等思想理解區(qū)塊鏈系統(tǒng)的共識機制與算法。理解分布式系統(tǒng)的容錯模型,分布式一致性理論。
第七章?總結與展望:結合區(qū)塊鏈技術的應用案例,包括供應鏈金融、存證確權、物聯(lián)網和NFT領域。通過深入分析和討論這些區(qū)塊鏈應用案例,學生們可以更好地理解和應用高級分布式系統(tǒng)的理念和設計原則。
五、課程改革考核方法
在考核方面,除了傳統(tǒng)的筆試方式外,采用開放性的項目評估,讓學生利用所學知識和技能去解決一個具體的問題,并形成報告。加入小組區(qū)塊鏈應用場景項目合作,答辯演示作為分布式系統(tǒng)課程改革的考核方法,此外,使用小組合作的形式,讓學生合作完成一項具有挑戰(zhàn)性的任務,以測試他們的團隊協(xié)作和溝通能力。這些方法可以幫助學生更全面地了解分布式系統(tǒng)和區(qū)塊鏈技術,同時也能夠衡量學生的實際能力和成果[9]。
參與小組項目合作可以讓學生將所學知識應用到實際項目中去,更好地理解和掌握分布式系統(tǒng)的應用和實現(xiàn),從而提高實踐能力。小組項目合作需要學生進行合作溝通、任務分配以及協(xié)同工作等,可以有效培養(yǎng)學生團隊合作意識和能力。在小組項目合作中,學生需要自主設計項目方案,思考創(chuàng)新點,這有助于培養(yǎng)學生的創(chuàng)新思維能力。小組項目合作可以讓學生將所學知識與實踐相結合,更好地理解和應用分布式系統(tǒng)相關的知識。通過演示答辯,學生需要將自己的項目成果清晰地表達出來,從而提高演示答辯能力,同時也有助于展示學生的學習成果和實踐能力。
因此,將小組項目合作和演示答辯加入到高級分布式系統(tǒng)課程改革的考核,有利于學生綜合能力的提升,更好地實現(xiàn)知識與實踐相結合[10]。
結語
引入案例教學進行“高級分布式系統(tǒng)”研究生課程教學改革一種非常有意義的方法。通過案例教學和多種考核方式,可以幫助學生更全面地了解分布式系統(tǒng)和區(qū)塊鏈技術,并測試他們的實際能力和成果。結合區(qū)塊鏈技術進行分布式系統(tǒng)的教學可以提高學生的實踐能力和掌握程度,同時激發(fā)學生的興趣,增加就業(yè)競爭力。
未來,我們應該注重對于分布式系統(tǒng)相關知識的深入挖掘和創(chuàng)新,在教學中注重理論與實踐相結合、靈活性和實用性,培養(yǎng)學生跨領域思維和團隊協(xié)作精神。通過引入案例教學等有效教學方法,我們可以更好地解決分布式系統(tǒng)教學中存在的問題,提高學生的實踐能力和掌握程度,從而更好地滿足市場需求,促進學生的職業(yè)發(fā)展和社會進步。
參考文獻:
基金項目:河南省研究生教育改革與質量提升工程項目(No.YJS2022AL041);?河南省高等教育教學改革研究與實踐(學位與研究生教育)重點項目(No.2021SJGLX031Y);?河南省教育科學規(guī)劃重大招標課題(No.2021JKZB07)
作者簡介:劉揚(1978—),女,河南洛陽人,博士,河南工業(yè)大學研究生院副院長,博士生導師,研究方向:分布式計算、云計算、區(qū)塊鏈;王鋒(1974—),男,河南鄭州人,博士,河南工業(yè)大學信息科學與工程學院副教授,碩士生導師,研究方向:區(qū)塊鏈、圖像處理、物聯(lián)網技術。