 |
|
| | |
|
|
|
| |
Common Sense!
Designing software isn’t easy, but in many cases it is not taken seriously
enough until it’s too late. Practically any experienced software designer has
seen this happen. The requirements, at the beginning, seem so simple that
development of the software begins without too much thought. Later, the
requirements become more sophisticated and changes to the application become
troublesome at best. Developers fix one item, only to discover that the “fix”
broke three other items!
It’s a cycle that slowly causes the destruction of the application:
-
Performance degrades
-
Fixes break more items than they fix
-
The code becomes very difficult to read
-
The number of dissatisfied users grow (along with complaints)
-
I.T. managers go bald
Eventually, the weight of all these problems causes the users to demand a whole
new application.
And if you’re not careful, the same cycle starts all over again.
Of course, the opposite is also a problem. Sometimes the design of the software
is overly complex from the start. Which not only causes the same problems
outlined above, but realizing there is a problem happens later because it takes
longer to write the code. This is a waste of time and money.
Common sense is our philosophy. One of our main issues when designing a
solution is to Keep it Simple. This may sound like a contrary statement
to the problems outlined above. However, done right, simplicity in design leads
to elegant solutions.
We design software to keep processes separated. For example, the section of
code responsible retrieving information from the data repository should not be
complicated with business rules; it should just simply get the information. The
business rules can be checked by another section of code specifically designed
for this purpose. This sounds simple, but many times requirements and time
constraints put pressure on developers to blur code responsibilities. A simple
and elegant design relieves some of this pressure by making it easier to put
fixes in the right place than it is to put them where they don’t belong. But it
takes practice, dedication, and the right client.
If you have an application that seems way too complex, it probably is. We can
help you simplify the process.
|
|
|