Business-focused custom software

Go Back

Your design will never be “perfect”

I have unhappy news for you. Your design will never be perfect.

This can be very frustrating to some people. (Probably perfectionist people like me.) They We will spend days/weeks/months agonizing over a design trying to make it perfect.

But it can never be perfect. There will always be trade-offs. Some choices will make your app more maintainable. Others will make it perform better. Some choices will make your app easier to use. Others will make it easier to code.

In one recent design meeting, we focused on a decision between ease of data retrieval and a more descriptive data structure. Both choices are reasonable. The final decision should be made based on the project goals and the organization’s or team’s values. (In our case, we decided making it easier to retrieve the data was more important.

Don’t let your design process get stuck in a perpetual quest for perfection. Review the options, consider the trade-offs, and make a decision.

  • Facebook
  • Twitter
  • Digg It!
  • StumbleUpon
  • Technorati
  • Del.icio.us
  • Reddit

Comments  2

  1. Mark W. Schumann 08 Mar

    And plan for change? Don't use a difficult low-level language when a higher-level one will do? Don't develop features that they might want someday?
  2. Walter 10 Apr

    I believe that functionality should go first before the design. Many times I have encountered programmers who put much effort on the design without serving the core purpose of the program. My style is always perfecting (at least) the required function before tinkering with the design. :-)
Post a comment!

Formatting options
   
 
 
 
 
   

Wanna Subscribe?
Here's the RSS Feed

What the critics are saying...

As someone with over 20 years of software development experience and currently a small business owner, it has been a pleasure working with Avonelle. In addition to being a talented developer, Avonelle also has database expertise and system design skills. Avonelle is open minded and willing to discuss various methodologies for achieving a project goal. She is also not afraid to ask questions which is vital in a software development project. Her up-front project cost (not estimate) is very helpful in budgeting for a project.

--Dwayne Wolterstorff, Owner @ Fair