版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、附件 2浙江省信息服務(wù)業(yè)發(fā)展專項資金項目可行性研究報告項目名稱: WSR 軟件分析文檔自動生成系統(tǒng)申請單位(蓋章) :浙江萬思計算機制造有限公司合作單位(蓋章) :項目起止時間:2006 . 1 2007 . 12申請日期:2006.9浙江省信息產(chǎn)業(yè)廳編制浙江省財政廳浙江省信息服務(wù)業(yè)發(fā)展專項資金項目可行性研究報告一、申請單位、合作單位簡介1 基本情況浙江萬思計算機制造有限公司 , 于 2004 年 3 月成立,注冊地址為上城區(qū)科技工業(yè)基地,注冊資本 550 萬,專業(yè)從事計算機軟硬件產(chǎn)品的研發(fā)設(shè)計生產(chǎn)、銷售和服務(wù)業(yè)務(wù),并著力為用戶提供 IT 應(yīng)用的解決方案。公司目前的主要產(chǎn)品有萬思商用臺式電腦、
2、萬思家用臺式電腦,萬思服務(wù)器。 萬思品牌目前是浙江省省產(chǎn)計算機第一品牌,杭州市名牌,也是我省知名的政府采購指定品牌, 已被市場檢驗為是一款品質(zhì)可靠、性價比高、被用戶所廣泛接受的本土品牌。為了進(jìn)一步提高萬思品牌的產(chǎn)品定位以及產(chǎn)品內(nèi)在的核心競爭力,公司非常注重對產(chǎn)品研發(fā)的投入, 2005 年組建成立了高新技術(shù)研發(fā)中心并得到了政府有關(guān)部門的認(rèn)定,研發(fā)中心的任務(wù)主要包括兩個方面,一方面是對計算機硬件本身品質(zhì)性能優(yōu)化提高的研究,另一方面是以市場的需求為導(dǎo)向,著眼于為某些特定用戶開發(fā)應(yīng)用方案。目前研發(fā)中心在進(jìn)展中的項目有高性能計算服務(wù)器、高性能網(wǎng)絡(luò)計算平臺、個性化家用電腦等?,F(xiàn)公司辦公總部位于杭州文三路商
3、務(wù)中心地帶,經(jīng)營面積約 400 平方米的高檔寫字樓,研發(fā)場地 100 多平方米,以及約 1000 平米的生產(chǎn)場地。為了進(jìn)一步適應(yīng)發(fā)展的需要, 2005 年公司在政府的支持下,項目征地近 15 畝,用于萬思臺式電腦、服務(wù)器與筆記本電腦的研發(fā)制造。該項目得到了政府有關(guān)部門的大力支持,目前已獲得杭州市計經(jīng)委批準(zhǔn),列為政府資助的技術(shù)改造項目之一,項目基建在2006 年浙江萬思計算機制造有限公司啟動。公司現(xiàn)有員工80 人, 80%以上都是專業(yè)對口的大專、本科、以及碩士生的專業(yè)人員,其中軟件開發(fā)/ 研發(fā)人員 12 名,已形成一支有戰(zhàn)斗力的高效的員工隊伍和管理團隊。公司的主要經(jīng)營管理班子,均具有五年以上的項
4、目操作經(jīng)驗,公司主要負(fù)責(zé)人畢業(yè)于浙江大學(xué)計算機應(yīng)用專業(yè)碩士研究生院,從事IT 公司經(jīng)營管理十年,整個管理團隊擁有豐富的管理與實戰(zhàn)經(jīng)驗,并具有高度的兢業(yè)精神和忠誠度,為公司的快速發(fā)展提供強有力的團隊保障。通過幾年的發(fā)展,目前公司在產(chǎn)品、技術(shù)、管理等方面都已具備了較強的實力,2005 年公司順利地通過了 ISO9001的質(zhì)量體系論證,管理嚴(yán)謹(jǐn)、創(chuàng)新并注重實效,是公司最明顯的特點。隨著公司的不斷發(fā)展壯大,萬思品牌的知名度正在逐步提高并深入人心,公司上下齊心協(xié)力,正在加緊實施品牌戰(zhàn)略,以期發(fā)展成為行業(yè)的龍頭企業(yè),并以我們?nèi)f思企業(yè)產(chǎn)品為核心,形成“互聯(lián)網(wǎng)絡(luò)” ,使地區(qū)優(yōu)勢得以發(fā)揮,積極促進(jìn)我市計算機整機
5、產(chǎn)業(yè)的發(fā)展,形成新的經(jīng)濟增長點,同時樹立地區(qū)形象,改善本地區(qū)內(nèi)引外聯(lián)的軟環(huán)境,促進(jìn)區(qū)域經(jīng)濟整體發(fā)展,實現(xiàn)地區(qū)經(jīng)濟與企業(yè)的共同繁榮!2 技術(shù)能力作為高科技產(chǎn)品的研發(fā)制造廠家,萬思自成立起,即深知走技術(shù)創(chuàng)新之路、發(fā)展自主知識產(chǎn)權(quán)產(chǎn)品的重要性,為了實現(xiàn)這樣的技術(shù)目標(biāo),公司非常注重對技術(shù)人才的引進(jìn)、培養(yǎng),和技術(shù)隊伍的打造,注重對技術(shù)研發(fā)的不斷投入,以期形成一個可持續(xù)性發(fā)展的技術(shù)研發(fā)與創(chuàng)新環(huán)境。公司現(xiàn)有技術(shù)人員30 多名,其中軟件開發(fā) / 研發(fā)人員 12 名,95%以上人員具有專業(yè)對口的大專以上學(xué)歷,其中本科生在 50%以上,并擁有幾名碩博士作為技術(shù)領(lǐng)軍。這些專業(yè)工程師分別具有在硬件開發(fā)、測試、軟件開發(fā)
6、、信息管理應(yīng)用等不同方面的專長,為公司承接各類項目作好了很好的技術(shù)人才隊伍的準(zhǔn)備。同時,為了進(jìn)一步加強浙江萬思計算機制造有限公司技術(shù)力量,公司于 2005 年成立的技術(shù)研發(fā)中心,不僅薈萃了公司技術(shù)隊伍中的精英力量,還與多家在杭知名高校的計算機研究所或?qū)嶒炇?,建立了很好的產(chǎn)學(xué)研橫向合作關(guān)系,使得研發(fā)中心得以充實進(jìn)一批來自高校的科研人才,大大提高了公司整體的技術(shù)力量,和技術(shù)項目的承接能力。除了人才隊伍的建設(shè)外,公司也著力創(chuàng)造良好的研發(fā)環(huán)境,研發(fā)中心擁有獨立的辦公、試驗以及研發(fā)場地,總建筑面積 200 平方米,包括產(chǎn)品設(shè)計室、軟件開發(fā)實驗室、檢測實驗室,老化測試以及整機測試等實驗室。中心各實驗室配有
7、各種各樣的先進(jìn)儀器設(shè)備,各實驗室除具備常用的儀器設(shè)備外,還針對性的配備了先進(jìn)的專用儀器,為每位研發(fā)人員配有專用計算機。綜之,研發(fā)中心具備了開展各項研發(fā)設(shè)計測試任務(wù)的良好環(huán)境和保證條件。本項目在整個開發(fā)團隊的共同努力下, 經(jīng)過 8 個多月的辛勤工作,業(yè)已大體完成第一階段的系統(tǒng)概要設(shè)計工作。3 財務(wù)狀況隨著萬思品牌的知名度的不斷提升,萬思產(chǎn)品在全省的銷售渠道得到了快速地擴展,用戶群在不斷的擴大,總體的銷售形勢呈現(xiàn)出快速遞增的趨勢。從2004年的銷售收入 735萬,到2005年實現(xiàn)銷售 259萬,2006年上半年共實現(xiàn)銷售 2135萬左右,銷售的增長是非常明顯的。從資產(chǎn)情況看, 2004年520多萬
8、, 2005年760萬,截止 2006年6月760多萬,公司資產(chǎn)在快速的增長。從財政穩(wěn)健性看, 2005年底資產(chǎn)負(fù)債率是 26.7%,到2006年6月底,資產(chǎn)負(fù)債率是 18%,可見,公司財務(wù)狀況是非常良好穩(wěn)健的。4 獲獎情況因萬思公司成立時間不算太長, 多項技術(shù)項目或新產(chǎn)品仍在開發(fā)浙江萬思計算機制造有限公司中,或者還在申報鑒定中,因此,獲獎情況目前尚不多,可以一數(shù)的資質(zhì)或榮譽有:2005年萬思品牌獲得杭州市名牌稱號,并列入“省名牌培育計劃”2005年通過 ISO9001論證2005年通過區(qū)高新技術(shù)研發(fā)中心認(rèn)定2005年通過杭州市“信息港”企業(yè)論證備案二、項目的必要性及市場前景本項目是設(shè)計一種分
9、析、解剖軟件的軟件,是屬于計算機系統(tǒng)軟件中的基礎(chǔ)性工具軟件。它運用軟件理解技術(shù)對軟件進(jìn)行反向匯編、回溯、和自動分析與歸納, 提取軟件系統(tǒng)各部件之間的相互關(guān)聯(lián)信息,反映軟件系統(tǒng)功能結(jié)構(gòu)、設(shè)計模式的不同抽象層次視圖等信息,并將軟件理解的信息用恰當(dāng)?shù)膱D形化界面或文檔的方式進(jìn)行展示和輸出。該軟件可以有效地輔助軟件系統(tǒng)的開發(fā)與維護(hù);能進(jìn)行快速分析和理解(大型)軟件系統(tǒng),提高軟件開發(fā)效率;可評估軟件系統(tǒng)與軟件文檔之間的一致性;以及輔助軟件上線后的長期維護(hù),對整個軟件生命周期均有重要的支撐作用。此類軟件開發(fā)正在受到軟件業(yè)的高度重視,軟件本身涉及多類創(chuàng)新工作。該軟件的主要用戶是軟件開發(fā)商和應(yīng)用軟件的用戶,有較
10、大市場空間和實際需求。 該軟件的開發(fā)成功, 對促進(jìn)浙江軟件產(chǎn)業(yè)發(fā)展,提高軟件開發(fā)效率, 提升應(yīng)用軟件維護(hù)質(zhì)量, 創(chuàng)建自主品牌軟件系統(tǒng),尤其是基礎(chǔ)性軟件系統(tǒng),具有重要示范意義。1國內(nèi)外技術(shù)發(fā)展現(xiàn)狀及趨勢從上世紀(jì) 90 年代早期開始,由于國外軟件市場對遺產(chǎn)軟件復(fù)用的迫切需求,逆向工程技術(shù)得到了長足的發(fā)展,對此,IEEE ComputerSociety 、ACM SIGSOFT、ACM SIGPLAN、Reengineering Forum 等主要組織也在軟件逆向工程領(lǐng)域發(fā)起了三個年會,以深入研討逆向工程問題。這三個年會是:WRCE( the Working Conference on Revers
11、eEngineering)、 IWPC( theInternationalWorkshop on Program浙江萬思計算機制造有限公司Comprehension)和 PASTE(the Workshop on Program Analysis for Software Tools and Engineering )。此外,以 CMU(卡內(nèi)基梅隆大學(xué))為代表的多所世界知名大學(xué)在 1984 年就成立了專門的軟件逆向工程研究中心,以致力于相關(guān)技術(shù)的研究。另外 IBM、Microsoft 等在此領(lǐng)域的研究工作也進(jìn)行了多年。近年來,由于國內(nèi)軟件市場對遺產(chǎn)軟件重構(gòu)的刺激,逆向工程技術(shù)的重要性也開始得到
12、了國內(nèi)學(xué)術(shù)界和商業(yè)界的認(rèn)同。作為控制軟件復(fù)雜性、提高軟件系統(tǒng)質(zhì)量、支持軟件開發(fā)和復(fù)用的重要手段之一,軟件體系結(jié)構(gòu)對軟件開發(fā)組織具有極其重要的作用。然而,實際的程序開發(fā)卻往往背離最初的軟件體系結(jié)構(gòu)設(shè)計而造成體系結(jié)構(gòu)性破壞,為此需要進(jìn)行體系結(jié)構(gòu)恢復(fù)。同時,遺產(chǎn)軟件系統(tǒng)由于早期的開發(fā)缺乏有效的設(shè)計或缺乏詳細(xì)描述文檔而需要重構(gòu)或恢復(fù)。為此,逆向工程領(lǐng)域中對軟件理解中的體系結(jié)構(gòu)恢復(fù)與重建成為了研究的熱點,每年都有此領(lǐng)域的論文在 WRCE、IWPC、PASTE等相關(guān)雜志上發(fā)表。此項目的關(guān)注點在以體系結(jié)構(gòu)為中心的軟件理解上。逆向工程中軟件理解技術(shù)發(fā)展至今,業(yè)界已經(jīng)研發(fā)出一些輔助工具,一些典型軟件有:( 1)
13、RigiRigi 是發(fā)展較早的軟件逆向工程輔助工具,至今它仍是Victoria大學(xué)的 Rigi Research 在研工程項目。 Rigi 先對軟件系統(tǒng)進(jìn)行分析以獲得一個基本的系統(tǒng)分層視圖,然后由相當(dāng)熟悉該軟件系統(tǒng)的用戶對此分層視圖進(jìn)行修改和編輯以得到更精練的系統(tǒng)分層視圖。由于 Rigi的分析器只能分析函數(shù)和結(jié)構(gòu)類型的數(shù)據(jù),這使得產(chǎn)生的視圖局限于函數(shù)視圖。( 2)Refine/CRefine/C由 Reasoning 公司開發(fā)。它是一種可擴展的、交互的工作臺,逆向分析 C程序,用戶能夠使用其 API 并配合使用其公司開發(fā)的另一個工具 Software Refinery 來細(xì)化特定的應(yīng)用程序。但
14、是它不浙江萬思計算機制造有限公司支持文檔輸出、增量分析,不能顯示函數(shù)調(diào)用等一系列視圖,而且在分析包含語法錯誤的源代碼時表現(xiàn)不佳。( 3)Imagix4DImagix4D 由 Imagix 公司開發(fā)。 Imagix4D 是一個 C 和 C+軟件理解工具。它能在很多層次上快速地分析系統(tǒng)代碼,這些層次分為高層的設(shè)計到建構(gòu)的細(xì)節(jié)、類和函數(shù)依賴性等。 Imagxi4D 以一種 3D 圖形的格式描述軟件的關(guān)鍵信息,這能讓用戶快速定位到相關(guān)視圖。但是它不支持源代碼瀏覽定位、輸出文檔局限于函數(shù)級別、源代碼分析速度低下、不能抽取實體關(guān)系圖信息。( 4)SNIFF+Sniff+ 由 TakeFive Softwa
15、re GmbH 公司開發(fā) .它是一個開放的、可擴展的和可分層的C/C+編程環(huán)境 ,同時也提供逆向工程功能。Sniff+ 提供一個高效和便攜的環(huán)境, 同時有著良好的用戶接口。 但是,它對于錯誤語法分析欠佳,不能展示重要的函數(shù)、變量、數(shù)據(jù)類型信息,沒有控制流圖等層次視圖,不能記錄外部變量或函數(shù)信息。( 5) Source InsightSource Insight由 Source Dynamics 公司開發(fā),目前被 Microsoft,IBM,Intel,Novell ,Motorola 等很多國際大公司所使用。它以工程的方式分析軟件源代碼,通過圖形界面顯示各種符號、符號引用樹,類繼承視圖、函數(shù)調(diào)
16、用視圖等。它沒有供外部使用的 API 接口,不能有效集成到其它工作平臺。它不支持文檔生成,其函數(shù)調(diào)用視圖僅能展示調(diào)用關(guān)系圖,即僅僅是按字母順序羅列的被調(diào)用函數(shù)列表,而不能反映函數(shù)控制流程視圖。( 6)Source NavigatorSource Navigator 是遵守 GPL的 OpenSource 軟件,具有與 Source Insight 相似的功能,但是界面環(huán)境不如 Source Insight 友好。它的圖形用戶界面采用 Tcl/Tk (一種解釋語言)語言實現(xiàn),故分析大型軟浙江萬思計算機制造有限公司件系統(tǒng)時速度會慢于 Source Insight 。它能通過圖形用戶界面顯示各種符號
17、信息、 符號上下文信息、 符號引用樹, 類繼承圖、函數(shù)調(diào)用圖。它不支持文檔生成,其函數(shù)調(diào)用視圖僅能展示調(diào)用關(guān)系圖,即僅僅是按字母順序羅列的被調(diào)用函數(shù)列表,而不能反映函數(shù)控制流程視圖。另外,它不能分析并獲取局部符號信息,不便于上下文查看、不能查看定位同名符號。( 7)JBPASJBPAS是國內(nèi)青鳥 II 型系統(tǒng)的逆向工程組成部分。 它是由一個 C+分析器前端和一組分析工具集組成的軟件理解系統(tǒng)。它采用增量分析技術(shù)對程序源代碼進(jìn)行靜態(tài)分析,能抽取軟件系統(tǒng)中部件至今的交叉引用關(guān)系。它能生成 Rose 描述文檔,但是需要預(yù)裝 Rational Rose和 Microsoft 的 DAO工具集。 JBPA
18、S對源代碼的分析速度很慢(對大約 10 萬行源代碼的程序大約需要 6 小時),不適合軟件開發(fā)組織日常對軟件系統(tǒng)的開發(fā)、維護(hù)和理解分析。一般地,對程序分析與文檔生成類軟件的評價標(biāo)準(zhǔn)主要體現(xiàn)在:體系結(jié)構(gòu)文檔輸出、瀏覽定位、增量分析、錯誤語法分析、源文件目錄布局、調(diào)用視圖、數(shù)據(jù)結(jié)構(gòu)視圖、實體關(guān)系圖、合成抽象視圖、源代碼編輯,等方面。通過對一些典型軟件的分析,認(rèn)為這些軟件在體系結(jié)構(gòu)層次上的軟件理解與文檔描述方面的研究不足,特別是軟件文檔生成技術(shù)遠(yuǎn)未解決,至今,業(yè)界已開發(fā)出的軟件理解工具仍然沒有一種系統(tǒng)能較好滿足逆向工程中軟件理解的需要。2國內(nèi)外市場需求分析隨著計算機科學(xué)與技術(shù)的深入發(fā)展,軟件開發(fā)技術(shù)取
19、得了巨大的進(jìn)步。然而隨之而來的軟件危機給軟件開發(fā)提出了嚴(yán)峻的挑戰(zhàn)。軟件規(guī)模越來越大、軟件復(fù)雜度越來越高給軟件開發(fā)和維護(hù)帶來了巨大的壓力,其根本原因在于設(shè)計文檔的缺乏或設(shè)計文檔與軟件系統(tǒng)具體實現(xiàn)的不一致,造成了軟件開發(fā)組織對軟件系統(tǒng)的理解缺陷。浙江萬思計算機制造有限公司 軟件文檔生成技術(shù)遠(yuǎn)未解決至今,業(yè)界已有的軟件理解工具仍然沒有一種系統(tǒng)能較好滿足逆向工程中軟件理解的需要,技術(shù)發(fā)展空間廣闊,具有理論研究意義,也具有重要的實際應(yīng)用意義。 對國內(nèi)、國外軟件企業(yè)具有技術(shù)支撐作用據(jù)統(tǒng)計資料,軟件資源預(yù)算的 50%到 80%消耗于對現(xiàn)有系統(tǒng)的維護(hù),軟件維護(hù)者理解程序源碼的時間超過軟件生命期的 70%,而完
20、備、準(zhǔn)確的軟件文檔是進(jìn)行軟件維護(hù)的重要基礎(chǔ)。一些軟件企業(yè)普遍存在不同程度的軟件文檔不完備的問題,特別是在一些中小型軟件企業(yè)表現(xiàn)得比較突出。本項目的預(yù)期成果,對國內(nèi)、國外軟件企業(yè)具有技術(shù)支撐作用。 對推動我省基礎(chǔ)軟件的開發(fā)具有重要意義軟件產(chǎn)業(yè)作為浙江省經(jīng)濟發(fā)展的主導(dǎo)產(chǎn)業(yè)之一,需要在系統(tǒng)軟件、軟件開發(fā)工具領(lǐng)域有所作為。浙江省作為國內(nèi)的一個軟件產(chǎn)業(yè)大省,但軟件產(chǎn)品主要集中于嵌入式應(yīng)用軟件、金融證券、基金財務(wù)、醫(yī)療衛(wèi)生、印染服裝、稅務(wù)、工商、公安、賓館酒店、工業(yè)控制,而在最基礎(chǔ)、最核心的諸如操作系統(tǒng)、底層工具、系統(tǒng)工具等系統(tǒng)軟件產(chǎn)品方面則相當(dāng)薄弱,與發(fā)達(dá)國家有很大的差距,限制了我省軟件業(yè)的發(fā)展空間和利
21、潤空間。開發(fā)具有自主知識產(chǎn)權(quán)的系統(tǒng)工具、系統(tǒng)軟件是軟件業(yè)界必需攻堅的一個目標(biāo)。浙江省十一五規(guī)劃綱要提出 : 加強自主創(chuàng)新,提升產(chǎn)業(yè)國際競爭力 , 重點建設(shè)國家和省級軟件、信息、生物等高技術(shù)產(chǎn)業(yè)基地,這些目標(biāo)的實現(xiàn)都需要核心系統(tǒng)軟件的研究成果來支撐。3項目現(xiàn)有基礎(chǔ)及競爭力分析本項目的開發(fā)力量以本企業(yè)的高新技術(shù)研發(fā)中心的研發(fā)團隊為主要依托,充分發(fā)揮企業(yè)實際開發(fā)和市場運作經(jīng)驗,同時,又充分利用高校實驗室在研究上的技術(shù)積累、對領(lǐng)域前沿的把握和人才集中的浙江萬思計算機制造有限公司優(yōu)勢,形成優(yōu)勢互補的多方合作關(guān)系。項目組主要研究人員具有長期從事科研工作的經(jīng)歷,對本研究內(nèi)容作了長期的跟蹤與積累,研究成員中具
22、有專業(yè)從事編譯器設(shè)計的工作經(jīng)驗,對關(guān)鍵內(nèi)容已經(jīng)作了比較系統(tǒng)的研究,掌握研究工作所需的基本理論和技術(shù),具備正常開展項目研究的基礎(chǔ)和很強的競爭力。截止申報時間,本項目已經(jīng)投入了 72 人月的開發(fā)人力,大致完成了第一階段的 80%的工作(系統(tǒng)概要設(shè)計工作),目前正在努力深入完善中。本系統(tǒng)的競爭力主要體現(xiàn)在技術(shù)的先進(jìn)性和功能上切合市場需求,具體方面:(1)該項目在國內(nèi)尚屬于空白點,也是技術(shù)難點。在國內(nèi)技術(shù)具有開拓性意義。(2)本系統(tǒng)適合多語言理解的系統(tǒng)架構(gòu)設(shè)計。在本項目中,先以C/C+代碼為對象設(shè)計,但預(yù)留其他語言理解的規(guī)則空間設(shè)計系統(tǒng)架構(gòu),體現(xiàn)軟件的通用性。(3)比國際上的同類系統(tǒng)相比較,本系統(tǒng)特別
23、加強了對文檔生成/ 表達(dá)功能,適合國內(nèi)市場的需求。(4)市場需求較為迫切,需求面較為可觀,因此市場前景較好。三、項目概況1項目主要實施內(nèi)容本項目首先需要對軟件系統(tǒng)進(jìn)行低級的源代碼分析,提取系統(tǒng)部件之間的相互關(guān)聯(lián)信息,即對軟件系統(tǒng)進(jìn)行適當(dāng)粒度的分解;然后合成反映軟件系統(tǒng)體系結(jié)構(gòu)、設(shè)計模式的不同抽象層次視圖等,即對軟件系統(tǒng)進(jìn)行高層次的歸并,將軟件理解的信息用恰當(dāng)?shù)娜藱C界面或以文檔的方式進(jìn)行展示和輸出。浙江萬思計算機制造有限公司 軟件信息抽取正確獲取軟件信息是整個研究工作的重要基礎(chǔ)。將運用編譯理論與技術(shù)、智能信息處理技術(shù),研究軟件源信息規(guī)律,獲取軟件的符號信息、從屬關(guān)系信息、交叉引用信息、層次結(jié)構(gòu)信
24、息,以及信息依賴關(guān)系。 軟件信息組織與存儲在軟件分析過程中收集到大量符號信息、從屬關(guān)系信息、交叉引用信息、層次結(jié)構(gòu)信息,以及信息依賴關(guān)系等數(shù)據(jù)后,將進(jìn)行智能化的分類和管理研究,為軟件文檔生成和信息可視化的檢索、應(yīng)用、處理和更新提供快速的存取。 軟件信息合成軟件信息抽取可獲得粗糙的低級程序代碼級信息,如變量定義明、數(shù)據(jù)結(jié)構(gòu)定義、函數(shù)引用關(guān)系等,但這些信息不足以讓用戶宏觀掌控軟件系統(tǒng)的體系結(jié)構(gòu),為此需要對源代碼基別的低級信息進(jìn)行子系統(tǒng)合成,以逐步由小到大,由粗到精地合成更高層次的全局體系結(jié)構(gòu)視圖,展現(xiàn)全局的程序控制流程。而且,用戶在理解過程中還可以由大到小地對各個子系統(tǒng)進(jìn)行放大,詳細(xì)了解精確到函數(shù)
25、級別的代碼實現(xiàn)細(xì)節(jié)。/ 聲 軟件文檔的描述與生成研究軟件文檔的系統(tǒng)化、結(jié)構(gòu)化、圖形化的描述方法,設(shè)計系列化的描述方案,生成不同抽象層次的軟件文檔, 多視角展現(xiàn)分析結(jié)果。同時也需要研究本系統(tǒng)產(chǎn)生的文檔與其它逆向工程工具的互操作性。 軟件理解與文檔生成集成環(huán)境研究和構(gòu)建集信息分析,信息獲取,信息處理、信息利用、信息可視化和文檔生成為一體的集成分析環(huán)境。通過一體化的集成環(huán)境,提供統(tǒng)一的分析視圖,避免用戶在分析程序、修改代碼、產(chǎn)生文檔之間來回的切換,使用戶專注于軟件理解工作。浙江萬思計算機制造有限公司2項目主要技術(shù)指標(biāo)主要技術(shù)指標(biāo)體現(xiàn)在所實現(xiàn)的目標(biāo)上,具體反映在: 實現(xiàn)和正確提取軟件描述信息。 實現(xiàn)具
26、有增量分析及容錯機制的程序分析。 實現(xiàn)高層抽象視圖信息合成技術(shù)。 實現(xiàn)文檔布局和生成技術(shù)。 實現(xiàn)大規(guī)模圖形視圖快速生成和按需裁剪技術(shù)。3項目技術(shù)路線本項目借鑒和吸收一些商業(yè)軟件和開放源代碼的核心思想,采用C/C+為主的開發(fā)語言,采取模型的改進(jìn)和算法優(yōu)化等方法來開發(fā)此系統(tǒng)。在研究工作中強調(diào)標(biāo)準(zhǔn)化,通過實驗來驗證和推進(jìn)整個研究工作的進(jìn)行,并參考一些開放程序分析工具和開放集成開發(fā)環(huán)境作為當(dāng)前工作的基礎(chǔ)。針對各個子系統(tǒng)的具體技術(shù)路線描述如下:(1)軟件理解子系統(tǒng)軟件理解子系統(tǒng)是整個系統(tǒng)的核心,它抽取軟件系統(tǒng)而建立的信息庫是其它子系統(tǒng)工作的基礎(chǔ),為此本項目對它進(jìn)行了比較深入了前期研究。通過前期對很多開源
27、程序分析工具的調(diào)研,如SourceInsight、Source Navigator、Cscope、Cxref 、Global 、Ncc 等,并對之進(jìn)行了深入的評估與分析。本項目擬設(shè)計出如圖1 所示的軟件理解子系統(tǒng)基本組織框架。浙江萬思計算機制造有限公司SourceCodeFilesInfoProjectProjectEditorCarrierManagerDriverSymbolSymbolsBrowserSymbolParserTableSymbolAnalysisTableInfoManagerDatabaseUpdaterDatabaseConstructorSymbolInfoData
28、baseDatabaseRetriever圖 1 軟件理解子系統(tǒng)基本組織框架在圖 1 所示的框架中,有十個功能組件,其中 FileEditor ,ProjectManager,Symbol Browser , Info Carrier共同構(gòu)成界面顯示環(huán)境IDE。對各個部件簡要描述如下: Project Manager工程管理器,它用于管理對工程的所有操作。 File Editor文件編輯器,它用于對源文件進(jìn)行編輯。 Info Carrier信息傳遞器,它把用戶在Project Manager , File Editor中的操作信息傳遞給Driver ;待 Driver調(diào)用后續(xù)的工具鏈更新內(nèi)部符
29、號表后,它將根據(jù)用戶的操作情況來調(diào)用Symbol Browser 更新符號顯示。 Driver 驅(qū)動器,它用于驅(qū)動后續(xù)除 Symbol Browser 外的所有工具鏈。 Parser 分析器,它用于對源代碼進(jìn)行分析, 并輸出分析信息文件 Analysis Database Constructor 數(shù)據(jù)庫構(gòu)建器,它用于為分析工程創(chuàng)建符號信息數(shù)據(jù)庫。 Database Updater 數(shù)據(jù)庫更新器,它用于對數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行更新。 Database Retriever 數(shù)據(jù)庫檢索器,它用于檢索符號信息數(shù)據(jù)庫,并輸出格式化的符號信息。浙江萬思計算機制造有限公司 Symbol Table Manager
30、 符號表管理器,它用于把格式化的符號信息錄入內(nèi)部符號表。 Symbol Browser 符號瀏覽器,它用于讀取內(nèi)部符號表,并顯示符號。(2)文檔生成子系統(tǒng)文檔生成子系統(tǒng)的核心技術(shù)在于高層抽象層次信息的合成及文檔信息的合理布局。通過前期對很多開源文檔生成工具的調(diào)研,如Doxygen、Doc+、Javadoc、DocBook、ROBODoc等,本項目主要參考Rigi和 Doxygen作為研究工作的基礎(chǔ),因為Rigi 具有一定的高層信息合成機制,而Doxygen具有了一定文檔布局和生成功能。(3)信息瀏覽子系統(tǒng)信息瀏覽子系統(tǒng)的核心技術(shù)在于綜合高層抽象視圖快速生成與按需裁剪。很多開源的集成界面環(huán)境都可
31、以提供參考,如 DEV-C+、 eclips 、qmwedit、cEdit 等。盡管等相關(guān)文獻(xiàn)提供了一些大型圖形生成技術(shù)指引,但是設(shè)計具有按需裁剪功能的視圖生成算法則仍是努力解決得技術(shù)難點。根據(jù)上述分析,初步擬定的軟件理解系統(tǒng)總體規(guī)劃方案如圖2 所示。軟件系統(tǒng)源代碼程序理解系統(tǒng)程序理解子系統(tǒng)信息抽取部分詞法分析器語法分析器中間代碼生成器抽取信息信息瀏覽子系統(tǒng)基本信息瀏覽器- 全局變量- 數(shù)據(jù)結(jié)構(gòu)- 宏定義- 枚舉元素- 其它視圖信息瀏覽器- 體系結(jié)構(gòu)視圖- 函數(shù)控制流程視圖- 符號引用關(guān)系視圖- 符號被引用關(guān)系視圖- 其它浙江萬思計算機制造有限公司信息存取部分?jǐn)?shù)據(jù)庫數(shù)據(jù)庫構(gòu)建器更新器信息數(shù)據(jù)庫
32、文檔生成子系統(tǒng)信息合成部分文檔組織器圖形轉(zhuǎn)換器內(nèi)部文檔產(chǎn)生器中間格式文檔外部文檔產(chǎn)生器外部文檔圖 2 軟件理解系統(tǒng)總體規(guī)劃方案4項目創(chuàng)新點從 90 年代早期開始至今,基于程序理解的逆向工程技術(shù)得到了很大的發(fā)展,盡管研究工作不盡人意,但國內(nèi)外的學(xué)者們圍繞這個項目已經(jīng)產(chǎn)生出一些技術(shù)成果。為此,本項目的創(chuàng)新主要集中在引進(jìn)消化吸收再創(chuàng)新。其創(chuàng)新點有:(1)適合多語言理解的系統(tǒng)架構(gòu)設(shè)計。在本項目中,先以 C/C+代碼為理解對象實現(xiàn)設(shè)計。但通過適合多語言理解的系統(tǒng)架構(gòu)設(shè)計,浙江萬思計算機制造有限公司預(yù)留其他語言理解的規(guī)則空間,體現(xiàn)軟件的通用性。( 2)文檔生成功能。通過對國內(nèi)外研究現(xiàn)狀的分析可以看到,現(xiàn)有
33、的開源程序理解工具幾乎沒有文檔生成能力,而且沒有合成體系結(jié)構(gòu)視圖等關(guān)鍵功能。雖然存在一些文檔生成工具,如Javadoc,Doxygen,Doc+等,但是這些工具僅僅是根據(jù)軟件系統(tǒng)源代碼的注釋信息生成相應(yīng)文檔,而非分析軟件系統(tǒng)源代碼而生成文檔。( 3)軟件理解與文檔生成的集成。本系統(tǒng)將吸收某些開源工具的合理因素,增加信息合成、內(nèi)部文檔描述與可視化、外部文檔描述與生成等核心功能,建立一個集程序理解和文檔生成為一體的,以體系結(jié)構(gòu)為中心的程序理解系統(tǒng)。5項目完成后的主要技術(shù)成果提交 WSR軟件分析文檔自動生成系統(tǒng)開發(fā)報告。實現(xiàn)相關(guān)算法及軟件。將具有原創(chuàng)性的算法設(shè)計與成果整理后,完成相關(guān)軟件著作權(quán)登記和
34、軟件產(chǎn)品認(rèn)定。四、項目投資1、總投資及資金來源本項目計劃投資 300萬元,其中企業(yè)自籌 260萬元,省信息服務(wù)業(yè)專項資金資助 30萬元,地方政府配套資助 10萬元。2、資金主要用途資金主要用于搭建開發(fā)環(huán)境、購置開發(fā)用設(shè)備及開發(fā)工具、試驗外協(xié)費、人員經(jīng)費,開支項目組運行期間的日常費用、差旅費會務(wù)費資料費等等。浙江萬思計算機制造有限公司3 、申請專項資金使用明細(xì)表總投入:開發(fā)設(shè)備和開發(fā)工具購置費用80 萬項目期間的調(diào)研交流費 (差旅、會議、圖書資料等)20萬實驗原材料費用30萬試驗調(diào)試費用30萬實驗室日常運行開支等綜合費用40萬人員經(jīng)費 / 培訓(xùn)費等100 萬申請專項資金支持部分的明細(xì):開發(fā)設(shè)備和
35、開發(fā)工具購置費用20萬試驗調(diào)試20萬五、項目的風(fēng)險分析1、政策風(fēng)險本項目的研究符合國內(nèi)外的市場需求,所研究的內(nèi)容不構(gòu)成與相關(guān)政策的沖突,同時軟件產(chǎn)業(yè)是國家大力鼓勵發(fā)展產(chǎn)業(yè),產(chǎn)業(yè)發(fā)展前景良好。2技術(shù)風(fēng)險本項目的研究具有一定的挑戰(zhàn)性, 技術(shù)難度較大,從某種角度講,是一種技術(shù)風(fēng)險,但本項目組已經(jīng)對技術(shù)的可實現(xiàn)性做了充分的調(diào)研和預(yù)估,以下幾個方面保證了風(fēng)險的可防范:1 )本項目符合國內(nèi)外該領(lǐng)域的學(xué)術(shù)方向,立題正確;2 )本項目經(jīng)過 8 個月的項目前期調(diào)研和設(shè)計,已初步完成系統(tǒng)概要設(shè)計,證明了系統(tǒng)的技術(shù)可實現(xiàn)性。3 )項目組對項目的難度有充分的估計,思想上做了長期攻堅的準(zhǔn)備;方法上,采取分期進(jìn)行,科學(xué)分
36、解目標(biāo),用工程化的項目管理來規(guī)范整個研究工作;浙江萬思計算機制造有限公司4 )技術(shù)角度嚴(yán)格把關(guān),堅持先進(jìn)性與可行性并舉,同時,為了保證項目的正常進(jìn)行與按時完成任務(wù),建立嚴(yán)格的項目進(jìn)度管理制度。3人力風(fēng)險本項目集中了來自企業(yè)研發(fā)中心,和知名高校的專業(yè)研究開發(fā)人員,開發(fā)團隊的技術(shù)強、專業(yè)程度高,對本項目所涉及的技術(shù)已經(jīng)有一定的研究基礎(chǔ),因此,人力風(fēng)險較小。同時公司將重視項目開發(fā)期間人力資源的合理安排,優(yōu)勢兵力的協(xié)同合作,通過嚴(yán)格管理與科學(xué)的政策導(dǎo)向,給予研究人員良好的待遇,使研發(fā)人員心情愉快地投入研究工作。因此,本項目實施無人力風(fēng)險。4 . 資金風(fēng)險本項目的資金大部分來自企業(yè)自籌, 資金來源比較有
37、保證, 因此,資金風(fēng)險較小。5其他風(fēng)險本項目開發(fā)成功后,公司現(xiàn)有的銷售渠道能直接承擔(dān)新系統(tǒng)的推廣銷售,因此,產(chǎn)品市場化的風(fēng)險也是很小的。六、項目的組織實施1項目進(jìn)度安排本項目自 2006 年 1 月開始,至 2007 年 12 月為止,分四個階段進(jìn)行。第一階段( 2006.1-2006.10 )全面啟動,形成系統(tǒng)化的解決方案,完成系統(tǒng)概要設(shè)計。第二階段( 2006.11-2007.6 )分三個子系統(tǒng)完成詳細(xì)設(shè)計,包括: 軟件系統(tǒng)程序理解關(guān)鍵技術(shù)的研究與實現(xiàn)。 軟件文檔生成關(guān)鍵技術(shù)的研究與實現(xiàn)。 信息瀏覽子系統(tǒng)關(guān)鍵技術(shù)的研究與實現(xiàn)。浙江萬思計算機制造有限公司第三階段( 2007.7-2007.1
38、0 )代碼設(shè)計與系統(tǒng)集成。第四階段( 2007.11-2007.12 ) 研究資料整理、歸檔。 完成項目總結(jié)報告。 申請結(jié)題。在研究的各個階段,分別對一些原創(chuàng)性的研究成果整理后在專業(yè)期刊發(fā)表或申請專利,并按時向上級管理機構(gòu)匯報工作。2項目負(fù)責(zé)人及項目組人員情況本項目的主要成員來自本公司的研發(fā)中心,以及公司研發(fā)中心外聘的專家和教授,主要名單如下:姓名年齡職稱職務(wù)專業(yè)在本項目中分工來自單位趙毓芳36工程師 /計算機項目負(fù)責(zé)人浙江萬思計算公司總經(jīng)理軟件總協(xié)調(diào)機公司古輝50教授計算機總工浙江工業(yè)大學(xué)軟件陳剛36博士導(dǎo)師計算機應(yīng)用系統(tǒng)設(shè)計浙江大學(xué)丁維龍35博士計算機應(yīng)用程序理解子系統(tǒng)設(shè)計浙江工業(yè)大學(xué)陳琦30工程師計算機信息瀏覽子系統(tǒng)設(shè)計浙江萬思計算機公司侯向輝28工程師計算機文檔生成子系統(tǒng)設(shè)計浙江萬思計算機公司鄭曉鋒29工程師計算機系統(tǒng)測試浙江萬思計算機公司陽繼旭28工程師計算機程序設(shè)計浙江萬思計算機公司許曉波30工程師計算機程序設(shè)計浙江萬思計算機公司賴松鳳25碩士計算機程序設(shè)計浙江萬思計算機公司馬靈春2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年志愿者團隊管理實務(wù)培訓(xùn)
- 2026銀川市第七幼兒園編外聘用教師招聘6人備考題庫及答案詳解(新)
- 2026年農(nóng)業(yè)品牌故事講述方法課程
- 機器人小批量試產(chǎn)工藝手冊
- 2026甘肅定西臨洮縣文廟巷社區(qū)衛(wèi)生服務(wù)中心招聘衛(wèi)生專業(yè)技術(shù)人員5人備考題庫及答案詳解一套
- 2026年碳排放核算核查實務(wù)指南
- 隨班教師培訓(xùn)課件
- 職業(yè)共病管理的未來發(fā)展趨勢
- 職業(yè)共病管理中的急癥處理流程
- 黃岡2025年湖北黃岡市黃州區(qū)事業(yè)單位招聘三支一扶服務(wù)期滿人員12人筆試歷年參考題庫附帶答案詳解
- 物業(yè)項目綜合服務(wù)方案
- 2025-2026學(xué)年北京市西城區(qū)初二(上期)期末考試物理試卷(含答案)
- 公路工程施工安全技術(shù)與管理課件 第09講 起重吊裝
- 企業(yè)管理 華為會議接待全流程手冊SOP
- 供水企業(yè)制度流程規(guī)范
- 2026年城投公司筆試題目及答案
- 北京市東城區(qū)2025-2026學(xué)年高三上學(xué)期期末考試英語 有答案
- 框架柱混凝土澆筑施工方案(完整版)
- 河南省2025年普通高等學(xué)校對口招收中等職業(yè)學(xué)校畢業(yè)生考試語文試題 答案
- 預(yù)應(yīng)力管樁-試樁施工方案
- GB/T 3500-1998粉末冶金術(shù)語
評論
0/150
提交評論