书籍详情

面向模式分析和设计:通过模式合成来进行软件系统的设计 英文版

面向模式分析和设计:通过模式合成来进行软件系统的设计 英文版

作者:(美)Sherif M.Yacoub,(美)Hany H.Ammar著

出版社:中国电力出版社

出版时间:2004-05-01

ISBN:9787508322094

定价:¥39.80

购买这本书可以去
内容简介
  使用优秀的设计模式来开发健壮的大型软件系统。 设计模式功能非常强大,但在开发一个健壮的大型软件系统时,你还需要知道更多东西。本书介绍了一种通过对优秀的设计模式进行合成来开发大型软件的方法——POAD(Pattern-Oriented Analysis and Design,面向模式的分析和设计)。通过使用POAD方法,并用UML类图来表示系统构造块,你可以快速开发出一个可靠的大型软件系统。而且,与普通的OO方法相比,通过使用POAD方法开发出来的软件系统具有更强的健壮性、可扩展性和可维护性。· POAD:什么是POAD方法,POAD方法的原理,POAD方法能够解决哪些问题。· 对设计模式进行合成的两种方法——结构合成和行为合成。· 用于模式合成的设计模型和UML技术。· POAD过程:全面讲述了分析、设计、设计精化三个阶段。· 四个范例:反馈控制系统、等待队列仿真系统、数字信息再处理系统和分布式医疗信息系统。· 基于POAD的开发:趋势和研究方向。 POAD将带你进入使用设计模式的新境界。不管你是软件架构师、软件设计人员、软件开发人员,还是项目经理,本书都会帮你快速和高质量地开发一个大型的软件系统。
作者简介
  SherifM.Yacoub:是惠普实验室研究员。目前他主要从事与大型软件系统开发相关技术的研究,涉及范围包括设计模式、软件体系结构、系统建模、元模型、框架和软件可靠性。迄今已在权威刊物上发表了40多篇专业论文。他还是《ReuseBasedSoftwareEngineering》的作者之一。HanyH.Ammar:是西弗吉尼亚大学计算机科学和电子工程系教授,迄今共发表了70多篇专业论文。他的研究兴趣包括软件工程、软件可靠性、生物统计学和计算机体系结构。
目录
PART I  INTRODUCTION
  1  Pattern-Oriented Analysis and Design  3
  The Role of Patterns in Software Development  3
  Purpose of POAD 3
  Pattern-Oriented Design Issues  4
  POAD Is a Solution  5
  What Is Covered in this Book?  6
  2  Design Patterns and Software Engineering  7
  Design Patterns in the Software Lifecycle  7
  POAD and OO Technology  8
  Design Patterns  10
  What Is a Pattern?  10
  History of Patterns  11
  The Pattern Lifecycle  12
  Design Frameworks  14
  What Is a Framework?  14
  Developing Robust Designs Using Frameworks  15
  The Role of Patterns in Developing O0 Frameworks  16
  Design Pattern Composition Approaches  17
  Summary  17
  3  Composition of Design Patterns  19
  Behavioral Composition Techniques  20
  Object-Oriented Role Analysis and Software Synthesis  21
  Composing Design Patterns Using Roles  25
  Architecture Fragments and Superimposition  27
  Role/Type/Class Modeling  29
  Structural Composition of Design Patterns  32
  A Pattern-Oriented Composition Technique  33
  Software Composition at the Design Level
  using Design Components  34
  Component-Based Frameworks Using Patterns  35
  The Catalysis Approach  36
  Composition Patterns, Subject- Oriented Programming,
  and Aspect-Oriented Software Development  38
  Further Reading  41
