Friday, October 15, 2010

State the different software methodologies.


  1. State the different software methodologies.
The term software methodology, software development methodology and software process mean almost the same thing in computer software or system development, i.e. the activities carried out by computer system engineers or computer software engineers in an attempt to procure particular computer software that servers a certain function or purpose. This includes the framework adopted, structure, plan as well as the control of the resources engaged in the software or system development process.

There are so many software methodologies and the choice as to which one to adopt is usually dependant on so many other factors such as the purpose of the given software, the prevailing conditions regarding the software development environment and the will of the company or the client procuring or intending to use the final software as some clients even look into the software or system engineers’ methodology to as one of the factors determining whether to contract him or not.

Regarding the purpose of the software, let’s look at the following, example is a situation of a safety critical system such as an aircraft navigation system and a business system, one would find that in a business system, one can have its prototype done and users start using it as they identify its weaknesses and tell the engineers to rectify whereas in an aircraft navigation system, no weakness would be allowed at all for it can cause huge loss of property and life thus all the possible identifiable weaknesses are eliminated first before that system comes into operation. Much stories and arguments apart, the following are the available software methodologies:

i)                    SLDC- Software Development Life Cycle, also understood as System Development Life Cycle which encompasses activities such as Analysis, Design, Implementation, Testing, Inauguration and Maintenance in that order and then back to Analysis, note that it is a cycle hence once we get to the last stage, i.e. the maintenance we still go back to the analysis stage and move along to the maintenance once more iteratively

ii)                  The RUP – The Rational Unified Process, which when looked into intuitively is an iterative software development process framework that was created by the Rational Software Corporation in the US which is a division of the IBM (International Business Machine). However, this process is usually not considered as a single prescriptive framework yet as an adaptable process which can be tailored by the development team or organization selectively in order to end up with their respective results depending on the needs prevailing either on the client’s side, the industry standards or even the development constraints which involve time, scope as well as the budget, Intuitively, this process has characteristics overlapping with other development processes and methodology as will be seen when considering the other methodologies below.


iii)                The iterative process

iv)                The waterfall model


v)                  The agile software development methodology

vi)                The XP (Extreme programming)


vii)              The ISO 9000 methodology – provided by the International Standards Organization

viii)            The ISO 15504 model – also provided by the International Standards organization


ix)                The Capability Maturing Model Integration (CMMI) which replaced the former Capability Maturing Model (CMM)

x)                  The Six Sigma methodology


xi)                The Test Driven Development (TDD)

 For more BA Questions, Sample Resumes and Open Jobs – please visit: http://futurethoughtsllc.com/InterviewQuestionsandAnswers.aspx

No comments:

Post a Comment