第一图书网

UML和模式应用

(美)Carig Larman,(美)Philippe Kruchten 中国电力出版社
出版时间:

2004-5  

出版社:

中国电力出版社  

作者:

(美)Carig Larman,(美)Philippe Kruchten  

页数:

627  

Tag标签:

无  

内容概要

  本书是当今最畅销的介绍面向对象的分析/设计、迭代开发和UML的书籍。本书的目的是帮助开发人员或学生掌握关于面向对象的分析和设计的核心原理和最佳实践,并将它们真正应用到软件设计中去。本书的作者是颇有声望的对象技术和迭代方法的领军人物。本书在第一版的基础上做了全面的修订,增加了新的案例研究,更新了关于模式、用况、统一过程、架构分析等的探讨。

作者简介

  Craig
Larman是Valtech公司的首席科学家,该公司在技术咨询领域居领先地位;在国际软件开发社区中,他是对象技术、模式、UML、建模和迭代开发方面广为人知的专家。Larman从20世纪80年代就开始帮助人们学习对象和迭代开发,他亲自指导过的开发人员已达数千人
此外,他还是《Java 2 Performance and ldiom
Guide》一书的作者之一,并拥有计算机科学学士和硕士学位、Larman的最新作品《Agile&Iterative
Development:a Manager's Guide》(《敏捷迭代开发》)即将由中国电力出版社出版。

书籍目录

foreword xv
preface xvii
Part i introduction
 1 object-oriented analysis and design
 applying uml and patterns in ooa/d
 assigning responsibilities
 what is analysis and design?
 what is object-oriented analysis and design?
 an example
 the uml
 further readings
 2 iterative development and the unified process
 the most important up idea: iterative development
 additional up best practices and concepts
 the up phases and schedule-oriented terms
 the up disciplines (was workfiows)
 process customization and the development case
 the agile up
 the sequential "waterfall" lifecycle
 you know you didn't understand the up when...
 further readings
 3 case study: the nextgen pos system
 the nextgen pos system
 architectural layers and case study emphasis
 the book's strategy: iterative learning and development
Part ii inception
 4 inception
 inception: an analogy
 inception may be very brief
 what artifacts may start in inception?
 you know you didn't understand inception when...
 5 understanding requirements
 types of requirements
 further readings
 6 use-case model: writing requirements in context
 goals and stories
 background
 use cases and adding value
 use cases and functional requirements
 use case types and formats
 fully dressed example: process sale
 explaining the sections
 goals and scope of a use case
 finding primary actors, goals, and use cases
 congratulations: use cases have been written, and are
imperfect
 write use cases in an essential ui-free style
 actors
 use case diagrams
 requirements in context and low-level feature lists
 use cases are not object-oriented
 use cases within the up
 case study: use cases in the nextgen inception phase
 further readings
 up artifacts and process context
 7 identifying other requirements
 nextgen pos examples
 nextgen example: (partial) supplementary specification
 commentary: supplementary specification
 nextgen example: (partial) vision
 commentary: vision
 nextgen example: a (partial) glossary
 commentary: glossary (data dictionary)
 reliable specifications: an oxymoron?
 online artifacts at the project website
 not much uml during inception?
 other requirement artifacts within the up
 further readings
 up artifacts and process context
 8 from inception to elaboration
 checkpoint: what happened in inception?
 on to elaboration
 planning the next iteration
 iteration 1 requirements and emphasis: fundamental ooa/i)
skills
 what artifacts may start in elaboration?
 you know you didn't understand elaboration when...
