O'Reilly logo

97 Things Every Software Architect Should Know by Richard Monson-Haefel

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 82. Your Customer Is Not Your Customer

Eben Hewitt is a principal on the architecture team at a multibillion-dollar national retail company, where he is currently focused on designing and implementing its service-oriented architecture. He is the author of the upcoming Java SOA Cookbook from O'Reilly.

Eben Hewitt
image with no caption

AS YOU WORK IN REQUIREMENTS MEETINGS to design software, pretend that your customer is not your customer. It turns out that this is a very easy thing to do, because it is true.

Your customer is not your customer. Your customer's customer is your customer. If your customer's customer wins, your customer wins. Which means you win.

If you're writing an e-commerce application, take care of the things that you know people who will shop at that site will need. They'll need transport security. They'll need encryption of stored data. Your customer may not mention these requirements. If you know that your customer is leaving out things your customer's customer will need, address them, and communicate why.

If your customer willingly and knowingly doesn't care about certain important things that your customer's customer cares about—as happens from time to time—consider stepping away from the project. Just because Sally Customer doesn't want to pay for SSL every year and wants to store credit cards in plain text because it costs less to build, it's not OK to simply agree. You're killing ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required