• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于成熟度的開源軟件立項評估方法①

      2018-09-17 08:50:02陳若愚胡忠宇
      計算機系統(tǒng)應(yīng)用 2018年9期
      關(guān)鍵詞:關(guān)注度項目組成熟度

      陳若愚,林 磊,胡忠宇

      (北京信息科技大學 計算機學院,北京 100101)

      1 引言

      近年來,互聯(lián)網(wǎng)的普及、社交網(wǎng)絡(luò)的發(fā)展以及開源軟件的興起使得在線協(xié)作的研究與應(yīng)用成為人們關(guān)注的熱點.從廣泛使用的Linux操作系統(tǒng),到市場占有率第一的Android手機操作系統(tǒng),再到當前社會熱點大數(shù)據(jù)所使用的Hadoop、Spark等分布式計算平臺,這些都是為現(xiàn)代化生活做出巨大貢獻的開源軟件,也都采用了分布式協(xié)作的方式進行開發(fā).

      開源軟件的開發(fā)過程中,普遍使用分布式版本控制系統(tǒng)進行協(xié)作,如Git,SVN,CVS等.其中,Git以其極其優(yōu)秀的分支創(chuàng)建、操作以及刪除的能力,成為目前使用最為廣泛的版本控制系統(tǒng).

      在Git的基礎(chǔ)上,2008年4月,現(xiàn)今全球最大的社交編程及代碼托管平臺GitHub正式上線.GitHub除了基本的Git代碼倉庫托管和基于Web的管理界面外,還提供了文檔管理、問題追蹤與訂閱、在線討論組等功能,為專業(yè)的開發(fā)人員提供了一片高效交流的樂土,開啟了人人都可以做開源項目的新時代.但是,GitHub主要面向開發(fā)及測試人員等專業(yè)用戶,相對比較小眾;同時,對普通用戶而言,使用門檻和學習成本都比較高.

      近年來,隨著移動互聯(lián)網(wǎng)和智能終端的發(fā)展,直接面向最終用戶的應(yīng)用軟件越來越多,傳統(tǒng)的軟件工程方法已經(jīng)不能完全適應(yīng)這一轉(zhuǎn)變,如何更有效、更準確地把握最終用戶的需求,對企業(yè)來說具有重要的意義.

      本文提出了一種基于成熟度的開源軟件項目立項評估模型,包含項目需求評估及項目組評估兩個主要的階段,通過成熟度機制對項目立項的進程進行評估與控制,幫助最終用戶、開發(fā)人員、項目管理人員等多方參與到項目的立項評估過程中,促進相互交流,確保最終用戶能夠充分參與到開源軟件項目的需求分析過程中.

      第二節(jié)將介紹相關(guān)的研究工作;第三節(jié)將詳細介紹基于成熟度的軟件項目立項評估模型及評估流程;第四節(jié)通過一個例子完整展示軟件項目的立項評估過程;最后對全文內(nèi)容進行總結(jié)并提出未來可能的研究方向.

      2 相關(guān)研究

      2.1 眾包

      “眾包”(crowdsourcing)一詞是美國雜志《連線》的記者杰夫·豪(Jeff Howe)在2006年5月提出的,從提出至今得到了工業(yè)界和學術(shù)界的廣泛關(guān)注.他對“眾包”的定義是:“一個公司或機構(gòu)把過去由員工執(zhí)行的工作任務(wù),以自由自愿的形式外包給非特定的(而且通常是大型的)大眾網(wǎng)絡(luò)的做法.眾包的任務(wù)通常由個人來承擔,但如果涉及到需要多人協(xié)作完成的任務(wù),也有可能以依靠開源的個體生產(chǎn)的形式出現(xiàn)”[1].

      Google提供的reCAPTCHA服務(wù)是使用最廣泛的驗證碼服務(wù),也是最典型的眾包項目.reCAPTCHA提供了最基本的驗證碼服務(wù),同時,還利用大量用戶的人工識別結(jié)果,來幫助對掃描版的圖書做數(shù)字化,還能幫助改善地圖的準確度,為更深層次的AI提供海量的寶貴數(shù)據(jù).

      “眾包”所呈現(xiàn)的參與式文化和所體現(xiàn)的集體智慧加速了創(chuàng)意的產(chǎn)生,但是同時也伴隨著巨大的潛在風險[2,3],在享受眾包帶來的創(chuàng)新資源的同時,還需規(guī)避眾包帶來的風險.

      2.2 Scrum敏捷開發(fā)過程模型

      Scrum方法是目前全球最流行與最有效的敏捷項目管理理念與方法之一,是一種快速增量交付軟件產(chǎn)品的模型,在構(gòu)建產(chǎn)品過程中創(chuàng)建產(chǎn)品的內(nèi)部團隊并與其他用戶高度協(xié)作[4].Scrum方法能夠很好的應(yīng)對快速變化的需求,強調(diào)面對面式的緊密協(xié)作與溝通,頻繁的交付新版本.

      2.3 軟件成熟度

      成熟度旨在確定被評估對象的成熟程度,是對與評估對象有關(guān)的概念、狀態(tài)、以及能力等進行的檢查活動[5].項目成熟度的衡量是為用戶的選擇做參考,為開發(fā)者提供項目質(zhì)量的評估,促進軟件開發(fā)的同時對項目有推廣作用[6].

      3 基于成熟度的開源軟件立項評估方法

      在眾包更加廣泛應(yīng)用的現(xiàn)在,用戶群體開始變大,不再僅僅局限于開發(fā)人員,普通用戶也可以是提出自己需求、展示市場痛點的策劃人.這些用戶沒有足夠的開發(fā)能力,也無法通過軟件工程的相關(guān)工具、圖表來給其他用戶展示想法,只能通過自然語言來表達.本文所構(gòu)思的平臺就是將最終用戶、開發(fā)人員、項目經(jīng)理多方參與到項目的立項評估過程中,讓沒有開發(fā)能力的用戶也能參與項目的執(zhí)行,以此來拓展用戶群體.

      3.1 項目成熟度評估

      理想的項目成熟度計算是通過系統(tǒng)智能地抓取項目相關(guān)信息進行智能地判斷給分的,這里只從項目最主要的三個因素考慮:項目需求,項目人員分工,關(guān)注度.以下的成熟度計算將以這三個因素作為評判依據(jù)分成三個階段的評定,每個階段設(shè)置一個合適的條件來控制跳轉(zhuǎn)至下一階段.

      3.1.1 項目需求成熟度

      項目需求是一個項目最開始就要討論分析的重要因素,而需求分析對軟件項目后續(xù)階段的工作具有直接的指導(dǎo)性作用,需求分析執(zhí)行的程度會直接關(guān)系到項目開發(fā)的成敗[7].成熟度最主要的衡量因素也就是項目需求成熟度.

      項目需求成熟度有如下定義:

      定義1.項目需求成熟度.

      項目需求成熟度被定義為如下的公式:其中,R定義為項目組提出的需求集合,函數(shù)m(r)計算某一個需求項r的成熟度,定義為:

      vs為需求項r獲得的贊成票數(shù),va為需求項r獲得的反對票數(shù).

      項目需求成熟度的計算流程(1)項目組成員進行討論,詳細列舉并修改項目的各項需求;(2)用戶對每一項未確定的需求投上贊成或者反對的一票;(3)計算項目需求成熟度;(4)若項目需求成熟度大于等于 80 則可以進入下一個階段,否則返回步驟(1).

      需求成熟度計算流程圖如圖1所示.

      圖1 需求成熟度計算流程圖

      3.1.2 項目組成熟度

      項目組成熟度是指項目組人員的能力與擔任職務(wù)的契合程度.一個專業(yè)的用戶只有在扮演了他所擅長的角色之后才能最大化地發(fā)揮他的能力.而項目人員分配是否合理,會直接影響到項目的運作效率[8].

      為了量化項目組參與人員的質(zhì)量,設(shè)立帶等級標簽制度,將用戶所擅長的技能設(shè)定為帶有等級的標簽,用戶在平臺上參與的活動獲取積分,根據(jù)積分提升等級(等級上限為5).在項目分工時標簽可作為評分依據(jù),通過標簽與職務(wù)的適配情況來判斷是否分配合理.若在CSDN、Linkedin、GitHub等較為出名的網(wǎng)站上有較高的知名度,平臺可以直接賦予其一定的積分和高等級標簽.

      定義2.項目組成熟度.

      項目組成熟度被定義為如下的公式:

      其中,G定義為項目組分組集合,函數(shù)g(r)計算某一個分組r的成熟度,定義為:

      其中,pl、pm為分組r的組長和組員的標簽等級,sl、sm為標準的組長和組員的標簽等級(默認為5、3),函數(shù)x(r)為分組r的標準人數(shù),表1列出默認的值.

      表1 分組人數(shù)標準表

      項目組成熟度計算流程圖如圖2所示.

      3.1.3 項目關(guān)注度

      項目關(guān)注度是指一個項目應(yīng)該引起用戶對其關(guān)注的程度.其值越高,表明該項目內(nèi)容足夠豐富、創(chuàng)意足夠新穎,更容易引起用戶的高度關(guān)注.因此項目關(guān)注度也應(yīng)該作為成熟度的評定依據(jù)之一.

      關(guān)注度的計算需要用到信息檢索與信息分析的技術(shù),最基本的信息就是關(guān)注量與瀏覽量,以下計算不做過于復(fù)雜的計算,主要使用這兩個信息做簡單計算來表示關(guān)注度.

      定義3.項目關(guān)注度.

      圖2 項目組成熟度計算流程圖

      項目關(guān)注度被定義為如下的公式:

      其中,l為項目的關(guān)注數(shù),r為項目的被瀏覽數(shù).

      項目關(guān)注度的計算(1)從數(shù)據(jù)庫獲取項目的關(guān)注量與瀏覽量;(2)計算項目關(guān)注度;(3)若關(guān)注度大于等于 80 則可以進入下一階段,否則返回步驟(1).

      3.1.4 計算總成熟度

      由以上三個階段得出成熟度的三個主要因素,由以下公式計算得出最終的總成熟度:

      得出總成熟度后,項目正式開始進入編碼階段,平臺與GitHub對接.

      3.2 立項評估流程

      當有一個策劃者有靈感的時候,就可以直接在平臺上提出此想法,然后系統(tǒng)會由標題抓取關(guān)鍵詞,并首先自動向策劃者推薦類似的項目.如果策劃者覺得系統(tǒng)推薦的創(chuàng)意項目符合自己的預(yù)想,那么可以自行關(guān)閉想法;如若覺得并不符合自己的需求,可以再添加更加具體的描述,然后發(fā)布此想法.平臺用戶一起討論可行性以及再進一步的潤色想法.如果經(jīng)過討論發(fā)現(xiàn)此想法實現(xiàn)難度極大甚至無法實現(xiàn),策劃者可以自行關(guān)閉想法;如果經(jīng)過潤色補充后,想法逐漸成為一個充實、可執(zhí)行的項目,那么策劃者可以廣招賢士,組建項目團隊,開始項目的實現(xiàn).

      開始實現(xiàn)項目后,就必然要進入上文中成熟度評估的流程.一系列的計算過后,得出項目的成熟度,可作為項目質(zhì)量的憑證.隨后進入開發(fā)階段.

      進入正式開發(fā)階段后,平臺對接GitHub以便開發(fā)協(xié)作.開發(fā)團隊應(yīng)該選擇一種軟件開發(fā)模型,平臺推薦使用Scrum敏捷開發(fā)過程模型,并為此提供了充分的作業(yè)空間.接下來平臺對開發(fā)過程不做干涉直到開發(fā)完成,結(jié)束.

      完整的執(zhí)行流程如圖3所示.

      圖3 開源項目立項評估模型流程圖

      4 實例分析

      4.1 實例一

      現(xiàn)有用戶如表2所示.

      表2 實例一:用戶標簽表

      黃琦在平臺上提出一個想法“設(shè)計一個可以即時分享想法的平臺”,吸引眾多用戶進行討論,組成討論組.

      王毅提出“不只是要分享想法,還要做到可以討論完善想法,并將想法實現(xiàn)”,98%的用戶表示同意.張珊認為“可以從即時記錄入手,寫一個有較強功能的記事本”,66%的用戶表示同意,其他用戶認為“記事本產(chǎn)品太多,沒必要”.

      經(jīng)過討論完善后,多數(shù)用戶認為可以實現(xiàn),于是組成項目組,有王毅、李爾、張珊、劉肆、陳武、楊柳志愿加入項目組,王毅被推舉為組長,黃琦作為用戶組參與其中.

      進入成熟度機制的三個階段:

      (1)進入需求分析階段,項目組與用戶組進行討論,列出以下需求.

      1)想法可以用富文本編輯,可插入圖片;

      2)加入手動繪制圖案的功能;

      3)對想法可以評論,點贊,關(guān)注,分享;

      4)每個想法可以內(nèi)設(shè)提供聊天的討論組功能;

      5)想法可以轉(zhuǎn)化為項目的形式來實現(xiàn),成立項目組來執(zhí)行.

      隨后過了一周,有233個用戶參與了投票,每項需求獲得的贊成投票數(shù)分別為:1)215,2)198,3)204,4)208,5)168.經(jīng)過計算后得出需求成熟度為85.2,大于80,進入下一階段.

      (2)進入成員分工階段,組內(nèi)討論后成員分工如表3所示.

      表3 實例一:成員職位表

      經(jīng)過計算后得出項目組成熟度為80.6,大于80,進入下一階段.

      (3)進入關(guān)注度分析階段,由系統(tǒng)給出的項目的瀏覽量為568,關(guān)注量為474,進行關(guān)注度分析算法計算后得出的關(guān)注度為83.5.

      根據(jù)三個階段獲取的三個數(shù)據(jù),計算得出總成熟度:

      項目正式成立,進入編碼階段,平臺對接GitHub,項目組以Scrum敏捷開發(fā)的理念來執(zhí)行項目開發(fā).

      4.2 實例二

      現(xiàn)有用戶如表4所示.

      朱偉提出一個想法“設(shè)計一個可以用攝像頭拍攝并掃描物體,然后構(gòu)建一個類似的3D立體模型的軟件”,吸引眾多用戶進行討論,組成討論組.

      表4 實例二:用戶標簽表

      趙剛提出“這種技術(shù)已經(jīng)有了,有個叫3D掃描儀的機器就可以實現(xiàn),如果要用手機攝像頭來實現(xiàn)的話,索尼出的Xperia XZ1實現(xiàn)了這種技術(shù),可以掃描人臉和3D建模.如果要自己實現(xiàn)的話,需要有這方面的專家,否則難度非常大.”,98%的用戶表示同意.

      經(jīng)過討論后,多數(shù)用戶認為難度過高難以實現(xiàn),而且沒有專業(yè)人員參與,于是想法作廢.

      5 結(jié)論與展望

      本文針對傳統(tǒng)的開源軟件開發(fā)模式在獲取用戶需求方面存在的問題,提出了基于項目成熟度評估的開源軟件立項評估模型,從需求成熟度、項目組成熟度、關(guān)注度三個角度對項目進行項目成熟度評估,并通過實例分析模擬了立項評估模型的執(zhí)行過程.在未來的工作中,將嘗試在大規(guī)模分布式環(huán)境下進行實際運行測試,從而進一步對本文所提出的模型進行細節(jié)優(yōu)化和參數(shù)調(diào)整.

      猜你喜歡
      關(guān)注度項目組成熟度
      CSCO生物統(tǒng)計學專家委員會RWE項目組簡介
      Association between estradiol levels and clinical outcomes of IVF cycles with single blastocyst embryo transfer
      基于數(shù)字化平臺的項目組管理實踐
      產(chǎn)品制造成熟度在型號批生產(chǎn)風險管理中的應(yīng)用
      整機產(chǎn)品成熟度模型研究與建立
      不同成熟度野生水茄果實的種子萌發(fā)差異研究
      種子(2018年9期)2018-10-15 03:14:04
      剛好夠吃6天的香蕉
      雄安新區(qū)媒體關(guān)注度
      全國兩會媒體關(guān)注度
      暴力老媽
      绥棱县| 上蔡县| 福建省| 英超| 托克逊县| 海淀区| 桐城市| 栾川县| 疏勒县| 兴和县| 郎溪县| 谷城县| 阿图什市| 古蔺县| 绍兴市| 五常市| 平和县| 巴东县| 共和县| 永川市| 克什克腾旗| 汉川市| 阿拉善盟| 栾城县| 阿勒泰市| 石柱| 普格县| 永安市| 屏东市| 鄢陵县| 丰城市| 河北区| 六安市| 黄大仙区| 通城县| 淳安县| 平塘县| 乌拉特中旗| 澎湖县| 黎城县| 巴东县|