Part iii elaboration iteration
 9 use-case model: drawing system sequence diagrams
 system behavior
 system sequence diagrams
 example of an ssd
 inter-system ssds
 ssds and use cases
 system events and the system boundary
 naming system events and operations
 showing use case text
 ssds and the glossary
 ssds within the up
 further readings
 up artifacts
 10 domain model: visualizing concepts
 domain models
 conceptual class identification
 candidate conceptual classes for the sales domain
 domain modeling guidelines
 resolving similar conceptual classes--register vs. "post"
 modeling the unreal world
 specification or description conceptual classes
 uml notation, models, and methods: multiple perspectives
 lowering the representational gap
 example: the nextgen pos domain model
 domain models within the up
 further readings
 up artifacts
 11 domain model: adding associations
 associations
 the uml association notation
 finding associations-common associations list
 association guidelines
 roles
 how detailed should associations be?
 naming associations
 multiple associations between two types
 associations and implementation
 nextgen pos domain model associations
 nextgen pos domain model
 12 domain model: adding attributes
 attributes
 uml attribute notation
 valid attribute types
 non-primitive data type classes
 design creep: no attributes as foreign keys
 modeling attribute quantities and unite
 attributes in the nextgen domain model
 multiplicity from saleslineitem to item
 domain model conclusion
 13 use-case model: adding detail with operation contracts
 contracts
 example contract: enteritem
 contract sections
 postconditions
 discussion---enterltem postconditions
 writing contracts leads to domain model updates
 when are contracts useful? contracts vs. use cases?
 guidelines: contracts
 nextgen pos example: contracts
 changes to the domain model
 contracts, operations, and the uml
 operation contracts within the up
 further readings
 14 from requirements to design in this iteration
 iteratively do the right thing, do the thing right
 didn't that take weeks to do? no, not exactly.
 on to object design
 15 interaction diagram notation
 sequence and collaboration diagrams
 example collaboration diagram: makepayment
 example sequence diagram: makepayment
 interaction diagrams are valuable
 common interaction diagram notation
 basic collaboration diagram notation
 basic sequence diagram notation
 16 grasp: designing objects with responsibilities
 responsibilities and methods
 responsibilities and interaction diagrams
 patterns
 grasp: patterns of general principles in assigning
responsibilities
 the uml class diagram notation
 information export (or expert)
 creator
 low coupling
 high cohesion
 controller
 object design and crc cards
 further readings
 17 design model: use-case realizations with grasp patterns
 use-case realizations
 artifact comments
 use-case realizations for the nextgen iteration
 object design: makenewsale
 object design: enteritem
 object design: endsale
 object design: makepayment
 object design: startup
 connecting the ui layer to the domain layer
 use-case realizations within the up
 summary
 18 design model: determining visibility
 visibility between objects
 visibility
 illustrating visibility in the uml
 19 design model: creating design class diagrams
 when to create dcds
 example dcd
 dcd and up terminology
 domain model vs. design model classes
 creating a nextgen pos dcd
 notation for member details
 dcds, drawing, and case tools
 dcds within the up
 up artifacts
 20 implementation model: mapping designs to code
 programming and the development process
 mapping designs to code
 creating class definitions from dcds
 creating methods from interaction diagrams
 container/collection classes in code
 exceptions and error handling
 defining the sale--makelineltem method
 order of implementation
 test-first programming
 summary of mapping designs to code
 introduction to the program solution
Part iv elaboration iteration
 21 iteration 2 and its requirements
 iteration 2 emphasis: object design and patterns
 from iteration i to 2
 iteration 2 requirements
 refinement of analysis-oriented artifacts in this iteration
 22 grasp: more patterns for assigning responsibilities
 polymorphism
 pure fabrication
 indirection
 protected variations
23 designing use-case realizations with gof design
patterns
 adapter (gof)
 "analysis" discoveries during design: domain model
 factory (gof)
 singleton (gof)
 conclusion of the external services with varying interfaces
problem
 strategy (gof)
 composite (gof) and other design principles
 facade (gof)
 observer/publish-subscribe/delegation event model (gof)
 conclusion
 further readings
Part v elaboration iteration
24 iteration 3 and its requirements
 iteration 3 requirements
 iteration 3 emphasis
 25 relating use cases
 the include relationship
 terminology: concrete, abstract, base, and addition use
