书籍详情

软件构架编档(影印版)

软件构架编档(影印版)

作者:(美)保罗·克莱门茨(Paul Clements)等著

出版社:清华大学出版社

出版时间:2003-09-01

ISBN:9787302070610

定价:¥39.00

购买这本书可以去
内容简介
  本书荣获美国“软件开发”杂志第十三界图书效率大奖本书由绪论和两个部分组成。绪论介绍了本书其余部分所用到的必要概念和词汇,探讨了软件构架文档的使用方法以及它之所以重要的原因,定义了构架视图类型、风格和视图,这3个概念是本书介绍的编档方案的基础,另外,绪论部分还包含了正确编档的7个基本规则。第I部分“软件构架视图类型及风格”介绍了对软件构架进行编档的基本工具:视图类型。这一部分介绍了3个基本视图类型:模块视图类型、组件和连接器视图类型以及分配视图类型。每个视图类型包含多种构架风格,即视图类型的特化。这一部分具体描述了这些风格。第II部分“软件构架编档实践”集中论述了完整的构架文档包,制作构架文档包是出色的软件构架师的职责。第II部分完善了第I部分铺陈的内容。本书主要供软件构架师和负责为软件项目编写构架文档的技术文献书写员阅读,同时也可供那些打算学习和利用这种文档的人们阅读。
作者简介
暂缺《软件构架编档(影印版)》作者简介
目录
AbouttheCover
Foreword
Preface
Acknowledgments
Reader'sGuide
Prologue:SoftwareArchitecturesandDocumentation
P.1TheRoleofArchitecture
ComingtoTerms:SoftwareArchitecture
Perspectives:What'stheDifferenceBetweenNchitectureandDesign?
ComingtoTerms:Documentation,Description,Representation,Specification
P.2UsesofArchitectureDocumentation
P.3Interfaces
P.4Views
ComingtoTerms:ArchitecturalViews
P.5ViewtypesandStyles
P.5.1Viewtypes
P.5.2Styles
P.5.3Summary:Viewtypes,Styles,andViews
ComingtoTerms:Module,Component
P.6SevenRulesforSoundDocumentation
P.6.1Rule1:WriteDocumentationfromtheReader'sPointofView
P.6.2Rule2:AvoidUnnecessaryRepetition
P.6.3Rule3:AvoidAmbiguity
P.6.4Rule4:UseaStandardOrganization
P.6.5Rule5:RecordRationale
P.6.6Rule6:KeepDocumentationCurrentButNotTooCurrent
P.6.7Rule7:ReviewDocumentationforRtnessofPurpose
Perspectives:QuiveringatArrows
R7SummaryChecklist
R8DiscussionQuestions
R9ForFurtherReading

PartISoftwareArchitectureViewtypesandStyles
I.1ViewtypesandStyleCatalog
I.1.1ModuleViewtype
I.1.2Component-and-ConnectorViewtype
I.1.3AllocationViewtype
1.2StyleGuides:AStandardOrganizationforDocumentingaStyle

Chapter1TheModuleViewtype
1.1Overview
1.2Elements,Relations,andPropertiesoftheModuleViewtype
1.2.1Elements
1.2.2Relations
1.2.3Properties
ComingtoTerms:Substitutability
1.3WhattheModuleViewtypeIsForandWhatIt'sNotFor
1.4NotationsfortheModuleViewtype
1.4.1InformalNotations
1.4.2UML
1.5RelationtoOtherViewtypes
1.6SummaryChecklist
1.7DiscussionQuestions
1.8ForFurtherReading

Chapter2StylesoftheModuleVlewtype
2.1DecompositionStyle
2.1.1Overview
2.1.2Elements,Relations,andProperties
2.1.3WhattheDecompositionStyleIsForandWhatIt'sNotFor
2.1.4NotationsfortheDecompositionStyle
2.1.5RelationtoOtherStyles
2.1.6ExamplesoftheDecompositionStyle
ComingtoTerms:Subsystem
2.2UsesStyle
2.2.1Overview
2.2.2Elements,Relations,andProperties
2.2.3WhattheUsesStyleIsForandWhatIt'sNotFor
2.2.4NotationsfortheUsesStyle
2.2.5RelationtoOtherStyles
2.2.6ExampleoftheUsesStyle
ComingtoTerms:Uses
2.3GeneralizationStyle
2.3.1Overview
2.3.2Elements,Relations,andProperties
2.3.3WhattheGeneralizationStyleIsForandWhatIt'sNotFor
2.3.4NotationsfortheGeneralizationStyle
2.3.5RelationtoOtherStyles
ComingtoTerms:Generalization
2.3.6ExamplesoftheGeneralizationStyle
2.4LayeredStyle
2.4.1Overview
2.4.2Elements,Relations,andProperties
2.4.3WhattheLayeredStyleIsForandWhatIt'sNotFor
2.4.4NotationsfortheLayeredStyle
2.4.5RelationtoOtherStyles
2.4.6ExamplesoftheLayeredStyle
ComingtoTerms:VirtualMachines
Perspectives:UpwardlyMobileSoftware
Perspectives:LevelsofDistraction
Perspectives:UMLClassDiagrams:TooMuch,TooLittle
2.5SummaryChecklist
2.6DiscussionQuestions
2.7ForFurtherReading

