從信息的角度來看待軟件開發
個人感覺,程序開發,是一個處理信息的過程。
一開始,我們什么都不知道,需求也是模糊的。
在需求分析過程中,我們漸漸能夠看清到底需要完成什么功能。
但是如何實現這樣的功能,我們還是不了解。
在設計階段,我們根據需求的內容,嘗試一個個原型,直至找到合適的,或者根據需求
創造出一個。
事實上,需求的信息量如此之大,可能有很多的原型,才有可能覆蓋住需求的要求。
之后是裁剪,組合,分割,把需求的信息量,整理成原型的模樣,
需求的信息處理得清清楚楚,整整齊齊。
最后還要看看有沒有信息遺漏的。
之后是寫代碼和寫文檔,確保這個過程中,信息沒有變化。
實際中,信息流不是那么清晰的,會有一些正反饋和負反饋,
信息在傳遞的過程中還會有失真和遺漏,于是傳遞系統就有了冗余和校驗。
一個新視角,可以帶來新的理論和方法,比如用信息處理的方法來指導軟件的設計和開發。
我想,應該有人在這方面做過研究的。 1 楼 gigix 2009-06-04 从一个正确的起点走到一个错误的终点,这是件很有趣的事。
生活中的交流是如何进行的?当一个人想要传递大量信息给另一个人,他会如何去做?他会从一开始就把“信息處理得清清楚楚,整整齊齊”吗?如果是这样的话大家也不用去上学听老师讲课了,把教科书编得“清清楚楚,整整齊齊”,然后大家在家看看书就好了。
所以我经常说,人们只看到自己想看到的。不管怎么变换看的角度都是一样。 2 楼 halida 2009-06-04 gigix 写道从一个正确的起点走到一个错误的终点,这是件很有趣的事。
生活中的交流是如何进行的?当一个人想要传递大量信息给另一个人,他会如何去做?他会从一开始就把“信息處理得清清楚楚,整整齊齊”吗?如果是这样的话大家也不用去上学听老师讲课了,把教科书编得“清清楚楚,整整齊齊”,然后大家在家看看书就好了。
所以我经常说,人们只看到自己想看到的。不管怎么变换看的角度都是一样。
信息在交流中會有所損失,
大致想想,從理解,到闡述,到表達,到聲音傳播,到被聽到,到被理解,這個過程中,經過了很多個工序,
每個工序都有大量的信息流失。
書籍的作用,可以極大的延長信息傳播的時間,在此基礎上,各個工序可以做到冗余以及糾錯,真可是偉大的發明。
3 楼 hotjava 2009-07-15 我的解决办法就是不停重复对方的话。 从各个角度去解释他的意思。
一遍一遍的。 去除各种歧义。 我什么经验都没有, 也不懂管理。
但是我一周见客户至少3次, 开发出来的东西他们都认可。