顯示具有 讀書心得 標籤的文章。 顯示所有文章
顯示具有 讀書心得 標籤的文章。 顯示所有文章

2025/01/13

「反對完美」 摘要與省思

 反對完美 : 科技與人性的正義之戰

Michael Sandel

  • 這本書探討的是透過科技來改造人類,達到臻於完美,這是否是好的、對的方向
  • Sandel基本上是不贊同這樣的科技應用於「改良」,但可以接受於「治療」
  • 人類透過許多方式,希望能讓人類更美好
    • 基因(先天)
      • 優生學
      • 基因工程
      • 產前檢驗
    • 後天
      • 美容
      • 菁英教育
      • 藥物
    • 後天的方式不易有長期的改變,但先天的方式則會影響物種發展
  • 我們應該如何定義「完美」?這樣的完美是否在長期上,能讓這個物種更適應生存環境;或是讓這個物種限於local optimal,而失去走向global optimum,走向另一個更佳的另一個local optimal的機會
  • 複製人是否符合於倫理、道德、法律?複製人的地位?
  • 幹細胞/胚胎的道德疑慮
    • 幹細胞來自
      • 無性複製胚胎
      • 剩餘胚胎 (生育治療診所產出的受精卵多於植入的數量)
    • 這些胚胎是否算是生命?
    • 從胚胎取得幹細胞,讓一個生命死亡、來幫助另一個人,是否合乎道德?
    • 目前美國法律只允許使用多餘的胚胎,不贊成為了研究製造胚胎
      • 美國每年有數萬個多餘胚胎
      • 德國禁止醫師培育多於植入的受精卵


2024/09/22

軟體架構

軟體架構

  • 定義
    • 組成系統的組件、組件間的關係、以及治理其設計與使其能持續演進的原則及方針
    • 包含了有意義的決策(架構性決策)
      • 需求或環境等情境引發的難題,會驅動進行決策,決定哪種設計來克服此難題
      • 例如右邊房子的屋頂較左邊的更為直陡,其目的是當房子在雪地時,直陡屋頂的積雪會更容易因為重力影響而自動滑落,屋頂比較不會被壓垮。這就是架構性的決策


  • 沒有架構設計,一團大泥球也是一種架構
  • 架構沒有好壞之分,只有是否合適於目的
    • 架構主要在達成非功能性需求(non-functional requirements)
  • 必須要有基於明確理由而為的決策之紀錄
    • 就像是上圖,為何要採用較直陡的屋頂
    • 記錄下WHY
  • 架構師
    • 考量環境,並找出其中的限制條件與假設,是架構師的主要責任
    • 架構師的最重要工作,在於排除軟體設計中的不可逆性

2024/09/16

領域故事化 (Domain Storytelling)

 領域故事化 (Domain Storytelling)

WHY:

  • 化解軟體開發人員與商業(business)部門的認知落差
  • 理解領域
  • 釐清軟體需求


WHAT:

提供口語化與視覺化的建模工具與方法


WHO:

  • 領域專家
  • 軟體開發人員
  • UX設計師
  • PM
  • 商業分析師

WHEN:

  • business modeling
  • system modeling


HOW:

透過下列建構元件來組成視覺化模型:

  • Actor
  • Work Object
  • Activity
  • Sequence Number
  • Anotation (optional)
  • Group (optional)


範例

下圖描述電影觀眾購票的流程



個人理解:

  • 這樣的建模方式,涵蓋了UML中的use case diagram, activity diagram, sequence
  • Agile時代,將多個圖融合為一,更符合敏捷之精神
  • Actor, Work Object, Activity其實便隱含了glossary的目的