IST 311 – Object-Oriented Design & Software

Slides:



Advertisements
Similar presentations
Introduction to Object Orientation System Analysis and Design
Advertisements

Ist.psu.edu School of Information Sciences and Technology IST 311 – Object-Oriented Design & Software Steven Haynes IST 311 – Class 1 10 January 2005
UML an overview.
CS3773 Software Engineering Lecture 03 UML Use Cases.
September Ron McFadyen1 design analysis implementation testing maintenance Waterfall Development Process Linear one phase is completed before.
Use Case Diagram © copyright 2001 SNU OOPSLA Lab..
Design analysis implementation testing maintenance Waterfall Development Process Linear one phase is completed before the next begins in practice, must.
CT1404 Lecture 2 Requirement Engineering and Use Cases 1.
1 CS 425 Software Engineering Project Preparation Use Case Modeling [Based on Chapters 3 & 4, Arlow and Neustadt, “UML and the Unified Process,” Addison-Wesley,
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
171 Use Case Descriptions Chapter 4 – Facade Iteration Initial Requirements (Inception Phase)
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
CMPT 275 Software Engineering
Software Engineering UNIT 2. Functional Modelling.
Quiz 1. Who is the guru of Extreme Programming?
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 4: Detailing a Use Case.
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
Requirements Elicitation. Who are the stakeholders in determining system requirements, and how does their viewpoint influence the process? How are non-technical.
Software Requirements (Advanced Topics) “Walking on water and developing software from a specification are easy if both are frozen.” --Edward V Berard.
UML What Is the UML? The Unified Modeling Language (UML) is the successor to the wave of object- oriented analysis and design (OOA&D) methods.
1 Introduction to Software Engineering Lecture 1.
16 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 7 Unified Modeling Language.
UML-1 8. Capturing Requirements and Use Case Model.
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
SWT - Diagrammatics Lecture 4/4 - Diagramming in OO Software Development - partB 4-May-2000.
Ist.psu.edu School of Information Sciences and Technology IST 311 – Object-Oriented Design & Software Steven Haynes IST 311 – Class 7 17 January 2006
CT1404 Lecture 2 Requirement Engineering 1 1. Today's Lecture Definition of a Software Requirement Definition of Software Requirements Management Characteristics.
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Ist.psu.edu School of Information Sciences and Technology IST 311 – Object-Oriented Design & Software Steven Haynes IST 311 – Class 4 19 January 2006
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
It is the fuel of modern life Business are run Government rule Scientists Industries Education However, building and maintaining software is hard and getting.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Object-Oriented Systems. Goals Object-Oriented Methodologies – The Rumbaugh et al. OMT – The Booch methodology – Jacobson's methodologies.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
UML (Unified Modeling Language)
Elaboration popo.
Introduction to UML.
UNIT 1.
CMPE 280 Web UI Design and Development August 29 Class Meeting
Requirements Engineering Process
Use Cases Discuss the what and how of use cases: Basics Benefits
Use cases, tests classes, …
Object-Oriented Software Engineering Using UML, Patterns, and Java,
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
System sequence diagrams
Introduction to Unified Modeling Language (UML)
Week 10: Object Modeling (1)Use Case Model
Rumbaugh’s Objectmodeling Technique
Requirement Engineering
Object Oriented Modeling and Design
SNSCT_CSE_PROGRAMMING PARADIGM_CS206
A short introduction to UML Eivind J. Nordby Karlstad University
Seminar 1 Design of Informatics Systems
Use Cases and Use Case Diagrams
Chapter 4 Entity Relationship (ER) Modeling
Introduction to UML.
CS 425 Software Engineering
CS 425/625 Software Engineering
UML Design for an Automated Registration System
Presentation transcript:

IST 311 – Object-Oriented Design & Software Steven Haynes IST 311 – Class 2 12 January 2006 shaynes@ist.psu.edu

The ‘Waterfall’ Model Is this really how systems development works? Problem Definition Requirements Design Is this really how systems development works? Code Test Implementation

The Iterative ‘Waterfall’ Model Problem Definition Requirements Design Is this it? Code Test Implementation

The Systems Development ‘Funnel’ Code Or is this? Requirements Implementation Test Design Design Problem Definition Problem Definition Code Code Implementation Design ISD allows us to convert a mess to: - No mess - Less mess - A better mess - A different mess - A bigger mess Need requirements analysis to judge feasibility, need feasibility to get budget to pay for requirements analysis. Requirements Test

Object-Oriented Software Engineering

Important Software Engineering Activities

Software Engineering: Requirements A functional requirement is a specification of a function that the system must support; A nonfunctional requirement is a constraint on the operation of the system that is not directly related to system functions (e.g., usability, response time, security requirement, etc.).

Software Engineering: Notations A notation is a set of rules for representing a model graphically or textually. (e.g., UML, Z). A software development methodology is a collection of methods for solving problems during software process; it specifies how and when each method should be used. OMT (Object Modeling Technique, Rumbaugh, 1991) OOSE (Jacobson, 1992) Booch methodology (Booch, 1994)

Scenario-Based Design * Scenarios are used to explicate and evaluate requirements, evolving designs, and systems in production Envisioning scenarios – used to imagine what and how interaction support will be delivered by the system being designed Evaluation scenarios – used to walk through an existing design to ensure that the model supports desired interactions Scenarios are concrete instances of a use case * Carroll & Rosson, 1992; Carroll, 1995; Carroll, 2000

Scenario Scenario Title – short description of the scenario Actor – the person or role performing the scenario Setting – a description of the context in which the scenario takes place Scenario Goal – the objective of the interaction with the application being designed Scenario Narrative – a detailed account of how you envision that the scenario actor will interact with the application to achieve the scenario goal Claims Analysis – statements of what is required to support the interaction scenario. Claims should include explicit consideration of trade-offs, the pros and cons of different approaches to feature design.

Use Cases Actors Use Cases Include (Uses) Use Cases Extend Use Cases Annotations Pre-conditions Post-conditions Constraints Don’t use actor or use case generalization

Guidelines for Use Cases Actors – specific user roles Human actors on left Non-human actors (systems) on right Use Cases – verb-noun phrase e.g., Verify Credit Card Include (uses) link – included use case MUST be completed for the including use case to complete Extend link – extending use case represents a variant of the extended use case

In-Class Work in ad hoc groups Using your scenarios from the degree audit domain, create a use case diagram showing all the major functionality the system should have Don’t forget system administration use cases, though these can be on a separate diagram Make sure all your names are on the diagram Send the soft copies to me at shaynes@ist.psu.edu

Homework Assignment This is an individual assignment Read Bruegge Ch. 2 Review Ambler Ch.4 Using the MS Visio Static Structure (class diagram) template, design six (6) abstractions (classes) for the degree audit application Hint: Use your scenarios, noun-verb analysis Each of your classes should have at least 3 attributes and at least 2 operations (methods) Include Notes in your diagram describing the basic responsibility of each class Hand in hard copies of your diagrams at the start of class Tuesday, January 17