IL Marking Get out your CPU / Memory answers Swap with someone else

Slides:



Advertisements
Similar presentations
System Development Life Cycle (SDLC)
Advertisements

Int 2 Computing Software Development.
P5, M1, D1.
ICT Class System Life Cycle.  Large systems development projects may involve dozens of people working over several months or even years, so they cannot.
Software Development Life Cycle
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.
Unit 1, Lesson 4 Software Development Cycle AOIT Introduction to Programming Copyright © 2009–2012 National Academy Foundation. All rights reserved.
System Analysis (Part 1)
Bug Session Two. Session description In this session the use of algorithms is reinforced to help pupils plan out what they will need to program on their.
Introduction to Computer Technology
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
Systems Life Cycle A summary of what needs to be done.
Rapid Prototyping Model
Introduction to Systems Analysis and Design Trisha Cummings.
1 Shawlands Academy Higher Computing Software Development Unit.
Chapter 8: Systems analysis and design
Prologue: The Software Process. Main Phases of Software Process 1. Requirements Analysis (answers “WHAT?”) Specifying what the application must do 2.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
The Software Development Life Cycle. Software Development SDLC The Software Development Life-Cycle Sometimes called the program development lifecycle.
Advanced Higher Computing SOFTWARE DEVELOPMENT PROCESS.
Software Development Process.  You should already know that any computer system is made up of hardware and software.  The term hardware is fairly easy.
I Power Higher Computing Software Development The Software Development Process.
Systems Life Cycle A2 Module Heathcote Ch.38.
Introduction to Software Development. Systems Life Cycle Analysis  Collect and examine data  Analyze current system and data flow Design  Plan your.
Intermediate 2 Software Development Process. Software You should already know that any computer system is made up of hardware and software. The term hardware.
Topics Covered Phase 1: Preliminary investigation Phase 1: Preliminary investigation Phase 2: Feasibility Study Phase 2: Feasibility Study Phase 3: System.
IS Analysis and Design. SDLC Systems Development Life Cycle Break problems into management review stages Control cost and time Works best with well understood.
The Systems Life Cycle AS Computing F451 AS Computing F451.
The Software Development Process
1 AVCE ICT Unit 7 - Programming Session 8 – Documenting your programs.
WATERFALL DEVELOPMENT MODEL. Waterfall model is LINEAR development lifecycle. This means each phase must be completed before moving onto the next!!! WHAT.
Intermediate 2 Computing Unit 2 - Software Development.
Software Project Management
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Observing the Current System Benefits Can see how the system actually works in practice Can ask people to explain what they are doing – to gain a clear.
GCSE ICT 3 rd Edition The system life cycle 18 The system life cycle is a series of stages that are worked through during the development of a new information.
CMSC 2021 Software Development. CMSC 2022 Software Development Life Cycle Five phases: –Analysis –Design –Implementation –Testing –Maintenance.
The information systems lifecycle Far more boring than you ever dreamed possible!
Software Design and Development Development Methodoligies Computing Science.
Unit F451 Computer Fundamentals Components of a Computer System Software Data: Its representation, structure and management in information.
In today’s lesson we will be looking at: what we mean by the software development lifecycle the phases in the lifecycle We will focus particularly on testing:
Chapter 2- Software Development Process  Product Components  Software Project Staff  Software Development Lifecycle Models.
MANAGEMENT INFORMATION SYSTEM
Advanced Higher Computing Science
Software Engineering cosc 4359 Spring 2017.
Unit 6 Application Design KLB Assignment.
Component 1.6.
PROJECT LIFE CYCLE AND EFFORT ESTIMATION
CS 5150 Software Engineering
Methodologies By Akinola Soyinka.
Gary Hughes, South Oakleigh College
Systems Analysis and Design
System Development Life Cycle (SDLC)
Prototype Model Lecture-4.
Software Development Life Cycle
System Development Life Cycle (SDLC)
CHAPTER 2 Testing Throughout the Software Life Cycle
Computer Science Life Cycle Models.
Computer Science Life Cycle Models.
Software life cycle models
Unit 6: Application Development
Software Development Life Cycle
System Development Life Cycle (SDLC)
CS310 Software Engineering Lecturer Dr.Doaa Sami
MANAGING THE DEVELOPMENT AND PURCHASE OF INFORMATION SYSTEMS
SDLC (Software Development Life Cycle)
Systems Development Life Cycle
Presentation transcript:

