 Hello, Myself M.V. Bhogade, assistant professor from CSC department of WIT, Shalapur. Today we will see some points from iterative model and spiral model. So, at the end of this session, Stuart will be able to design iterative model and spiral model. So, these are the contents. We can see the diagram of iterative model. Here, it starts from planning, requirements, analysis and design, implementation, deployment, testing, evaluation, iteration or initial planning. So, what is iterative model? Here, development begins by specifying and implementing just part of the software which can then be reviewed in order to identify further requirements. This process is then repeated, producing a new version of the software for each cycle of the model. Consider an iterative life cycle model which consists of repeating the following four phases in sequence. The first phase is requirement phase in which the requirements for the software are gathered and analyzed. Iterations should eventually result in a requirements phase that produces a complete and final specification of requirements. The second is design phase in which a software should, software solution to meet the requirements is designed. This may be a new design or an extension of an earlier design. The third is an implementation and test phase when the software is coded, integrated and tested. The last phase is review phase in which the software is evaluated. The current requirements are reviewed and changes and additions to requirements proposed. Now, we will see the advantages of iterative model. It generates working software quickly and early during the software life cycle. It is more flexible, less costly to change scope and requirements. It is easier to test and debug during a small iteration, easier to manage risk because risky pieces are identified and handled during its iteration. Each iteration is an easily managed milestone. Now we will see disadvantages. Each phase of an iteration is rigid and do not overlap each other. Requirements may arise pertaining to many system architecture because not all requirements are gathered upfront for the entire software life cycle. So when should we use iterative model? When the project is large, when requirements are clear, when there is a need for more quality in software. Now we will see the spiral model. It is one of the most important software development life cycle models which provides support for risk handling. In its diagrammatic representation, it looks like a spiral with many loops. The exact number of loops of the spiral is unknown and can vary from project to project. Each loop of the spiral is called a phase of the software development process. The radius of the spiral at any point represents the expenses that is cost of the project so far and the angular dimension represents the progress made so far in the current phase. So this is the diagram for spiral model. Here we can see the quadrants like planning, risk analysis, engineering and execution and evaluation. Now take a pause. Can you guess which is the third quadrant of the spiral model? The answer is the third quadrant of the spiral model is engineering and execution. Now we will see the four quadrants of spiral model. The spiral model is similar to the incremental model with more emphasis placed on risk analysis. The spiral model has four phases that is planning, risk analysis, engineering and evaluation. A software project repeatedly passes through these phases in iterations called spirals in this model. The baseline spiral starting up in the planning phase requirements are gathered and risk is assessed. Each subsequent spirals builds on the baseline spiral. Each phase of spiral model is divided into four quadrants. The first quadrant is planning phase. Requirements are gathered during the planning phase. Requirements like BRS that is business requirement specifications and SRS that is system requirement specifications. The second one is risk analysis. In the risk analysis phase a process is undertaken to identify risk and alternate solutions. A prototype is produced at the end of risk analysis phase. If any risk is formed during the risk analysis then alternate solutions are suggested and implemented. The third phase is engineering phase that is engineering and execution phase. In this phase the software is developed along with testing at the end of the phase. Hence in the phase the development and testing is done. The last phase is evaluation phase. This phase allows the customer to evaluate the output of the project to date before the project continues to the next spiral. Now we will see some risk handling in spiral model. A risk is any adverse situation that might affect the successful completion of a software project. The most important feature of the spiral model is handling these unknown risks after the project has started. Such risk resolutions are easier done by developing a prototype. The spiral model supports coping with risks by providing the scope to build a prototype at every phase of the software development. Now we will see the advantages of spiral model. It is the best approach for testing and development for complex and large projects. It is cost effective, better risk analysis and management, better requirement analysis, fast and easy development, better time management, easy to change requirements and documentation if any change happens in the middle of development. The disadvantages are difficult to follow strategy for small projects, not much useful for low risk projects. With more experience resources as process is bit complex, it requires large documentation. So these are the disadvantages of spiral model. So when should we use spiral model? It should be used for large and big projects, for high risk projects if requirements are more complicated, if frequent changes are required in the project. So these are the references from where we have taken help, thank you.