Aug 17 2009

The Application LifeCycle - Vital At All Times.

Posted by Mike Brunt at 9:39 AM Web Servers | .NET | DataBase | CloudComputing | ColdFusion


So after all of these years of paradigm shifts in the same coding methodologies, same in the sense that they get regurgitated with different names, Agile for instance; we are still seeing far too many applications being launched only to encounter some level of failure, sometimes complete failure.  Those failures typically manifest themselves in two major areas, firstly a lack of key functionality required by users and/or a failure to support the number of users or to scale efficiently when the user load increases.  Capturing user needs effectively is a subject with many volumes written or blogged on the subject.  In my years of developing web applications, I believe the Flip process which came from the FuseBox community was the best attempt there has ever been to create a successful method of capturing user requirements and coupled with DevNotes, allowing user-developer interactivity on a screen by screen basis, there was a potent overall method of getting what the users actually needed without them killing  the project in the process and having them feel involved and happy.  We can debate Agile etc till the cows come home, but Flip with DevNotes was very potent.

The main purpose of this blog post is to lay out, what I believe and have found to be a way to ensure that when an application is launched it will handle the expected user load and will also scale both on a single server and also across multiple servers as the application load and availability needs increase.  This sentence contains an essential state of mind which I believe we all need to subscribe to as application developers, managers etc.  That is that the application we are designing, engineering, coding etc will need to run on multiple instance/servers/locations, we need that mind set from day one and at all times, ongoing.  With this in mind we should never hard-code anything into an application that is specific to a single server/instance; drive paths, server/instance names, IP Addresses etc.  Believe me, if we don't follow this simple rule we will hit a brick wall of hurt sometime in the future, that is assured.

One other major point I want to address here, before launching into my main thrust.  With the ever increasing use of Cloud Computing comes a very dangerous mind-set, in my opinion.  That mind-set is that we do not need to pay that much attention to scalability in the development phase of our application lifecycle as we can simply use the "on demand" characteristics of Cloud Computing to scale as we handle more load.  Any one reading this blog post who has worked with shared ColdFusion hosting will know that there is no horsepower nor server anywhere that can make up for badly written code.  In Cloud Computing that gets even worse because if the problems in the code relate to hardware items, reading-writing files to a hard drive, interacting with physical network devices, such as NIC's.  The reason is that these items are not accessible by us, so if you are  contemplating Cloud Computing, it is even more critical to follow these points below.

With that in mind we will now discuss the simple principles to follow to ensure all the applications we design and write will operate efficiently from day one and scale effectively as the need arises.


Step 1: USER NEEDS - WIREFRAME/PROTOTYPE - Capture all user needs before starting to code and get them to sign off on the fact that you have captured what they need.  Also and ideally, give them an adequate feedback mechanism which is dynamic. As I mentioned above, Hal Helms created a construct in ColdFusion called "DevNotes" which when combined with a WireFrame presented a very potent way to glean feedback from the users before coding starts.

During this main functionality gathering phase we use two major "sub phases".  The first is to create a click able "wireframe" with no graphics, I stress this because some firms call the look and feel phase (prototype) the "wireframe" phase, in our opinion, a wireframe should have no graphics, but should be realistic model with click-throughs.  Once the client has approved the click able model we can then add graphics to create a prototype.  Once the client has approved the prototype we then move to the development phase.  

Step 2: DEVELOPMENT/UNIT TESTING - In our shop we develop locally and each developer has a developer edition of ColdFusion and any other copies of things they may need, a database for instance. The main point is that every developer is independent and can function from wherever they may be; we are fanatical about telecommuting for both developer life-style and ecological reasons.  No code can be marked to go to Integration Testing until all unit tests complete successfully and we are not just talking about unit tests as in OO-CFC constructs, we mean all code functions without breaking on the developers local system.

Step 3: DEVELOPMENT/INTEGRATION TESTING - Here we take the code from all developers and move it to a central development server and test the whole application to make sure that code from one developer does not break code from another.  If any code does break it is sent back to the original developer to be fixed and this iteration continues until all code in the Integration Testing environment functions without fault, at which point it is moved to QA-Load Testing.

Step 4: QA-LOAD TESTING - This is the most often missed phase in application development and it is a critical one that should never be missed; in fact almost all clients we have helped in our troubleshooting practice have problems because they did not load-test the application.  We advise and practice load testing to at least 150% of the expected load and we also get the client to state what the minimum acceptable page response time is.  The application should not be moved to production until it has passed all load testing which means it is responding to the required client page response time at 150% of expected maximum load.  Once again code is iterated back to developers and back through Unit Testing, Integration Testing and Load Testing.