cases
 the extend relationship
 the generalize relationship
 use case diagrams
 26 modeling generalization
 new concepts for the domain model
 generalization
 defining conceptual superclasses and subclasses
 when to define a conceptual subclass
 when to define a conceptual superclass
 nextgen pos conceptual class hierarchies
 abstract conceptual classes
 modeling changing states
 class hierarchies and inheritance in software
 27 refining the domain model
 association classes
 aggregation and composition
 time intervals and product prices--fixing an iteration 1
"error"
 association role names
 roles as concepts vs. roles in associations
 derived elements
 qualified associations
 reflexive associations
 ordered elements
 using packages to organize the domain model
 28 adding new ssds and contracts
 new system sequence diagrams
 new system operations
 new system operation contracts
 29 modeling behavior in statechart diagrams
 events, states, and transitions
 statechart diagrams
 statechart diagrams in the up?.
 use case statechart diagrams
 use case statechart diagrams for the pos application
 classes that benefit from statechart diagrams
 illustrating external and interval events
 additional statechart diagram notation
 further readings
 30 designing the logical architecture with patterns
 software architecture
 architectural pattern: layers
 the model-view separation principle
 further readings
 31 organizing the design and implementation model packages
 package organization guidelines
 more uml package notation
 further readings
 32 introduction to architectural analysis and the sad
 architectural analysis
 types and views of architecture
 the science: identification and analysis of architectural
factors
 example: partial nextgen pos architectural factor table
 the art: resolution of architectural factors
 summary of themes in architectural analysis
 architectural analysis within the up
 further readings
 33 designing more use-case realizations with objects and
patterns
 failover to local services; performance with local caching
 handling failure
 failover to local services with a proxy (gof)
 designing for non-functional or quality requirements
 accessing external physical devices with adapters; buy vs.
build
 abstract factory (gof) for families of related objects
 handling payments with polymorphism and do it myself
 conclusion
 34 designing a persistence framework with patterns
 the problem: persistent objects
 the solution: a persistence service from a persistence
framework
 frameworks
 requirements for the persistence service and framework
 key ideas
 pattern: representing objects as tables
 uml data modeling profile
 pattern: object identifier
 accessing a persistence service with a facade
 mapping objects: database mapper or database broker pattern
 framework design with the template method pattern
 materialization with the template method pattern
 configuring mappers with a mapperfactory
 pattern: cache management
 consolidating and hiding sql statements in one class
 transactional states and the state pattern
 designing a transaction with the command pattern
 lazy materialization with a virtual proxy
 how to represent relationships in tables
 persistentobject superclass and separation of concerns
 unresolved issues
Part vi special topics
 35 on drawing and tools
 on speculative design and visual thinking
 suggestions for uml drawing within the development process
 tools and sample features
 example two
 36 introduction to iterative planning and project issues
 ranking requirements
 ranking project risks
 adaptive vs. predictive planning
 phase and iteration plans
 iteration plan: what to do in the next iteration?
 requirements tracking across iterations
 the (in)validity of early estimates
 organizing project artifacts
 some team iteration scheduling issues
 you know you didn't understand planning in the up when...
 further readings
 37 comments on iterative development and the up
 additional up best practices and concepts
 the construction and transition phases
 other interesting practices
 motivations for timeboxing an iteration
 the sequential "waterfall" lifecycle
 usability engineering and user interface design
 the up analysis model
 the rup product
 the challenge and myths of reuse
 38 more uml notation
 general notation
 implementation diagrams
 template (parameterized, generic) class
 activity diagrams
 bibliography
 glossary
index


编辑推荐

《UML和模式应用:面向对象分析和设计及统一过程导论(第2版)(影印版)》:在这一版中,Larma保持了其一贯精准和细心的写作风格,这是一本比第一版更好的书。很少有人能掌握解释事情的诀窍,而能够很好地对软件分析和设计进行解释的人则更少,但Craig Larma做到了这两点。

图书封面

图书标签Tags

广告

下载页面


UML和模式应用 PDF格式下载



相关图书