details design development

adic


by ivern,
TopCoder Staff
Thursday, November 12, 2004


The TCO component competition was actually two separate competitions: design and development. For the design competition, the finalists were given a requirements specification for a component and were expected to submit a complete design for it. For development, they were given a complete design and had to submit a complete implementation and unit test suite for it.

Before getting to the finals, the competitors had to progress through three rounds of online competition. The four competitors who obtained the highest aggregate score among their top three components advanced to the finals, which were also held online.

The URL History component maintains a dynamic list of URLs on a per-user basis. The URLs are added to the list as they become available, and the user is allowed to retrieve them in sorted order. The component is required to be extensible to allow the user to define new ways to sort the URLs.

Another important requirement for this component is to handle the URL list’s persistence mechanism. Besides managing the persistence itself, the component also needs to administer this storage to automatically purge URLs once they reach a configurable expiration age or once the storage reaches a configurable size.

The component also allows the user to place URLs in groups, to blacklist them so they never show up in the history, or to flag them so they never expire.

When asked what he liked the most about the winning submission, reviewer TheCois replied that he admired the great amount of flexibility it offered. He also liked how the design was both easy to implement and to use.




Great Opportunities are Available from our Sponsors

Microsoft

NVIDIA

Intel Developer Services

Yahoo!