An Overview of The Agile Software Development Methodology Family

agile methodology theory

Sharing is caring!

The development of an information system, can be planed, structured and controlled, by using a system development methodology, which best suits the needs of an organization. Selecting the correct methodology though, can have its advantages and disadvantages as well, depending on the nature of the software development project.

All software development projects cannot use the same methodology, because each project have their own technical requirements, and are conducted by organizations of different cultures and have different number of people, working on that project.

In the article chosen this week, a case study was done on the evaluation and selection of a suitable information system development methodology. Since the mid-1980s, numerous organizations have been using an information system development methodology, in order to improve the effectiveness and efficiency, of information system development and design. Software quality and productivity is still low, even though, system information development methodologies, have experienced a lot of advances.

In order to produce a software that is high in quality, the cost have to be very high, due to the many resources that have to be used, in order to produce such a high-quality software. In order to apply an information system development methodology successfully, key drivers are identified in the paper chosen this week.
According to the author, an organization’s unique culture and environment variables, can find a methodology that is tailored to their needs. A South African Information Technology organization, applied a methodology to their Waymark InfoTech.

A philosophy, a collection of phases, sub-phases, processes, phase inputs, phase-outputs, techniques, procedures, tools, and documentation aids, is part of every software development methodology. Project management components are also part of some software development methodologies. Applying a methodology to a software development project, is not as simple as some people may think, and a thorough analysis and evaluation of such methodologies, must be performed, before they can be implemented, because the implemented methodology, may hurt a project more than help that project.

As a conceptual framework, the agile software development is used for understanding software engineering project. The crystal methods, dynamic systems development model (DSDM) and Scrum are some of the agile software development methodologies, which exist today. Software is developed in short time boxes, when using most agile methods, in order to attempt to minimize risks, during software development; the time boxes last for about one to four weeks and are known as iterations. As a miniature software project of its own, each iteration delivers a mini increment of new functionalities, because each iteration includes all the necessary tasks of a software development projects. Such tasks are: planning, requirements analysis, design, coding, testing and documentation.

Project priorities are reevaluated at the end of each iteration, in order to emphasize real-time face-to-face communication, with written documents, among team members. All the people necessary, to finish a software development project, are all part of the same team, located in a bullpen. Product managers (the people who define the product), programmers, business analyst or clients are usually the people that at a minimum for part of the team. Technical writers, management, testers and interface designers, may also be part of the team. The primary measure of progress, in a software development method, is a working software.

Thank you for reading this article!!!