Software Development Cycle

43 %
57 %
Information about Software Development Cycle

Published on March 23, 2009

Author: ankush85


Software Development Life Cycle : Software Development Life Cycle What is Software? : What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures enable the programs to adequately manipulate information Documents that describe the operation and use of the program Software engineering : A Practitioner's Approach A definition of the software development: : A definition of the software development: The application of a systemic, disciplined, quantifiable approach to development, operation, and maintenance of software. Who’s Who : Who’s Who What is the Software Life Cycle : What is the Software Life Cycle Software Engineering is a series of steps for producing software. Methods, procedures, and tools are defined. Engineering discipline Metrics and measures - prediction Classic Life Cycle Models : Classic Life Cycle Models Linear sequential (Waterfall) Prototyping Rapid Application Development (RAD) Incremental (Block Release) Spiral Component Assembly Concurrent Development Fourth Generation techniques Rapid Application Development (RAD) : Rapid Application Development (RAD) A good model for small VB systems The IDE is designed to allow us to develop the small system. Waterfall Model : Waterfall Model “Interactive” (Chaotic) Model : “Interactive” (Chaotic) Model Waterfall with Prototyping : Waterfall with Prototyping Prototyping Cycles : Prototyping Cycles Multiple Builds : Multiple Builds Development systems Production systems DEVELOPERS USERS Build Release 1 Build Release 2 Build Release 3 Time Spiral Model : Spiral Model Start Axis Customer Communication Planning Risk Analysis Development Integration Customer Evaluation Process Metrics : Process Metrics Process Assessment Document review Peer reviews: completed vs scheduled results reported Problem report status Product Quality Defect characteristics Difficulty of accurate measurement Let us Examine the Classic Waterfall Model : Let us Examine the Classic Waterfall Model Linear sequential model Tries to define each part of the cycle Very good method for developing large systems Stage 1: Defining the problem : Stage 1: Defining the problem What Happens in this Stage: To Identify and understand the problem you must look at the: Needs of Users and System Objectives that the solution is to meet Boundaries of solution Feasibility Study Design Specifications User Requirements System Requirements Modelling System Stage 1: Design specification : The design specification helps you form the basis for the planning and designing the final solution. You will use this specification throughout the system development to help plan, build and test the final solution. The Design specifications give a workable framework to aid development of the system (and further understanding of the system). Stage 1: Design specification Stage 1: : A quote on the problem of ill-defined system requirements: "the creation of software requirements is reminiscent of hiking in a fog that is gradually lifting” Software Productivity Research Inc (1996) Stage 1: Stage 1: Design specifications : Stage 1: Design specifications You need to consider the specification for the USER and the System (Developer's) point of view. Developer: Overall design specifications User: Interface design specifications Stage 1: Activity: : Stage 1: Activity: Developer's perspective Algorithms, Variables Software design approach Modelling the system Documentation User's perspective Screen design Ergonomic issues Appropriate icons Appropriate screen messages Social and ethical issues Relevant data formats for display Stage 1: System Documentation: Modelling different aspects of the System : Stage 1: System Documentation: Modelling different aspects of the System Modelling tools are part of the documentation to be interpreted by developers, maintainers and users, and are used to represent a system. They use diagrammatic methods and include: ·   Input Process Output (IPO) diagrams ·   System Flowcharts ·   Storyboards ·   Screen designs ·   Dataflow diagrams ·   Prototype Stage 1: Questions: : Stage 1: Questions: Q 1: What are the aims of the first stage of the development cycle? Q 2: Why is the problem specification so important in this stage? Q 3: Why are modelling tools used in this stage? Stage 2: Planning and Design of Software Solution : Stage 2: Planning and Design of Software Solution Documentation and Models developed in previous stage are used to give an overall view of system design and help in the development of data structures and logic necessary to fully develop each module. Stage 2: Planning and Design of Software Solution : Stage 2: Planning and Design of Software Solution What Happens in this Stage: The Planning stage consists of designing a solution. So in this stage you need to: 1: Identify all inputs, outputs and processes 2: Select and describe relevant Data Structures 3: Create the Algorithm for final solution. Stage 2 : : Stage 2 : Use structured programming techniques of writing programs. You need to define your system's Data Structures and files You need to be able to recognize the logic in Standard Algorithms You need to test your algorithm Documentation tools used to represent the overall software solution in diagrammatic form Chose your programming language wisely Stage 2 : Questions: : Stage 2 : Questions: Q 1: Which Documentation tools in the above table are used in "stage one" of the SDC to help you understand and "model" the new system. Q 2: Which Documentation tools in the above table are used in "stage two" of the SDC to help you Represent a Solution to the problem. Q 3: What is the different between customised and standard algorithms? Q 4: What information does a data dictionary hold? Q 5: What is the term used for the ‘computer software’ that the development team uses to help with analysis documentation and development? Q 6: Say the Planning stage is complete and the Programmer is about to start to code. Select any two of the Representation Tools below and describe how they both can complement each other to give the programmer a better description of the system Data dictionary, structure diagram, algorithm, IPO chart Stage 3: Implementation of Software Solution : Stage 3: Implementation of Software Solution What happens in this stage: Source code written and tested., Ensure effective user interface Stage 3: : Stage 3: Use tools and techniques that will help correct and detect errors. Understand the Type of errors : Syntax, Logic, Run-time Consider the Hardware and software requirement of new software. Stage 3: Questions : Stage 3: Questions Q 1: State one documentation prepared in this stage and describe why it is important AND who is it important for? Stage 4: Testing and Evaluation of Software Solution : Stage 4: Testing and Evaluation of Software Solution What happens in this stage: Verify program solution using test data both at program and system level. Testing and Evaluation is integral to all stages. Test that the Systems original “System Requirements and Objectives” are being met. Are we doing the “RIGHT JOB?” Are we doing the “JOB RIGHT?” Stage 4: Testing and Evaluation of Software Solution : Stage 4: Testing and Evaluation of Software Solution To ensure a quality product testing and evaluation is done. Quote: “definitions of software testing, however, boil down to essentially the same thing: software testing is the process of executing software in a controlled manner, in order to answer the question ”Does the software behave as specified?” .” Stage 4: Questions : Stage 4: Questions Q 1: What is the result from stage one of the SDC that is used in this stage to help rest the solution? Stage 5: Maintenance of Software Solution : Stage 5: Maintenance of Software Solution What happens in this stage: On-going process of corrections and refinement. Modifications to code, macro, and scripts are often required. These modifications do not need to be made by original developers. In these situations, the original documentation is very important. You need to keep in mind the ethical issues associated with assessing and modifying the code of others. For all Changes: ·         Test changes ·         Document changes Modify present documentation

