2010年大學生UML建模創造力大賽及參賽Tips

2010“Sparx Systems杯”大學生UML建模創造力大賽即將舉辦,本文有三大部分內容:
1.大賽介紹。(此部分內容摘自大賽官方網站)
2.試題分析。
3.UML知識簡介。

作者

張傳波
本次大賽評委之一
中國UML認證專家委員會專家

軟件知識大學

www.umlonline.cn/school/

大賽介紹

一、大賽主旨
首屆“Sparx Systems杯”全國大學生UML建模創造力大賽是中國軟件行業協會過程改進分會和日本UML建模技術推進協會(UMTP)主辦、中國UMTP(UML Modeling Technology Professional)認證中心承辦的公益性質的全國性科技競賽,其主旨是:正確引導我國在校的青年學生積極參加科技競技活動,不斷培養創新精神和團隊意識,切實增強理論聯繫實際的能力,使廣大學生認識到學習和掌握UML建模技能的重要性,充分發揮學生使用UML建模的創造力,爲廣大學生提供一個提高自我、展示才華的舞臺, 幫助大學生提升職業能力、促進大學生就業。
澳大利亞UML建模工具廠商Sparx Systems公司爲本次大賽提供了經費支持,併爲大賽提供統一的UML建模工具。

二、大賽組織
爲保障大賽順利進展,大賽成立組織委員會和專家評審委員會。組織委員會負責大賽的組織、宣傳和協調工作,專家評審委員會全面負責大賽的命題和評審工作。
軟件開發領域影響最大的世界級權威之一、UML創建者之一Ivar Jacobson 擔任大賽組委會榮譽主席;我國軟件工程資深專家、中軟協過程改進分會常務副會長、清華大學鄭人傑教授和日本UML建模推進協會上野南海雄會長擔任大賽組委會主席。大賽評審專家委員會由來自著名企業的資深UML建模專家、高校教師代表共同組成,中國著名的UML技術專家、UMLChina首席專家潘加宇擔任大賽專家評審委員會主席。IBM、微軟、阿里巴巴、中軟、用友、民航信息、浪潮通軟、NEC中國、南京富士通南大、博彥科技、大連華信等約30家全國著名軟件企業將作爲大賽的支持單位,並選派資深專家參與大賽評審專家委員會、爲大賽獲獎選手提供面試機會。全球最大中文IT技術社區CSDN和《程序員雜誌》作爲大賽的協辦媒體,將對大賽進行全程關注和報道。

三、參賽對象
大學本科生、研究生及高職高專學生。
專業不限,建議學習過UML相關課程(如面向對象分析與設計)。

四、賽制賽程
1、大賽報名:2010年9月20日-2010年10月30日
我國大陸和港臺澳地區的在校青年學生自由組隊(每隊由1-3人組成),登錄大賽官方網站在線報名。
繳納報名費:請參賽團隊在線報名後,需要按照指定匯款信息及時繳納報名費,組委會收到報名費後纔會審批報名申請。如果因爲沒有及時繳納報名費而影響到作品提交的權限,責任由參賽團隊自行承擔。
2、作品提交:2010年9月30日-2010年11月15日
各參賽團隊在2010年11月15日以前提交作品終稿,可選擇大賽網站在線提交和郵件提交兩種方式,所有提交物打包到一個zip文件中提交。包括:
(1) 一個Enterprise Architect的模型文件(eap文件)。模型的具體要求參見“試題和評審”部分。
(2) 若干調研證明資料、例如:如果提交的項目爲“新一代食堂就餐系統——針對××學校食堂就餐流程的改進”。您可以給出食堂裏就餐場景的若干照片,或者訪談的錄音片段...等等來證明。
3、初評:2010年11月16日-2010年11月26日
大賽評委將對提交的作品進行初評,篩選出約50件作品,於2010年11月27日-2010年12月3日期間在大賽官方網站進行展示。
4、複評:2010年12月4日-2010年12月13日
參考大衆的評論和投票情況,大賽評委將對參與展示的作品進行復評,甄選出約15件優秀作品進入決賽。
5、決賽:2010年12月20日-2010年12月21日
進入決賽的參賽團隊,將在北京進行現場答辯,大賽評委評選出最終獲獎作品,並舉行頒獎儀式。決賽期間將在NEC中國參加UMTP L1級別的認證考試。具體地點將另行通知,請注意關注大賽官方網站。

