Welcome Guest, Not a member yet? Register   Sign In
How do you go from planning to deployment in a web application?
#7

[eluser]kRON[/eluser]
Most of us have been going agile with test drive development for web app development. We don't spend too much time pondering on the perfect and fully complete models and writing 40 page documents. That's now done when your either developing something for the military, for a client where the project leader hasn't touched a line of code in the past 10 years or when you want to run into a dead-end halfway during the project. The idea is to get yourself up to speed stemmed on the best programming practices known to you and your inert experience, both which help you shift into any new direction as required without having to go back and change anything, just add the required tidbits for extended functionality and know everything fitted in perfectly.

Usually you start up programming even before you finish the design. For the design you start with a base wire frame and develop wire frames for all unique pages. Wire frames will be less in detail when you get the hang of it, usually just containers that will be replaced with actual styles later, perhaps upon the clients request. Also, your never concerned with doing all the unique cases. If you know you'll have to support, say, sub-sites within your design, it's just about enough to draw a big container and let the devs know they'll need to jack-in support for inserting multiple css documents for certain pages.

Things that really help you here are CSS frameworks. I'm working with 960 Grid System, it comes packed with pre-made documents for all your favorite applications and a 12 or 16 column grid. That saves you time because you stop making up dimensions and stick to column widths. Also, most frameworks have a lot of tools associated with them that help you rapidly prototype design.

Secondly, TDD. You'll usually start up by copying that perfect base controller (or controllers) and model (or models) [+ interfaces] from your previous project. Usually, they'll already conform you to do everything right by failing hard when you don't by a) making sure controllers generate the required page data for each view b) already have a known fail-safe flow so you can start working on cases that will work and continue on developing. After that, it's only a matter of identifying new models.

You'll know your doing everything right when: you can radically change the design without touching your views or god forbid something else (structured CSS definitions and good inheritance). You can change the database, and the models wouldn't care less (good mapping). Your base classes are doing most of the work (you went DRY and implementing new features or tweaking them will be done in only a couple of classes, rather than most of them). You add new functionality and all concerned classes will fail unless they implement it (you add something new in a way you can run a test to see if all classes are complying).

So this is mostly about taking the best principles to the max. When you've got that in the core and as the basis of your applications - your doing it great. If your classes are easily readable, small and you've developed with patterns that can cover just about anything - your king.

Lastly, never make any presumptions that something is complete or won't require any modification.


Messages In This Thread
How do you go from planning to deployment in a web application? - by El Forum - 12-25-2008, 02:35 PM



Theme © iAndrew 2016 - Forum software by © MyBB