Software Development Life Cycle

Slides:



Advertisements
Similar presentations
kareRCIserIsviFIsaRsþGnuvtþKMerag
Advertisements

Lecture # 2 : Process Models
Multimedia Specification Design and Production 2013 / Semester 1 / week 7 Lecturer: Dr. Nikos Gazepidis
CS487 Software Engineering Omar Aldawud
1 Information Systems Development (ISD) Systems Development Life Cycle Overview of Analysis Phase Overview of Design Phase CP2236: Information Systems.
IS2210: Systems Analysis and Systems Design and Change
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
Software Process Models
Slide 1 INTRODUCTION Chapter 1. Slide 2 Key Ideas The primarily goal of a system is to create value for the organization. Many failed systems were abandoned.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
CS 5150 Software Engineering
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Introduction to Requirements (Chapters 1-3 of the requirements text) CSSE 371, Software Requirements and Specification Don Bagert, Rose-Hulman Institute.
Slide 1 INTRODUCTION Chapter 1. Slide 2 Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
Software lifecycle. CS351 - Software Engineering (AY2004)2 Software lifecycle “student view” Design & Specification Coding Testing (optional) Hand it.
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
Software Process CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology December 17, 2002.
Problem with Software Requirements are complex The client does not know the functional requirements in advance Requirements may be changing Technology.
Software Life Cycle Model
Chapter 2 The process Process, Methods, and Tools
Objectives:  To define RAD  Describe RAD as a system development method  List the advantages of RAD as a method  List the disadvantages of RAD  State.
 Software Models.  A software life-cycle model is a descriptive and diagrammatic representation of the software life-cycle. This includes a series of.
ITEC224 Database Programming
Difference between Structured Analysis and Object Oriented Analysis?
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Software Engineering Management Lecture 1 The Software Process.
The Software Development Life Cycle. Software Development SDLC The Software Development Life-Cycle Sometimes called the program development lifecycle.
Prescriptive Process Models Jon Walker. Prescription? What does prescriptive mean?
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
Software Engineering MCS-2 Lecture # 6
Systems Life Cycle A2 Module Heathcote Ch.38.
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
Chapter 4 프로세스 모델 Process Models
1-1 Software Development Objectives: Discuss the goals of software development Identify various aspects of software quality Examine two development life.
CISB113 Fundamentals of Information Systems IS Development.
> whoami Yuriy Brun Office: CSE 340
Software Engineering Lecture # 1.
KUFA UNIVERSITY Department of Computer Science. Fundamentals of Software Engineering Presented By Neamah Hassan Presented By Neamah Hassan.
Systems Development AIMS 2710 R. Nakatsu. Overview Two philosophies of systems development –Systems Development Life Cycle (SDLC) –Prototyping Alternative.
1 - 1 Systems Analysis and Design, Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
CS223: Software Engineering Lecture 4: Software Development Models.
System Development Life Cycle (SDLC) TOBY WILSON.
Topic:- At the end we will be able to explain:- Why it is called Meta Model ?? Spiral Model Its Advantages & Disadvantages… Phases of Spiral Model...
Unit F451 Computer Fundamentals Components of a Computer System Software Data: Its representation, structure and management in information.
The Software Development Process. Contents  Product Components  Software project staff  Software development lifecycle models.
Software Development - Methodologies
Introduction to Systems Analysis and Design
Software Development Life Cycle Waterfall Model
Methodologies and Algorithms
IL Marking Get out your CPU / Memory answers Swap with someone else
Lecture 3 Prescriptive Process Models
Gary Hughes, South Oakleigh College
Software Processes (a)
CS701 SOFTWARE ENGINEERING
Software Development Life Cycle
Software Process Models
Object oriented system development life cycle
Software Life Cycle Models
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Introduction to Software Engineering
Computer Science Life Cycle Models.
Computer Science Life Cycle Models.
Software life cycle models
Software Process Models
Lesson 1 Understanding Software Quality Assurance
CS310 Software Engineering Lecturer Dr.Doaa Sami
Information Systems Development (ISD) Systems Development Life Cycle
SDLC (Software Development Life Cycle)
Presentation transcript:

Software Development Life Cycle

Lesson Objectives To understand the software development life cycle To be able to explain what commonly occurs at each stage of the software development life cycle To be able to identify at which stage of the software development life cycle a given step would occur To understand that there are several life cycle models that can be used (e.g. cyclical, waterfall, spiral) To be able to discuss the advantages and disadvantages of these lifecycle models

How is software created? First comes the idea….everything has to start somewhere… Requirements / Analysis Design Implementation Testing

Requirements/Analysis This is the first and most important step. Questions must be answered such as: Why is the software system required? Who is the software system for? What must the software system do? What are the constraints? (budget/timescale/particular needs)

Design Now we know what the system is for, we must set about designing it. The aim being to achieve everything that we established in the previous phase. Again, more questions will need to be addressed: What programming language, operating system or hardware requirements are there? What data is required? What file structures are required? What user interface is there? ….and many more

Implementation So now we actually create the software: Each step of the design is created using the appropriate technical capability

Testing Obviously – need to test it works!

Different Types of Approach Spiral / Cyclical Waterfall / Sequential Waterfall and spiral model are different types software development methodologies. These methodologies assist the developer in building a system efficiently. Each of the methodologies has a set of rules or discipline that needs to be followed in order to develop a system. Both of the methodologies posses their own pros and cons.

Waterfall Model The waterfall model consists of the usual main phases, namely: Requirements/Analysis Design Implementation Testing Each phase has its own set of tasks that should be accomplished by the developer. The developer must complete each stage before moving to the next stage in a sequential manner. Due to this, the waterfall model is sometimes also referred to as sequential software development process. The model approach is from top to bottom as how a waterfall would flow down. Analysis Design Implementation Testing

(next iteration planned here) Spiral Model Analysis / Requirements Design Implementation (next iteration planned here) Testing

Spiral Model The spiral model again contains four main stages. However the approach is more cyclical as seen in the diagram on the previous slide: It is an output driven methodology where each circle produces a prototype better than the previous one. In the spiral model, it is not necessary for the developer to complete each stage before moving to another stage. The developer can finish a short portion in a stage and shift to next stage and then come back again on next round to finish remaining task in the stages. It is a continuous process, in which each time the developed application gets more complex. At the same time the process also gets bigger and bigger.

Waterfall or Spiral? Must complete a stage before moving onto next No feedback from client until software delivery Document driven – well planned in advance (could result in less errors at later stages but time consuming at initial stages) Sequential Can work on any stage at any time Constant interaction with client – feedback and prototype development More ‘build it’ and see approach – less advance planning (could result in problems – but more time to fix due to less planning at start) Cyclical

Let’s Play A Game! Divide into teams (5 or 6 per team) Decide on a team manager Team manager to collect challenge resources and info from client (me!) You have 50 minutes to complete the challenge Taj Mahal Rome Colleseum Empire State Building Kremlin Statue of Liberty

Test It! Get exemplar test plan