Add a comment

Related presentations

Related pages

Software development process - Wikipedia, the free ...

In software engineering, a software development methodology (also known as a system development methodology, software development life cycle, software ...
Read more

Systems development life cycle - Wikipedia, the free ...

The systems development life cycle (SDLC), ... The final stage of initial development, where the software is put into production and runs actual business.
Read more

Software Development Lifecycle (SDLC) Phases

Software development lifecycle (SDLC) provide a model for the development & lifecycle management of software & apps. Read about SDLC methodologies.
Read more

What is the Software Development Life Cycle (SDLC)?

Full Guide to Software Development Life Cycle (SDLC) and it's process and phases: Requirements gathering/analysis, design, coding, and testing
Read more

Software Development Life Cycle (SDLC) - Tutorials Point

Read more

What is the Software Development Life Cycle (SDLC ...

Software Development Life Cycle SDLC Definition - The software development life cycle (SDLC) is a framework defining tasks performed at each step in the...
Read more

What are the Software Development Life Cycle (SDLC) phases?

There are various software development approaches defined and designed which are used/employed during development process of software, these approaches are ...
Read more

Software Development Life Cycle - Tutorials Point

Software Development Life Cycle, SDLC for short, is a well-defined, structured sequence of stages in software engineering to develop the intended software ...
Read more

Software-Development Methodologies and Visual Studio Team ...

There are many methodologies for different software-development life cycles. To implement these effectively, it is important to have life-cycle tools that ...
Read more

Security Development Lifecycle – Wikipedia

Trustworthy Computing Security Development Lifecycle (Abgekürzt SDL, ... Die Standardeinstellungen der Software sollten konservativ gewählt werden.
Read more