Information Technology Reference
In-Depth Information
individual and trust him/her to get the results than invest in a process. Ad-hoc
approach places onus on the individual to obtain results. Heroics are possible.
Adherents of agile methodologies prefer ad-hoc approach to requirements man-
agement in true adherence to agile philosophy which puts emphasis on customer
satisfaction over everything else. Agile projects use iterative life cycle for software
development in which the total software product is developed and delivered in
iterations with no iteration being longer than four weeks.
It is my observation that the methodical approach gets results relatively more
often than an ad-hoc approach. Imagine yourself going to a doctor to cure some
malady. Let us say that the doctor does not believe in process-driven approach.
Assume for a minute that the doctor tells you ''Here, take this medicine. If it doesn't
work come back and I will give you another medicine. I will cure your malady with an
iterative approach. It is much faster and cheaper to cure your trouble than going
through all those unreliable diagnostic procedures. What do you say?''
Are you likely to continue your treatment with that doctor? The chances are
very slim—right? You would go to a doctor who first diagnoses your malady using
a series of diagnostic procedures than jumping into treatment right away, even
though the doctor costs you more money. But here we are in software development
organizations, advocating jumping into coding right away and thumb our noses at
methodical approach.
Do I sound like condemning ad-hoc approach completely?
Here are my recommendations:
1. When the organization is small with the owner managing the projects, ad-hoc
approach would deliver results.
2. If the organization has few concurrent projects, say less than five, the ad-hoc
approach would be adequate.
3. When the functional domain in which the organization operates is the same in all
projects and the human resources are stable with little attrition, again the ad-hoc
approach would get the results.
4. If the organization is large, handles multiple projects concurrently, has sig-
nificant attrition in the human resources and the functional domains are dif-
ferent in every project, a process-driven approach is perhaps mandatory.
1.6 Requirements Engineering
The word ''Engineering'' has multiple meanings and connotations.
One definition of the term ''engineering'' is ''engineering is the application of
science for practical purposes''. It connotes that all engineering is based on proven
scientific principle and therefore engineering is not art.
Another definition of the term engineering is that engineering is a field of study
and research. The fields of study and research such as mechanical engineering,
 
Search WWH ::




Custom Search