Computer Science & Engineering Electrical Engineering

Slides:



Advertisements
Similar presentations
Software Life Cycle Requirements analysis System design Program design Program implementation (coding) Unit testing Integration testing System testing.
Advertisements

Lecture # 2 : Process Models
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
CS487 Software Engineering Omar Aldawud
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
COMP 474 Software Engineering Professor William L. Honig.
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
CS 325: Software Engineering January 15, 2015 Software Process & Methodology Prototyping Process Model Evolutionary Process Model Spiral Process Model.
Software Life Cycles ECE 417/617: Elements of Software Engineering
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Connecting with Computer Science, 2e
Software Development Overview CPSC 315 – Programming Studio Spring 2008.
Software Development Life Cycle (SDLC)
Chapter 2: Approaches to System Development
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
1/23 Prescriptive Process Models. 2/23 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive.
Chapter 2 Software processes. Topics covered Software process models Process activities Coping with change.
Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification.
The Spiral Model Sultana & Mahmood. Systems development life-cycle The process of creating or altering computer systems The models that define the processes.
Project – A Quick Tutorial Krishna Sainath Meda. PROJECT  A task assigned to a set of people or teams to be completed within a time frame  Any project.
Software Development Overview CPSC 315 – Programming Studio Spring 2013.
Chapter 13: Software Life Cycle Models Omar Meqdadi SE 273 Lecture 13 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
CSE 436—Software Development Models Ron K. Cytron 10 October 2005.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
1 - 1 Systems Analysis and Design, Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
CSC 354 – System Development Life Cycles & Processes, Spring 2015 March 2015 Dr. Dale Parson.
CC20O7N Software Engineering 1 CC2007N Software Engineering 1 Part 1 Introduction to Software Engineering.
Software Model Process
Software Engineering I. Introduction to Software Engineering Software models Formal Specification using ASML (Abstract State Machines Language) Software.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Chapter 2- Software Development Process  Product Components  Software Project Staff  Software Development Lifecycle Models.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Working Agile in Software Development July-2016 Oracle Confidential – Restricted.
SOFTWARE DEVELOPMENT Presented By : Emporiumtech This presentation is brought you by
Final Exam Study Guide COP 4331 and EEL4884 OO Processes for Software Development © Dr. David A. Workman School of EE and Computer Science University of.
Software Engineering cosc 4359 Spring 2017.
Software Development - Methodologies
Software Development Overview
Software Development Life Cycle Waterfall Model
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Chapter 1: Introduction to Systems Analysis and Design
TIM 58 More on Chapter 1: Introduction to Systems Analysis and Design
User-centred system design process
Chapter 1 The Systems Development Environment
Software Development methodologies
Software Life Cycle “What happens in the ‘life’ of software”
PROJECT LIFE CYCLE AND EFFORT ESTIMATION
Chapter 6: Design of Expert Systems
Chapter 1 The Systems Development Environment
IT Systems Analysis & Design
Software Engineering Lecture 09 & 10.
Introduction to Software Engineering
Software Development Process
Methodologies For Systems Analysis.
Methodologies For Systems Analysis.
Lecture 2 Revision of Models of a Software Process
Basic SDLC Models SDLC  System Development Life Cycle.
Gathering Systems Requirements
Practical Software Engineering
CSC 354 – System Development Life Cycles & Processes, Fall 2013
Computer Science & Engineering Electrical Engineering
Chapter 1: Introduction to Systems Analysis and Design
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
Gathering Systems Requirements
Chapter 1: Introduction to Systems Analysis and Design
System Development Methods
Software Development Overview
CSCI 360: Software Architecture & Design
Presentation transcript:

Computer Science & Engineering Electrical Engineering EE 472 – Embedded Systems Dr. Shwetak Patel Assistant Professor Computer Science & Engineering Electrical Engineering

Agenda Engineering Design Cycles Structured Design Unified Modeling Language (UML) 2 Shwetak N. Patel - EE 472

Why care about the design process?

Makes development efficient! Easy to fall into the trap of ah-hoc building Spending 1 hour planning can save 10 hours debugging!! 4 Shwetak N. Patel - EE 472

The Development Cycle Product specifications to final product 5 Shwetak N. Patel - EE 472

The Development Stages Requirements analysis and specs Conceptual design Detailed program design Implementation Unit and integration testing System testing System delivery Maintenance 6 Shwetak N. Patel - EE 472

Example Development Life Cycle Models The Waterfall Model V cycle Spiral Rapid Prototyping Agile Methods 7 Shwetak N. Patel - EE 472

Waterfall Model 8 Shwetak N. Patel - EE 472

V Cycle 9 Shwetak N. Patel - EE 472

Spiral 10 Shwetak N. Patel - EE 472

Rapid Prototyping Break the problem into little pieces Get a front-end implementation out quick 11 Shwetak N. Patel - EE 472

Agile Methods Extreme Programming Sprints Scrum Focus on small increments Pair-wise or team programming Sprints Well defined quick tasks to get something out Scrum Quick meetings daily and/or weekly 12 Shwetak N. Patel - EE 472

The Actual Design Process Key steps for success: Requirement definitions System specification Functional design Architectural design Protoyping 13 Shwetak N. Patel - EE 472

Structured Design Breaking down a problem and systematically deriving a solution How do you represent this? 14 Shwetak N. Patel - EE 472

Unified Modeling Language (UML) A “language” for specifying various aspects of the product during the design process Universal way of sharing ideas 15 Shwetak N. Patel - EE 472

Use Case Diagrams 16 Shwetak N. Patel - EE 472

Sequence Diagrams 17 Shwetak N. Patel - EE 472

Activity Diagram 18 Shwetak N. Patel - EE 472

State Diagrams 19 Shwetak N. Patel - EE 472

Class Diagrams 20 Shwetak N. Patel - EE 472

Class Diagrams 21 Shwetak N. Patel - EE 472

Summary of UML Diagrams 22 Shwetak N. Patel - EE 472

Class Exercise A person interacting with a digital camera 23 Shwetak N. Patel - EE 472

Class Exercise Design a cruise control system for a car 24 Shwetak N. Patel - EE 472

Class Exercise Model the interaction with an ATM machine 25 Shwetak N. Patel - EE 472