跳至內容

敏捷開發框架軟體工程/第一輪/互動設計

來自華夏公益教科書

計算機定義和控制我們生活的許多方面。從銀行系統到空中交通管制,從食品生產到醫療保健,我們不斷接觸到技術系統,這些系統可能追蹤我們的行為,侵犯我們的隱私,並將我們的安全置於危險之中。那麼,如何確保將道德問題考慮在內?一個訴訟社會確保(大多數情況下)人命不會因產品缺陷而處於危險之中,但我們也能確定軟體是否滿足殘疾人社群的需求,或者生態影響是否最小化?

社會技術計算

[編輯 | 編輯原始碼]

開發人員自然會專注於使系統的技術元件正確。系統是否有效,是否健壯,是否有足夠的頻寬來滿足客戶的要求?但是,軟體可能以開發人員從未預料到的方式使用,並且在開發過程中做出的假設可能會對結果產生重大影響。例如,在工業環境中,使用者有時會停用電子安全系統以提高產量,這可能會以手指或肢體為代價。

計算系統是越來越嵌入和對終端使用者不可見的工具。計算機錯誤,無論是故意的還是意外的,都可能影響教育成果,金融記錄,改變個人資料或決定選舉,這可能導致權力失衡,因為計算機“專家”有能力操縱系統以利於自己。

此外,軟體系統不是孤立地執行的。它們是由人設計和使用的,人會將他們自己的價值觀和偏見帶入這個過程。在設計軟體時,透過使用有思想的價值選擇並意識到我們正在做出的選擇,重要的是要考慮到這些因素。


Therac-25是一種計算機控制的醫用直線加速器,用於治療癌症。在 1980 年代,美國有許多這樣的機器在使用中。有關詳細資訊,請參見 http://en.wikipedia.org/wiki/Therac-25


道德規範

[編輯 | 編輯原始碼]

對於軟體工程師來說,道德實踐有兩個方面

1. 技術倫理

在軟體開發過程的所有階段都做到技術上勝任

2. 專業倫理

使用一套道德價值觀來指導技術決策

軟體工程已從其計算機工程根源發展成為公認的專業學科。制定道德規範是這一過程中的重要一步,軟體工程道德規範於 1999 年被 IEEE 計算機協會和 ACM 採用。

該規範是透過與軟體工程行業的廣泛協商而制定的,它“記錄了

ethical and professional obligations of software engineers.” (Gotterbarn, Miller, Rogerson, 1999) and provides normative guidelines rather than taking a regulatory approach.


簡而言之,該規範建議軟體工程師應該

  • 考慮誰會受到他們的工作的影響
  • 檢查他們及其同事是否以應有的尊重對待其他人;
  • 考慮公眾在充分知情的情況下會如何看待他們的決定;
  • 分析他們的決定將如何影響最弱勢群體;
  • 考慮他們的行為是否會被人認為值得作為一名軟體工程師的理想專業人士。

利益相關者

[編輯 | 編輯原始碼]

任何道德分析的關鍵方面都是確定可能受到正在開發的系統使用影響的利益相關者。

什麼是利益相關者?來自企業界的傳統定義通常假設在專案中擁有財務權益。這種狹隘的關注通常只會包括委託軟體系統的客戶。

Williamson (2003) 定義了四級利益相關者

1. 直接 - 直接與專案互動的人或團體(例如,終端使用者、操作員)。

2. 間接 - 不直接與專案互動,但對直接使用者施加重大影響的人或團體(例如,僱主、主管)。

3. 遠端 - 與專案保持距離,但可能受到專案影響/影響的人或團體(例如,患者、客戶)。

4. 社會 - 更廣泛的社會影響。這可能包括對使用軟體的組織感興趣的政府或監管機構。

這種更廣泛的觀點確保我們考慮正在開發的系統的“下游”影響。對於道德分析,需要在開發的每個階段,每個利益相關者和每個角度檢查是否有問題。

Williamson 使用“受眾地圖”來幫助識別利益相關者。

案例研究 Living Campus

小組:軟體工程 2008


受眾地圖被小組用來識別 Living Campus 專案的利益相關者。這些利益相關者隨後被用於隨後的 SoDIS 過程。







SoDIS(軟體開發影響陳述)是一個系統,它使用利益相關者影響分析來識別、評估和緩解軟體開發過程中的風險。透過這個過程,鼓勵開發人員考慮人、群體或組織,以及他們與擬議的專案及其產品或交付成果之間的關係。

此工具旨在透過對開發和使用最終產品對利益相關者的影響進行嚴格分析,來識別軟體工程專案中的風險。它主要解決道德問題,但在過程中,通常會識別出更廣泛的問題。它可以在 SDLC 的任何階段用作審查練習,但通常會在早期規劃階段應用。

SoDIS 專案審計員是一個軟體包,它使用 SoDIS 來促進對專案進行風險審計的過程。


我們在設計概念的第一輪中使用 SoDIS。透過這種方式,我們可以在做出任何重大設計決策之前識別出系統中潛在的設計問題。稍後,我們將進行深入的 Sodis 分析,這將突出顯示在使用該系統時相關的風險。

連結/參考資料

Don Gotterbarn http://www.cs.utexas.edu/users/ethics/professionalism/education.html

道德規範

http://www.acm.org/serving/se/code.htm

SoDIS

http://sdresearch.org/

Williamson, A. 定義您的利益相關者。Wairua 諮詢,奧克蘭。2003 年。

Gotterbarn, D.,Miller, K. W.,計算機倫理在本科課程中的應用:案例研究和聯合軟體工程師程式碼,大學計算機科學聯盟,2004 年。


案例研究 駕駛執照資料庫

小組:Chad Roulston 和 Siaosi Napualani Vaka



華夏公益教科書