軟件領域也有類似的總結,其中阿奇舒勒的弟子們開發的軟件矛盾矩陣應用廣泛,整理出來的24 工程參數矛盾矩陣都有一定的應用范圍。但說到產品,人們更喜歡39個工程參數。
因為39個工程參數一開始并不是專門針對硬件來組織的,他們實際上是從產品本身的工程維度來思考的。而且基于設備硬件的總結涵蓋了上千個專利案例,是TRIZ當初的思維提煉,具有一定的權威性。
其實,無論是硬件還是軟件,都可以看作是一種設計技術。通過抽象工程參數,甚至硬件領域所謂的39*39,很多都可以應用到軟件領域。
本文著眼于39個工程參數(所謂硬件領域),思考軟件領域的應用。
讓我們從39*39 工程參數的親緣關系分類開始,如下表所示:
39個工程參數從七個方面進行分類:幾何、物理、系統、功率、技術、測量和損耗??梢园l現,系統、技術、計量、損耗四大類并沒有區分軟件和硬件的屬性。幾何、物理和電力具有很強的硬件屬性。
首先,我們分析了從不逐一區分硬件和軟件的四類屬性:
系統類別
作用于物體的有害因素和物體產生的有害因素。軟件對有害因素也有同樣的影響。
30.受物體影響的有害因素
軟件會影響哪些有害因素?包括適應性、控制復雜性、系統復雜性、硬件成本、易用性、靈活性、時間損失、可維護性、內存使用、效率、服務質量、可靠性、安全性、吞吐量、用戶容量等。例如,在軟件運行期間可能會產生內存碎片。它可以通過優化影響系統的內存碎片(有害因素)。軟件優化可以徹底減少系統的這種有害因素。
31.物體產生的有害因素
當然,如果使用不當,也可能使指標惡化,增加對對象的有害因素。例如,性能的過度優化可能會導致系統復雜性增加和可維護性降低。過度優化內存和減少使用可能會導致吞吐量和用戶容量下降。過度的靈活性可能會導致內存使用的增加。
讓我們看看其他事情,比如:
技術類
操作、可靠性、強度、適用性和通用性、可制造性/可操作性/可維護性、制造精度、復雜性、自動化、生產率和穩定性(對象)。
基本上,它是軟件的屬性設計(DFx)中應該考慮的一個類別,比如可維護性。這里我們可以舉幾個例子。操作時間,這個參數也可以理解為軟件系統中業務處理的時間效率。
例如:業務轉發效率、通信協議消息的傳輸效率等。軟件優化對轉發效率(吞吐量、傳輸時間)和傳輸可靠性起著重要作用。
系統的強度?可以理解為處理高峰業務的靈活能力和受到攻擊時的應變能力,使系統仍能持續工作。
測量等級
測量的必要性和準確性。軟件監控系統和系統運行效率檢測系統就是這樣,包括TCP診斷工具snoop等。軟件優化可以增強或削弱測量的必要性和準確性。
損失等級
能量損失、物質損失、信息損失和時間損失。乍一看,能源和物質損失似乎與軟件無關。
其實從軟件目標和業務量來看,軟件優化可以增加單位業務的計算量,這也減少了能量損耗(CPU利用率提高,消耗的能量自然減少)。
材料損耗類別看起來也像硬件,但從軟件使能的角度來看,可以看出軟件優化占用內存,硬盤減少,反過來,思考現實實際上減少了存儲資源的損耗。
信息可以類比為:消息傳輸,帶寬容量。時間可以比作處理效率、頻率等。
剛才描述了可能與四類軟件相關的參數。即使物理參數和這個相似,乍一看也很明顯。
事實上,硬件域的參數很可能與軟件有關。讓我們看看:
物理參數:重量、速度、力、壓力/壓力、溫度、光照。速度這個參數可以理解為軟件處理速度和作業處理效率。
其他參數不一一分析。簡而言之,抽象到一定程度就可以和軟件有所關聯,而不是之前那種好像和軟件無關的感覺。
讓我們一起來看看40個發明原理:
很多都是先和物理有關,比如:14球化。機械相關28-機械系統的更換與軟件相差甚遠。但很多只是反映邏輯,比如:1分區、23反饋、24中介、26復制,都與軟件的深度應用有關。
例如,1分區:一個程序,它虛擬地或實際地將一個系統分成幾個部分,以隔離或集成一些有害或有用的系統屬性。
這就是TRIZ的定義,其中軟件的故障隔離設計和軟件架構的微服務都屬于分區隔離的思想。
當然,微服務“細分”指的是基于組件架構的拆分,這只是體現了他的實現思路,更多的細節需要軟件專家考慮。
比如微服務是否需要解耦,關鍵考慮的是:是否需要獨立開發和驗證;與其他服務靈活組合和安排的要求;運行期間的有效隔離要求;業務的峰谷明顯,需要彈性擴張、自主進化升級、灰度分布要求等。
當然,抽象的發明原理并不區分軟件和硬件,很容易理解。其實軟件有很多種,需要考慮的不僅僅是軟件,還有軟硬結合的系統思維。因此,即使硬件、物理和化學的發明原理,也可以試著從軟件的角度去思考,它是否可以應用。舉個例子吧。
例如12等勢:在系統內建立關聯,使系統能夠支持等勢狀態。乍一看,似乎屬于物理定位的方法。但仔細想一想,其實可以抽象成能量最少的原則,集中在同一個區域,一次性處理事情——同等位置——不變位置,自己動手。本地更新也有這個意思。
例如,磁盤刪除,如果您立即刪除文件,然后回收磁盤空間。很多操作系統一開始都是實現只刪除文件頭中的幾個字節的信息,這在邏輯上意味著文件已經被刪除了,但是介質上的文件內容還在。當新文件被寫入時,內容可以直接覆蓋在這個區域。
如果舊文件(刪除文件的標題字節)在一段時間內沒有被覆蓋,則刪除的文件仍然可以恢復。相對性的抽象是指我(刪除時)不移動位置(不刪除遠處的內容),讓系統自動行動。思想借用了這個發明原理。
比如:28替換機械系統,用物理場替換機械交互。這一原理實際上與改變或取代工作原理有關。軟件的思路是:變硬為軟,用軟件代替專有硬件。比如用軟解壓代替硬件解壓卡。機械系統被電磁能所取代。
嗯,總的來說,TRIZ在硬件設計領域被廣泛應用,雖然它來自于對設備創新的抽象總結。實際上,經過仔細考慮,在軟件設計領域有很多應用,尤其是邏輯參數和發明原理可以直接使用。
即使是物理和化學領域看似“純硬件”的參數和發明原理,有時也可以抽象地應用于軟件領域。多思考,多實踐,學好,才能學到實質,發揚方法論。
上一篇:TRIZ在三星的應用意義