Preface | p. xv |
Acknowledgments | p. xvii |
The Internet Is a Fabulous Invention, But... | p. 1 |
The beginnings of maintenance problems | p. 5 |
The Web crisis consequence | p. 6 |
The Web changes everything | p. 9 |
Speed has changed everything | p. 10 |
Companies that embraced the Web created new opportunities | p. 12 |
Companies that ignored the Web are paying the price | p. 16 |
We need Web engineering | p. 18 |
Companies are busy now | p. 19 |
The future and some good advice | p. 21 |
Be proactive and win! | p. 22 |
An outline of each chapter | p. 22 |
Why I wrote this book | p. 24 |
The audience for this book | p. 26 |
Key messages from this chapter | p. 26 |
The Nature of the World Wide Web | p. 29 |
The Internet rules! | p. 30 |
The beauty and potential of the Web | p. 31 |
The phases of Web acceptance | p. 34 |
Initial focus for companies concerning their Web systems | p. 36 |
Mistakes are made too easily and are very costly | p. 37 |
The Web crisis | p. 40 |
What is driving the Web crisis? | p. 42 |
Web systems can be very complex | p. 44 |
Web system architecture and terminology | p. 48 |
Nine key Web crisis challenges | p. 52 |
Speed of change challenge | p. 52 |
Variant explosion challenge | p. 54 |
Dynamic content challenge | p. 56 |
Process support challenge | p. 58 |
Performance effect challenge | p. 60 |
Scalability challenge | p. 61 |
Outsourcing challenge | p. 61 |
Politics challenge | p. 62 |
Immaturity challenge | p. 63 |
Summary of the nine challenges | p. 64 |
Signs of a crisis point | p. 65 |
The nature of Web programming | p. 65 |
Key messages from this chapter | p. 68 |
Understanding the Many Views of Configuration Management | p. 73 |
Configuration management is configuration management regardless of object type | p. 74 |
The essence of configuration management: Key notions and terms | p. 78 |
An everyday example | p. 78 |
The old view and the new view of configuration management | p. 80 |
Typical software development and maintenance life cycles | p. 81 |
Software engineering models | p. 82 |
The value and benefits of configuration management | p. 83 |
Business and technical benefits | p. 85 |
Signs of a configuration management problem | p. 87 |
What drives companies to a configuration management solution | p. 88 |
How success drives companies to configuration management | p. 89 |
Unified view of configuration management | p. 93 |
The eight functional areas of software configuration management | p. 94 |
Version and configuration control | p. 96 |
Configuration item structuring | p. 97 |
Construction of configurations | p. 98 |
Change management | p. 98 |
Teamwork support | p. 100 |
Process management | p. 101 |
Auditing | p. 101 |
Status reporting | p. 102 |
Key decisions companies must make, or mistakes I see too often | p. 102 |
Key messages from this chapter | p. 103 |
The Automation of Configuration Management | p. 107 |
Automated, not manual, configuration management | p. 109 |
Spectrum of configuration management tools | p. 109 |
Not all configuration management tools are the same | p. 111 |
CM for Web teams | p. 112 |
Lightweight versus heavyweight tools | p. 114 |
Dynamic content | p. 115 |
Component library management | p. 116 |
What the configuration management vendors are doing | p. 116 |
What is the best configuration management tool? | p. 118 |
Enterprise-wide solution or project-specific solution? | p. 119 |
Relationship to other disciplines and tools | p. 121 |
Concepts, or architectural elements, in configuration management tools | p. 124 |
Versions | p. 124 |
Repository | p. 127 |
Workspaces | p. 127 |
System models | p. 128 |
Builds | p. 128 |
Relationships | p. 128 |
Change requests | p. 129 |
Change life cycles | p. 129 |
Change sets | p. 129 |
Processes | p. 130 |
Tasks | p. 130 |
Audit trail | p. 131 |
The death and resurrection of the configuration management industry | p. 131 |
Key messages from this chapter | p. 132 |
Configuration Management Tool Selection and Deployment | p. 135 |
Configuration management opens up a can of worms | p. 137 |
Size matters, but it does not change how adoption is done | p. 137 |
Quick and dirty adoption or methodical adoption? | p. 138 |
The good, the bad, and the ugly about adoption | p. 140 |
Why companies fail at adopting a configuration management solution | p. 141 |
The model of the configuration management solution | p. 143 |
Sequence of steps in the configuration management solution | p. 146 |
Step 1 Select teams | p. 147 |
Step 2 Create the sponsorship strategy | p. 150 |
Step 3 Capture the status of configuration management today | p. 151 |
Step 4 Define the configuration management vision | p. 152 |
Step 5 Specify the configuration management benefits | p. 152 |
Step 6 Assess readiness to change | p. 153 |
Step 7 Define configuration management requirements | p. 154 |
Step 8 Do risk management | p. 156 |
Step 9 Define the selection method | p. 157 |
Step 10 Make the strategic decisions | p. 158 |
Step 11 Submit the request for proposal to the vendors | p. 158 |
Step 12 Conduct candidate tool demonstrations | p. 159 |
Step 13 Pick the finalist tool(s) | p. 160 |
Step 14 Develop a CM plan or describe CM processes | p. 160 |
Step 15 Do proof-of-concept pilot(s) | p. 162 |
Step 16 Pick the CM tool | p. 165 |
Step 17 Complete risk mitigation | p. 165 |
Step 18 Schedule roll-out | p. 166 |
Step 19 Train users | p. 166 |
Step 20 Prepare the CM tool | p. 167 |
Step 21 Manage resistance | p. 167 |
Step 22 Gather lessons learned | p. 171 |
How long are the tool selection and adoption going to take? | p. 172 |
ROI and useful metrics | p. 173 |
How can we recover from tool adoption failure, or turn "shelfware" into "UseWare"? | p. 176 |
The value of configuration management vendors | p. 177 |
The big gap regarding standards | p. 180 |
Should the tool follow the process or should the process follow the tool? | p. 181 |
Key messages from this chapter | p. 182 |
Case Studies in Configuration Management Automation of Web Systems | p. 185 |
What I did | p. 186 |
The messages and best practices | p. 186 |
Case study: Carclub.com | p. 189 |
Its CM system and environment | p. 189 |
CM process | p. 190 |
Minimizing mistakes in publishing | p. 191 |
CM adoption and benefits | p. 191 |
The evolving CM solution | p. 191 |
Messages and lessons learned | p. 192 |
Case study: eCampus.com | p. 192 |
Configuration management goals | p. 193 |
Development and maintenance life cycles | p. 193 |
Managing changes | p. 194 |
Messages and lessons learned | p. 195 |
Case study: EDS | p. 196 |
The nature of the CM solution | p. 197 |
Creation layer | p. 197 |
Collection layer | p. 198 |
CM layer | p. 199 |
Compilation and distribution layer | p. 199 |
Deployment layer | p. 199 |
Configuration items | p. 200 |
Configuration item life cycle | p. 201 |
Managing changes to client Web sites | p. 202 |
Adoption of the CM solution | p. 203 |
Evolution of its CM solution | p. 203 |
Messages and lessons learned | p. 203 |
Case study: Lockheed Martin Aeronautical Systems | p. 204 |
The environment and CM goals | p. 204 |
CM processes | p. 205 |
Evolution of its CM solution | p. 205 |
Messages and lessons learned | p. 206 |
Case study: Lycos | p. 206 |
Messages and lessons learned | p. 209 |
Case study: NASD | p. 210 |
NASD's goals for its CM solution | p. 210 |
CM infrastructure | p. 210 |
CM processes | p. 211 |
Change management | p. 211 |
Web content support | p. 214 |
Problems it was having and benefits that CM brought it | p. 215 |
Further CM evolution | p. 216 |
Adoption of the CM solution | p. 216 |
Messages and lessons learned | p. 218 |
Case study: OneSource Information Services Inc. | p. 219 |
Problems solved and benefits gained | p. 219 |
Infrastructure | p. 220 |
Workflow and change management | p. 220 |
Deployment | p. 221 |
Messages and lessons learned | p. 221 |
Case study: USinternetworking | p. 222 |
Problems solved and benefits offered by its CM solution | p. 222 |
Change management | p. 224 |
Company organizational layout | p. 225 |
Messages and lessons learned | p. 226 |
Appendix A | p. 229 |
A.1 Configuration management questionnaire | p. 230 |
A.2 Categories of configuration management requirements | p. 240 |
A.3 Categories of risks | p. 240 |
A.4 Process description | p. 244 |
A.5 Types of process or process levels | p. 245 |
A.6 Example of a CM process model | p. 245 |
Description of the roles in the states | p. 247 |
Description of the roles in the transitions | p. 247 |
Description of the states | p. 247 |
A.7 Template for configuration management status report | p. 253 |
Executive summary | p. 253 |
People's understanding or definition of CM | p. 254 |
Problems found in our development and maintenance practices and tools | p. 254 |
Goals or visions people have for a better solution | p. 254 |
Why CM is important to this company | p. 254 |
Recommendations regarding CM | p. 254 |
A.8 Template for risk management plan | p. 255 |
Executive summary | p. 255 |
Detailed description of the risks | p. 256 |
Lessons learned | p. 257 |
A.9 Template for a pilot project plan | p. 258 |
Success criteria and expectations | p. 258 |
Why was this project chosen to be the pilot? | p. 258 |
Scope of the pilot project | p. 259 |
Schedule | p. 259 |
Risks and concerns | p. 259 |
Process models | p. 259 |
Training materials | p. 259 |
Vendor interaction | p. 261 |
Lessons learned and data captured | p. 261 |
About the Author | p. 263 |
Index | p. 265 |