chapter3TheComponent-and-ConnecterVlewtype
3.1Overview
3.2Elements,Relations,andPropertiesoftheC&CViewtype
3.2.1Elements
3.2.2Relations
3.2.3Properties
Perspectives:AreConnectorsNecessary?
Perspectives:ChoosingConnectorAbstractions
3.3WhattheC&CViewtypeIsForandWhatIt'sNotFor
Perspectives:DataFlowandControlFlowProjections
3.4NotationsfortheC&CViewtype
3.5RelationtoOtherViewtypes
3.6SummaryChecklist
3.7DiscussionQuestions
3.8ForFurtherReading

Chapter4StylesoftheComponent-and-connectorViewtype
4.1ThePipe-and-FilterStyle
4.1.1Overview
4.1.2Elements,Relations,andProperties
4.1.3WhatthePipe-and-RIterStyleisForandWhatIt'sNotFor
4.1.4RelationtoOtherStyles
4.1.5ExamplesofthePipe-and-FilterStyle
4.2Shared-DataStyle
4.2.1Overview
4.2.2Elements,Relations,andProperties
4.2.3WhattheShared-DataStyleIsForandWhatIt'sNotFor
4.2.4RelationtoOtherStyles
4.2.5ExampleoftheShared-DataStyle
4.3Publish-SubscribeStyle
4.3.1Overview
4.3.2Elements,Relations,andProperties
4.3.3WhatthePublish-SubscribeStyleIsForandWhatIt'sNotFor
4.3.4RelationtoOtherStyles
4.3.5ExamplesofthePublish-SubscribeStyle
4.4Client-ServerStyle
4.4.1Overview
4.4.2Elements,Relations,andProperties
4.4.3WhattheClient-ServerStyleIsForandWhatIt'sNotFor
4.4.4RelationtoOtherStyles
4.4.5ExamplesoftheClient-ServerStyle
4.5Peer-to-PeerStyle
4.5.1Overview
4.5.2Elements,Relations,andProperties
4.5.3WhatthePeer-to-PeerStyleIsForandWhatIt'sNotFor
4.5.4RelationtoOtherStyles
4.5.5ExamplesofthePeer-to-PeerStyle
4.6Communicating-ProcessesStyle
4.6.1Overview
4.6.2Elements,Relations,andProperties
4.6.3WhattheCommunicating-ProcessesStyle
IsForandWhatIt'sNotFor
4.6,4RelationtoOtherStyles
4.6.5ExamplesoftheCommunicating-ProcessesStyle
4.7NotationsforC&CStyles
4.7.1InformalNotations
4.7.2FormalNotations
Perspectives:UsingClassestoRepresentComponentTypesandInstances
ComingtoTerms:ComponentsVersusUMLComponents
4.8SummaryChecklist
4.9DiscussionQuestions
4.10ForFurtherReading

chapter5TheAllocationVlewtypeandStyles
5.1Overview
5.2Elements,Relations,andPropertiesoftheAllocationViewtype
5.3DeploymentStyle
5.3.1Overview
5.3.2Elements,Relations,andProperties
5.3.3WhattheDeploymentStyleIsForandWhatIt'sNotFor
5.3.4NotationfortheDeploymentStyle
5.3.5RelationtoOtherStyles
5.3.6ExamplesoftheDeploymentStyle
5.4implementationStyle
5.4.1Overview
5.4.2Elements,Relations,andProperties
5.4.3WhattheimplementationStyleIsForandWhatIt'sNotFor
5.4.4NotationfortheImplementationStyle
5.4.5RelationtoOtherStyles
5.4.6ExampleoftheimplementationStyle
5.5WorkAssignmentStyle
5.5.1Elements,Relations,andProperties
5.5.2WhattheWorkAssignmentStyleIsForandWhatIt'sNotFor
5.5.3NotationsfortheWorkAssignmentStyle
5.5.4RelationtoOtherStyles
5.5.5ExampleoftheWorkAssignmentStyle
5.6SummaryChecklist
5.7DiscussionQuestions
5.8ForFurtherReading