五、試題和評審
(一)試題和需要完成的工作內容
  因本次大賽是“創造力”大賽,所以不限定主題,由參賽者任選自己學習、工作和生活中某個領域存在的真實問題來建模。吃飯、上課、複習、考試、鍛鍊、KTV唱歌....任何領域都可以。爲保證系統有一定的複雜度,要求分析模型中核心領域類圖(即實體類圖)中類的個數在5個以上。要求參賽者完成以下建模工作:
  A. 業務建模。包括業務順序圖(或業務活動圖)。描述現實問題以及即將進行的改進。
  B. 需求。包括待開發軟件系統的用例圖、關鍵系統用例的用例描述。描述用來改進問題的軟件系統的需求。
  C. 分析。包括待開發軟件系統內核心領域的類圖、關鍵用例的分析順序圖、重點類的狀態圖。只涉及核心領域的知識,不涉及具體實現平臺。
  D. 設計。包括關鍵用例的設計順序圖、構件圖、部署圖。爲分析模型選擇合適的實現平臺,描述出各個層之間交互的架構。
  以上內容全部放進一個Enterprise Architect的模型文件(eap文件)
(二)建模工具和模板
本次大賽統一使用建模工具Enterprise Architect(簡稱EA),建模工具以及工具使用說明、建議使用的EA模板和EA模型示例請到大賽官方網站下載
(三)評審
大賽作品的評審由大賽專家委員會完成,注重作品內容的真實性、完整性、UML用法的準確性、邏輯嚴密性、實用性、價值、答辯表現和網友投票與評論等。

六、獎勵方案
本次大賽獎勵可分爲四部分:
1、獎項設置
一等獎:1名,獎金1萬元,並頒發證書
二等獎:2名,獎金5000元,並頒發證書
三等獎:3名,獎金3000元,並頒發證書
優勝獎:9名,獎金1000元,並頒發證書
入圍獎:若干,價值約100元的紀念品,並頒發證書
2、免費參加一次職業資格認定考試(價值300元)
中國UMTP認證中心將爲進入決賽的團隊提供一次免費參加UMTP Level 1級別資格認定考試的機會。考試通過者,將獲得由中國軟件行業協會和日本UML建模技術推進協會(UMTP)聯合蓋章頒發的證書。該證書由中日軟件行業權威機構聯合認定、中日互認。
3、名企推薦
進入決賽選手的人才庫,將直接推薦給支持企業,可直接獲得面試機會。
4、報銷決賽期間往返路費和住宿費
進入決賽的參賽團隊,大賽組委會負責報銷往返北京的火車票(硬座)、免費安排2天住宿。

七、參賽費用
報名參加建模大賽的團隊,需要繳納報名費,每隊150元。可以學校統一收取後向組委會繳納,也可由參賽團隊直接向組委會繳納。

試題分析

題目是開放式的,好處就是各位同學可以選取自己最熟悉的內容來開展工作,而缺點就是大家容易抄襲。千萬不要有抄襲的行爲喔,大賽是有“反抄襲”的措施的,一旦發現抄襲行爲,即會馬上取消資格。
大賽的獎勵雖說豐厚,建議各位同學參賽的目標定爲提高自身水平,爲將來工作做好準備,獎品只是一種激勵,學到技能纔是終身受用。

題目要求同學們選取自己熟悉的內容,用UML完成業務建模、需求、分析到設計的工作,基本上除了編碼、測試、實施不用做外,一個軟件項目的所有工作都要做了。要完成該題目,需要同學們掌握下面的知識和技能:
1.熟悉軟件項目由需求到設計的工作內容,最好有整個項目生命週期的實踐經驗。
2.需掌握UML知識,最好有UML的實踐經驗。
3.需有團隊協作的工作經驗。
4.需掌握用UML分析問題的工作技巧。

不少同學沒有完整的軟件生命週期工作經驗,UML也僅停留在理論知識之上,要完成該題目的難度是挺大的。不過題目提交時間爲2010年9月30日-2010年11月15日,同學們有足夠的時間去學習、實踐提高水平,而且其他參賽者的情況和你也是一樣的,大家在同一個起跑線上,只要認真努力、採用合適的學習辦法,定可以在大賽中取得好成績。

題目強調實踐性和創造力,能否做到活用UML是關鍵,但同學們可學習的實用UML資料並不多,可多參考本網站的相關知識。

大賽要求使用Enterprise Architect(後面簡稱EA)來完成作品,EA確實是不錯的UML工具,最新版本的EA支持UML最新版本2.3,本網站大部分UML圖是用EA繪製的。可惜EA不是免費的,各位同學可下載一個月免費試用,如果EA專門針對本次大賽推出更長免費使用期的版本、及專門針對學生的低價版本就好了。
我個人不太贊同指定UML工具完成作品的,無奈EA是本次大賽的贊助商,故本次大賽不太可能允許大家使用其他UML工具。

