Changing Requirements and Design
Example: The CNRI Handle System -- a high performance, distributed system to map names to resources (1994-99).
? In 1994 only web browser was Mosaic
? In 1994 Java did not exists
? In 1994 mirroring and caching utilities were not available
? In 1994 commercial interest was limited
Design decisions made in 1994 had to be changed. Software was rewritten and greatly improved in 1998/9.
If a job's worth doing, it's worth doing twice!