架構實戰--軟體架構設計的過程

hzbook2008發表於2010-07-01

前言

 

作者:Peter Eeles & Peter Cripps

 

幾年前,我們(Peter Eeles和Peter Cripps)開始注意到Grady Booch首創的《軟體架構手冊》(《Handbook of Software Architecture》, )。Grady起初的目的是:

整理許多有趣的軟體密集型系統的架構,以揭示它們的基本模式以及允許在域和架構風格之間進行比較的方式,並把它們呈現出來。

當Grady正關注於最終架構的時候,我們感到理解成功架構師建立他們的架構時所遵循的流程同樣很有趣。當然,我們最終的目的是複製他們的成功。我們花了好幾年的時間才完成這個過程。我們做了許多專案,和許多架構師進行了交流,還對許多開發方法進行了梳理——所有這些都有助於我們理解當構建一個軟體系統時起作用和不起作用的因素的本質。 是我們經歷的這個過程的總結。

許多優秀的書講述了軟體架構過程的特定方面,我們借鑑了這些書中的相關內容。例如,其中有些書注重編寫一個軟體架構的文件,另一些書注重如何評價一個軟體架構。其中任意一方面都適合比較大的場景,因為每一方面都呈現了軟體架構過程中的一個重要因素。因此,本書的一個目的是透過提供在一個典型軟體開發專案的環境中架構的所有方面的概覽來呈現這個大場景。

應該指出的是, 沒有指定一個專門的軟體開發方法。更確切地說,本書講述了人們在支援構建過程的任意現代開發方法中可能遇到的關鍵因素。

本書是為誰準備的

顯然, 是針對那些想了解他們的角色如何適應整個軟體開發過程的軟體架構師(或者立志成為軟體架構師的人)。本書也適合“專門”的架構師角色,如應用架構師和安全架構師。更籠統地說,本書適合那些想更好地瞭解軟體架構師這個角色的人。就這點而言,它對一個軟體開發團隊的所有成員也都有好處,包括開發人員、測試人員、業務分析人員、專案經理、配置經理和過程控制工程師。本書也特別適合那些在軟體開發的嘗試中想了解日益重要的軟體架構師角色的大學生。

如何閱讀本書

本書大致分為三個部分:

第1~5章為第一部分,概述了架構、架構師、架構設計、編寫軟體架構文件、可重用架構資源的核心概念。

第6~9章為第二部分,這部分包含了相關案例研究的章,透過一個基於樣例應用程式的典型軟體開發專案,重點體現架構師這個角色,提供一個指導性指南。這些章的編寫方式,使你很容易找到感興趣的特定主題。每個相關案例研究的章主要按照任務進行組織,另外,在這些章中我們使用了一些排版體例。特別是,對流程元素的所有引用,如任務、工件和角色,都用黑體加以強調,例如當我們描述軟體架構文件工件的時候。

第10章為第三部分,包含額外討論的話題和思考,尤其是,在前面的章中描述的概念如何應用於架構複雜的系統。

在本書中,你還會發現一些如下進行分類的有用的補充內容:

  • 概念補充內容: 介紹與討論與主題相關的想法或整套想法。
  • 檢查清單補充內容: 包含當執行某一特定任務時,可以進行檢查的有用的專案。
  • 最佳實踐補充內容: 介紹已經在實踐中證實為有效的方法。
  • 缺陷補充內容: 介紹最好避免的方法,因為它們會導致負面效果。

我們在本書中大範圍地使用統一建模語言(UML)來描述架構的某些方面。所有的UML圖表都是透過IBM Rational Software Architect建立的。

附屬站點

本書有一個附屬的站點: ,讀者可以在這個站點上找到額外的資訊,也可以和作者進行交流。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16502878/viewspace-666864/,如需轉載,請註明出處,否則將追究法律責任。

相關文章