評審由專家負責,我也可能參與其中。其實題目並沒有標準答案,本次大賽標題爲“UML建模創造力”,“創造力”是評審時的關注點。各位同學需要對選定的題目進行深入系統的分析,列出自己的獨特見解,能用UML發掘和表達出不用UML難以做到的內容,前後邏輯清晰,條理分明,這將是你們的制勝關鍵。

UML知識簡介

UML這三個字母的全稱乃Unified Modeling Language,直接翻譯就是統一建模語言,簡單地說就是一種有特殊用途的語言。你可能會說,語什麼言,一堆圖形,還說是語言?此言差矣,咱們的文字還不是從圖形(象形文字)開始的嘛,語言是包括文字和圖形的。其實有很多內容文字是無法表達的,你見過建築設計圖紙嗎?裏面還不是很多圖形,光用文字能表達清楚建築設計嗎?在建築界,有一套標準來描述設計,同樣道理,在軟件開發界,我們也需要一套標準來幫助我們做好軟件開發的工作。UML就是其中的一種標準,注意這可不是唯一標準,只是UML是大家比較推崇的一種標準而已,說不定以後有一個更好的標準可能會取代她呢!UML並不是官方的標準,也沒有法律規定你在軟件開發中一定要用UML,不能用其它的,我們的目標就是善用包括UML在內的各種標準,來提高我們軟件開發的水平。

UML由1.0版發展到1.1、1.2、...,到現在的2.0、2.x,當前最新版本爲2.3。網絡上、書籍、還有各種UML工具軟件,各自基於的UML版本可能會不一樣,大家在學習過程中可能會有一些困惑,不過沒關係,其實我們經常用到的那部分UML,無論是那個版本,變化不是很大。

UML有很多種圖,大體可以分爲兩類:
1.結構型的圖(Structure Diagram)
類圖(Class Diagram)
對象圖(Object Diagram)
組件圖(Component Diagram)
部署圖(Deployment Diagram)
包圖(Package Diagram)
2.行爲型的圖(Behavior Diagram)
活動圖(Activity Diagram)
用例圖(Use Case Diagram)
狀態機圖(State Machine Diagram)
序列圖(Sequence Diagram)
協作圖(Communication Diagram)
時序圖(Timing Diagram)

注:UML圖的中文名字,因爲翻譯的原因可能會有所不一樣,大家要留意看英文名字噢!

在我們軟件設計時,我們需要考慮需要那些類、哪些組件、系統最後怎樣部署等,這些內容可以看成是“靜態”的,我們可以利用UML的結構型的圖來設計。
同時,我們也需要考慮軟件如何和用戶交互,類、組件、模塊之間如何聯繫等“動態”內容,我們可以利用行爲型的圖來設計。
當然所謂“靜態”和“動態”不是絕對的,對UML還不是很熟悉的朋友,先大致這樣瞭解便可。

UML有這樣的一些常見認識誤區:

1)UML只適合用來做軟件設計?
UML可以用來做軟件設計,這是大家的普遍認識,實際上不僅如此,UML還可以用來做需求開發(或者叫需求分析)。不僅是用例圖可以用來描述需求,類圖、活動圖、序列圖、狀態機圖等都可以用來深入發掘和整理需求。

2)UML的語法很多很繁雜?
UML的全部語法確實很多很繁雜,但實際上經常用到的內容不多,也很容易記憶。

3)掌握了UML語法,就是OO高手了?
要成爲OO高手哪有這麼容易啊!OO理論家就很多,真正實戰高手其實沒幾個。俺未懂UML之前,還自認爲自己OO水平還不錯,學習UML後發現自己是如何之渺小。通過實際工作不斷地應用UML,不斷地思考總結,才能不斷地提高自己的OO水平。
如果不懂UML,有可能是OO高手嗎?我一直也有思考這個問題,我覺得不懂UML的不太可能是OO高手,因爲確實只有用好UML(特別是類圖)才能真正體會到什麼是OO!

4)光用UML就足夠了嗎?
UML可以表達軟件設計的所有情況嗎?用了UML就不需要用文字來表達設計嗎?
非也非也!UML在表達界面設計、用戶體驗設計、數據庫設計等方面,能力還是很弱的,不要只用UML,應該善用一切可以利用的東西,包括文字。


UMLonline全程支持本次大賽

我們已經在軟件知識大學開闢了本次大賽的專門版塊,我們將會:
1.及時發佈大賽的最新消息。
2.解答同學們參賽及UML學習的問題。
3.爲同學們提供系統的、通俗易懂的、實戰性的UML知識及實際工作技巧。

點擊這裏,進入大賽專區!

大賽官方網站:http://www.chinauml.org/index.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章