CS 451 Software Engineering
|
|
- James French
- 5 years ago
- Views:
Transcription
1 CS 451 Software Engineering Yuanfang Cai Room 104, University Crossings
2 Design Engineering A systematical way to translate SRS into design Start with use cases from SRS Find analysis classes from use cases Create CRC cards from use cases Refine CRC cards into UML class diagrams Different types of classes Architecture Design Interface Design Component Design Detailed/Data Design 2
3 From Use Cases to Class diagrams Step 1: Identify and assign candidate classes Step 2: Determine a set of specific scenarios Step 3: Walk through the scenario, naming cards and responsibilities 3
4 Step 1: Identify and assign candidate classes Read requirements specification. Highlight nouns and noun phrases to give candidate classes (excluding abstract nouns). Write each candidate class down on an index card. Assign each index card to one person who is participating in the CRC card modelling session.
5 Step 1: Identify and assign candidate classes Consists of classes of domain objects. Example: any ATM model will involve Card, BankAccount classes Names are important. Class identification is a key process for a good class model: noun identification; responsibility driven approach. 5
6 Noun identification Two stages: identify candidate classes by picking all nouns and noun phrases out of requirements specification document; discard inappropriate candidates. A candidate is an inappropriate class when it is redundant (ex: book, book in many volumes; member of the library,library member) vague (item it may be either book or journal etc) an event or an operation (a loan an event: lending a book) meta-language element: used to describe and explain requirements and the system at a very high level (system, rule, information, or reporting requirements) outside the scope of the system (time) an attribute (name) Nouns are outlined 6
7 CRC Cards 7
8 Introduction to CRC Cards CRC Card = Class Responsibility Collaborator Card Purpose: interactively brainstorm an initial design of a program or program segment Invented in 1989 by Kent Beck and Ward Cunningham
9 CRC Cards Class the name of an OO class (a good descriptive noun) Responsibility the things the OO class does (behavior responsibility) Collaborator the relationship the class has with other classes Class Name Main Responsibility Responsibilities Collaborators X 6 (or 3 X 5) Index card Some also suggest writing down the classes properties (what the class must know about itself knowledge responsibility) on the back of the card
10 An Example CRC Card - Front Main Responsibilit y A patient makes appointments, review or configure insurance information, and provides medical history Slide 10
11 An Example CRC Card - Back Slide 11
12 Step 2: Determine a set of specific scenarios Develop a comprehensive and specific set of end-to-end scenarios based upon the requirements. A scenario is a sequence of actions that illustrates behavior. Example: Requirement: The alarm clock shall allow a user to set the time. Scenario: The user sets the time for 1:15PM.
13 Step 3: Walk through the scenario, naming cards and responsibilities Walk through the handling of a scenario case pointing to or picking up the cards, naming their responsibilities and how they handle and delegate each request. Add new cards as classes are needed. Note: It s always good to do very basic/mainstream use cases first, then explore alternative/complicated use cases.
14 An ATM Example See Class Exercise 14
15 ATM All Nouns 15
16 ATM- Classes Class candidates: card bank account (ATM) dispenser & session vague (it might become of interest) Data associated PIN - attribute of card current balance - attribute of bank account amount attribute in various classes overdraft limit attribute of bank account card limit per day attribute of card dispenser amount attribute of ATM dispenser 16
17 ATM Example: 17
18 More ATM CRC Cards 18
19 ATM Card Class Card class attributes and operations; validatepin() validates the PIN introduced against the value in pin; changepin() changes the current pin value with what this operation provides; startwithdraw() initiates the withdrawal by i) checking that the amount requested is within daylimit range; ii) checks with BankAccount that there is enough in the current bank account or the overdraft limit is sufficient for this transaction; iii) it also checks that there is enough cash in dispenser; if all these are fulfilled it asks BankAccount to update the balance and Dispenser to release the cash. 19
20 ATM BankAccount Class 20
21 ATM Dispenser class 21
22 ATM Transaction Class 22
23 ATM additional requirements Let s consider that transactions involving cash withdrawal, either failed or successful, are recorded. In this case session (retained as vague) will be reconsidered and Transaction is the class that will be identified for session. Reconsider CRC cards: when Card class will initiate cash withdrawal then another collaboration will be added, i.e. Transaction class will record this transaction. A new CRC card will be then generated for Transaction class. 23
24 CRC Cards Relationship 24
25 ATM Class Diagram Class diagrams is obtained directly from CRC cards by considering collaborations identified; it shows business classes. Classes are shown with no attributes and operations. 25
26 ATM-Refined Class Diagram For each Card there is one bank account, one dispenser and an arbitrary number of transactions. Each BankAccount should have one or more cards associated with. The Dispenser refers to all cards. Each Transaction has a unique card on it. All associations are named, directed and unidirectional. 26
27 Different types of analysis classes Entity Class Data Structures: e.g. Card, Process Class Classes that work: Transactions Boundary Class Interface with external systems: Dispenser 27
28 Clear Intersection Example From the Use Cases to Design
29 1. Flow of Events for the Clear Intersection Use Case 1.1 Preconditions Traffic light has been initialized. 1.2 Main Flow This use case begins when a car enters the intersection. The car checks it s status (S-1). The use case ends when the car clears the intersection (S-4). 1.3 Subflows S-1 Check Status Check status (S-2, S-3). If the light is green, and the queue is empty, the car clears the intersection (S-4). Otherwise, it joins a queue (S-5). S-2 Check Light Get information on whether the light is red, yellow, or green. S-3 Check Queue Get information on whether the queue is empty or not S-4 Go The car clears the intersection and the use case ends. S-5 Join a Queue Car is added to queue.
30 Step 1: Identify and assign candidate classes The Clear Intersection use case: This use case begins when a car enters the intersection. The car checks it s status (S-1). The use case ends when the car clears the intersection (S-4). Check status (S-2, S-3). If the light is green, and the queue is empty, the car clears the intersection (S-4). Otherwise, it joins a queue (S-5). Candidate Classes Car Traffic light Queue Intersection
31 Step 2: Determine a set of specific scenarios-from Use Cases Scenarios The car can only drive through the intersection if the traffic light is green and there are no cars in the intersection. Otherwise, the car needs to join a queue.
32 Step 3: Walk through the scenario, naming cards and responsibilities Index Card: Car Responsibility Drive Join Collaborator Traffic light Queue Intersection Car Car approaches the intersection and the light is green and there are no cars in the way. Car approaches the intersection and the light is red. Car is in the queue and the light turns green.
33 CRC Cards What next? Turn these cards into your class diagram Responsibilities --- Methods Collaborators --- Associations (need to have instances of collaboration classes) Data members on the card back --- Attributes. Class Name Main Responsibility 4 X 6 (or 3 X 5) Index card Responsibilities Collaborators......
34 The Design of Traffic Simulator
35 Final Implemention Process Class: 255 LOC Car.java: 31 LOC CarQueue.java: 51 LOC CarQueueCollection.java: 52 LOC Direction.java: 13 LOC LightCollection.java: 31 LOC LightColor.java: 7 LOC TrafficController.java 70 LOC UI class: Traffic.java: 251 LOC Including menu, car queue initialization, etc. 35
36 Design Engineering Start with use cases from SRS Find analysis classes from use cases Create CRC cards from use cases Refine CRC cards into UML class diagrams Different types of classes Architecture Design Interface Design Component Design Detailed/Data Design 36
37 The Design of Traffic Simulator
38 Data Model Design Why Data Model Design is needed? Performance consideration Interface consideration Adaptability consideration Different types of Data Design In-memory data structure Input-output file format Database scheme Classes attributes Principles: abstraction and modularization 38
39 Data Modeling Concepts Data objects can then be represented as tables: 39
40 Data Modeling Concepts Data attributes define properties of a data object. RELATIONSHIPS Data objects connect to one another in different ways. 40
41 Data Modeling using Classes 41
42 The Data Model Design of TheraWii 42
43 Database Scheme Design Entity Relation Diagram 43
44 The Database Design of Vodka 44
45 Interface Design Why interface design is needed? Task parallelism Performance analysis Different types of Interface Design Graphical interface design Boundary class design Database interface design File storage interface design Hardware interface design More 45
46 The Component and Interface Design of TheraWii 46
47 Software Design Document Syntax Component Diagram High-level Component Diagrams Detailed Component Diagrams (Classes and relations within a Component) Interface Design (Boundary Class) Data Model /Data Storage Design (Entity Classes), data attributes have to be specified Other models Deployment Diagram Algorithm Explanation 47
The Object-Oriented Design Process
The Object-Oriented Design Process Part 1: Techniques & Tools OOdesignProcess 1 Program development In theory, 3 phase development process: Analysis: figure out the problem Design: develop the solution
More informationSofware Requirements Engineeing
Sofware Requirements Engineeing Three main tasks in RE: 1 Elicit find out what the customers really want. Identify stakeholders, their goals and viewpoints. 2 Document write it down (Requirements Specification).
More informationSoftware Development. Modular Design and Algorithm Analysis
Software Development Modular Design and Algorithm Analysis Functional Decomposition Functional Decomposition in computer science, also known as factoring, refers to the process by which a complex problem
More informationObject-Oriented Design. Module UFC016QM. and Programming. Objects and Classes. O-O Design Unit 2: Faculty of Computing, Engineering
Module UFC016QM Object-Oriented Design and Programming O-O Design Unit 2: Objects and Classes Faculty of Computing, Engineering and Mathematical Sciences Schedule Quick recap on Use Case diagrams UWE Flix
More informationUML Is Not a Methodology
UML COSC 4354 1 UML Is Not a Methodology UML is an acronym for Unified Modeling Language UML is a language A language is simply a tool for communication and exchanging ideas UML is a notation, not a methodology
More informationATM Use Cases. ID: CIS Title: Check Balance Description: Customer aims to know the balance in his/her account
ID: CIS375-01 Title: Login Description: Customer logs into the system by inserting the card and entering pin code. Preconditions: Customer has a bank account and an ATM Card. Postconditions: Customer logged
More informationOBJECT-ORIENTED MODELING AND DESIGN. Domain Analysis
OBJECT-ORIENTED MODELING AND DESIGN Domain Analysis CONTENTS :. Overview of Analysis 2. Domain Class Model 3. Domain State Model 4. Domain Interaction Model 5. Iterating the Analysis 6. Chapter Summary.
More informationObject Oriented Processes. R.K.Joshi Dept of Computer Science and Engg. IIT Bombay
Object Oriented Processes R.K.Joshi Dept of Computer Science and Engg. IIT Bombay Life Cycle Models Waterfall Spiral Fountain Extreme Model Driven Phases and their relations with object orientation requirements
More informationOutline of Lecture 3. Identifying Objects. Requirements Analysis Overview. Actors, Objects and Classes
Identifying Objects Software Requirements and Design CITS 4401 Lecture 3 Outline of Lecture 3 What is an object? Identifying Grammatical Analysis CRC method B&D heuristics for object identification Requirements
More informationTopics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system)
Topics Overview- The UML Functional Model Use Case Diagram (essential and system) Structural Model Class/object, Component and Deployment Diagram Behavioral Models Activity, State chart, sequence /collaboration
More informationOO System Models Static Views
OO System Models Static Views UML Class & Object Diagrams Software Engineering OO Models Class Diagram Slide 1 Objective Introduces the evolutionary approach for building classes Explain how to identify
More informationObject Oriented Software Development CIS Today: Object Oriented Analysis
Object Oriented Software Development CIS 50-3 Marc Conrad D104 (Park Square Building) Marc.Conrad@luton.ac.uk Today: Object Oriented Analysis The most single important ability in object oriented analysis
More informationToday s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading:
CompSci 280 S2 2107 Introduction to Software Development Today s Agenda Topics: Introduction Activity Diagram Object interaction Sequence Diagram Reading: Booch G.,The Unified Modeling Language User Guide,
More informationPatterns and Testing
and Lecture # 7 Department of Computer Science and Technology University of Bedfordshire Written by David Goodwin, based on the lectures of Marc Conrad and Dayou Li and on the book Applying UML and (3
More information(C) 2010 Pearson Education, Inc. All rights reserved. Dr. Marenglen Biba
Dr. Marenglen Biba In Chapters 12 13, you design and implement an object-oriented automated teller machine (ATM) software system. Concise, carefully paced, complete design and implementation experience.
More informationOutline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1.
Outline of UML and Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule Feb. 27th 13:00 Scope and Goal 14:30 Basic Concepts on Representing the World (object, class, association,
More informationObject Oriented Design. Program Design. Analysis Phase. Part 2. Analysis Design Implementation. Functional Specification
Object Oriented Design Part 2 Analysis Design Implementation Program Design Analysis Phase Functional Specification Completely defines tasks to be solved Free from internal contradictions Readable both
More informationObject-Oriented Systems Development: Using the Unified Modeling Language. Chapter 1: An Overview of Object- Oriented Systems Development
Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 1: An Overview of Object- Oriented Systems Development Goals The object-oriented philosophy and why we need to study it.
More informationOO Analysis and Design with UML 2 and UP
OO Analysis and Design with UML 2 and UP Dr. Jim Arlow, Zuhlke Engineering Limited Clear View Training 2008 v2.5 1 UML principles Clear View Training 2008 v2.5 2 1.2 What is UML? Unified Modelling Language
More informationCS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams and Statecharts Diagrams in UML
CS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams and Statecharts Diagrams in UML Objectives: 1. To introduce the notion of dynamic analysis 2. To show how to create and read Sequence
More informationObject Oriented Processes. R.K.Joshi Dept of Computer Science and Engg. IIT Bombay
Object Oriented Processes R.K.Joshi Dept of Computer Science and Engg. IIT Bombay Life Cycle Models Waterfall Spiral Fountain Extreme Model Driven Phases and their relations with object orientation requirements
More informationObject Oriented Analysis and Design: An Overview
Object Oriented Analysis and Design: An Overview Balaji Rajagopalan Credits: Material for the slides is drawn from a variety of sources including Object Oriented Analysis and Design using UML by Ali Bahrami.
More informationModel-based Transition from Requirements to High-level Software Design
Model-based Transition from Requirements to High-level Software Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria System overview
More informationCH 13 APPLICATION ANALYSIS
CH 13 APPLICATION ANALYSIS APPLICATION INTERACTION MODEL Steps: Determine system boundary Find actors Find use case Find initial & final events Prepare a normal scenario Add exception scenario Prepare
More informationUnified Modeling Language (UML)
1.17 Software Engineering Case Study: Introduction to Object Technology and the UML (Required) Object orientation A natural way of thinking about the world and computer programs Unified Modeling Language
More informationCS350 Lecture 2 Requirements Engineering. Doo-Hwan Bae
CS350 Lecture 2 Requirements Engineering Doo-Hwan Bae bae@se.kaist.ac.kr Contents Overview of Requirements Engineering OO Analysis: Domain modeling, Use-case, sequence, class Structured Analysis: Dataflow
More informationDomain Engineering And Variability In The Reuse-Driven Software Engineering Business.
OBM 7 -draft 09/02/00 1 Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. Martin L. Griss, Laboratory Scientist, Hewlett-Packard Laboratories, Palo Alto, CA. Effective
More informationSoftware Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015
Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 09/29/2015 http://cs.gsu.edu/~ncasturi1 Class Announcements Grading is done for the Deliverable #2 (Requirement Elicitation)
More informationUniversity of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far
University of Calgary Department of Electrical and Computer Engineering SENG 609.23: Object Oriented Analysis and Design Behrouz Homayoun Far Evaluation Test () 20:00 20:30 PM Instructions: 1. This booklet
More informationObject-Oriented Systems Development: Using the Unified Modeling Language
Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 8: Identifying Object Relationships, Attributes, and Methods Goals Analyzing relationships among classes. Identifying association.
More information1st Semester MTCE 601A COMPUTER SYSTEM SOFTWARE
1st Semester MTCE 601A COMPUTER SYSTEM SOFTWARE LECTURE-1 Syllabus Introduction 1.1 Introduction to Object Oriented 1.2 Introduction to UML 1.3 Software Process and OOA&D 1.4 Component and CBSD 1.5 Patterns
More informationChapter 5: Structural Modeling
Chapter 5: Structural Modeling Objectives Understand the rules and style guidelines for creating CRC cards, class diagrams, and object diagrams. Understand the processes used to create CRC cards, class
More informationUsing Breakout Sessions for Group Work
WebEx Using Breakout Sessions for Group Work A breakout session is a private content sharing session that includes two or more participants. Breakout sessions allow participants to brainstorm and collaborate
More informationUse C ases Cases 7/09
Use Cases 7/09 Groups of 3 Recorder/Timekeeper Participation checker Devil s Advocate Motivation One way to describe a system is to create a story, y, the interaction between a user and the system This
More informationOral Questions. Unit-1 Concepts. Oral Question/Assignment/Gate Question with Answer
Unit-1 Concepts Oral Question/Assignment/Gate Question with Answer The Meta-Object Facility (MOF) is an Object Management Group (OMG) standard for model-driven engineering Object Management Group (OMG)
More informationLecture 9 Requirements Engineering II
Lecture 9 Requirements Engineering II Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 23, 2008 Announcements
More informationConceptual Data Modeling by David Haertzen
Conceptual Data Modeling by David Haertzen All rights reserved. Reproduction in whole or part prohibited except by written permission. Product and company names mentioned herein may be trademarks of their
More informationOutline of Unified Process
Outline of Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule(3/3) March 12 13:00 Unified Process and COMET 14:30 Case Study of Elevator Control System (problem definition,
More information1. BlueJ bank example with subclasses of BankAccount 2. Transparency of UML diagram for BankAccount class hierarchy
CS112 Lecture: Fundamental Concepts of Object-Oriented Software Development Last revised 1/13/04 Objectives: 1. To review/introduce key concepts of object-orientation: object, class, data members (class
More informationSoftware component interactions and sequence diagrams
Software component interactions and sequence diagrams Paul Jackson School of Informatics University of Edinburgh What do we need to know? Recap Recall that this is an overview of software engineering,
More informationHeader Description: This use case describes how the ATM user withdraws cash from the ATM.
Use Case: Withdraw Cash Use Case #: UC1 Author: Iteration: JAD Team Detailed Header Description: This use case describes how the ATM user withdraws cash from the ATM. Business Trigger(s): Customer needs
More informationResponsibility Driven Design
Responsibility Driven Design Responsibility Driven Design, Rebecca Wirfs Brock, 1990 The Coffee Machine Design Problem, Alistair Cockburn, C/C++ User's Journal, May and June 1998. Introducing Object-Oriented
More informationUNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?
Department: Information Technology Questions Bank Class: B.E. (I.T) Prof. Bhujbal Dnyaneshwar K. Subject: Object Oriented Modeling & Design dnyanesh.bhujbal11@gmail.com ------------------------------------------------------------------------------------------------------------
More informationSoftware Testing. Software Testing. in the textbook. Chapter 8. Verification and Validation. Verification Techniques
Software Testing in the textbook Software Testing Chapter 8 Introduction (Verification and Validation) 8.1 Development testing 8.2 Test-driven development 8.3 Release testing 8.4 User testing 1 2 Verification
More informationAn Introduction to Business Process Modeling using Data Flow Diagrams
An Introduction to Business Process Modeling using Data Flow Diagrams BSAD 141 Dave Novak BDIS: 2.2 (61-77) Lecture Overview Systems and Business processes Business process models Data Flow Diagrams (DFDs)
More informationL02.1 Introduction... 2
Department of Computer Science COS121 Lecture Notes: L02 Introduction to UML and DP 25 July 2014 Copyright c 2012 by Linda Marshall and Vreda Pieterse. All rights reserved. Contents L02.1 Introduction.................................
More informationObject- Oriented Design with UML and Java Part I: Fundamentals
Object- Oriented Design with UML and Java Part I: Fundamentals University of Colorado 1999-2002 CSCI-4448 - Object-Oriented Programming and Design These notes as free PDF files: http://www.softwarefederation.com/cs4448.html
More informationLecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček
Lecture 5 STRUCTURED ANALYSIS PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall 2015 1 Outline ² Yourdon Modern Structured Analysis (YMSA) Context diagram (CD) Data flow diagram
More informationPractical UML - A Hands-On Introduction for Developers
Practical UML - A Hands-On Introduction for Developers By: Randy Miller (http://gp.codegear.com/authors/edit/661.aspx) Abstract: This tutorial provides a quick introduction to the Unified Modeling Language
More informationKF5008 Program Design & Development. Lecture 3 Sequence Diagrams
KF5008 Program Design & Development Lecture 3 Sequence Diagrams Learning Outcomes At the end of the lecture, you should be able to: Explain the content and purpose of a UML Sequence Diagram Describe the
More informationProgress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development
Progress Report Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) CS 4354 Summer II 2014 Jill Seaman So far we have learned about the tools used in object-oriented
More informationReview: Cohesion and Coupling, Mutable, Inheritance Screen Layouts. Object-Oriented Design CRC Cards - UML class diagrams
Review: Cohesion and Coupling, Mutable, Inheritance Screen Layouts Software methodologies Extreme Programming Object-Oriented Design CRC Cards - UML class diagrams Analysis Design Implementation Software
More informationDesigning applications. Main concepts to be covered
Designing applications 4.0 Main concepts to be covered Discovering classes CRC cards Designing interfaces Patterns 2 1 Analysis and design A large and complex area. The verb/noun method is suitable for
More informationObject Oriented Methods with UML
Object Oriented Methods with UML Introduction to Class Diagram Lecture -3 Presented By Dr.A.Bazila Banu What is a class? Central feature of C++ that supports OOP. It combines data representation and methods
More informationObject-Oriented Systems Analysis and Design Using UML
10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand
More informationCS 451 Software Engineering
CS 451 Software Engineering Yuanfang Cai Room 104, University Crossings 215.895.0298 yfcai@cs.drexel.edu 1 Elaboration 2 Elaboration: Building the Analysis Model An analysis model provides a description
More informationCS 1042 OBJECT ORIENTED ANALYSIS AND DESIGN. UNIT 1 INRODUCTION 1.1 An Overview of Object Oriented System and Development
CS 1042 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT 1 INRODUCTION 1.1 An Overview of Object Oriented System and Development 1.2 Object Basic 1.3 Object Oriented Systems Development Life Cycle 1.1 An Overview
More informationSystem Analysis and Design. Data Flow Diagram. System Analysis and Design
Data Flow Diagram 1 Data Flow diagram The dataflow diagram is a modeling tool that allows us to picture a system as a network of functional processes, connected to one another by pipelines and holding
More informationCharacterizing your Objects
Characterizing your Objects Reprinted from the Feb 1992 issue of The Smalltalk Report Vol. 2, No. 5 By: Rebecca J. Wirfs-Brock In this column I ll describe some vocabulary I find useful to characterize
More informationThis assignment is worth 100 points and is due on the crashwhite.polytechnic.org server at 23:59:59 on the date given in class.
AP Computer Science Partner Project - RideShare ASSIGNMENT OVERVIEW In this assignment you ll be creating a small package of files which will simulate a Ride Sharing system. The package will include four
More informationSPOTCASH MOBILE APPLICATIONS USER GUIDE
SPOTCASH MOBILE APPLICATIONS USER GUIDE Table of Contents CHAPTER 1 INTRODUCTION... 3 CHAPTER 2 ACCESSING THE APPLICATION... 3 CHAPTER 3 THE DASHBOARD... 6 3.1 Withdrawal... 7 3.2 Deposit... 9 3.3 Top
More information2. Introduction to UML & Discussion of Related S.E.
2. Introduction to UML & Discussion of Related S.E. 2. Introduction to UML...1 2.1 Context of UML...2 2.1.1 A classical view of specification & design, & how they are related...2 2.1.2 Examples of requirement
More informationBottom Up Design. » finding the relevant object types» deciding on what operations the objects should have
Abstract Data Types & Bottom Up Design 12-1 Bottom Up Design Defining the objects (abstract data types) to be used in a program.» Defining the logical data structures and operations on objects which are
More informationPractical Session 2: Use Cases and a Requirements Model.
Practical Session 2: The Use Case and Requirements Model T he following report uses a retail banking scenario to illustrate how Enterprise Architect can be used to develop Use Cases and a Requirements
More informationCS485/540 Software Engineering Requirements Modeling (Ch. 6)
CS485/540 Software Engineering Requirements Modeling (Ch. 6) Cengiz Günay Dept. Math & CS, Emory University Fall 2013 Some slides courtesy of Joan Smith and Roger Pressman Günay (Emory) Requirements Modeling
More informationObject-Oriented Analysis and Design Using UML (OO-226)
Object-Oriented Analysis and Design Using UML (OO-226) The Object-Oriented Analysis and Design Using UML course effectively combines instruction on the software development processes, objectoriented technologies,
More informationOn to OO design ideas. Really just an introduction (much more in CS 48) About programming in the large
On to OO design ideas Really just an introduction (much more in CS 48) About programming in the large Small vs. large programs l Programming in the small: Usually just one programmer He/she understands
More informationIntroduction to Software Engineering: Analysis
Introduction to Software Engineering: Analysis John T. Bell Department of Computer Science University of Illinois, Chicago Based on materials from of Bruegge & DuToit 3e, Ch 5 and UML Distilled by Martin
More informationSoftware Engineering from a
Software Engineering from a modeling perspective Robert B. France Dept. of Computer Science Colorado State University USA france@cs.colostate.edu Softwaredevelopment problems Little or no prior planning
More informationSoftware Life-Cycle Models
Software Life-Cycle Models CMPSC 487 Lecture 03 Topics: UML Class Diagram Rosenburg Chap 2. Domain Modeling A. UML: Unified Modeling Language UML is a general-purpose, developmental, modeling language
More informationChapter 10 Object-Oriented Design Principles
Chapter 10 Object-Oriented Design Principles Dr. Supakit Nootyaskool Faculty of Information Technology King Mongkut s Institute of Technology Ladkrabang Outline Object-oriented design: bridging from analysis
More informationRepresent entities and relations with diagrams
LEARNING OBJECTIVES Define data modeling terms Describe E-R Model Identify entities and relations Represent entities and relations with diagrams WHAT IS DATA MODELING? A data model is a collection of concepts
More informationIntroduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches
Introduction to Software Engineering ECSE-321 Unit 9 Architectural Design Approaches Requirement Elicitation Analysis (Software Product Design) Architectural Design Detailed Design Architectural Design
More informationINTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal
INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD Slides by: Shree Jaswal What is UML? 2 It is a standard graphical language for modeling object oriented software. It was developed in mid 90 s by collaborative
More informationSpring 2003 Instructor: Dr. Shahadat Hossain. Administrative Matters Course Information Introduction to Programming Techniques
1 CPSC2620 Advanced Programming Spring 2003 Instructor: Dr. Shahadat Hossain 2 Today s Agenda Administrative Matters Course Information Introduction to Programming Techniques 3 Course Assessment Lectures:
More informationCS 2340 Objects and Design
CS 2340 Objects and Design Software Design Christopher Simpkins chris.simpkins@gatech.edu Chris Simpkins (Georgia Tech) CS 2340 Objects and Design Software Design 1 / 6 Design Design (noun) A plan or protocol
More informationOO design. Classes, Responsibilities, Collaborations (CRC) 13/9/1999 COSC
OO design Classes, Responsibilities, Collaborations (CRC) 1 bank accounts the system to be modelled: bank accounts with differing fee structures purpose: evaluate different account types with respect to
More informationSE 1: Software Requirements Specification and Analysis
SE 1: Software Requirements Specification and Analysis Lecture 9: UML Class (Concept), Object, Communication Diagrams Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445
More informationPractical UML : A Hands-On Introduction for Developers
Borland.com Borland Developer Network Borland Support Center Borland University Worldwide Sites Login My Account Help Search Practical UML : A Hands-On Introduction for Developers - by Randy Miller Rating:
More informationBCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT. Object Oriented Programming
BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT Object Oriented Programming Examiner s Report March 2017 A1. a) Explain what is meant by the following terms:
More informationFinal Exam. Final Exam Review. Ch 1: Introduction: Object-oriented analysis, design, implementation. Exam Format
Final Exam Final Exam Review CS 4354 Fall 2012 Jill Seaman Friday, December 14, 11AM Closed book, closed notes, clean desk Content: Textbook: Chapters 1, 2, 4-10 Java Lectures, GRASP + JUnit 35% of your
More information02291: System Integration
02291: System Integration Week 4 Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2018 Contents From Requirements to Design CRC Cards Components (part Ia) Object-orientation:
More informationObject-Oriented Analysis Phase
Object-Oriented Analysis Phase Specification phase for Object-Oriented paradigm Semiformal Technique Natural part of OOA is the graphical notation associated with the technique Learning to use OOA has
More informationObject-Oriented Analysis Phase
Object-Oriented Analysis Phase Specification phase for Object-Oriented paradigm Semiformal Technique Natural part of OOA is the graphical notation associated with the technique Learning to use OOA has
More informationSRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR
SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS QUESTION BANK (2017-2018) Course / Branch : M.sc(CST) Semester / Year : VI(EVEN)/III Subject
More informationChapter : Analysis Modeling
Chapter : Analysis Modeling Requirements Analysis Requirements analysis Specifies software s operational characteristics Indicates software's interface with other system elements Establishes constraints
More informationUse Case Model. Static Structure. Diagram. Collaboration. Collaboration. Diagram. Collaboration. Diagram. Diagram. Activity. Diagram.
!"# $%&' !" #" $%%&&& ! Static Structure Diagram Collaboration Collaboration Diagram Collaboration Diagram Diagram Activity Diagram CRC Card CRC Card UML defines a standard notation for object-oriented
More informationSoftware Engineering Fall 2014
Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 10/01/2014 Class Announcements Grading is done for the Deliverable #2 (Requirement Elicitation) Will be posed
More informationHippo Software BPMN and UML Training
Hippo Software BPMN and UML Training Icon Key: www.hippo-software.co.uk Teaches theory concepts and notation Teaches practical use of Enterprise Architect Covers BPMN, UML, SysML, ArchiMate Includes paper
More informationIntroduction to Unified Modelling Language (UML)
IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Introduction to Unified
More informationMAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) MODEL ANSWER
Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate
More informationAbout this module. Object-oriented analysis and design. About this module. Analysis
About this module McGill ECE 321 Intro to Software Engineering Radu Negulescu Fall 2001 Object-oriented analysis and design The modules of an object-oriented program preserve state between calls. This
More informationObjectives Pre-Test Questions Introduction Collaboration Diagrams Flow of Events and Special Requirements...
10 Analysis Modeling M MAJOR A J O R T TOPICSO P I C S Objectives... 144 Pre-Test Questions...144 Introduction... 145 Collaboration Diagrams... 145 Flow of Events and Special Requirements... 151 Class-Responsibility-Collaboration
More informationTTool Training. I. Introduction to UML
TTool Training I. Introduction to UML Ludovic Apvrille ludovic.apvrille@telecom-paris.fr Eurecom, Office 223 Ludovic Apvrille TTool Training - 2004. Slide #1 Outline of the Training Introduction to UML
More informationVEL TECH HIGH TECH Dr. RANGARAJAN Dr. SAKUNTHALA ENGINEERING COLLEGE UNIT 1 UML DIAGRAMS
UNIT 1 UML DIAGRAMS Introduction to OOAD Unified Process - UML diagrams Use Case Class Diagrams Interaction Diagrams State Diagrams Activity Diagrams Package, component and Deployment Diagrams. INTRODUCTION
More informationOutline for Today CSE 142. CSE142 Wi03 G-1. withdraw Method for BankAccount. Class Invariants
CSE 142 Outline for Today Conditional statements if Boolean expressions Comparisons (=,!=, ==) Boolean operators (and, or, not - &&,,!) Class invariants Conditional Statements & Boolean Expressions
More informationGoal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD
Domain analysis Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD OOA concerned with what, not how OOA activities focus on the domain layer
More informationCS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams in UML
CS211 Lecture: Modeling Dynamic Behaviors of Systems; Interaction Diagrams in UML Objectives: 1. To introduce the notion of dynamic analysis 2. To show how to create and read Sequence Diagrams 3. To show
More informationCS3205: Task Analysis and Techniques
CS3205: Task Analysis and Techniques CS3205: Task Analysis and Techniques Readings (same as before): 1) ID-Book Chapter Establishing Requirements, Ch. 10 (Ch. 9 in course ebook) 2) Chapter 2 from Task-Centered
More informationObject-Oriented Functional Analysis and Design for POS Example
Object-Oriented Functional Analysis and Design for POS Example Focus in Analysis, Design, Implementation Analysis Investigation to the problem in problem domain Design Logical solution(model) for implementation
More information