內容:
- 簡單法則(減法設計)
- 減法設計是戰略,造形是會贏的戰術
- EIT軟體造形是什麼?
- EIT造形的用途
- EIT造形的特性
- EIT造形的內部元素
- 結語
軟體設計的複雜和未來的多變都是本質性的、是不可以刪除的(因為刪除了就不再是一個完整的、有生命的系統了)。本文所介紹的減法設計和簡單造形並不是用來刪除複雜(多變),而是用來容納複雜,讓使用者都掌握主動力量,從簡單中即能享用軟體系統的複雜功能和服務。所謂多變,就是易經的“易”;而”容”納複雜多變,就是”容易”。只要善用減法設計策略和EIT造形戰術,就能讓一切都很容易了。由於科技只會繼續變複雜,採取簡法設計策略是搭配簡單造形的有效戰術,是很經濟效益的。
一、簡單法則(減法設計)
沒有簡單,我們就無法理解複雜;欲面對複雜,只能簡單。
大畫家畢加索曾說過,繪畫藝術是減法的過程(process of elimination),畫出的作品具有<簡單性>。美國麻省理工大學的工業設計教授John Maeda也說道:
“減法設計可以是一種富有創意的方式,來看待由設計所推動的世界。簡單可以滿足人們心靈中想解決謎團、追尋正確完形的自然渴望。”
例如,智慧城市等的設計是複雜的,在垂直面向,切分為上層、中層和實踐層;在水平面向,切分為不同的業務區塊(Business Area);然後分而治之。這些都是減法設計思維的表現。幅員愈廣大的國家,整體設計規模就愈大(例如資料量,網路頻寬等),其智慧城市的”中層架構的減法設計”(簡稱中層設計)就愈重要。其如同樹木一般,長得愈高大的樹,其中層的樹榦部分就必須簡單而強壯。
二、減法設計是戰略,造形是會贏的戰術
基於減法設計策(戰)略,當你無法刪除身外物(如軟體或太陽星系)的複雜關係時;不須要難過,因為它能簡化你腦海裡的想象,提升你內心面對複雜事物的能力。造形(Form)則是藝術家、設計師的減法設計呈現,它具有簡單特質,提升了人們理解和掌握外界複雜多變的能力。
茲回憶,於十七世紀中,牛頓提出了簡單公式(即造形):F=ma;讓人們能輕易理解物體運動的複雜<關係>。再如,於二十世紀初,愛因斯坦發表了簡單公式:E=MC平方;讓人們能理解複雜的品質、能量與光速之間的複雜關係。同樣地, 著名的資訊化軟體專家Fred Brooks(“人月神話”一書作者)在40年前就說道:
”軟體的複雜性是本質性的,並非表像而已。”
(The complexity of software is an essential property, not an accidental one.)
於是,高煥堂老師提出簡單的EIT軟體造形;讓人們能理解智慧城市幕後資訊化軟體體系裡的複雜關係。有了中層設計造形的<簡單性>,人們就很容易理解智慧城市的中層架構(如同樹榦結構)的一致性,如何有效支撐上層設計裡的繁雜業務功能(如同樹葉)了;又能體現、落實於底層快速演化的資訊化(IT)新技術上。
三、EIT軟體造形是什麼?
EIT是一種基本的結構(Structure),一種概念(Concept);我們稱它為”EIT造形(Form)”。
同樣地,圓形、橢圓等是基本的幾何結構,都是概念;稱為阿基米得幾何造形。
圖-1 EIT造形
圖-2 幾何造形
同樣地,原子(Atom)是基本的物質結構,也是概念;是物理學的基本造形。
同樣地,唐詩的七言絕句是基本的文章結構,也是概念;是詩詞的基本造形。
圖-3 原子造形
圖-4 唐詩造形
同樣地,集裝箱(Container)是物流航運的貨物結構,也是概念;是物流的基本造形。
圖-5 集裝箱造形
同樣地,軟體的類別(Class)是基本的軟體結構,也是概念;是軟體的基本造形。
同樣地,楓葉、櫻花都是一種基本結構,也是概念;是賞楓葉、賞花者心中的基本造形。
圖-6 軟體類別造形
圖-7 楓葉造形
四、EIT造形的用途
未來的變化和複雜性是本質性(Essential)的,人們無法刪除它。於是想辦法提升人們管理複雜的能力。
著名軟體專家Fred Brooks(“人月神話”一書作者)在40年前就說道:”軟體的複雜性是本質性的,並非表象而已。”(The complexity of software is an essential property, not an accidental one.)
於是,也必須想辦法提升人們面對軟體複雜性的能力。
試想,當你去觀察太陽星系時,如果你腦海裡沒有阿基米得(Archimedes)幾何學的”橢圓”概念或造形,你會覺得各星體啟動並執行軌跡非常複雜。這個複雜性是本質的,無法刪除,怎麼辦呢?
等到你學了幾何,腦海裡有了”橢圓”概念或造形之後,再去看太陽系,你會發現只不過是9個橢圓形軌道而已,非常簡單。
此時,你並沒有去刪除你身外星球的複雜關係;但卻簡化了腦海裡的想象,提升你內心面對複雜事物的能力。
同樣地, 當你去觀察Android的多層架構體系時,如果你腦海裡沒有”EIT概念或造形”,你會覺得Android平台軟體非常複雜。這個複雜性是本質的,無法刪除,怎麼辦呢?
等到你學了EIT造形、腦海裡有了EIT概念之後,再去看Android平台軟體,你會發現只不過是一堆EIT造形的有機(Organic)組合而已,非常簡單。例如,在 <HTML5+Android平台>的架構裡,就是兩層EIT造形的簡單組合而已,如所示:
圖-8 複雜外貌來自於EIT造形的簡單組合
所以,EIT造形的主要用途是:提升內在能力、管理外在變化和複雜。