书籍详情

对象软件项目求生法则(影印版)

对象软件项目求生法则(影印版)

作者:(美)Alistair Cockburn著

出版社:科学出版社

出版时间:2004-06-01

ISBN:9787030124890

定价:¥28.00

购买这本书可以去
内容简介
  本书论述了面向对象软件开发项目中所有重要的工作内容,包括进度安排、预算、人员配置以及成本控制中可能的风险及相应的解决办法。关键内容都附有短小的真实案例,可以帮助管理人员应对对象软件项目中各种无法预知的问题,取得整个项目的成功。本书适合从事软件开发和软件项目管理的人员使用,也可作为软件企业培训或高等院校软件工程类课程的辅助教材。
作者简介
暂缺《对象软件项目求生法则(影印版)》作者简介
目录
Contents
Foreword
xi
Preface xiii
Acknowledgments xvii
Chapter 1
Success and Failure
Basic Concepts 4
Object Technology 4
Class
5
Object 5
Inheritance
6
Encapsulation
Polymorphism 9
Framework
9
Incremental and Iterative Development
10
Chapter 2
Project Expectations
Project Histories 11
Alfred: Success with Changing Requirements
12
Brooklyn Union Gas: Success Through Attentiveness
13
Ingrid: Success in Migrating to C
14
Manfred: Failure in Prototyping
15
Mentor Graphics: Trouble Migrating to C
16
Object Technology International: Success in Productivity
and Speed
17
Reginald: Failure with Changing Rules
18
Stanley: Too Much Cutting Edge
18
Tracy: Failure Through Naivete
19
Udall: Success by Restarting Smaller
20
Winifred: Inattentive But Persistent
21
Possible Benefits of Object Technology 23
Responsiveness to Variations on a Theme 23
Responsiveness to Change 23
Time-to-Market 24
Communication Between Developers, Users, and Executives 24
Maintainability 24
Reuse 25
Productivity 25
Window-Based User Interfaces 26
Morale 26
Automated Code Generation 27
Software Process 27
OO Design, Encapsulation, and system Evolution Tom Morgan 28
Costs 28
Are You Underestimating
28
Time to Get New Developers Productive
28
Immaturity of the OO Industry
29
Hazards of C
29
The Difficulty of Reuse
29
Establishing a Software Process
29
Business Modeling versus Software Design
29
The Cost of CASE Modeling Tools
30
Probable Costs 30
Nonobject Issues Checklists 31
Chapter 3 33
Selecting and Setting Up an OO Project
Project Suitability 34
Variations on a Theme 34
Simplified Program Structure 35
Memory Management Features 35
What Is Not Suited
36
Project Purpose 36
SWAT 37
Investigative
37
Production 40
Full-Commit 47
Other Project Categories 41
People 42
Executive Sponsor 42
Project Manager 43
Technical Lead 44
Technical Staff 44
Users 45
Personality Types 46
Technology 47
The Selection Process 47
One Person Is Persuasive or Stubborn
48
The Team Knows a Similar Technology
48
The Technology Is Safe, Popular, or Standard
49
The Technology Is the Rational Choice
50
Programming Languages
51
Managing Smalltalk
52
Managing C
53
Disciplined Use of C
Jeremy Raw
58
Managing OO COBOL
59
Managing Java
60
Tools 61
Upper-CASE Tools
61
Using Java Sam Griffith
62
The Scanner Challenge
65
Minimum CASE Tool Requirements
65
The Cutting Edge
66
Training and Getting Advice 67
What to Teach
68
Developers do not know how to think in objects.
68
Developers do not know how to make design trade-offs.
69
Developers program poorly or use tools badly.
69
Different programmers write differently, making the code hard to learn. 69
Developers create redundant classes because they do not know what
is in the class library.
70
No one knows how to document a framework well.
70
Developers do not understand their role on the project and who depends on them. 71
When to Teach
71
Getting Advice
72
Legacy Issues 72
Mainframes
72
Relational Databases
73
Project Setup C.D.
74
Review 75
Chapter 4 77
Getting Started
Methodology 77
Big-M Methodology
78
A Base Methodology to Tailor 81
Discussion of the Methodology
82
Roles, Skills, Techniques
84
Tools
87
Teams
88
Ownership
89
Deliverables
89
Standards
91
Activities
92
Building Consumer Understanding of the Design Ward Cunningham 94
Estimates 95
Two Weeks per Noncommercial Class
96
Domain Classes 96
Screen Classes 96
Utility Classes 97
Frameworks 97
Plans 98
an Estimation and Planning Session alistair Cockburn 100
Milestones 100
Measurements
102
Take the Time to Design
104
design, and Two Smalltalk Projects K.L. 106
Making Corrections
A Study Project 109
Stage O: The Usual Ignorance
109
Stage 1: Disaster
110
Stage 2: Rebuild
110
Stage 3: Improve
111
Stage 4: Functioning
111
Stage 5: Overconfidence in Scaling Up
111
Lessons From This Study Project
112
Managing Precision, Accuracy, and Scale
112
Managing Work According to Precision
and Accuracy
115
Increments and Iterations
117
Increments and V-W Staging
118
Iterations
123
Combining Increments and Iterations
126
Burm Some Pancakes Luke Hohmann
128
Project Increments 129
Increment 1
129
The Architecture Team
129
The Training Team
130
The Intentions
130
Two Stories
131
Increment 2
132
Pause and Learn
132
Move On
133
Increment N
134
User Involvement
134
Watching Users K.L. 136
Project Teams
136
Ownership
137
Involve the Users Jon Marshall 138
Total-Ownership Teams
138
Matrixed Teams
138
Domain Modeling and Reuse
140
The Domain Model
140
Hazardous Situations
140
The Common Domain Model
141
Why Are There Multiple Valid Domain Models
143
PolyBloodyHardReuse
146
Conflicting Reward Systems
148
Lack of Trust
149
I Can Write It Faster Myself
149
Further Reading
151
Chapter 6 153
Advice From Hindsight
Costs and Benefits Revisited
153
Sentences You Hope Never to Hear 154
Writing 500 Lines of Code per Day
154
Model the World, Then Code
156
Design the Screen, Then Code
157
Iterate Prototypes
157
Classes
158
Reuse Is Easy
158
More on Iterations 159
Self-Test 160
Two Increments Delivered
160
Thirty People
160
Analysts, Programmers, and Tools
161
Learning on From the Compiler
161
Programmers Between Projects
162
On the Cutting Edge
162
Designers and Programmers Separated
162
Six-Month Pilot Started
163
Chapter 7
Expand to Larger Projects
Your First Big Project
165
Project Charter
166
Communication
166
Staffing, Skill Dilution, and Project Teams
167
Methodology 168
Increments and Iterations
169
The Cutting Edge
169
Domain Modeling
169
Risk Reduction
170
PolyBloodyHarderReuse
170
Class Duplication
170
Training the Tidal Wave
171
Ten Lessons the Hard Way Glenn House
172
Train Fewer People
175
Train More Effectively
175
Training 50 or More People
176
Set up a Full-Time Classroom Program
176
Set up 6 to 10 Connected Projects
176
Use a Full-Time Mentor
176
Maintain Tight Standards and Review Policies
177
Rotate People
177
Productivity 177
Size
177
Staff Skill Mix 179
Team Structure
180
Even Mix
180
Progress Teamfrraining Team
180
Productivity Changes Over Time
181
Lines of Code per Month
182
Frameworks
183
Productivity Revisited
184
Migrating the Organization 184
Chapter 8 187
Rechecking: A Case Study
Winifred Revisited 188
Summary
188
History
188
Stage 1: Good Start, with Experience and Support
188
Stage 2: No Architecture, Almost No First Delivery
189
Stage 3: New Increment; Add Teams, Mentors, Architecture
190
Stage 4: Owner per Deliverable; New Infrastructure
191
Analysis
191
Relation to Book''s Topics
192
Technology Is Only Part of the Story 197
Organizations jim Coplien
198
Appendix A
201
Collected Risk-Reduction Strategies
Appendix B
237
Crib Sheet
Index
43
猜您喜欢

读书导航