Part 1. Flexibility

published book

It’s Monday morning. Theodore is sitting with Nancy on the terrace of La Vita è Bella, an Italian coffee shop near the San Francisco Zoo. Nancy is an entrepreneur looking for a development agency for her startup company, Klafim. Theo works for Albatross, a software development agency that seeks to regain the trust of startups.

Nancy and her business partner have raised seed money for Klafim, a social network for books. Klafim’s unique value proposition is to combine the online world with the physical world by allowing users to borrow books from local libraries and then to meet online to discuss the books. Most parts of the product rely on the integration of already existing online services. The only piece that requires software development is what Nancy calls a Global Library Management System. Their discussion is momentarily interrupted by the waiter who brings Theo his tight espresso and Nancy her Americano with milk on the side.

  THEO In your mind, what’s a Global Library Management System?

NANCY It’s a software system that handles the basic housekeeping functions of a library, mainly around the book catalog and the library members.

  THEO Could you be a little bit more specific?

NANCY Sure. For the moment, we need a quick prototype. If the market response to Klafim is positive, we will move forward with a big project.

  THEO What features do you need for the prototype phase?

Nancy grabs the napkin under her coffee mug and writes down a couple of bulleted points on the napkin.

The requirements for the Klafim prototype

  • Two kinds of library users are members and librarians.
  • Users log in to the system via email and password.
  • Members can borrow books.
  • Members and librarians can search books by title or by author.
  • Librarians can block and unblock members (e.g., when they are late in returning a book).
  • Librarians can list the books currently lent to a member.
  • There could be several copies of a book.
  • The book belongs to a physical library.

  THEO Well, that’s pretty clear.

NANCY How much time would it take for your company to deliver the prototype?

  THEO I think we should be able to deliver within a month. Let’s say Wednesday the 30th.

NANCY That’s too long. We need it in two weeks!

  THEO That’s tough! Can you cut a feature or two?

NANCY Unfortunately, we cannot cut any feature, but if you like, you can make the search very basic.

(Theo really doesn’t want to lose this contract, so he’s willing to work hard and sleep later.)

  THEO I think it should be doable by Wednesday the 16th.

NANCY Perfect!

Get Data-Oriented Programming
add to cart
sitemap

Unable to load book!

The book could not be loaded.

(try again in a couple of minutes)

manning.com homepage