CS 4233: Object Oriented Analysis and Design 9-Jan-2003 Lecture 1.

Slides:



Advertisements
Similar presentations
End of Fall Term Checkup SYSC-4907  Group Procedures  Progress Report  Oral Presentations  Poster Fair.
Advertisements

Pick of the day 30 Jan 2003 Lecture 13 Mini Case Study.
Pick of the day 27 Jan 2003 Lecture 11 Visitor. January Lecture 112 Outline Previous Business HW1 now available via my.wpi.edu Lecture Contents.
CIS101 Introduction to Computing Week 11 Spring 2004.
IT 240 Intro to Desktop Databases Introduction. About this course Design a database: Entity Relation (ER) modeling and normalization techniques Create.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
IS 421 Information Systems Management James Nowotarski 16 September 2002.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
CS261 Data Structures Winter 2011 Professor Timothy Budd.
Sept. 11, 2003CS WPI1 CS 509 Design of Software Systems Lecture #2 Thursday, Sept. 11, 2003.
Feb. 23, 2004CS WPI1 CS 509 Design of Software Systems Lecture #5 Monday, Feb. 23, 2004.
Feb. 27, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #13 Tuesday, Feb. 27, 2001.
January 28, 2014CS410 – Software Engineering Lecture #1: Introduction 1 Welcome to CS 410 – Introduction to Software Engineering Spring 2014 Instructor:
Fall AboutMichael Fung, CS&E, The Chinese University of HK1 CSC1030 Hands-on Introduction to JAVA Dept of Computer Science and Engineering The.
Lesson 1 Week01.
CPS 2231 Computer Organization and Programming Instructor: Tian (Tina) Tian.
Computer Network Fundamentals CNT4007C
7-Sep-15 Physics 1 (Garcia) SJSU Conceptual Physics (Physics 1) Prof. Alejandro Garcia Spring 2007.
SYSC System Analysis and Design 1 Part I – Introduction.
Software Engineering CS B Prof. George Heineman.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 1: Introduction.
Peter Andreae Computer Science Victoria University of Wellington Copyright: Peter Andreae, Victoria University of Wellington Summary and Exam COMP 102.
EECE 310 Software Engineering Lecture 0: Course Orientation.
Course Information. Course resources All course materials (slides, links to recorded lectures, online quiz, assignments, course project, and online exams)
James Tam CPSC 203: Introduction To Computers (Independent Study) James Tam.
10/10/2015 IENG 471 Facilities Planning 1 IENG Lecture END Project Report Requirements & Project Presentation Information.
ICS 102 Computer Programming University of Hail College of Computer Science & Engineering Computer Science and Software Engineering Department.
1 Copyright © 2010, 2007, 2004 Pearson Education, Inc. All Rights Reserved. Welcome to MA 180-2C! Instructor: Dr. Annette LaRussa
Object Oriented Programming Lecture 1: Introduction.
1 Software Systems Development CEN Spring 2011 TR 12:30 PM – 1:45 PM ENB 116 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering.
1 Copyright © 2010, 2007, 2004 Pearson Education, Inc. All Rights Reserved. Textbook Elementary Statistics Eleventh Edition by Mario F. Triola.
ICS102: Introduction To Computing King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science.
01 - Course Intro.CSC4071 CSC407S / 2103S Software Architecture & Design Prof. Penny Bahen 5228 Office hours: Wednesdays 10:00 – 11:00.
Lecture 1: Overview of CSCI 485 Notes: I presented parts of this lecture as a keynote at Educator’s Symposium of OOPSLA Shahram Ghandeharizadeh Associate.
CPSC 121: Models of Computation Unit 0 Introduction George Tsiknis Based on slides by Patrice Belleville and Steve Wolfman.
Sept. 18, 2003CS WPI1 CS 509 Design of Software Systems Lecture #3 Thursday, Sept. 18, 2003.
CSCE 496/896 Self-Managing Computer Systems Ying Lu 106 Schorr Center
1 How Do I Do Well In 8.02? A >= 95 = 90 = 85 B = 80 = 76 =72 C = 69 = 66 = 63 D = 59 F < 59 THIS COURSE IS NOT CURVED We want you to help your.
Introduction to CMPT 281. Outline Admin information Textbooks and resources Moodle site Grading Assignments Project.
Welcome to CIS 2168 ! Data Structures and Algorithms
Object Oriented Design Jerry KotubaSYST Object Oriented Methodologies1.
© 2004 Pearson Addison-Wesley. All rights reserved September 12, 2007 Encapsulation ComS 207: Programming I (in Java) Iowa State University, FALL 2007.
CS 4233 Review Feb February Review2 Outline  Previous Business – My.wpi.edu contains all grades to date for course – Review and contact.
1 CS161 Introduction to Computer Science Topic #17.
Orientation Spring 2011 Denise Coffey MSN, RN.  Concepts covered will include alterations in cellular regulation and cellular metabolism.  Course material.
CSCI 1100/1202 April 1-3, Program Development The creation of software involves four basic activities: –establishing the requirements –creating.
Designing Classes CS239 – Jan 26, Key points from yesterday’s lab  Enumerated types are abstract data types that define a set of values.  They.
Pick of the day 10-Jan-2003 Lecture 2 Crash course on OO Analysis Models.
Object Oriented Programming (FIT-II) J. H. Wang Jan. 31, 2008.
SYSC System Analysis and Design 1 Part I – Introduction.
Statistics Fall Introduction2 Wed, Aug 22, 2007 Introduction Dr. Robb T. Koether Office: Bagby 114 Office phone: Home phone: (before.
Fall 2012 Professor C. Van Loan Introduction to CSE Using Matlab GUIs CS 1115.
Pick of the day 13-Jan-2003 Lecture 3 Common Patterns in Static Design.
Computer Networks CNT5106C
CS 367 Introduction to Data Structures Charles N. Fischer Fall s367.html.
Principles of Imperative Computation Lecture 1 January 15 th, 2012.
Prof. James A. Landay University of Washington Winter 2009 Introduction & Course Overview CSE 441 – Advanced HCI January 6, 2009.
01 - Course Intro.CSC4071 CSC407S / 2103S ECE450S Software Architecture & Design (ECE: Software Engineering II) Prof. Penny LP396C
Statistics Spring Introduction Dr. Robb T. Koether Office: Bagby 114 Office phone: Home phone: (before 11:00 p.m.) Office hours:
Statistics Spring Introduction2 Wed, Aug 22, 2007 Introduction Dr. Robb T. Koether Office: Bagby 114 Office phone: Home phone:
PROBLEM SOLVING AND PROGRAMMING ISMAIL ABUMUHFOUZ | CS 170.
Computer Science I ISMAIL ABUMUHFOUZ | CS 180. CS 180 Description BRIEF SUMMARY: This course covers a study of the algorithmic approach and the object.
Physics 2048: Meet the Professors Tue/Thu lectures: Prof. Wiedenhöver
Computer Programming II Lecture 5. Introduction to Object Oriented Programming (OOP) - There are two common programming methods : procedural programming.
CSc 020: Programming Concepts and Methodology II
Anatomy of a Class & Method
BSHS 435 Competitive Success/snaptutorial.com
BSHS 435 Education for Service/snaptutorial.com
Introduction to Data Structures
Presentation transcript:

CS 4233: Object Oriented Analysis and Design 9-Jan-2003 Lecture 1

January Lecture 12 Outline Previous Business none Course Introduction Mini-design Example

January Lecture 13 Course Introduction CS 4233: Object-oriented Analysis & Design Prof. Heineman FL Office hours Tuesday 10:00 – 11:00 AM Thursday 5:00 – 6:00 PM my.wpi.edu web site available

January Lecture 14 Course Structure Core of five design assignments (50%) Midterm exam, Friday January 31 st (20%) Final exam, Thursday February 27 th (20%) Class participation (10%) as evidenced by questions/answers in class, visits to office hours, communication on my.wpi.edu

January Lecture 15 Course Goals Understand, develop, and critique UML models Utilize use cases to identify and describe requirements and specifications of a software system Generate a detailed design document for a software system Understand the use of design patterns within complex designs Describe and illustrate the use of design patterns

January Lecture 16 Course Focus Lay a foundation for OO design too much OO programming is done without first focusing on the design Educate in best practices of OO design hands-on experience Challenge you Seven weeks of thinking design

January Lecture 17 Basic Terms (from TAOO) Object – an abstraction of a physical entity or conceptual thing Class – the abstract descriptor of a set of object instances How are classes defined? Through analysis. Class Data Operations

January Lecture 18 OO Requirements Analysis (RA) Identify objects that are necessary for the context of a desired software application Typically precedes OO Design (OOD) OORA specifies externally visible characteristics of a system OOD specifies internal structure of system

January Lecture 19 Design Example Client makes the following request: I want to keep a linked list of the books in my collection. There are several categories of books, including Science Fiction, Fantasy, Fiction, NonFiction, Literature, and Reference. I frequently buy and sell books, and need monthly reports of my collection broken down by category.

January Lecture 110 Requirements Analysis > I want to keep a linked list of the books in my collection. There are several categories of books, including Science Fiction, Fantasy, Fiction, NonFiction, Literature, and Reference. I frequently buy and sell books, and need monthly reports of my collection broken down by category.

January Lecture 111 Analysis Model V0 Book title : String author: String isFantasy : Boolean isLiterature: Boolean nextFantasy : Book nextLiterature : Book … Critique RoadMap 1.Summarize the design 2.Identify the design decisions 3.Explain correct decisions 4.Critique flawed decisions Book 1 1 nextFantasy nextLiterature

January Lecture 112 Analysis Model V1 Collection fantasyBooks : Book literatureBooks : Book nonFictionBooks : Book … Collection 1 Book title : String author: String next: Book … Book *

January Lecture 113 Analysis Model V2 Collection categories : Category[*] … addCategory (Category c) Category getCategory(s) Collection 1 Book title : String author: String next: Book … Category * Book 1* Category type : String books : Book … addBook (b)

January Lecture 114 Why doesn’t the JDK have… Some Basic classes? Person User Book Why do its classes seem ‘too much’ Currency (JDK 1.4 only) Collection [not a class but an interface] String [11 constructors (2 deprecated), 55 methods (1 deprecated)]

January Lecture 115 public String toLowerCase(Locale locale) { int len = count; int off = offset; char[] val = value; int firstUpper; /* Now check if there are any characters that need to be changed. */ scan: { for (firstUpper = 0 ; firstUpper < len ; firstUpper++) { char c = value[off+firstUpper]; if (c != Character.toLowerCase(c)) {break scan;} } return this; } char[] result = new char[count]; /* Just copy the first few lowerCase characters. */ System.arraycopy(val, off, result, 0, firstUpper); if (locale.getLanguage().equals("tr")) { // special loop for Turkey for (int i = firstUpper; i < len; ++i) { char ch = val[off+i]; if (ch == 'I') { result[i] = '\u0131'; // dotless small i continue; } if (ch == '\u0130') { // dotted I result[i] = 'i'; // dotted i continue; } result[i] = Character.toLowerCase(ch); } } else { // normal, fast loop for (int i = firstUpper; i < len; ++i) { result[i] = Character.toLowerCase(val[off+i]); } return new String(0, result.length, result); }

January Lecture 116 Friday Assignments Read TAOO: Chapter 1 Complete Constructor Challenge Quiz Do exercise 1-2

January Lecture 117 References JDK online documentation.documentation Currency IMF special Basket,IMF special Basket