PartIISoftwareArchitectureDocumentationinPractice
Chapter6AdvancedConcepts
6.1ChunkingInformation:viewPackets,Refinement,
andDescdptiveCompleteness
6.1.1ViewPackets
6.1.2Refinement
6.1.3DescriptiveCompleteness
6.2UsingContextDiagrams
6.2.1Top-LevelContextDiagrams
6.2.2ContentofaContextDiagram
6.2.3ContextDiagramsandOtherSupportingDocumentation
6.2.4NotationsforContextDiagrams
6.2.5ExampleofaContextDiagram
6.3CombinedViews
6.3.1WhentoCombineViews
6.3.2TypesofMapping
6.3.3Elements,Relations,andProperties
6.3.4DocumentingCombinedViews
6.3.5ExamplesofCombinedViews
6.3.6OtherExamples
6.4DocumentingVariabilityandDynamism
6.4.1Variability
6.4.2Dynamism
6.4.3RecordingtheInformation
6.4.4NotationsforVariabilityandDynamism
Perspectives:WhatTimeIsIt?.
6.5CreatingandDocumentingaNewStyle
ComingtoTerms:Styles,Patterns
6.6SummaryChecklist
6.7DiscussionQuestions
6.8ForFurtherReading

Chapter7DocumentingSoftwareInterfaces
7.1Overview
7.2InterfaceSpecifications
7.3AStandardOrganizationforInterfaceDocumentation
ComingtoTerms:ExceptionsandErrorHandling
7.4StakeholdersofInterfaceDocumentation
7.5NotationforInterfaceDocumentation
7.5.1ShowingtheExistenceofInterfaces
7.5.2ConveyingSyntacticInformation
7.5.3ConveyingSemanticInformation
7.5,4Summary
Perspectives:Multipleinterlaces
ComingtoTerms:Signature,Interface,APl
7.6ExamplesofInterfaceDocumentation
7.6.1SCR-StyleInterface
7.6.2IDL
7.6.3CustomNotation
7.6.4XML
7.7SummaryChecklist
7.8DiscussionQuestions
7.9ForFurtherReading

chppter8DocumentingBehavior
8.1BeyondStructure
8.2WheretoDocumentBehavior
8.3WhytoDocumentBehavior
8.3.1SystemAnalysis
8.3.2DrivingDevelopmentActivities
8.4WhattoDocument
8.4.1TypesofCommunication
8.4.2ConstraintsonOrdering
8.4.3Clock-TriggeredStimulation
8.5HowtoDocumentBehavior:NotationsandLanguages
8.5.1Traces
8.5.2StaticModels
8.6SummaryChecklist
8.7DiscussionQuestions
8.8ForFurtherReading

Chapter9ChoosingtheViews
9.1StakeholdersandTheirDocumentationNeeds
Perspectives:ArchitectureTrade-offAnalysisMethod
9.2MakingtheChoice
9.3TwoExamples
9.3.1ASmallProject:A-7E
9.3.2ALargeProject:ECS
9.4SummaryChecklist
9.5DiscussionQuestions
9.6ForFurtherReading

Chapter10BuildingtheDocumentationPackage
10.1OneDocumentorSeveral?
Perspectives:WhattheMeaningof"Is"Is
10,2DocumentingaView
Perspectives:PresentationIsAiscImportant
10.3DocumentationBeyondViews
10.3.1HowtheDocumentationIsOrganizedtoServeaStakeholder
10.3.2WhattheArchitectureIs
10.3.3WhytheArchitectureIstheWayItIs:Background,DesignConstraints,andRationale
Perspectives:GlobalAnalysis
10.4ValidatingSoftwareArchitectureDocumentation
Perspectives:AGlossaryWouldHaveHelped
10.5SummaryChecklist
10.6DiscussionQuestions
10.7ForFurtherReading