IL Marking Get out your CPU / Memory answers Swap with someone else Mark each question Discuss with each other how you would improve your marks

Objectives Understand the software development lifecycle Be able to explain what commonly occurs at each stage of the software development lifecycle Be able to identify at which stage of the software development lifecycle a given step would occur.

SDLC The development of software is very complex and can take years! The purpose of the SDLC is to break the making of software down into manageable steps, that: produces a piece of software that meets the users’ needs is produced within budget is finished on time

Problem – Mrs Morton is hungry… What are the steps you might take to help me out in my hunger?

Sandwich Development Cycle Feasibility Study Analysis Design Implement Evaluation Maintenance

Software Development Life Cycle It is possible and can it be done? Remember TELOS Technical – does the technology exist to do what we want to do? Economical – does it make financial sense? Will we save money in the long run? Legal – are there any copyright/licencing issues? Operational – Will people be able to use it? Schedule – Can it be made in time?

Sandwich Development Cycle It is possible to make me a sandwich? Do we have the correct equipment? What will the costs be? When does the sandwich need to be made by?

Software Development Life Cycle What will the software need to do? Use interviews / questionnaires / observe people / find existing documentation. Draw diagrams that identify processes and show how data will flow around the system. The end product is the specification and user requirements (explains what the software must do)

Software Development Life Cycle Data Dictionaries A data dictionary is used to capture what each data item looks like (data item name, data type, any formatting needed, any restrictions on range etc). Here is an example of part of a Data Dictionary:

Sandwich Development Cycle Research needs to happen as to what sandwich fillings I like, what fillings are available. Use questionnaires / interviews to help your research.

Software Development Life Cycle The software design will include: A detailed Data Dictionary that defines any data in the system. Input screens/user interface Output screens and reports How the data will be processed: main algorithms as flow charts and pseudocode. How the software will be tested: typically a formal test plan will be drawn up at the design stage to make sure the software is tested objectively.

Sandwich Development Cycle Think about the shape of the sandwich e.g. triangles / squares? Think about the layers of the sandwich e.g. ham then lettuce and tomato on top?

Software Development Life Cycle Implementation includes the following activities: Coding & Testing the software Writing documentation: technical documentation, for whoever has to support and maintain the software later, and a user guide Installing the software for the user (if this software is written for a particular customer, as opposed to commercial off-the-shelf software).

Sandwich Development Cycle Make the sandwich!

Software Development Life Cycle Does it do what it is supposed to do? The software must be evaluated against the original specification/User Requirement document. This is also called Acceptance Testing. If everything works the developer can get paid!

Sandwich Development Cycle Taste the sandwich and tell you what I think about it. Do I like it? Would I like to change it next time? What would I take away or add?

Software Development Life Cycle Corrective maintenance – fix any bugs that come up. Adaptive maintenance – when the software needs to change to meet new requirements. Perfective maintenance – the user might want request performance improvements or changes to how it looks to make it easier to use. Remember CAP!

Sandwich Development Cycle Clean up any crumbs that have dropped. Put any rubbish in the bin.

B A C D E F G H I J Identify problems with existing data Test the new system B A Evaluate the new system Carry out a Feasibility Study C D Maintain the new system Analyse the new system’s requirements E F Implement the new system Build the new system Put these into order. G H Produce Documentation for the users Design the new system I J

