聊著聊著,大家又談到了軟件開發的流程。
黃華山首先發表自己的看法。“軟件開發是一項係統工作,對開發流程有很多不同的認識,我看是不是能夠分為七個階段:
一是可研與計劃階段。主要確定軟件的開發目標和總的要求,進行可行性分析、投資——收益分析、製訂開發計劃,並完成應編製的文件。
二是需求分析和用戶辨識階段。對待開發的軟件進行市場需求和潛在用戶群體分析,並形成相應的分析報告。
三是框架設計和技術說明階段。主要是商討決定需要開發的軟件整個程序係統的基本處理流程、程序係統的組織結構、模塊劃分、功能分配、接口設計、運行設計、數據結構設計和出錯處理設計等,建立軟件總體結構和模塊間的關係,確定各模塊功能,定義各功能模塊的接口,設計全局數據庫和數據結構,並對一些特殊的實現手段或技術處理進行說明。
四是代碼編寫和模塊測試階段。編寫出各功能模塊的代碼和整個軟件係統的代碼,並對各功能模塊進行測試、修改、完善。
五是整體測試和修改完善階段。將完成代碼編寫的程序進行仿真測試、缺漏查找,並根據測試結果進行修改完善。
六是項目驗收和編寫用戶手冊階段。對完成測試並修改完善的軟件進行檢查、審查和評審,確定軟件是否達到軟件任務書的要求。同時組織編寫用戶手冊,向操作人員提供該軟件每一個運行的具體過程和有關知識,包括操作方法、問題處理等細節。
七是實際應用與售後維護階段。驗收通過的軟件可以向軟件交辦單位交付使用,並做好售後的用戶培訓、係統維護、版本升級等工作。”
“軟件開發有不同的類型,有針對某一職業、某一功能、某一機構的定向開發,有麵向行業、麵向社會、麵向市場的開發。雖然任何軟件開發的基本流程都是相同的,但不同類型的開發,其具體的操作流程也不完全相同。”賀俊明提出了自己的見解。
章岩笑著說:“我覺得從開發者的角度來說,軟件開發的流程,可以分為三個階段、八項工作、五大步驟。
三個階段是指計劃階段、開發階段、維護階段。
八項工作是問題定義、可行性研究、需求分析、總體設計、詳細設計、代碼編寫、測試修改、運行維護。
五大步驟是需求分析、方案設計、代碼實現、測試完善、發布維護。
它們之間彼此對應、互相滲透,構成了軟件開發的總體流程。
其實,對於麵向市場的開發,軟件的市場拓展、推廣營銷也應該屬於開發工作的範疇。”
黃華山、李慶豐、賀俊明都覺得有道理,分別點頭同意這個意見。
幾個人還談到了麵向對象編程存在的主要弊端,如繼承的香蕉猴子叢林問題、菱形繼承問題、脆弱的基類問題、層次結構問題,以及封裝的引用問題等等,探討了這些存在問題的解決辦法。
“任何一種編程語言都會有它的優缺點,人們很難創設出一種既簡單實用,又強大完美的編程語言。我們要做的,隻能是學好它,用好它,精心設計,揚長避短,解決問題。”眼看午飯時間就要到了,章岩最後總結道。
“是啊,人無完人,金無足金,編程語言也不例外。”黃華山感歎說。
吃過午飯,舍友們都迴宿舍午睡,章岩則迴到了大課室。
除了自己以外,這裏現在寂靜無人,在這裏修煉可以排除幹擾、心無旁騖。
當然,如果不是擔心有人幹擾,即使在吵雜的鬧市或噪聲的環境下,章岩也完全可以進行修煉。
雖然每天章岩都要修煉一定的時間,但最近比較少進行係統的重修,因此,章岩利用50分鍾左右的時間,分別把玄功和元功從頭開始重修了一遍。
緊接著章岩又繼續修煉傳送陣法。
章岩的小傳送陣法已經修煉至大成,隨著內功功力的提升,瞬移傳送的距離就會越來越遠,現在的瞬移距離已經可以達到300多米。
章岩對大傳送陣法也已基本掌握,隻是大傳送陣法需要布置入口陣法和出口陣法或者入、出口轉換陣法,需要在相距數公裏至數千公裏的不同地點進行,相對要複雜、繁瑣些。
大傳送陣法有單向大傳送陣法和雙向大傳送陣法兩種。
單向大傳送陣法,即在一個起始地點布置入口陣法,在終止地點布置出口陣法,啟動陣法後,就能將入口陣法內的人和物瞬間傳送至出口地點。
雙向大傳送陣法,就是在起始地點和終止地點均布置入、出口轉換陣法,隻要在任意一個地點中啟動陣法,就可以將在陣法內的人和物瞬間傳送到另一個地點。
上次在紫雲山,章岩就嚐試在紫雲門的後山上布置了一個入、出口轉換陣法,準備有空時在京華大學校園內找一個地點再布置一個入、出口轉換陣法,日後有需要時,就可以通過啟動陣法,在紫雲山和京華大學之間就可以實現瞬間穿梭往來。
章岩在紫雲山和京華大學之間布置大傳送陣法,就是為了防止紫雲門再出現類似孫寬平、龍錦翰為禍宗門的情況,或者萬一發生異域空間的人從空間之門進入紫雲山禍害人類的情況,自己能夠及時趕到紫雲門協助郭如劍和三位長老處理危機。
修煉完大傳送陣法後,陸續開始有同學來到大課室準備上課了。
章岩則離開大課室,來到自己宿舍樓附近的一片叢林中,在這裏布置另一個入、出口轉換陣法。
布置陣法,其實就是在特定區域內刻畫出所需要的陣紋。
大傳送陣法中,陣紋由傳送陣紋和方向陣紋組成。
不管是單向大傳送陣法還是雙向大傳送陣法,入口陣法和出口陣法的傳送陣紋必須完全相同。
而方向陣紋則有區別,在單向大傳送陣法中,入口陣法的方向陣紋稱為入口陣紋,出口陣法的陣紋稱為出口陣紋,兩者的紋路正好相反。在雙向大傳送陣法中,必須同時設置入口陣紋和出口陣紋。
花了兩個多小時,章岩終於完成了一個與紫雲山上的大傳送陣法完全相同的入、出口轉換陣法。
黃華山首先發表自己的看法。“軟件開發是一項係統工作,對開發流程有很多不同的認識,我看是不是能夠分為七個階段:
一是可研與計劃階段。主要確定軟件的開發目標和總的要求,進行可行性分析、投資——收益分析、製訂開發計劃,並完成應編製的文件。
二是需求分析和用戶辨識階段。對待開發的軟件進行市場需求和潛在用戶群體分析,並形成相應的分析報告。
三是框架設計和技術說明階段。主要是商討決定需要開發的軟件整個程序係統的基本處理流程、程序係統的組織結構、模塊劃分、功能分配、接口設計、運行設計、數據結構設計和出錯處理設計等,建立軟件總體結構和模塊間的關係,確定各模塊功能,定義各功能模塊的接口,設計全局數據庫和數據結構,並對一些特殊的實現手段或技術處理進行說明。
四是代碼編寫和模塊測試階段。編寫出各功能模塊的代碼和整個軟件係統的代碼,並對各功能模塊進行測試、修改、完善。
五是整體測試和修改完善階段。將完成代碼編寫的程序進行仿真測試、缺漏查找,並根據測試結果進行修改完善。
六是項目驗收和編寫用戶手冊階段。對完成測試並修改完善的軟件進行檢查、審查和評審,確定軟件是否達到軟件任務書的要求。同時組織編寫用戶手冊,向操作人員提供該軟件每一個運行的具體過程和有關知識,包括操作方法、問題處理等細節。
七是實際應用與售後維護階段。驗收通過的軟件可以向軟件交辦單位交付使用,並做好售後的用戶培訓、係統維護、版本升級等工作。”
“軟件開發有不同的類型,有針對某一職業、某一功能、某一機構的定向開發,有麵向行業、麵向社會、麵向市場的開發。雖然任何軟件開發的基本流程都是相同的,但不同類型的開發,其具體的操作流程也不完全相同。”賀俊明提出了自己的見解。
章岩笑著說:“我覺得從開發者的角度來說,軟件開發的流程,可以分為三個階段、八項工作、五大步驟。
三個階段是指計劃階段、開發階段、維護階段。
八項工作是問題定義、可行性研究、需求分析、總體設計、詳細設計、代碼編寫、測試修改、運行維護。
五大步驟是需求分析、方案設計、代碼實現、測試完善、發布維護。
它們之間彼此對應、互相滲透,構成了軟件開發的總體流程。
其實,對於麵向市場的開發,軟件的市場拓展、推廣營銷也應該屬於開發工作的範疇。”
黃華山、李慶豐、賀俊明都覺得有道理,分別點頭同意這個意見。
幾個人還談到了麵向對象編程存在的主要弊端,如繼承的香蕉猴子叢林問題、菱形繼承問題、脆弱的基類問題、層次結構問題,以及封裝的引用問題等等,探討了這些存在問題的解決辦法。
“任何一種編程語言都會有它的優缺點,人們很難創設出一種既簡單實用,又強大完美的編程語言。我們要做的,隻能是學好它,用好它,精心設計,揚長避短,解決問題。”眼看午飯時間就要到了,章岩最後總結道。
“是啊,人無完人,金無足金,編程語言也不例外。”黃華山感歎說。
吃過午飯,舍友們都迴宿舍午睡,章岩則迴到了大課室。
除了自己以外,這裏現在寂靜無人,在這裏修煉可以排除幹擾、心無旁騖。
當然,如果不是擔心有人幹擾,即使在吵雜的鬧市或噪聲的環境下,章岩也完全可以進行修煉。
雖然每天章岩都要修煉一定的時間,但最近比較少進行係統的重修,因此,章岩利用50分鍾左右的時間,分別把玄功和元功從頭開始重修了一遍。
緊接著章岩又繼續修煉傳送陣法。
章岩的小傳送陣法已經修煉至大成,隨著內功功力的提升,瞬移傳送的距離就會越來越遠,現在的瞬移距離已經可以達到300多米。
章岩對大傳送陣法也已基本掌握,隻是大傳送陣法需要布置入口陣法和出口陣法或者入、出口轉換陣法,需要在相距數公裏至數千公裏的不同地點進行,相對要複雜、繁瑣些。
大傳送陣法有單向大傳送陣法和雙向大傳送陣法兩種。
單向大傳送陣法,即在一個起始地點布置入口陣法,在終止地點布置出口陣法,啟動陣法後,就能將入口陣法內的人和物瞬間傳送至出口地點。
雙向大傳送陣法,就是在起始地點和終止地點均布置入、出口轉換陣法,隻要在任意一個地點中啟動陣法,就可以將在陣法內的人和物瞬間傳送到另一個地點。
上次在紫雲山,章岩就嚐試在紫雲門的後山上布置了一個入、出口轉換陣法,準備有空時在京華大學校園內找一個地點再布置一個入、出口轉換陣法,日後有需要時,就可以通過啟動陣法,在紫雲山和京華大學之間就可以實現瞬間穿梭往來。
章岩在紫雲山和京華大學之間布置大傳送陣法,就是為了防止紫雲門再出現類似孫寬平、龍錦翰為禍宗門的情況,或者萬一發生異域空間的人從空間之門進入紫雲山禍害人類的情況,自己能夠及時趕到紫雲門協助郭如劍和三位長老處理危機。
修煉完大傳送陣法後,陸續開始有同學來到大課室準備上課了。
章岩則離開大課室,來到自己宿舍樓附近的一片叢林中,在這裏布置另一個入、出口轉換陣法。
布置陣法,其實就是在特定區域內刻畫出所需要的陣紋。
大傳送陣法中,陣紋由傳送陣紋和方向陣紋組成。
不管是單向大傳送陣法還是雙向大傳送陣法,入口陣法和出口陣法的傳送陣紋必須完全相同。
而方向陣紋則有區別,在單向大傳送陣法中,入口陣法的方向陣紋稱為入口陣紋,出口陣法的陣紋稱為出口陣紋,兩者的紋路正好相反。在雙向大傳送陣法中,必須同時設置入口陣紋和出口陣紋。
花了兩個多小時,章岩終於完成了一個與紫雲山上的大傳送陣法完全相同的入、出口轉換陣法。