File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes OO, Patterns, UML and Refactoring and the fly likes Choose a Technology - before design / after design ? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "Choose a Technology - before design / after design ?" Watch "Choose a Technology - before design / after design ?" New topic

Choose a Technology - before design / after design ?

kri shan
Ranch Hand

Joined: Apr 08, 2004
Posts: 1429
When we choose a technology(J2EE / .NET/ something else) before design or after desining stage ?
manuel aldana
Ranch Hand

Joined: Dec 29, 2005
Posts: 308
from a totally new implemented system view (which is hardly found except in acadamic worlds) requirements should drive your technology and not your design. when maintaining a system you're chosen technology must somehow fit into the existing one.

i think design emerges while implementing your system. use upfront desing only for roughly requirement issues. the more fine grained you get to your running system the more you loose sight of your first design. and is a pain in the arse if you try to back-squeeze your implementation to you're 2 weeks ago proudly presented design

don't develop technology centered, refer better to good practices (unit-tests, close requirements engineering, well factored code etc....).

of course you should know about technologies (jsp, asp, mysql, or whatever), so you can choose the appropriate one for your system, but remember: no technology is worth the holy grail.
[ April 28, 2006: Message edited by: manuel aldana ]

aldana software engineering blog & .more
Ramen Chatterjee
Ranch Hand

Joined: Apr 27, 2006
Posts: 62
personally, I like the suggestions (and reasoning) put forward in the book IT Architectures and Middleware listed in javaranch's SCEA recommended reading.

Briefly, technology may already be chosen for you depending on where you are working. Also, you would need to consider what respources you have and their skillset. You might also ask, does the technology 'fit' the a way you work?

A high level design can be technology agnostic, and I agree with the previous posting, focussing on good practice will give a better design. Model Driven Architecture takes this approach, but there will always come a point when you need to choose a platform.

I highly recommend the book referred to earlier.

[ April 29, 2006: Message edited by: Ramen Chatterjee ]

Could try harder
I agree. Here's the link:
subject: Choose a Technology - before design / after design ?
jQuery in Action, 3rd edition