A C D E F J G H B I System Life Cycle Answers Identify problems with existing data Evaluate the new system Carry out a Feasibility Study System Life Cycle Answers E Analyse the new system’s requirements Maintain the new system F J G Implement the new system Design the new system Produce Documentation for the users Test the new system Build the new system H B I

Review Can you create a method that will help you to remember the order of the SDLC? Song Limmerick Rhyme What problems might there be with the SDLC?

Challenge: Waterfall Model You have 5 minutes to find out what the waterfall model is. And an advantage / disadvantage. 5 minutes End

Waterfall Model

Waterfall Model Steps completed one at a time Each step should have an output Can go back but then the steps will need redoing User has little impact after analysis until the evaluate stage.

Waterfall Model Advantages Disadvantages Self-contained steps are easy to manage Defined processes and output per step Good model for managing large groups of developers working in parallel Requirement changes mean going back to an earlier stage that had already been completed Changes can be costly in money and time Lack of customer involvement after Analysis means issues are not highlighted until the Evaluation

Challenge: Cyclical Model You have 5 minutes to find out what the cyclical model is. And an advantage / disadvantage. 5 minutes End

Cyclical Model

Cyclical Model Similar to waterfall model Knows that once a version of software has come out, then ideas for a new version are already being made taking it back to the feasibility study.

Cyclical Model Advantages Disadvantages Self-contained steps are easy to manage Defined processes and output per step Good model for managing large groups of developers working in parallel Maintenance, logically starts the next cycle of the process so it maps better on to the real lifecycle of a complex piece of software. Requirement changes mean going back to an earlier stage that had already been completed Changes can be costly in money and time Lack of customer involvement after Analysis means issues are not highlighted until the Evaluation

Challenge: Spiral Model You have 5 minutes to find out what the spiral model is. And an advantage / disadvantage. 5 minutes End

Spiral Model

Spiral Model Developing the software in iterative (repeating) stages After each run through a prototype is made Keeps refining the software Used for larger projects

Spiral Model Advantages Disadvantages Well defined steps in the process make it easy to manage Interim prototypes highlight issues quickly so that the end product is more likely to be what the customer wants Iterative nature of the process means changes can be easily incorporated as feedback is received It takes time to build prototypes and get feedback, so it takes longer to get the product to the customer Longer timescale means it costs more to develop

Match Up! Spiral Model Waterfall Model Cyclical Model Agile Model A – Used for large projects, after going through each stage a prototype is made. B – When you get to maintenance it starts the steps all over again (to develop a new version). C – If you go back to a step you have to follow through the other steps again. D – Where small group of developers work together, great if the requirements might change Spiral Model Waterfall Model Cyclical Model Agile Model

Actual Exam Question – 8 marks!

Way to Remember Each Model? Can you come up with a unique way of remembering the difference between each model?

Remember Waterfall Large groups of developers working at once. (large waterfall – lots of people jumping off it at once!) Each step produces an output (like water coming out). Steps need doing one at a time like the water going down each step in a waterfall one at a time. Problems not highlighted until water gets to the end?

Remember Cyclical Cycle Wheel goes round and a new version is created.

Remember Spiral Prototypes on each layer of the spiral. Time and cost to get down the spiral

Questions to Answer in Book What are the 3 stages of the maintenance stage in the SDLC? Corrective – fix bugs Adaptive – requirements change Perfective – look better / work better What happens in the feasibility study? TELOS (Technology? Economical? Legal? Operational? Schedule?) How do software developers carry out the analysis stage? Questionnaires Interview Observe What happens in the implementation stage? Coding Testing Write documentation Installation PC

Questions to Answer in Book What is the waterfall model? Name 3 advantages and disadvantages of the waterfall model? What is the spiral model? Name 3 advantages and disadvantages of the spiral model? PC

Further resources Revision booklet https://www.youtube.com/watch?v=bG-UzWtB6Ac

Review Can you simplify each model to 10 words? Now 5?