亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        軟件工程的哲學思考

        2015-04-29 00:00:00王中華汪文彬
        軟件工程 2015年1期

        摘 要:近年來,隨著社會經(jīng)濟的發(fā)展,人們對高素質(zhì)的軟件人才的需求越來越旺盛,軟件人才的培養(yǎng)變的尤為重要。同時,出現(xiàn)了許多先進的軟件人才培養(yǎng)模式和方法,有力地推動了軟件工程學科的發(fā)展。本文嘗試用哲學的觀點和原理來理解軟件工程中的基本技術和方法,通過對軟件工程中幾個重要知識點的哲學分析,使枯燥的軟件工程理論變得通俗易懂、深入淺出。提出了一種以哲學的觀點來理解軟件工程的新思想。

        關鍵詞:軟件工程;哲學;人才培養(yǎng)模式

        中圖分類號:TP311.52 文獻標識碼:A

        1 引言(Introduction)

        軟件工程,英文名Software Engineering,是一門研究用工程化方法構(gòu)建和維護有效的、實用的和高質(zhì)量的軟件的學科[1]。軟件產(chǎn)業(yè)的發(fā)展水平,決定了一個國家的信息產(chǎn)業(yè)發(fā)展水平及其在國際市場上的綜合競爭力。目前,我國軟件高級人才的短缺已經(jīng)成為制約我國軟件產(chǎn)業(yè)快速發(fā)展的一個瓶頸。在中國,國內(nèi)市場對軟件人才的需求每年高達80萬人,而高校計算機畢業(yè)生中的軟件工程人才還很缺乏,尤其是高素質(zhì)的軟件工程人才的極度短缺。盡快培養(yǎng)起適合信息產(chǎn)業(yè)所需要的高素質(zhì)軟件工程人才,已經(jīng)成為信息化工作中的重中之重。

        哲學,社會意識形態(tài)之一,是關于世界觀的學說[2]。是理論化、系統(tǒng)化的世界觀,是自然知識、社會知識、思維知識的概括和總結(jié),是世界觀和方法論的統(tǒng)一。是社會意識的具體存在和表現(xiàn)形式,是以追求世界的本源、本質(zhì)、共性或絕對、終極的形而上者為形式,以確立哲學世界觀和方法論為內(nèi)容的社會科學。愛因斯坦這樣談論哲學:如果把哲學理解為在最普遍和最廣泛的形式中對知識的追求,那么,哲學顯然就可以被認為是全部科學之母。馬克思也說過:真正的哲學是時代精神的精華。

        馬克思主義哲學與具體科學是一般與個別的關系,二者之間存在著既相互區(qū)別又相互聯(lián)系的辯證統(tǒng)一關系。它們之間的區(qū)別表現(xiàn)在:具體科學以世界某一特殊領域的具體規(guī)律為自己的研究對象,因而其理論具有個別性和特殊性;馬克思主義哲學以包括自然、社會和人類思維在內(nèi)的整個世界的最一般規(guī)律作為自己的研究對象,因而其理論具有一般性和普遍性。它們之間的聯(lián)系表現(xiàn)在:一方面,馬克思主義哲學以具體科學為基礎,沒有具體科學的發(fā)展,馬克思主義哲學既不可能產(chǎn)生,也不可能發(fā)展;另一方面,具體科學以馬克思主義哲學為指導,馬克思主義哲學為具體科學的研究提供正確的世界觀和方法論。

        2 分層DFD體現(xiàn)了抽象和分解的關系(Hierarchical

        DFD embodies the relation between abstraction

        and decomposition)

        抽象和分解是兩種相互區(qū)別又相互聯(lián)系的思維方式。所謂分解,就是面向高層對其按某種方式從思維、邏輯或功能上進行分解,使其一分為幾個相對獨立的模塊。所謂抽象,是面向底層,隱藏低層的各種差異和復雜實現(xiàn),向高層提供一個統(tǒng)一的平臺或接口。在生活中,這種分解與抽象的概念也革新了我們的思維習慣。面對一個問題,我們現(xiàn)在的習慣是,把它化成一個個小的整體,再分而治之,再歸納總結(jié),找出其中的共性?;蛘呦葟囊粋€基本內(nèi)核做起,再層層抽象擴展,最終達到自己的目標。

        抽象是指忽略一個問題中與當前目標無關的那些方面,以便更充分地關注與當前目標有關的方面。在求解一個復雜問題時,可以有許多抽象級別。例如,欲用計算機解決一個復雜的應用問題,開發(fā)人員首先將該應用問題抽象成一個計算機軟件系統(tǒng)。在這個抽象層次上,可以忽略應用問題內(nèi)部的復雜性,只關注整個軟件系統(tǒng)與外界的聯(lián)系,即軟件系統(tǒng)的輸入和輸出。然后,將這個大而復雜的問題分解成若干個較小的問題(如子系統(tǒng)或功能),每個較小的問題又可分解成若干個更小的問題(如功能或子系統(tǒng))。如此自頂向下一層一層地分解下去,直到每個最底層的問題都足夠簡單為止。這樣,一個復雜的問題也就迎刃而解了。自頂向下逐層分解充分體現(xiàn)了分解和抽象的原則。隨著分解層數(shù)的增加,抽象級別也越來越低,即越接近問題的解。自頂向下的過程是分解的過程,自底向上的過程是抽象的過程。

        功能建模的思想就是用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關系,自頂向下逐層分解,直到找到滿足功能要求的所有可實現(xiàn)的軟件為止[3]。功能模型用數(shù)據(jù)流圖來描述。對于稍微復雜一些的實際問題,在數(shù)據(jù)流圖上常常出現(xiàn)十幾個甚至幾十個加工,這樣的數(shù)據(jù)流圖看起來不直觀,不易理解,分層的數(shù)據(jù)流圖能很好地解決這一問題。按照系統(tǒng)的層次結(jié)構(gòu)進行逐步分解,并以分層的數(shù)據(jù)流圖反映這種結(jié)構(gòu)關系,能清楚地表達和容易理解整個系統(tǒng)。圖1為數(shù)據(jù)流圖的分層示意圖。對頂層數(shù)據(jù)流圖中所表示的系統(tǒng)進行功能分解得到一層數(shù)據(jù)流圖,對一層數(shù)據(jù)流圖中的功能進一步分解得到二層數(shù)據(jù)流圖,以此類推。

        3 分級表示的CMMI與量變質(zhì)變規(guī)律(The

        hierarchical representation of CMMI and the

        quantitative and qualitative rhythms)

        世界上任何事物都是質(zhì)與量的矛盾統(tǒng)一體,而一切事物又總是處于不斷的運動、變化和發(fā)展的狀態(tài)中。因此,事物的發(fā)展、變化必然呈現(xiàn)出量變和質(zhì)變兩種狀態(tài)[4]。量變轉(zhuǎn)化為質(zhì)變,質(zhì)變又引起新的量變,如此循環(huán)往復以至無窮,把事物推向前進,這就是事物發(fā)展的一般過程。

        所謂量變就是事物量的規(guī)定性的變化。包括事物在數(shù)量上的增減以及各個組成成分在空間排列次序上的變化、程度的加強或削弱、結(jié)構(gòu)的復雜或簡單、個別屬性的變化等等。凡是沒有引起事物根本性質(zhì)改變的一切變化都是量變。量變和質(zhì)變是對立的范疇,量變就是非質(zhì)變。所謂質(zhì)變就是事物質(zhì)的規(guī)定性的變化,是事物根本性質(zhì)的變化,是漸進過程的中斷,是由一種質(zhì)態(tài)向另一種質(zhì)態(tài)的轉(zhuǎn)化。

        量變和質(zhì)變的辯證關系:①任何事物的變化總是在一定質(zhì)的基礎上先從量變開始的。②量變積累到一定程度必然引起質(zhì)變。量變是質(zhì)變的必要準備,質(zhì)變是量變的必然結(jié)果。③質(zhì)變又會引起新的量變。一方面,質(zhì)變體現(xiàn)著量變的結(jié)果;另一方面,質(zhì)變又為新的量變開辟道路。④量變可以轉(zhuǎn)化為質(zhì)變,質(zhì)變又可以轉(zhuǎn)化為量變。如此循環(huán)往復,以至無窮,體現(xiàn)著事物的永恒的變化和發(fā)展。

        分級表示的成熟度等級(Maturity Level,ML)給出了軟件組織按規(guī)定的過程改進如何從成熟度低的等級逐步向更高的等級發(fā)展[5],共有五個組織成熟度等級,這些等級如圖2所示。五個等級均規(guī)定了所包含的過程域(Process Area,PA)。

        分級表示為實施過程改進的組織規(guī)定了既定的軟件能力成熟度提升的路徑,即從初始級開始逐級提升。而每個等級均規(guī)定了相關的一組過程域,如圖3所示。圖中除第一級以外,每個等級上給出了每一組過程域名稱的英文字縮寫。

        軟件組織按CMMI分級表示規(guī)定的成熟度等級,逐級攀登就能從低級到高級一步步地成熟起來。每一個等級都要經(jīng)歷量變到質(zhì)變的過程,每個等級包含多個過程域,每完成一個過程域都是量變的積累,完成一個等級的所有過程域就達到了質(zhì)變的臨界點。軟件組織的軟件開發(fā)能力就躍升了一個級別,又在一個新的高度開始了量變的積累。

        事物的發(fā)展是從低級到高級、簡單到復雜的新陳代謝的過程;是由低層次的平衡逐步上升為高層次的平衡的過程。事物的運動平衡有低層次的平衡和高層次的平衡之分,實現(xiàn)由低層次的平衡組合向高層次的平衡組合轉(zhuǎn)化過程就是事物的發(fā)展過程。在這個轉(zhuǎn)化過程中,事物先由低層次的平衡→不平衡(某一方面進步了、或某一部分突破了)→高一層次的平衡(其余方面的遞進的相互跟上)→再到不平衡→……更高層次的平衡。

        4 黑盒測試中的因果圖方法與原因和結(jié)果的辯證

        關系(Causality diagram in black box testing and

        the dialectical relationship between the cause and

        the effect)

        原因和結(jié)果是揭示事物的前后相繼、彼此制約的關系范疇??陀^世界到處都存在著引起與被引起的普遍關系,唯物辯證法把這種引起與被引起的關系,稱為因果關系或因果聯(lián)系。其中,引起某一種現(xiàn)象的現(xiàn)象叫做原因,而被某種現(xiàn)象所引起的現(xiàn)象叫做結(jié)果。

        原因和結(jié)果之間的關系是既對立又統(tǒng)一的關系[6]。首先,原因和結(jié)果是對立的。在具體的因果聯(lián)系中,原因就是原因,結(jié)果就是結(jié)果,二者不能混淆和顛倒。這是原因和結(jié)果區(qū)別的確定性。其次,原因和結(jié)果又是統(tǒng)一的,表現(xiàn)在:第一,原因和結(jié)果是相互依存的。第二,原因和結(jié)果在一定條件下相互轉(zhuǎn)化。第三,原因和結(jié)果是相互作用的。

        任何事物都處于因果聯(lián)系之中,原因和結(jié)果既嚴格區(qū)別,又密切聯(lián)系;因果聯(lián)系具有普遍性、客觀性。這就要求我們在認識事物時,既要看到它的產(chǎn)生是有客觀原因的,又要看到它還會引起一定的結(jié)果。承認因果聯(lián)系的普遍性和客觀性,是人們正確認識事物,進行科學研究的前提;正確把握事物的因果聯(lián)系,才能提高人們實踐活動的自覺性和預見性。只有找出某一事物或現(xiàn)象產(chǎn)生的原因,才能認識其本質(zhì)和規(guī)律,提出解決問題的有效方法。

        因果圖方法是一種幫助人們系統(tǒng)地選擇一組高效測試用例的方法,它既考慮了輸入條件的組合關系,又考慮了輸出條件對輸入條件的依賴關系,即因果關系,其測試用例發(fā)現(xiàn)錯誤的效率比較高[7]。

        用因果圖設計測試用例的步驟:

        (1)分割功能說明書。

        將輸入條件分成若干組,然后分別對每個組使用因果圖,這樣可減少輸入條件組合的數(shù)目。

        (2)識別“原因”和“結(jié)果”,并加以編號。

        “原因”是指輸入條件或輸入條件的等價類;“結(jié)果”是指輸出條件或系統(tǒng)變換。每個原因和結(jié)果都對應于因果圖中的一個結(jié)點,當原因或結(jié)果成立(或出現(xiàn))時,相應的結(jié)點的值為1,否則為0。

        (3)根據(jù)功能說明中規(guī)定的原因與結(jié)果之間的關系畫出因果圖。

        圖中左邊的結(jié)點表示原因,右邊的結(jié)點表示結(jié)果。畫因果圖時原因在左,結(jié)果在右,由上向下排列,并根據(jù)功能說明中規(guī)定的原因和結(jié)果之間的關系,用上述符號連接起來。必要時還可以引入一些中間結(jié)點。

        (4)根據(jù)功能說明在因果圖中加上約束條件。

        由于原因②與③,④與⑤不能同時發(fā)生,分別加上約束條件E。

        (5)根據(jù)因果圖畫出判定表。

        列出滿足約束條件的所有原因組合,寫出每種原因組合下的結(jié)果(如有的話)。

        (6)為判定表的每一列設計一個測試用例。

        圖4為飲料自動售貨機因果圖,表1為節(jié)點含義,表2:由因果圖畫出的判定表。圖中陰影部分表示不可能出現(xiàn)的原因條件組合,此外當原因②、③、④、⑤均為0時,表示既沒有投硬幣也沒有押按鈕,此時表示售貨機處于無人使用狀態(tài),因此也不必為它們設計測試用例。

        5 項目管理的本質(zhì)與聯(lián)系的普遍性原理(The

        essence of project management and the general

        principle of contact)

        所謂聯(lián)系,就是事物之間以及事物內(nèi)部諸要素之間的相互影響、相互制約和相互作用。聯(lián)系是普遍的。世界上一切事物都與周圍其他事物有著這樣或那樣的聯(lián)系[8]。世界是一個普遍聯(lián)系的有機整體,是一幅由種種聯(lián)系交織起來的豐富多彩的畫面,其中沒有一個事物是孤立存在的。聯(lián)系的普遍性原理要求我們要用聯(lián)系的觀點看問題,既要看到事物之間的聯(lián)系,又要看到事物內(nèi)部諸要素之間的聯(lián)系。

        項目管理的目標,就是以最小的代價(成本和資源)最大限度地滿足軟件用戶或客戶的需求和期望,也就是協(xié)調(diào)好質(zhì)量、任務、成本和進度等要素相互之間的沖突,獲取平衡。概況地說,項目管理的本質(zhì),就是在保證質(zhì)量的前提下,尋求任務、時間和成本三者之間的最佳平衡[9],如圖5所示。

        項目三要素:任務、時間和成本之間是相互影響、相互制約和相互作用的關系。在一個項目中,一般說任務、時間和成本中的某項是確定的,其他兩項是可變的。這樣,我們就可控制不變項,對可變項采取措施,保證項目達到預期效果。例如,產(chǎn)品質(zhì)量是不變的,要有足夠的時間和成本投入去保證產(chǎn)品的質(zhì)量。但同時市場決定產(chǎn)品,時間受到嚴格限制,這時,如果要保證產(chǎn)品的功能得到完整的實現(xiàn),就必須有足夠的成本投入(人力資源、硬件資源等)。如果成本也受到限制,就不得不減少功能,實現(xiàn)產(chǎn)品的主要功能。

        6 結(jié)論(Conclusion)

        軟件工程知識中蘊涵了豐富的哲學思想,讓學生掌握這些哲學思想,對學生深刻理解并靈活運用軟件工程知識,激發(fā)學生的想象力和創(chuàng)造力,意義重大[10]。本文采擷了軟件工程理論中一些簡單的現(xiàn)象進行哲學分析,旨在幫助大家進一步理解軟件工程理論的思想精髓。其實軟件工程中許多現(xiàn)象都和哲學思想相關,如:軟件設計方法的改變中體現(xiàn)了唯物辯證法中發(fā)展的觀點。大型軟件開發(fā)過程中資金、開發(fā)時間、開發(fā)人員之間的辯證聯(lián)系。需求設計和具體編碼是原因和結(jié)果的辯證關系。軟件維護過程中體現(xiàn)矛盾的斗爭性。軟件功能和底層代碼之間是現(xiàn)象和本質(zhì)的關系等等。這些都將是下一步研究的重點目標。從哲學的角度講,人們更希望用軟件工程理論來改造世界而不僅僅是認識世界。

        參考文獻(References)

        [1] 齊治昌,譚慶平,寧洪.軟件工程[M].北京:高等教育出版社,

        2004.

        [2] 陳先達,楊耕.馬克思主義哲學原理[M].北京:中國人民大學出

        版社,2010.

        [3] 毋國慶.軟件需求工程[M].北京:機械工業(yè)出版社,2008.

        [4] 郭貴春.自然辯證法概論[M].北京:高等教育出版社,2013.

        [5] 張海藩.軟件工程[M].北京:清華大學出版社,2010.

        [6] 王三可.馬克思主義哲學教程[M].西安:陜西人民出版社,2013.

        [7] 錢樂秋,趙文耘,牛軍鈺.軟件工程[M].北京:清華大學出版社,

        2007.

        [8] 喬斯坦·賈德.蘇菲的世界[M].北京:作家出版社,2007.

        [9] 肖來元.軟件項目管理與案例分析[M].北京:清華大學出版社,

        2012.

        [10] 高禹,馮相忠.軟件工程中的哲學思想[J].高等理科教育,2008

        (4):17-20.

        作者簡介:

        王中華(1976-),男,碩士,講師.研究領域:Petri網(wǎng)理論及

        應用,軟件工程.

        汪文彬(1969-),男,碩士,副教授.研究領域:算法分析.

        日韩av中文字幕亚洲天| 亚洲国产高清在线一区二区三区| 国产欧美精品一区二区三区–老狼| 国产一区二区三区视频大全| 激情久久黄色免费网站| 人妻中文字幕无码系列| 婷婷四房播播| 国产亚洲青春草在线视频| 高清日韩av在线免费观看| 亚洲欧美精品suv| 亚洲免费视频播放| 亚洲在线视频一区二区| 亚洲av不卡免费在线| 国产绳艺sm调教室论坛| 久久无码一一区| 少妇呻吟一区二区三区| 99国产精品99久久久久久| 亚洲av无码第一区二区三区 | 日韩国产自拍视频在线观看| 五月天激情电影| 无码少妇一区二区三区芒果| 久久久久久久久高潮无码 | 久久久久99人妻一区二区三区| 国产伦精品一区二区三区免费| 亚洲国产精品久久久性色av| 国产精品髙潮呻吟久久av| 大ji巴好深好爽又大又粗视频| 波多野结衣免费一区视频| 亚洲国产一区久久yourpan| 中文字幕在线看精品乱码| 亚洲欧美一区二区三区在线| 免费无码中文字幕A级毛片| 91精品福利一区二区三区| 精品人妻av区乱码| japanesehd中国产在线看| 中文字幕国内一区二区| 中文字幕久久波多野结衣av不卡| 亚洲18色成人网站www| 四虎国产精品成人影院| 黄片视频大全在线免费播放| 天码人妻一区二区三区|