Step 5: PRODUCTION - After following the first 4 steps of the application lifecycle and only after these have been passed, we are now ready to deploy the application to Production.  There is sometimes a separation between Load Testing and QA where the QA environment is a direct copy of actual Production, this is an additional step which is not necessary but nice to have.  

We can categorically state that if this simple Application Lifecycle methodology is followed, the resulting applications will perform as needed in all required environments.  

One very important last point, if Cloud Computing will be the eventual platform, the Integration and QA-Load Testing must be carried out on the Cloud Computing platform to be used.




Jason wrote on 08/17/09 12:10 PM

Very insightful

all of us involved in software development would be much better off if we'd utilize that methodology
Mike Brunt

Mike Brunt wrote on 08/17/09 12:35 PM

@Jason thank you very much for your comment and yes we always try to follow this.

Shimju wrote on 08/17/09 4:10 PM

@Mike, what software you use for QA-LOAD TESTING?
Mike Brunt

Mike Brunt wrote on 08/17/09 8:19 PM

@Shimju thanks for taking the time to comment, we use The Web Server Stress Tool from Paessler

pandora wrote on 07/13/12 2:09 AM

thank you very much for your comment and yes we always try to follow this.
référencement site web

référencement site web wrote on 10/29/12 6:26 PM

Merci pour l'info. En tout cas, je vais revenir vous rendre visite très prochainement. A bientôt.

referencement gratuit agence référencement naturel
cours référencement web

cours référencement web wrote on 11/13/12 11:27 AM

J'aimerai collecter quelques avis sur ces info. Les méthodes webmarketing en charge de la captation de trafic en optimisant la position de son blog sur les mots clés saisis par les visiteurs s'appelle le SEO. Etes vous d'accord ?

référencer son site sur google agence seo
sparxx rx

sparxx rx wrote on 10/16/14 8:55 AM

Measuring at 3.35 inches, this SparXXrX® bullet comes conveniently with a keychain – truly, what woman would not want to take her vibrator with her when she’s on the go? wrote on 11/02/14 1:01 AM

There are many ideas revolving around the issue of life insurance which are finally turned into myths. A big number of people in Toronto tend to believe in these deceptive concepts which can cause a small amount of coverage and finally financial hardship to the people you care for the most. wrote on 11/02/14 1:01 AM

Auto insurance is not a luxury but a necessity. And in order to get the maximum advantage experts recommend that you should shop around for auto insurance every 2-3 years. wrote on 11/02/14 1:01 AM

Insurance is a complex subject for most people. However, by just knowing few simple tips you can save lot of money in your annual premium.
escort perth australia

escort perth australia wrote on 11/06/14 5:36 AM


Between the hustles plus commitments of your contemporary way of life, time wasted in activities just like shopping plus running alternative necessary errands is restricted. wrote on 11/19/14 7:02 AM

Have fun with the finest German deli food while in the comforts for yourself home and profit by a overnight Italian food items delivery out of an internet Italian food items shop. wrote on 11/19/14 7:02 AM

Megapolis Good Homes couple of is magnificent project which not just for delivering you actually apartments but it surely is furnishing dream dwellings where you and your folks will raise many sugary memories. wrote on 01/26/15 11:42 PM

UEFA Dinar Cup 2012 is really a famous worldwide football event hosted through Poland as well as Ukraine, this tournament is intended to begin 8th 06 2012 and can last until 1st This summer 2012. In this particular tournament you will see 16 powerful nations competing for that Euro Mug 2012.

koks wrote on 01/31/15 7:32 AM

Loved to read your blog. I would like to suggest you that traffic show most people read blogs on Mondays. So it should encourage blogger to write new write ups over the weekend primarily.
Great post! Interesting information and cute writing style.
Purvi Kapoor

Purvi Kapoor wrote on 05/07/15 4:21 AM

I am Really happy that you written this post which is very informative for everyone... good keep it up
Meghna mathur

Meghna mathur wrote on 05/18/15 8:22 AM

Hi dear, I love your posts because your posts are so unique nice and meaning full for all users.
memorial day images

memorial day images wrote on 05/19/15 6:43 AM

Best Memorial Day Images, Messages, Pictures,wishes,Messages, Wallpapers,sms,greetings, Cards,Memorial Day Poems,Quotes To Share On Whatsapp,Facebook,Twitter And Other Social Media
Aarohi Verma

Aarohi Verma wrote on 07/03/15 7:57 AM

Aarohi Verma is a student of Hyderabad escorts University, I am very sexy looking and attractive body shape, Hyderabad escorts service is a best way for client satisfaction, escorts in Hyderabad and all type service available here.
Suhani mahajan

Suhani mahajan wrote on 07/03/15 8:36 AM

Hi, I'm so happy to find your blog with a good information about escorts.

