獲取用于軟件開發(fā)任務(wù)的上下文信息的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及軟件開發(fā)技術(shù),更具體地,涉及一種獲取用于軟件開發(fā)任務(wù)的上下文 (context)信息的方法及裝置。
【背景技術(shù)】
[0002] 眾所周知,軟件開發(fā)的生命周期可包括:需求分析、設(shè)計(jì)、編碼、測(cè)試、發(fā)布和維護(hù) 等階段。在需求分析階段,可獲取并確認(rèn)軟件開發(fā)任務(wù)的各項(xiàng)需求和功能。在設(shè)計(jì)階段,可 確定軟件開發(fā)任務(wù)的設(shè)計(jì)思路和技術(shù)要點(diǎn)。在編碼階段,將在設(shè)計(jì)階段的設(shè)計(jì)結(jié)果轉(zhuǎn)換成 計(jì)算機(jī)可運(yùn)行的程序代碼。在測(cè)試階段,對(duì)軟件進(jìn)行測(cè)試W發(fā)現(xiàn)問題并進(jìn)行糾正。因此,在 各個(gè)階段都會(huì)產(chǎn)生與軟件開發(fā)任務(wù)相關(guān)的上下文信息。
[0003] 此外,在整個(gè)軟件開發(fā)過程中,相關(guān)的軟件開發(fā)人員也會(huì)進(jìn)行各種討論。送樣的討 論也可W產(chǎn)生許多有用的與軟件開發(fā)任務(wù)相關(guān)的上下文信息。
[0004] 送些與軟件開發(fā)任務(wù)相關(guān)的信息可存在于用于軟件開發(fā)的多個(gè)工具中,作為上下 文信息。送些工具例如包括需求工具、設(shè)計(jì)工具、測(cè)試用例工具、任務(wù)跟蹤工具等。各個(gè)工 具可包括一個(gè)或多個(gè)工具組件。每個(gè)工具組件帶有關(guān)于某個(gè)軟件開發(fā)任務(wù)的特定上下文信 息。需求工具中的工具組件包含描述需求的上下文信息。設(shè)計(jì)工具中的工具組件包含描述 如何實(shí)現(xiàn)需求的設(shè)計(jì)的上下文信息。測(cè)試用例工具中的工具組件包含描述驗(yàn)證是否滿足需 求的用例的上下文信息。任務(wù)跟蹤工具中的工具組件包含由軟件開發(fā)人員的討論而產(chǎn)生的 上下文信息,可作為關(guān)于其它工具組件的評(píng)論。
[0005] 在軟件開發(fā)人員利用編碼工具編寫代碼時(shí),通常需要參考送些上下文信息,W輔 助編碼。在現(xiàn)有技術(shù)中,軟件開發(fā)人員在編寫代碼時(shí),去往每一個(gè)提供上下文信息的工具W 查找所需要的上下文信息,并使用送些上下文信息來輔助編寫代碼。然而,采用送種方法, 需要花費(fèi)較長(zhǎng)的時(shí)間來查找有用的上下文信息,導(dǎo)致程序開發(fā)的效率低。
[0006] 例如,軟件開發(fā)人員在編寫關(guān)于處理賬戶的程序代碼時(shí),通過查找每一個(gè)工具,從 需求工具中獲得需求"成為VIP賬戶的規(guī)則;余額〉=1,000, 000",并從任務(wù)跟蹤工具中獲 得評(píng)論"使用CommonService.checkBalanceQ獲得余額",然后將上述需求寫入程序代碼 中,并編寫"CommonService.checkBalance(account) >1000000"語句。
[0007] 此外,在工具組件之間可W建立連接,W反映工具組件之間的關(guān)系。工具組件可使 用開放的生命周期協(xié)作服務(wù)(OpenServiceforLifecycleColl油oration, 0化C)來連 接。送樣的連接可W是基于統(tǒng)一資源定位符扣化)的鏈接或其它專有鏈接。多個(gè)工具組件 通過彼此之間的鏈接可W創(chuàng)建用于軟件開發(fā)任務(wù)的上下文。
[0008]圖2示出了用于說明工具之間的鏈接的實(shí)例的示意圖。如圖2所示,每個(gè)工具組 件可W鏈接到一個(gè)或多個(gè)其它工具組件。W需求1組件為例,可W看出,在需求1組件與測(cè) 試用例1組件和設(shè)計(jì)1組件之間建立了鏈接。此外,在任務(wù)1組件與設(shè)計(jì)1組件、設(shè)計(jì)2組 件、測(cè)試用例1組件和測(cè)試用例2組件之間建立了鏈接。在任務(wù)跟蹤工具中,還包含對(duì)于任 務(wù)1組件的評(píng)論1和評(píng)論2。根據(jù)圖2,可W獲得用于創(chuàng)建任務(wù)1和任務(wù)2的上下文的工具 組件,如圖2中的實(shí)線框所示。
[0009] 送樣,軟件開發(fā)人員在需要查找上下文信息W輔助編碼時(shí),可W在不同的工具中 通過點(diǎn)擊工具組件之間的鏈接來遍歷整個(gè)上下文,并從工具組件中獲得有用的上下文信息 W在編碼工具中使用。雖然該方法能夠在一定程度上縮短查找上下文信息的時(shí)間,但仍然 需要去往對(duì)應(yīng)的工具組件W獲取上下文信息。
【發(fā)明內(nèi)容】
[0010] 本發(fā)明的實(shí)施例提供了一種獲取用于軟件開發(fā)任務(wù)的上下文信息的方法及裝置。
[0011] 根據(jù)本發(fā)明的一個(gè)實(shí)施例,提供了一種獲取用于軟件開發(fā)任務(wù)的上下文信息的方 法,其包括:響應(yīng)于指定任意一個(gè)與所述軟件開發(fā)任務(wù)相關(guān)的工具組件作為根組件,查找與 所述根組件之間具有至少一級(jí)鏈接的至少一個(gè)其它工具組件;從所述根組件和所述至少一 個(gè)其它工具組件中提取各自的上下文信息;W及基于所提取的上下文信息,生成上下文集 合。
[0012] 根據(jù)本發(fā)明的另一個(gè)實(shí)施例,提供了一種獲取用于軟件開發(fā)任務(wù)的上下文信息的 裝置,其包括:查找模塊,其被配置為響應(yīng)于指定任意一個(gè)與所述軟件開發(fā)任務(wù)相關(guān)的工 具組件作為根組件,查找與所述根組件之間具有至少一級(jí)鏈接的至少一個(gè)其它工具組件; 提取模塊,其被配置為從所述根組件和所述至少一個(gè)其它工具組件中提取各自的上下文信 息;W及生成模塊,其被配置為基于所提取的上下文信息,生成上下文集合。
[0013] 根據(jù)本發(fā)明的實(shí)施例的獲取用于軟件開發(fā)任務(wù)的上下文信息的方法和裝置能夠 預(yù)先聚集用于軟件開發(fā)任務(wù)的上下文信息W便軟件開發(fā)人員在編寫代碼時(shí)使用,而無需軟 件開發(fā)人員去往各個(gè)工具組件W獲得有用的上下文信息,從而提高了程序開發(fā)的效率。
【附圖說明】
[0014] 通過結(jié)合附圖對(duì)本公開示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開的上述W及其 它目的、特征和優(yōu)勢(shì)將變得更加明顯,其中,在本公開示例性實(shí)施方式中,相同的參考標(biāo)號(hào) 通常代表相同部件。
[0015] 圖1示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框 圖。
[0016] 圖2是用于說明工具組件之間的鏈接的實(shí)例的示意圖;
[0017] 圖3是根據(jù)本發(fā)明的一個(gè)實(shí)施例的獲取用于軟件開發(fā)任務(wù)的上下文信息的方法 的流程圖;
[0018] 圖4是根據(jù)本發(fā)明的另一個(gè)實(shí)施例的獲取用于軟件開發(fā)任務(wù)的上下文信息的方 法的流程圖;
[0019] 圖5是用于說明利用本發(fā)明的實(shí)施例的方法而在編碼時(shí)使用上下文信息的例子 的W意圖;
[0020] 圖6是應(yīng)用本發(fā)明的實(shí)施例的方法的集成開發(fā)環(huán)境(I峭的示意圖;
[0021] 圖7是根據(jù)本發(fā)明的一個(gè)實(shí)施例的獲取用于軟件開發(fā)任務(wù)的上下文信息的裝置 的示意性方框圖;
[0022] 圖8是根據(jù)本發(fā)明的另一個(gè)實(shí)施例的獲取用于軟件開發(fā)任務(wù)的上下文信息的裝 置的示意性方框圖。
【具體實(shí)施方式】
[0023] 下面將參照附圖更詳細(xì)地描述本公開的優(yōu)選實(shí)施方式。雖然附圖中顯示了本公開 的優(yōu)選實(shí)施方式,然而應(yīng)該理解,可WW各種形式實(shí)現(xiàn)本公開而不應(yīng)被送里闡述的實(shí)施方 式所限制。相反,提供送些實(shí)施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的 范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0024] 圖1示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)系統(tǒng)/服務(wù)器12的框 圖。圖1顯示的計(jì)算機(jī)系統(tǒng)/服務(wù)器12僅僅是一個(gè)示例,不應(yīng)對(duì)本發(fā)明實(shí)施例的功能和使 用范圍帶來任何限制。
[00巧]如圖1所示,計(jì)算機(jī)系統(tǒng)/服務(wù)器12W通用計(jì)算設(shè)備的形式表現(xiàn)。計(jì)算機(jī)系統(tǒng) /服務(wù)器12的組件可W包括但不限于;一個(gè)或者多個(gè)處理器或者處理單元16,系統(tǒng)存儲(chǔ)器 28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲(chǔ)器28和處理單元16)的總線18。
[0026] 總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲(chǔ)器總線或者存儲(chǔ)器控制器, 外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉 例來說,送些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC) 總線,增強(qiáng)型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(VESA)局域總線W及外圍組件互連(PCI)總線。
[0027] 計(jì)算機(jī)系統(tǒng)/服務(wù)器12典型地包括多種計(jì)算機(jī)系統(tǒng)可讀介質(zhì)。送些介質(zhì)可W是 任何能夠被計(jì)算機(jī)系統(tǒng)/服務(wù)器12訪問的可用介質(zhì),包括易失性和非易失性介質(zhì),可移動(dòng) 的和不可移動(dòng)的介質(zhì)。
[0028] 系統(tǒng)存儲(chǔ)器28可W包括易失性存儲(chǔ)器形式的計(jì)算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存 取存儲(chǔ)器(RAM) 30和/或高速緩存存儲(chǔ)器32。計(jì)算機(jī)系統(tǒng)/服務(wù)器12可W進(jìn)一步包括其 它可移動(dòng)/不可移動(dòng)的、易失性/非易失性計(jì)算機(jī)系統(tǒng)存儲(chǔ)介質(zhì)。僅作為舉例,存儲(chǔ)系統(tǒng)34 可W用于