一種將軟件開發(fā)方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)軟件技術(shù)領(lǐng)域,特別涉及一種軟件開發(fā)方法及裝置。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)技術(shù)廣泛應(yīng)用到社會生活的各個領(lǐng)域,軟件開發(fā)需求持續(xù)攀升?,F(xiàn)有的軟件開發(fā)方式是根據(jù)用戶要求建造出軟件系統(tǒng)或系統(tǒng)中的軟件部分的過程,其包括需求分析、設(shè)計(jì)、實(shí)現(xiàn)和測試等環(huán)節(jié)?,F(xiàn)有的軟件開發(fā)方式效率較低。
【發(fā)明內(nèi)容】
[0003]有鑒于此,本發(fā)明提供一種軟件開發(fā)方法及裝置,以提高軟件開發(fā)的效率。
[0004]第一方面,本發(fā)明提供了一種軟件開發(fā)方法,包括:
[0005]根據(jù)軟件開發(fā)需求,獲取能夠滿足該需求的至少兩個系統(tǒng);
[0006]對獲取的所述至少兩個系統(tǒng)中的每一個系統(tǒng)分別進(jìn)行代碼結(jié)構(gòu)的分析;
[0007]根據(jù)每一個系統(tǒng)所對應(yīng)的分析結(jié)果,確定對所述至少兩個系統(tǒng)進(jìn)行整合的整合規(guī)則。
[0008]優(yōu)選地,所述對獲取的所述至少兩個系統(tǒng)中的每一個系統(tǒng)分別進(jìn)行代碼結(jié)構(gòu)的分析,包括:對所述至少兩個系統(tǒng)中的每一個當(dāng)前系統(tǒng),分別執(zhí)行如下操作:
[0009]讀取當(dāng)前系統(tǒng)的目錄結(jié)構(gòu);根據(jù)當(dāng)前系統(tǒng)的目錄結(jié)構(gòu),定位開始位置,并從所述開始位置處開始逐個調(diào)用當(dāng)前系統(tǒng)中各個源文件,并分析源文件之間的依賴關(guān)系和/或繼承關(guān)系;以及對每一個源文件中的源代碼進(jìn)行跟蹤,確定源文件中各個函數(shù)之間的調(diào)用關(guān)系及每個函數(shù)的實(shí)現(xiàn)功能。
[0010]優(yōu)選地,在所述確定對所述至少兩個系統(tǒng)進(jìn)行整合的整合規(guī)則之前,進(jìn)一步包括:
[0011]以圖形的形式分別展示每一個系統(tǒng)中源文件之間的依賴關(guān)系和/或繼承關(guān)系,以及源文件中函數(shù)之間的調(diào)用關(guān)系及每個函數(shù)的實(shí)現(xiàn)功能。
[0012]優(yōu)選地,
[0013]所述根據(jù)每一個系統(tǒng)所對應(yīng)的分析結(jié)果,確定對所述至少兩個系統(tǒng)進(jìn)行整合的整合規(guī)則,包括:根據(jù)圖形中展示的每一個系統(tǒng)中源文件之間的依賴關(guān)系和/或繼承關(guān)系,以及源文件中函數(shù)之間的調(diào)用關(guān)系及每個函數(shù)的實(shí)現(xiàn)功能,確定在將所述至少兩個系統(tǒng)進(jìn)行整合時的接口調(diào)用關(guān)系。
[0014]優(yōu)選地,在所述確定對所述至少兩個系統(tǒng)進(jìn)行整合規(guī)則之后,進(jìn)一步包括:
[0015]展示所述整合規(guī)則,并在接收到整合指令時,根據(jù)所述整合規(guī)則將所述至少兩個系統(tǒng)整合為一個系統(tǒng),以實(shí)現(xiàn)所述軟件開發(fā)需求。
[0016]第二方面,本發(fā)明提供了一種軟件開發(fā)裝置,包括:
[0017]獲取單元,用于根據(jù)軟件開發(fā)需求,獲取能夠滿足該需求的至少兩個系統(tǒng);
[0018]分析單元,用于對獲取的所述至少兩個系統(tǒng)中的每一個系統(tǒng)分別進(jìn)行代碼結(jié)構(gòu)的分析;
[0019]確定單元,用于根據(jù)每一個系統(tǒng)所對應(yīng)的分析結(jié)果,確定對所述至少兩個系統(tǒng)進(jìn)行整合的整合規(guī)則。
[0020]優(yōu)選地,所述獲取單元,具體用于對所述至少兩個系統(tǒng)中的每一個當(dāng)前系統(tǒng),分別執(zhí)行如下操作:讀取當(dāng)前系統(tǒng)的目錄結(jié)構(gòu);根據(jù)當(dāng)前系統(tǒng)的目錄結(jié)構(gòu),定位開始位置,并從所述開始位置處開始逐個調(diào)用當(dāng)前系統(tǒng)中各個源文件,并分析源文件之間的依賴關(guān)系和/或繼承關(guān)系;以及對每一個源文件中的源代碼進(jìn)行跟蹤,確定源文件中各個函數(shù)之間的調(diào)用關(guān)系及每個函數(shù)的實(shí)現(xiàn)功能。
[0021]優(yōu)選地,進(jìn)一步包括:
[0022]第一展示單元,用于以圖形的形式分別展示每一個系統(tǒng)中源文件之間的依賴關(guān)系和/或繼承關(guān)系,以及源文件中函數(shù)之間的調(diào)用關(guān)系及每個函數(shù)的實(shí)現(xiàn)功能。
[0023]優(yōu)選地,
[0024]所述確定單元,用于根據(jù)圖形中展示的每一個系統(tǒng)中源文件之間的依賴關(guān)系和/或繼承關(guān)系,以及源文件中函數(shù)之間的調(diào)用關(guān)系及每個函數(shù)的實(shí)現(xiàn)功能,確定在將所述至少兩個系統(tǒng)進(jìn)行整合時的接口調(diào)用關(guān)系。
[0025]優(yōu)選地,進(jìn)一步包括:
[0026]第二展示單元,用于展示所述整合規(guī)則,并在接收到整合指令時,根據(jù)所述整合規(guī)則將所述至少兩個系統(tǒng)整合為一個系統(tǒng),以實(shí)現(xiàn)所述軟件開發(fā)需求。
[0027]本發(fā)明實(shí)施例提供了一種軟件開發(fā)方法及裝置,通過獲取能夠滿足軟件開發(fā)需求的至少兩個系統(tǒng),以及對每一個系統(tǒng)分別進(jìn)行代碼結(jié)構(gòu)的分析,可以根據(jù)分析結(jié)果,確定出對該至少兩個系統(tǒng)進(jìn)行整合的整合規(guī)則,如此,便無需對軟件開發(fā)需求進(jìn)行重新開發(fā)設(shè)計(jì),只需對能夠滿足該軟件開發(fā)需求的多個系統(tǒng)進(jìn)行整合即可,從而省去了大量的軟件設(shè)計(jì)時間,提高了軟件開發(fā)的效率。
【附圖說明】
[0028]圖1是本發(fā)明實(shí)施例提供的方法流程圖;
[0029]圖2是本發(fā)明另一實(shí)施例提供的方法流程圖;
[0030]圖3是本發(fā)明實(shí)施例提供的系統(tǒng)文件分析方法流程圖;
[0031]圖4是本發(fā)明實(shí)施例提供的裝置所在設(shè)備的硬件架構(gòu)圖;
[0032]圖5是本發(fā)明實(shí)施例提供的裝置結(jié)構(gòu)示意圖;
[0033]圖6是本發(fā)明另一實(shí)施例提供的裝置結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0034]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0035]如圖1所示,本發(fā)明實(shí)施例提供了一種軟件開發(fā)方法,該方法可以包括以下步驟:
[0036]步驟101:根據(jù)軟件開發(fā)需求,獲取能夠滿足該需求的至少兩個系統(tǒng)。
[0037]步驟102:對獲取的所述至少兩個系統(tǒng)中的每一個系統(tǒng)分別進(jìn)行代碼結(jié)構(gòu)的分析。
[0038]步驟103:根據(jù)每一個系統(tǒng)所對應(yīng)的分析結(jié)果,確定對所述至少兩個系統(tǒng)進(jìn)行整合的整合規(guī)則。
[0039]本發(fā)明實(shí)施例提供的軟件開發(fā)方法,通過獲取能夠滿足軟件開發(fā)需求的至少兩個系統(tǒng),以及對每一個系統(tǒng)分別進(jìn)行代碼結(jié)構(gòu)的分析,可以根據(jù)分析結(jié)果,確定出對該至少兩個系統(tǒng)進(jìn)行整合的整合規(guī)則,如此,便無需對軟件開發(fā)需求進(jìn)行重新開發(fā)設(shè)計(jì),只需對能夠滿足該軟件開發(fā)需求的多個系統(tǒng)進(jìn)行整合即可,從而省去了大量的軟件設(shè)計(jì)時間,提高了軟件開發(fā)的效率。
[0040]在本發(fā)明一個優(yōu)選實(shí)施例中,為了能夠確定出最佳的整合規(guī)則,可以對每一個系統(tǒng)分析如下內(nèi)容:讀取當(dāng)前系統(tǒng)的目錄結(jié)構(gòu);根據(jù)當(dāng)前系統(tǒng)的目錄結(jié)構(gòu),定位開始位置,并從所述開始位置處開始逐個調(diào)用當(dāng)前系統(tǒng)中各個源文件,并分析源文件之間的依賴關(guān)系和/或繼承關(guān)系;以及對每一個源文件中的源代碼進(jìn)行跟蹤,確定源文件中各個函數(shù)之間的調(diào)用關(guān)系及每個函數(shù)的實(shí)現(xiàn)功能,從而可以根據(jù)分析結(jié)果,確定出最佳整合規(guī)則。
[0041]在本發(fā)明一個優(yōu)選實(shí)施例中,為了提高軟件開發(fā)的效率,可以將至少兩個系統(tǒng)之間進(jìn)行整合時,以接口調(diào)用的方式進(jìn)行整合,因此,該整合規(guī)則可以包括該至少兩個系統(tǒng)進(jìn)行整合時的接口調(diào)用關(guān)系。開發(fā)人員無需知道能夠?qū)崿F(xiàn)具體功能設(shè)計(jì)代碼,只需知道能夠?qū)崿F(xiàn)該具體功能的函數(shù)即可,通過將函數(shù)與接口相對應(yīng),直接調(diào)用該接口即可實(shí)現(xiàn)該具體功能,從而可以進(jìn)一步提高軟件開發(fā)的效率。由于已經(jīng)開發(fā)好的系統(tǒng)中所包含的設(shè)計(jì)代碼能夠準(zhǔn)確的實(shí)現(xiàn)其相應(yīng)功能,因此,直接調(diào)用接口的方式來實(shí)現(xiàn)軟件開發(fā),可以提高軟件開發(fā)的準(zhǔn)確率。
[0042]在本發(fā)明一個優(yōu)選實(shí)施例中,通過展示確定的整合規(guī)則可以為開發(fā)人員提供整合建議,而如何對該至少兩個系統(tǒng)進(jìn)行整合,由開發(fā)人員對其進(jìn)行確定,且開發(fā)人員