Riya wrote on 07/03/15 8:42 AM

I often visit your blog that you post on your blog site and I love them I am also same profession so please visit my website too.
clothing manufacturer

clothing manufacturer wrote on 07/04/15 4:17 AM

thank you very much for your comment and yes we always try to follow this.
happy birthday status

happy birthday status wrote on 08/31/15 6:24 PM

This topic has always been one of my favorite subjects to read about. I have found your post to be very rousing and full of good information. I will check your other articles shortly.
mahi net

mahi net wrote on 10/05/15 2:51 AM

Great Information sharing .. I am very happy to read this post.. Thanks for giving us go through info. Fantastic nice. I appreciate this post.
sonam parihaar

sonam parihaar wrote on 10/05/15 2:52 AM

Actually i was waiting for ur wonderful post rugby world cup live streaming 2015..
sonam parihaar

sonam parihaar wrote on 10/05/15 2:53 AM

Thanks for shearing my post..
christmas message

christmas message wrote on 10/08/15 9:17 AM

christmas images , christmas wishes ,christmas wallpapers ,christmas greetings
,christmas quotes ,christmas poems ,christmas cards ,christmas pictures.
Anjali Verma

Anjali Verma wrote on 11/19/15 10:03 AM

thanks for sharing this kinds of posting.. I love it. I will come back to read your post.
blogger templates

blogger templates wrote on 12/23/15 7:08 PM

Thanks for sharing the info. Get free blogger templates for your blogs. wrote on 12/24/15 9:47 AM

Nice post it's easy to understand. wrote on 12/24/15 9:48 AM

Thanks for sharing such an informative post. your content seems quite easy and helpful to understand.a>
Models in Chandigarh

Models in Chandigarh wrote on 06/02/16 4:07 AM

She is the person who can see better and it is the most ideal route through which a portion of the stunning elements would be to a great degree anticipated by the people and it is not something that does not come genuine.
Chandigarh escort sservice

Chandigarh escort sservice wrote on 07/05/16 2:07 AM

Indeed, even directly after that you might will to offer the best of the administrations. It has been for some time that you have to demonstrate certain kind of respects. The young ladies can go wild when they meet you. It is their obligation to fulfill you feel; in the meantime you might need to think that its extraordinary the length of you wish to search it for. More often than not, you require a tremendous measure of diversion with a specific end goal to turn out from anxiety and gloom.
Chandigarh vip models

Chandigarh vip models wrote on 07/12/16 12:41 AM

Chandigarh call young women from CHANDIGARH MODELS are more than call young women. Each our young woman is a real lady who will run with and delight you while you touch base in Chandigarh.

برامج wrote on 07/19/16 11:24 PM

nice post
برنامج الاذان

برنامج الاذان wrote on 07/19/16 11:29 PM

Truly decorous Internet performer entirely, an appropriate confidential alternative determine a trend numerous processs earlier
مواقيت الصلاه

مواقيت الصلاه wrote on 07/19/16 11:36 PM

thanks for sharing. and also This article gives the light in which we can observe the reality. this is very nice one and gives in depth

ماسنجر wrote on 07/19/16 11:41 PM

I have not done any extensive load testing of Zeus as yet but will be doing so and will post results
Chandigarh call girls

Chandigarh call girls wrote on 08/13/16 6:10 AM

We similarly have a substitute extent of models and call young women. The models are plainly the best choice for you and irrational. You can endeavor our appealing Independent models in Chandigarh who are not over the top by any methods.
call girls in Chandigarh

call girls in Chandigarh wrote on 08/19/16 3:53 AM

Be that as it may, they were putting forth a decent sum so I thought alright then simply take the plunge. Chandigarh call girls thought they will be with me one by one, and inside no time they will be finished with me. That was my first thought, yet when I achieved the lodging room it was something else they had as a top priority.
Chandigarh call girls

Chandigarh call girls wrote on 08/20/16 4:03 AM

This is the reason I have effectively made an amazing purchaser base of my own in a brief timeframe. A large portion of my organization is do it again clients and they relate me to their partners. I am only a basic phone contact away. Simply give me a telephone contact and my in contact and outcall administrations can be procured effortlessly.
Pune Female Escort

Pune Female Escort wrote on 10/28/16 2:56 AM

Everything is fair in love and war.

mobfun wrote on 11/05/16 4:08 AM

Real <a href="
">mobfun</a> and intimate female in Delhi companions. Beautiful hot independent girl to fulfil your desire.
Blog PPC Latest News & Updates

Blog PPC Latest News & Updates wrote on 11/05/16 9:57 AM

Get Latest PPC blog, SEM keywords research and internet marketing new and update your online marketing strategy of your business