Chapter11OtherViewsandBeyond
11.1Overview
11.2RationalUnifiedProcess/Kruchten4+1
11.3UML
11.3.1ClassandObjectDiagrams
11.3.2ComponentDiagrams
11.3.3DeploymentDiagrams
11.3.4BehavioralDiagrams
11.4SiemensFourViews
11.4.1GlobalAnalysis
11.4.2ConceptualArchitectureView
11.4.3ModuleArchitectureView
11.4.4ExecutionArchitectureView
11.4.5CodeArchitectureView
11.4.6Summary
11.5C41SRArchitectureFramework
11.5.1CommonArchitecturalViewsoftheC41SRFramework
11.5.2CommonProducts
11.6ANSI/IEEE-1471-2000
11.7DataFlowandControlFlow
11.7.1DataFlowViews
11.7.2ControlFlowViews
Perspectives:You'reAllJustGuessing!
11.8RM-ODP
11.9WhereArchitectureDocumentationEnds
11.9.1ArchitectureDescriptionLanguages
11.9.2CommercialComponents
11.9.3HypertextDocumentation
11.9.4ConfigurationManagement
11.10AFinalWord
11.11ForFurtherReading
AppendixA,ExcerptsfromaSoftwareArchitecture
DocumentationPackage
VolumehECSSoftwareArchitectureDocumentation
BeyondViews
VolumeII:ECSSoftwareArchitectureViews
Glossary
References
Index

绪论软件构架及编档
第1部分软件构架视图类型及风格
1.1视图类型和风格目录
1.2风格指导:风格编档标准结构
第1章模块视图类型
1.1概述
1.2模块视图类型的元素.关系和特性
1.3模块视图类型支持什么和不支持什么
1.4模块视图类型的表示法
1.5与其他视图类型的关系
1.6总结检查表
1.7问题讨论
1.8更多阅读材料
第2章模块视图类型的风格
2.1分解风格
2.2使用风格
2.3泛化风格
2.4分层风格
2.5总结检查表
2.6问题讨论
2.7更多阅读材料
第3章组件和连接器视图类型
3.1概述
3.2C&C视图类型的元素.关系和特性
3.3C&C视图类型支持什么和不支持什么
3.4C&C视图类型表示法
3.5与其他视图类型的关系
3.6总结检查表
3.7问题讨论
3.8更多阅读材料
第4章组件和连接器视图类型的风格
4.1管道和过滤器风格
4.2共享数据风格
4.3发布-订阅风格
4.4客户机-服务器风格
4.5对等连接风格
4.6通信-进程风格
4.7C&C风格表示法
4.8总结检查表
4.9问题讨论
4.10更多阅读材料
第5章分配视图类型和风格
5.1概述
5.2元素.关系和特性
5.3部署风格
5.4实现风格
5.5工作任务风格
5.6总结检查表
5.7问题讨论
5.8更多阅读材料

第II部分软件构架编档实践
第6章高级概念
6.1信息分块:视图包.精化和描述完整性
6.2使用上下文图
6.3组合视图
6.4为可变性和动态编
6.5创建和编档新风格
6.6总结检查表
6.7问题讨论
6.8更多阅读材料
第7章软件接口编档
7.1概述
7.2接口规范
7.3接口文档的标准结构
7.4接口文档的涉众
7.5接口文档的表示法
7.6接口文档范例
7.7总结检查表
7.8问题讨论
7.9更多阅读材料
第8章行为编档
8.1结构之外的信息
8.2行为编档位置
8.3为什么需要编档行为
8.4编档内容
8.5编档行为的方式:表示法和语言
8.6总结检查表
8.7问题讨论
8.8更多阅读材料
第9章视图的选择
9.1涉众及其文档需求
9.2做出选择
9.3两个范例
9.4总结检查表
9.5问题讨论
9.6更多阅读材料
第10章制作文档包
10.1采用一个文档还是若干文档?
10.2视图编档
10.3编档视图之外的信息
10.4软件构架文档的验证
10.5总结检查表
10.6问题讨论
10.7更多阅读材料
第11章其他视图和视图外信息
11.1概述
11.2Rational统一过程/Kruchten4+1
11.3UML
11.4西门子4种视图
11.5C41SR构架框架
11.6ANSI/IEEE-1471-2000
11.7数据流和控制流
11.8RM-ODP
11.9如何结束构架编档
11.10尾声
11.11更多阅读材料
附录A软件构架文档包摘录
卷I:ECS视图外软件构架文档
卷IIECS软件构架视图
术语表
参考文献
索引
猜您喜欢

读书导航