|
Jean Bezivin, Nantes大學(xué)的名譽(yù)教授,在他最新的博客中,回憶了軟件工程過(guò)去四十年的歷史,因?yàn)樗嘈蓬嵏驳臅r(shí)刻即將到來(lái)。Jean認(rèn)為軟件工程已經(jīng)發(fā)生了三次巨變:
第一次巨變?cè)?968年10月的Garmisch NATO會(huì)議上已經(jīng)討論過(guò)了。復(fù)雜系統(tǒng)中所浮現(xiàn)出來(lái)的問(wèn)題迫使我們認(rèn)識(shí)到獨(dú)立程序員時(shí)代已經(jīng)結(jié)束了,將來(lái)的目標(biāo)是“超過(guò)3萬(wàn)個(gè)指令的大型系統(tǒng),由超過(guò)25個(gè)程序員在6個(gè)月(甚至更長(zhǎng))的時(shí)間內(nèi)完成,并且由多層組織架構(gòu)的人員來(lái)管理。
第二次巨變出現(xiàn)在80年代初期,編程范式從過(guò)程式編程到面向?qū)ο缶幊痰霓D(zhuǎn)變。
第三次巨變是由2000年11月召開(kāi)的OMG MDA創(chuàng)始會(huì)議所觸發(fā)的。
每次巨變都有相同的特征:當(dāng)我們使用熟悉的經(jīng)驗(yàn)和方法來(lái)處理行業(yè)里的問(wèn)題時(shí),已經(jīng)顯得力不從心了。比如說(shuō),當(dāng)面向過(guò)程的編程語(yǔ)言不能很好地描述現(xiàn)實(shí)世界的境況時(shí),面向?qū)ο蟮木幊陶Z(yǔ)言出現(xiàn)了,它能夠保證大型軟件系統(tǒng)的可重用性,并且可以確保軟件架構(gòu)的穩(wěn)定性。
現(xiàn)在,Jean Bezivin教授看到了一些可能重新定義軟件工程的因素逐漸浮出水面。比如說(shuō)“最終用戶(hù)也可以是程序員”、軟件工程任務(wù)的特化;大量的應(yīng)用程序能夠快速地?fù)屨际袌?chǎng),我們稱(chēng)之為應(yīng)用程序商店(比如說(shuō)Apple, google等)、技術(shù)解決方案層出不窮的多樣性、應(yīng)用程序能夠在適當(dāng)成本基礎(chǔ)上追求互操作性的需求、新的技術(shù)演進(jìn)(例如云計(jì)算)等。他認(rèn)為我們正在向一個(gè)新的世界邁進(jìn):
將來(lái)會(huì)有大量、飛速演變、相互影響的應(yīng)用程序。這些應(yīng)用往往是由不同的程序員使用不同的編程語(yǔ)言來(lái)完成的,并且他們往往不會(huì)使用傳統(tǒng)的軟件開(kāi)發(fā)周期。每一個(gè)應(yīng)用都會(huì)擁有特定的數(shù)據(jù)模型,狀態(tài)模型和事件模型。
為了預(yù)測(cè)這個(gè)革命性時(shí)刻的到來(lái),他給出了一個(gè)提示:
無(wú)論是實(shí)踐還是技術(shù)變革,變化的總是與語(yǔ)言相關(guān)的那些東西,因?yàn)檐浖こ痰膶?shí)踐與理論核心是語(yǔ)言工程。
最后,他指出了當(dāng)今編程語(yǔ)言未來(lái)可能的發(fā)展方向,以此作為總結(jié):
關(guān)鍵問(wèn)題在于專(zhuān)業(yè)人員與作為最終用戶(hù)的程序員之間的協(xié)作,但我們是否需要為最終用戶(hù)開(kāi)發(fā)出一套專(zhuān)用的軟件工程實(shí)踐?
文本形式的編程語(yǔ)言非常重要,但現(xiàn)在很多可視化的編程語(yǔ)言也漸漸出現(xiàn)了。這些語(yǔ)言提供了抽象語(yǔ)法,同時(shí)還帶有各種具體語(yǔ)法,這包括文本形式的,表格形式的和可視化形式的。此類(lèi)語(yǔ)言并非僅僅由語(yǔ)法來(lái)定義,還包括元模型(metamodel),模式(schema)和本體(ontologies)等等。
相對(duì)于發(fā)明新的編程語(yǔ)言來(lái)說(shuō),真正的難點(diǎn)在于如何在各種領(lǐng)域特定語(yǔ)言(DSLs)之間建立一種精確,可操作的語(yǔ)義關(guān)系,這構(gòu)成了21世紀(jì)全新軟件工程實(shí)踐的核心。總之,編程語(yǔ)言之間的互操作性將是相應(yīng)領(lǐng)域的重要組成部分。
軟件工程的變革是否已經(jīng)讓我們等待太久了?如果答案是Yes的話,那么它已經(jīng)開(kāi)始了嗎?5年后的軟件工程將會(huì)是什么樣的?讓我們拭目以待。
查看英文原文:Four Decades of Software Engineering, are Changes Coming?
it知識(shí)庫(kù):軟件工程的第四個(gè)十年,變革來(lái)臨了嗎?,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。