I was reading a thread earlier this morning where I asked myself why in the world are you doing this. And the answer was one we�ve all seen numerous times on this discussion board.
�The client wants to do it this way�.
That scenario raises an issue that is familiar to anyone who develops custom databases. When do you listen to the client and when do you put your foot down and say that will destroy the integrity of the application?
After all, you were hired to design a professional application that works efficiently and meets the needs and goals of the company that purchased your services, so you have an obligation to keep your client happy. On the other hand, you don�t want the very same client complaining vociferously down the road when there are problems as the system begins to crumble because you complied with his or her wishes against your better judgment.
Let me start this thread by giving three examples where you want to do it your way, but the client wants something else. In all three cases, even though I wouldn�t necessarily agree with the choice, I think it would be perfectly reasonable to do what the client wants.
[1] Main Menu
You design a professional looking Main Menu that will guide the user to the various components of the application you worked so hard to develop. However, the client wants his/her users to open A5 and go directly to the data entry form where the employees will spend the bulk of their time.
[2] Tabbed Form versus a Full Page Form
You design a tabbed form that breaks down the various data entry requirements into neat and manageable categories. However, the Client wants his/her employees to see every field in the set on one large form.
[3] What happens when you click on this button?
You design a button that will print the current invoice, or at least gives the user an opportunity to print a range of invoices for one client by date or invoice number. However, when the aforementioned button is clicked, the client wants to print EVERY invoice for that customer.
I only posted three scenarios but we could of course come up with tons of examples where you want to do �A� but the client wants to do �B� and it�s OK. Why? Because we�re talking about personal preferences as opposed to a design strategy that destroys data integrity.
But when the client insists upon a strategy that inflicts serious damage to the relationships between various tables you worked so hard to establish, I think you have a professional obligation to say �No�. What do you think?
Robert T
Comment