PART II  TECHNOLOGICAL ASPECTS OF POAD
  4  Constructional Design Patterns as Components  
  Which Patterns to Use in POAD  47
  Software Components  49
  A Design Component  50
  Constructional Design Patterns  51'
  Specifying a Pattern as a Component  52
  A Recipe  52
  Formal Specification  52
  Interface Specification  53
  Component Interfaces  53
  Module Interconnection Languages 53
  Interface Definition Language  54
  Interfaces for Object-Oriented Components  55
  Application/Platform Interfaces  55
  Interface Properties  56
  Type  56
  Role  56
  Nature  57
  Dynamism  57
  Description  57
  Multiplicity  57
  Pattern Interfaces  58
  Summary  60
  5  Visual Design Models  61
  Pattern Composition Models  61
  Pattern-Level Model  63
  Schematic Diagram  63
  Relationships  64
  Design Decisions  65
  UML Syntax Support  65
  Example  65
  Pattern-Level with Interfaces Model  66
  Schematic Diagram  66
  Relationships  67
  Design Decisions  67
  UML Syntax Support  67
  Example  68
  Detailed Pattern-Level Model  68
  Schematic Diagram  69
  Relationships  69
  Design Decisions  70
  UML Syntax Support  70
  Example  70
  Characteristics of the POAD Design Models  71
  Hierarchy  71
  Traceability  72
  Composability  72
  Summary  72
  6  UML Support for Design Patterns  73
  Patterns as Mechanisms  74
  Architectural Patterns  78
  Patterns as Packages  79
  Patterns and Components  82
  Modeling Pattern-Oriented Designs  82
  A Comparison  83
  Summary  84
PART III  PROCESS ASPECTS OF POAD
  7  POAD: The Process  87
  Stringing Versus Overlapping  87
  POAD Process Outline (The Nutshell)  92
  Analysis Phase  95
  Design Phase  96
  Design Refinement Phase  97
  POAD and Code Generation  97
  POAD Characteristics  99
  Pattern-Driven  99
  Component-Based Development  99
  Architectural Development  100
  Library-Driven Development  100
  Design Reuse  100
  Hierarchical Development  101
  Iterative Development  101
  Pattern-Oriented Frameworks  102
  Pattern-Level Instantiation  102
  Class-Level Instantiation  102
  Benefits and Limitations  103
  Benefits  103
  Limitations 104
  Summary  104
  8  Analysis Phase  105
  Overview  105
  Requirements Analysis  107
  Purpose  107
  Process  107
  Product  110
  Analysis Tips  110
  Acquaintance  110
  Purpose  110
  Process  IlO
  Product  112
  Analysis Tips  113
  Retrieval  113
  Purpose  113
  Process  113
  Product  116
  Analysis Tips  116
  Pattern Selection  117
  Purpose  117
  Process  117
  Product  119
  Analysis Tips  119
  Summary  120
  9  Design Phase  121
  Overview  121
  Constructing Pattern-Level Models 123
  Purpose  123
  Process  123
  Product  126
  Design Tips  126
  Constructing Pattern-Level with Interfaces Models  126
  Purpose  126
  Process  127
  Product  129
  Design Tips  129
  Constructing Detailed Pattern-Level Models  130
  Purpose  130
  Process  130
  Product  132
  Design Tips  132
  Summary  132
  10  Design-Refinement Phase  135
  Overview  135
  Instantiating Pattern Internals  137
  Purpose  137
  Process  137
  Product  140
  Design-RefinementTips  140
  Developing the Initial Class Diagram  141
  Purpose  141
  Process  141
  Product I44
  Design-RefinementTips  144
  Design Optimization  145
  Purpose  145
  Process  145
  Product  150
  Design-Refinement Tips  150
  Using POAD for Developing Frameworks  150
  Summary  151
