Software Development Stephenson College. Classic Life Cycle.

Slides:



Advertisements
Similar presentations
SWEN 5130 Requirements EngineeringSlide 1 Software Prototyping u Animating and demonstrating system requirements.
Advertisements

1 Software Testing and Quality Assurance Lecture 13 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Lecture # 2 : Process Models
Unit 2. Software Lifecycle
1 Information Systems Development (ISD) Systems Development Life Cycle Overview of Analysis Phase Overview of Design Phase CP2236: Information Systems.
1 Lecture 2: Processes, Requirements, and Use Cases.
What is Software Design?. Systems Development Life- Cycle Planning Analysis Design Implementation Design.
Software Process Models
Introduction To System Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
Software Engineering For Beginners. General Information Lecturer, Patricia O’Byrne, office K115A. –
Business Area Analysis Focus: Domain View (selected business area) Goals: –Isolate functions and procedures that allow the area to meet its goals –Define.
© Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks1 7.1 User Centred Design (UCD) Software development should focus on the needs.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Chapter 7: The Object-Oriented Approach to Requirements
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
1 Introduction to UML DIAGRAMS & CLASS DIAGRAM Chapter 7,8 主講人 : 許勝杰
UML - Development Process 1 Software Development Process Using UML (2)
Managing the development and purchase of information systems (Part 1)
Business Requirements Using Unified Modeling Language Eric H. Castain, SVP Internet Services Group, Architecture Wells Fargo March 2005.
14 Chapter 11: Designing the User Interface. 14 Systems Analysis and Design in a Changing World, 3rd Edition 2 Identifying and Classifying Inputs and.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Putting together a complete system Chapter 10. Overview  Design a modest but complete system  A collection of objects work together to solve a problem.
Software Engineering Management Lecture 1 The Software Process.
Chapter 6 Use Cases. Use Cases: –Text stories Some “actor” using system to achieve a goal –Used to discover and record requirements –Serve as input to.
Dr. Mohamed Osman Hegazi 1 Database Systems Concepts Database Systems Concepts Course Outlines: Introduction to Databases and DBMS. Database System Concepts.
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Information System Development Courses Figure: ISD Course Structure.
1 SWE Introduction to Software Engineering Lecture 4.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Requirements Capture. Four Steps of requirements capture List candidate requirements Understand system context Capture functional requirements Capture.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
Model View Controller MVC Web Software Architecture.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
CIS 210 Systems Analysis and Development Week 7 Part II Designing Interfaces and Dialogues,
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Lectures 2 & 3: Software Process Models Neelam Gupta.
NAVSEA Liaison Scott Huseth Faculty Advisor Dr. Jiang Guo Team Members Areg Abcarians David Ballardo Niteen Borge Daniel Flores Constance Jiang June 3,
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
1 SYS366 Week 2 - Lecture Visual Modeling and Process.
Analysis and Reporting Toolset (A&RT): Lessons on how to develop a system with an external partner David Smith AstraZeneca.
Rekayasa Perangkat Lunak Part-6
The Unified Software Development Process
Software Engineering Management
Lecture 3 Prescriptive Process Models
Architecture Concept Documents
Introduction to Software Engineering
Unified Modeling Language
Systems Analysis and Design in a Changing World, 6th Edition
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Information Systems Development (ISD) Systems Development Life Cycle
Software Development Process Using UML Recap
Software Engineering Lecture #6
Presentation transcript:

Software Development Stephenson College

Classic Life Cycle

Terms of Reference Background to purpose of software Outline of need for new software Summary of major constraints Feature List Feasibility Possible future Development Focus on Why and What (in outline)

Requirements Analysis(1) All details specified in a way understandable by typical users All ambiguities resolved No implicit assumptions Specified in the language of the problem domain Each requirements should be testable GUI can be prototyped

Requirements Analysis(2) System Outputs Printed Reports Display screens Web Pages Graphics and animations Sounds, Music, Vocals Files

Requirements Analysis(3) System Inputs Forms & Dialogues Keystrokes & Mouse clicks Web Pages Joysticks, tablets, cameras, etc Voice and instruments Files

Requirements Analysis(4) System Functions Use Cases Algorithms e.g. Sorting and searching Real time control Arithmetic, statistics and calculations Analysis and synthesis Artificial intelligence, decision making

System Design (1) Design ViewImplementation View Process View Components Classes, interfaces, collaborations Active classes Deployment View Nodes Use Case View Use cases

Design Models Use Case Diagrams Use Case Diagrams Use Case Diagrams Scenario Diagrams Scenario Diagrams Collaboration Diagrams State Diagrams State Diagrams Component Diagrams Component Diagrams Component Diagrams Deployment Diagrams State Diagrams State Diagrams Object Diagrams Scenario Diagrams Scenario Diagrams Statechart Diagrams Use Case Diagrams Use Case Diagrams Sequence Diagrams State Diagrams State Diagrams Class Diagrams Activity Diagrams Models

System Design (2) Use Case Diagram User Functionality of the system Actors in the system Use cases deliver something of value to actors Use cases are the heart of the modelling process

System Design (3) Use Case Specifications Summary of function Normal course of events Extensions and alternatives Exceptions Pre conditions & Post conditions Triggers and assumptions Business rules

System Design (4) Use Case Diagrams lead to State Diagrams Activity Diagrams Class Diagrams Sequence Diagrams

System Design (5) Class Diagrams lead to System Architecture State Diagrams Activity Diagrams ER Diagrams Sequence & Collaboration Diagrams Component Diagrams Deployment Diagrams

Implementation Class Diagrams generate Delphi, VB, C++, Java XML, SQL, Oracle, Access Tables Class Patterns enhance reusability GUI from Use Cases, State & Activity diagrams Testing Framework

Test Plan & Testing Each user requirement tested Software works for all normal cases Software handles all expected exceptions Software is “usable” Testing is only part of Quality Management

Iteration & Evolution Classic life cycle problems Too long between establishing user requirements and delivering working software Can not adapt to rapidly changing circumstances Increased risk of mistakes made in early stages not spotted until much later

Software Quality Management Quality plans should apply to all stages Quality improvement should be an ongoing process Quality Management should be an integral part of all processes Quality should be “externally” assessed