Before I go on discussing each agile methodology and the implications and adjustments to analysis in the System Development Life Cycle (SDLC) that agile methodologies bring, it is very important to analyze the steps of an agile analysis process in determining which agile methodology is the best fit for an organization.
The agile system analysis process can be described in several steps. All of the steps are very important and in general should not be skipped [17].
- Identify System Users
This is the most important question. If you miss with users, you will build the wrong solution. All further analyses will relay on defined user roles, so be very careful with this first step. Typical questions: Who will use the system? [17].
- Define Main Users Goals
In this step we have to ask the question of - What I as a user want to achieve with the help of the system? This question is very important as users may use the system for different purposes. Some users may use it very frequently spending on it hours of day solving complex problems, while others may use it for different purposes which requires them to use it much less. - Define System Usage Patterns
This step addresses the issue of a users daily common behavioral patterns. For example a manager will come on a daily basis and check yesterdays results while a sales person will deal with unhappy customers. All these are typical usage patterns. The question that needs to be asked here is - What are the typical user behaviors (daily, specific situations, etc.)? - Invent Functional Solutions to meet Users Goals and Usage Patterns
In this step it is necessary to think on how to solve the exact the problem and discuss the solution. The typical questions being asked in this step is-
What is the best way to satisfy usage patterns? - Define Main Navigation Paths
This step is concerned with having the right navigation paths written out in a User Interface. Here analyst need to concentrate on the information users need in each step. Typical questions to ask during this step of analysis- What functional/action should user execute to complete usage patterns? and How many areas required to complete user goal in specific pattern? - Create User Interface Mock-ups
Creating mock-ups of the User Interface is a great way to have user/system interaction for testing. This step can be done using Visio, Dreamweaver, or just basic dash board sketches with a marker in hand. - Polishing User Interface Elements
There is always a possibility to make things better, to improve something here and there. It is a good attitude. You should think about User Interface details of most important features that will be implemented right after the project starts. But, don’t spend much time on User Interface perfection, likely it will change during development anyway. The question that analyst need to ask here is-Can we improve User Interface to reduce clicks and provide better visibility?
After going through and analyzing the steps in the agile process, the analyst can look into the different agile methodologies and eventually decide which one is the best fit.