Вы находитесь на странице: 1из 5

Waterfall-Model

V-Model

The main concept of this model is that only when one development level is completed will the next one be initiated. At the end of each phase, a review takes place to determine if the project is on the right path and whether or not to continue or discard the project.

The development process proceeds from the upper left point of the V toward the right, ending at the upper right point. In the left-hand, downward-sloping branch of the V, development personnel define business requirements, application design parameters and design processes. At the base point of the V, the code is written. In the right-hand, upward-sloping branch of the V, testing and debugging is done. The unit testing is carried out first, followed by bottom-up integration testing. The extreme upper right point of the V represents product release and ongoing support. Like in Waterfall-Model each phase must be completed before the next phase begins, V-model actually is a modified version of a Waterfall-Model.

Advantages
Easy to explain to the user Structures approach. Stages and activities are well defined Helps to plan and schedule the project Verification at each stage ensures early detection of errors / misunderstanding Each phase has specific deliverables.

Advantages
- Due to the fact that in the V-Model defects are being repair short time after they have been detected, it is cheaper to fix them. -The model has a reputation of a very good base for the partitioning of testing; all the participants in development of a system have a responsibility for quality assurance and testing. -Testing activities like requirements, test designing happens well before coding. This fact saves a lot of time and also helps in developing a very good understanding of the project at the initial stage. -The objectives of testing are changing , and specific for each test level .

Disadvantages Disadvantages
Assumes that the requirements of a system can be frozen Very difficult to go back to any stage after it finished. Little flexibility and adjusting scope is difficult and expensive. Costly and required more time, in addition to detailed plan
-The

V-Model is very rigid and the least flexible, it means that if one

of the requirements are changing, the tester should update the test documentation as a whole -This model applicable mostly to big companies because the model needs lot of resources. -The amount and the intensity of the test levels should be tailored according to the specific needs of the project.

Spiral Model

Agile Model

The spiral model is mostly used in large projects. For smaller projects, Agile concept is more appropriate. This model of development combines the features of the prototyping model and the waterfall model.

There are some accepted properties to Agile Model, for example:

-Short release cycles- agile development cant be called agile unless it is done in short repetitive iterations. -Customer involvement- Tester should to provide his thoughts on the client requirements rather than just being the audience at the other end. - Responding to change agile development is focused on quick responses to change and continuous development. - Individuals and interactions over processes and tools Advantages -Saving of time and money. - Focus more on the application rather than documenting things. - Daily meetings and discussions for the project following Agile model can help to determine the issues well in advance and work on it accordingly. -Requirements changing even in late stage of development -The end result is the high quality software in least possible time duration and satisfied customer.

Advantages - Spiral Life Cycle Model is a very flexible model. Development phases can be determined by the project manager, according to the complexity of the project. - Estimates (i.e. budget, schedule, etc.) get more realistic as work progresses, because important issues are discovered earlier. - Good for large and mission-critical projects. - Software is produced early in the software life cycle. Disadvantages - Doesnt work well for smaller projects. - Evaluating the risks involved in the project can shoot up the cost and it may be higher than the cost for building the system. - Spiral model is much customized for every project. - Risk analysis requires highly specific expertise.

Disadvantages -The project can easily get taken off track if the customer representative is not clear what final outcome that they want. -There is lack of emphasis on necessary designing and documentation. -User involvement is often a potential problem especially in big and complex projects

Iterative Model

Prototype Model

An iterative life cycle model does not attempt to start with a full specification of requirements. Instead, 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. Advantages In iterative model, we can only create a high-level design of the application before we actually begin to build the product and define the design solution for the entire product. Later on we can design and built a skeleton version of that, and then evolved the design based on what had been built.

The basic idea in this model is that instead of freezing the requirements before a design or coding can proceed, a throwaway prototype is built to understand the requirements. This prototype is developed based on the currently known requirements. The prototypes are usually not complete systems and many of the details are not built in the prototype. Advantages Users are actively involved in the development. Since in this methodology a working model of the system is provided, the users get a better understanding of the system being developed. Errors can be detected much earlier. Quicker user feedback is available leading to better solutions. Missing functionality can be identified easily. Confusing or difficult functions can be identified. Requirements validation, Quick implementation of, incomplete, but functional, application. Disadvantages Leads to implementing and then repairing way of building systems. Practically, this methodology may increase the complexity of the system as scope of the system may expand beyond original plans. Incomplete application may cause application not to be used as the full system was designed. Incomplete or inadequate problem analysis.

In iterative model, we are building and improving the product step by step. Hence we can track the defects at early stages. This avoids the downward flow of the defects. In iterative model, we can get the reliable user feedback. When presenting sketches and blueprints of the product to users for their feedback, we are effectively asking them to imagine how the product will work. In iterative model, less time is spent on documenting and more time is given for designing.

Disadvantages Each phase of iteration is rigid with no overlaps.

Costly system architecture or design issues may arise because not all requirements are gathered up front for the entire lifecycle

Comparative Study of Different Types of Software Development Process Model

Software development process models that have been taken under study include:

I. II. III. IV. V. VI.

Waterfall Model V-Model Spiral Model Agile Model Iterative Model Prototype Model

Вам также может понравиться