相關主題
商品描述
This textbook concentrates on processes, activities and results related to software architectures. It describes the separation of architecture artefacts corresponding to their nature, their logical or their modeling level on one hand and at the same time emphasizes their integration based on their mutual relations. Design or development processes demand for integration, as different artifacts must be elaborated, which are mutually dependent and need to be in a consistent form.
The book is structured in four parts. The introductory Part I deals with the relevance of architectures, the central role of the design subprocess both in development or maintenance, and the importance of the decisions and artefacts in the overall result. Another topic is the spectrum of views an architecture language has to offer, and that there are different architectures to be regarded, from abstract and static to detailed, technical, and specific. Part II then discusses "important topics" onthe architecture level. It deals with adaptability especially for embedded systems, with integrating styles/ pattern notations, with different reuse forms and how to find them, with the role of architectures for integrating different existing systems, and with reverse and reengineering of legacy systems. Next, Part III covers architecture modeling and its relation to surrounding activities, as well as architectures to surrounding other results. The single chapters are on transformation between requirements and architectures, architectures and programming, architectures and project management and organization, as well as architectures and their relations to quality assurance or documentation. Eventually, Part IV summarizes the main messages and presents open problems, both for every single chapter and across chapters.
Every chapter focuses on a specific problem it addresses, a question it answers, the attention it demands, a message it conveys, and further open questions it raises. The chapters are mostly independent, which implies a certain redundancy, yet it allows lecturers (and their students) to either use the book as the basis of teaching software architecture or design, or to just pick those aspects that need special attention in a more advanced course.
商品描述(中文翻譯)
這本教科書專注於與軟體架構相關的過程、活動和結果。它描述了根據其性質、邏輯或建模層次對架構工件的分離,同時強調基於相互關係的整合。設計或開發過程需要整合,因為不同的工件必須被詳細闡述,這些工件彼此依賴並需要保持一致的形式。
本書分為四個部分。第一部分作為導言,探討了架構的相關性、設計子過程在開發或維護中的核心角色,以及決策和工件在整體結果中的重要性。另一個主題是架構語言所提供的視角範圍,以及需要考慮的不同架構,從抽象和靜態到詳細、技術性和具體的架構。第二部分則討論了架構層級上的「重要主題」。它涉及嵌入式系統的適應性、整合風格/模式符號、不同的重用形式及其尋找方式、架構在整合不同現有系統中的角色,以及對舊系統的逆向工程和再工程。接下來,第三部分涵蓋了架構建模及其與周邊活動的關係,以及架構與其他結果的關係。各章節探討了需求與架構之間的轉換、架構與程式設計、架構與專案管理及組織,以及架構與其在品質保證或文件方面的關係。最後,第四部分總結了主要信息並提出了開放性問題,這些問題涵蓋了每一章以及跨章的內容。
每一章都專注於其所針對的特定問題、一個它所回答的問題、所需的注意力、一個它所傳達的信息,以及進一步提出的開放性問題。這些章節大多是獨立的,這意味著存在一定的冗餘,但這也使得講師(及其學生)可以將本書作為教授軟體架構或設計的基礎,或僅選擇在更高級課程中需要特別關注的那些方面。
作者簡介
Bernhard Westfechtel is a Full Professor for software engineering at the University of Bayreuth. His current research interests include graph transformations, model-driven engineering, software product line engineering, and software configuration management.
作者簡介(中文翻譯)
Manfred Nagl 是亞琛工業大學的名譽教授,曾擔任軟體工程學 Chair。他出版了超過 25 本書籍以及眾多期刊和會議論文,並指導了超過 45 個博士專案。他曾是重要專案(IPSEN、SUKITS、IMPROVE)的負責人,並在科學政策層面擔任過多個職位。
Bernhard Westfechtel 是拜羅伊特大學的全職軟體工程教授。他目前的研究興趣包括圖形轉換、模型驅動工程、軟體產品線工程和軟體配置管理。