Planning the development process

4,966 views 21 slides Oct 20, 2020
Slide 1
Slide 1 of 21
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21

About This Presentation

Planning the development process


Slide Content

Planning the development process k.Sivapriya II.MSc (IT) Department of CS &IT Nadar saraswathi college of arts and science Theni

syntax The phased life-cycle Milestones, documents, and reviews The cost model The prototype life-cycle model Successive versions

Planning the development process Planning the software development process involves several important considerations. The first consideration is to define a product life –cycle model. The software life cycle encompasses all activities required to define, develop, test , operate and maintain a software product. Different models emphasize different aspects of the life cycle and no single life cycle model is appropriate for all software products.

The phased life cycle model The phased model segments the software life cycle into a series of successive activities. Each phase requires well defined input information, utilizes, well defined process and result in well defined products R esources are required too complete the processes in each phase and each phase accomplished through the application of explicit methods tools and techniques.

Cont.. We consider the phased model to consist of the f ollowing phases: Analysis design implementation system testing and maintenance. the model is sometimes called a waterfall chart, the implication being that products cascade from one level to the n ext in smooth progression analysis consists of two sub phases: The products of planning are a system definition and project plan.

Cont.. The system definition is typically expressed in English or some other natural language and may incorporate chart, figures, graphs, tables and equations of various kinds. The exact notations used in the system definition are highly dependent on the problem area. The project plan contains the life cycle model to be used the organizational structure for the project, the preliminary development schedule, preliminary cost and resources estimates, preliminary staffing requirements, tools and techniques to be used, and standard practices to be followed.

Cont.. During the planning phase cost estimates and work schedules will be preliminary in nature b ecause it is usually not possible to make accurate estimates without doing some design. Requirements definition is concerned with identifying the basic functions of the software component is a hardware/software /people system.

Cont.. The product of requirements definition is the speciation the describes the processing environment the requited software functions performance constraints on the software (size, speed, machine configuration), exception handling, sub sets and implementation priorities, probable changes and likely modifications and the acceptance criteria for the software.

Cont.. The implementing phase of software development involves translation of design specifications into source code, and debugging documentation and unit testing of the source code. Errors discovered using the implementation phase may include errors in the data interfaces between routines, logical errors in the algorithms, errors in data structure layout and failure to account for various processing cases.

Milestones, documents , and reviews Another view of the software life cycle that emphasizes the milestones documents and reviews throughout product development . As a software product evolves through the development cycle ,it is often difficult, if not impossible for project managers and project team members to assess progress to determine resources expended, to predict schedule delays, or to anticipate problem areas.

Cont.. Some of the terminology is adapted from the IEEE standard for software quality assurance plans; A system definition and project are prepared, a product feasibility review is then held to determine the feasibility of project continuation. A preliminary version of the user’s manual is prepared. The preliminaries user’s manual provides a vehicle of communication between customer and developer.

Cont.. A software requirement specification is prepared. The requirement specification clearly and precisely defines each essential requirement for the software product as well as the external interfaces to hardware firmware other and people. A preliminary version of the software verification plan is prepared. A software requirements review is held to ensure the adequacy o the system definition the project plan the software requirement specification the software verification plan and the preliminary user’s manual.

The cost model Another view of the software life cycle can be obtained by considering the cost of performing the various activities in a software project. The cost of conducting a software project is the sum of the costs incurred in conducting each phase of the project. Cost incurred within each phase of the processes and preparing the produces for that phase.

Cont.. Modification and corrections to the products of previous phases are necessary because the processes of the current phase will expose inaccuracies. Inconsistencies, and incompleteness in the products. The cost of product implementation is the cost of implementing ,documenting ,debugging, and unit testing the source code, plus the cost of completing the users manual the instruction ,plan the maintenance procedures, and the installation and training instructions, plus the cost of modifying, and correction the system definition, the project plan.

Cont.. Finally the cost of software maintenance is the sum o the costs o performing product enhancements making adaptations to new processing requirements and fixing bugs. Software requirement specification and design documents in subsequent phases of the lie cycle are so costly. Not only must the documents be modified, nut all intermediate work products must also be coordinated.

The prototype life cycle model A prototype is a mock up or model of a software product. In contrast to a simulation model a prototype incorporates components of the actual product. There are several reasons for developing a prototype. One important reason is to illustrate input date formats, messages, reports, and interactive dialogues for the customer.

Cont.. The second reason for implementing a prototype is to explore technical issues in the proposed product. The third reason for developing a prototype is in situations where the phased model of analysis->design->implementation-> is not appropriate. The phased model ids applicable when it is possible to write a reasonably complete set of specifications for a software product at the beginning of the life cycle.

Cont.. New versions of existing produces can most likely b developed using the phased like cycle model with little or no prototyping. Development of a totally new product will probably involve some prototyping during the planning and analysis phase or the product may be developed by iterating through a series of successive designs and implementations.

Successive versions Product development by the method of successive versions is an extension of prototyping in which an initial product skeleton is refined into increasing levels of capability. In this approach each successive version of the product is a functioning system capable of performing useful work. There are several possible life cycle models. phased model, the cost model, the prototype model and the successive versions model.

C ont .. Not all the documents described need be generated for every product, but supporting documents are required for every software product regardless of the life cycle model used. A minimal set of supporting document documents for the software product includes a statement of requirements, a design specification, a test plan, and a user’s manual.

Cont.. Determining the appropriate document, development schedules, milestones, and reviews for a software project is a major activity during the planning phase. Adopting a product life cycle model provides standardized terminology for the project, and increases the visibility of work products. This can result in improved software quality, increased programmer productivity, better management control, and improved morale.
Tags