PART IV  CASE STUDIES
  11  Feedback Control Systems  155
  POAD Analysis for the Feedback Control Framework  156
  Requirements Analysis  156
  Pattern Selection  158
  . POAD Design for the Feedback Control Framework  159
  Constructing Pattern-Level Diagrams  159
  Constructing the Pattern-Level with Interfaces Diagram  160
  Constructing Detailed Pattern-Level Diagrams ' 161
  POAD Design Refinement for the Feedback Control Framework  163
  Instantiating Pattern Internals  163
  Developing an Initial Class Diagram  166
  Design Optimization  168
  Example: Quality Control in Production Lines  173
  System Description  173
  Application-Specific Considerations  175
  Instantiation of the Framework  175
  Sample Implementation  178
  Summary  187
  12  Simulation of Waiting Queues  189
  Background and Requirements  189
  Domain Engineering  190
  Application Engineering  191
  POAD Analysis for the Waiting-Queues Simulation Architecture  192
  Requirements Analysis  192
  Acquaintance and Retrieval  193
  Pattern Selection  194
  POAD Design for the Waiting-Queues Simulation Architecture  195
  Constructing Pattern-Level Diagrams  195
  Constructing Pattern-Level with Interfaces Diagrams  196
  Constructing Detailed Pattern-Level Diagrams  197
  POAD Design Refinement for the Waiting-Queues Simulation
  Architecture  197
  Instantiating Pattern Internals  197
  Developing an Initial Class Diagram  201
  Design Optimization  207
  Sample Implementation  209
  Summary  235
  13  A Digital Content Remastering Application  237
  Document Understanding  237
  Applications and Systems  237
  A DCRM System  239
  DCRM Subsystems  241
  Pattern-Oriented Analysis and Design for the Distribution Subsystem 242
  POAD Analysis for the DCRM Distribution Subsystem  242
  POAD Design for the DCRM Distribution Subsystem  244
  Constructing the Pattern-Level with Interfaces Diagram  244
  Constructing the Detailed Pattern-Level Diagrams  245
  POAD Design Refinement for the DCRM Distribution Subsystem  24.'
  Pattern-Oriented Analysis and Design for the Filtering
  Subsystem  250
  POAD Analysis for the DCRM Filtering Subsystem  250
  POAD Design for the DCRM Filtering Subsystem  253
  POAD Design Refinement for the DCRM Filtering Subsystem  256
  Summary  263
  14  A Medical Informatics System  265
  Medical Informatics Standards  265
  Digital Imaging and Communication in Medicine (DICOM)  266
  Specification Versus Implementation  266
  DICOM Scope  267
  A Client/ServerArchitecture  269
  Pattern-Oriented Analysis and Design of the DICOM UL  270
  POAD Analysis for DICOM Upper-Layer Subsystem  271
  POAD Design for DICOM Upper-Layer Subsystem  278
  POAD Design Refinement for the DICOM Upper-Layer Subsystem  284
  POAD is Simple Process for Designing Reactive Systems  286
  Pattern-Oriented Analysis and Design for the Client Application Entity  286
  POAD Analysis for the Client Application Entity  286
  POAD Design for the Client Application Entity  290
  POAD Design Refinerhent for the Client Application Entity  294
  Summary  298
PARTV  AUTOMATION AND SUMMARIES
  15  Relation to UML Metamodel and Specification  303
  Syntax is Not Enough  303
  The Object Constraint Language  304
  What Is OCL?  304
  Using OCL 305
  Adding POAD Constructs to the UML Metamodel  305
  Abstract Syntax  307
  Pattern  308
  PatternDependency  312
  PatternAssociation  312
  Patternlnfo  312
  Patternlnterface  313
  PatternKind 313
  PatternPresentation  313
  InterfaceBinder  314
  Well-Formedness Rules  314
  Pattern  314
  PatternDependency  315
  PatternAssociation  316
  Patternlnterface  317
  InterfaceBinder  317
  Semantics  318
  Pattern 318
  Relationships  319
  Summary  319
  16  Tool Support for Designing with Patterns  321
  The Need for Tool Support  321
  Pattern Tools  322
  Framework Adaptive Composition Environment  322
  Fragmentation Technique  324
  PSiGene  326
  Code Generation  327
  The Pattern Lint 328
  Hooks and Templates  329
  TogetherSoft  330
  Requirements and Features of a POAD Tool  331
  Patterns as First-Class Design Elements  331
  POAD Hierarchical Models  332
  Traceability. 332
  Pattern Repository  334
  Models with Memory  334
  Pattern Instantiation  335
  Summary  335
  17  Wrapping Up  337
  Systematic Composition of Design Pattern  337
  POAD Characteristics  338
  POAD and Software Reuse  339
  Applying POAD  340
  Pattern Literature  341
  Future Trends in Pattern Composition  342
  Conclusion  344
  A  Interfaces for Constructional Design Patterns  345
  Strategy Pattern  345
  Observer Pattern  345
  Composite Pattern  346
  Reactor Pattern 346
  TemplateMethod Pattern  347
  Proxy Pattern  347
  AbstractFactory Pattern  348
  Builder Pattern  348
  Mediator Pattern  349
  Command Pattern  349
  B  State of the Art and Practice in Design Patterns  351
  Pattern Mining  351
  Pattern Description Formats (Templates)  351
  Tool Support  352
  Pattern Formalism  352
  Pattern Languages  353
  Pattern-Based Implementation  353
  More Challenges  354
  Formal Specification of Design Patterns  354
  Pattern Instantiation and Implementation  354
  Development Methodologies  355
  Documentation of Design Patterns  355
  Evaluating Existing Design Patterns  355
  Glossary 357
  Bibliography  361
猜您喜欢

读书导航