Advanced Java Programming

Slides:



Advertisements
Similar presentations
Systems Analysis and Design with UML Version 2.0, Second Edition
Advertisements

COMP 121 Week 7: Object-Oriented Design and Efficiency of Algorithms.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
UML Class Diagram. UML Class Diagrams2 Agenda What is a Class Diagram? Essential Elements of a UML Class Diagram Tips.
Problem Solving #1 ICS Outline Review of Key Topics Review of Key Topics Example Program Example Program –Problem 7.1 Problem Solving Tips Problem.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
Chapter 17 – Object- Oriented Design. Chapter Goals To learn about the software life cycle To learn about the software life cycle To learn how to discover.
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
Systems Analysis and Design in a Changing World, Tuesday, Feb 27
Systems Analysis and Design in a Changing World, Fifth Edition
1 A Student Guide to Object- Orientated Systems Chapter 4 Objects and Classes: the basic concepts.
COMP 121 Week 7: Object-Oriented Design and Efficiency of Algorithms.
Big Java Chapter 12. Software Process - Waterfall Analysis Design Implementation Testing Deployment Does not work well when rigidly applied! established.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 - Domain Classes.
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Copyright © 2014 by John Wiley & Sons. All rights reserved.1 Chapter 12 – Object-Oriented Design.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 Domain Classes.
Structural Modeling. Objectives O Understand the rules and style guidelines for creating CRC cards, class diagrams, and object diagrams. O Understand.
Domain Modeling Part2: Domain Class Diagram Chapter 4 pp part 2 1.
Activity & Class Modeling Labs Discussion p3 T120B pavasario sem.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
Lecture 6: Structural Modeling
5 Systems Analysis and Design in a Changing World, Fifth Edition.
Structural Modeling Chapter 7. Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes in.
1 Structural Modeling Chapter 7. 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes.
CS 151: Object-Oriented Design September 5 Class Meeting Department of Computer Science San Jose State University Spring 2013 Instructor: Ron Mak
Object Oriented Analysis: Associations. 2 Object Oriented Modeling BUAD/American University Class Relationships u Classes have relationships between each.
Copyright © 2013 by John Wiley & Sons. All rights reserved. Slides by Rick Giles OBJECT- ORIENTED DESIGN CHAPTER 12.
Chapter 17 – Object- Oriented Design. Chapter Goals To learn about the software life cycle To learn about the software life cycle To learn how to discover.
ITEC324 Principle of CS III Chapter 2 (Horstmann’s Book) – Part 1 The Object-Oriented Design Process Hwajung Lee.
Software Engineering Zhang Shuang
12 OBJECT-ORIENTED DESIGN CHAPTER
Finding Analysis Classes Analyze Use-cases and other artifacts to obtain Analysis classes, relationships, and behavior diagrams.
Class diagrams Terézia Mézešová.
CSC 480 Software Engineering PSP Project 2 August 27, 2004.
Activity & Class Modeling Labs Discussion p3 T120B pavasario sem.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Chapter 2 (Horstmann’s Book) – Part 1 The Object-Oriented Design Process Hwajung Lee.
Copyright © 2014 by John Wiley & Sons. All rights reserved.1 Chapter 12 – Object-Oriented Design.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
5 Chapter 5: Modeling Systems Requirements: Events and Things Systems Analysis and Design in a Changing World.
Chapter 12 – Object-Oriented Design
Structural Modeling.
DATA REQIREMENT ANALYSIS
OBJECT ORIENTED CONCEPT
Chapter 5: Structural Modeling
Analysis and Design with UML: Discovering Classes and Relationships
Class diagram Description
Object-Oriented Analysis
Analysis and Design with UML: Discovering Classes and Relationships
Analysis and Design with UML: Discovering Classes and Relationships
Object Oriented Analysis and Design
Advanced Java Programming
Domain Class Diagram Chapter 4 Part 2 pp
تحليل انظمة و تصميمها الوحدة الخامسة أ.محمد زكي شبير.
Advanced Java Programming
INFS 6225 Object Oriented Systems Analysis & Design
Understand and Use Object Oriented Methods
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
Copyright 2007 Oxford Consulting, Ltd
Chapter 12 – Object-Oriented Design
Analysis and Design with UML: Classes and Relationships
Domain Modeling.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
ITEC324 Principle of CS III
ITEC324 Principle of CS III
Presentation transcript:

Advanced Java Programming Session #, Speaker Name Advanced Java Programming CSS446 Spring 2014 Nan Wang 08/24/11

Chapter Goals To learn how to discover new classes and methods To use CRC cards for class discovery To identify inheritance, aggregation, and dependency relationships between classes To describe class relationships using UML class diagrams To apply object-oriented design techniques to building complex programs

Discovering Classes Requirements specification: a description of what your program should do. To discover classes, look for nouns in the problem description. Concepts from the problem domain are good candidates for classes.

Print an invoice Invoice Customer LineItem

CRC Card Method A simple rule for finding these methods is to look for verbs in the task description. CRC card describes a class, its responsibilities, and its collaborating classes. C: Classes;R: Responsibilites;C: Collaborators

Relationships Between Classes Dependency Aggregation Inheritance

Dependency A class depends on another class if it uses objects of that class. It is a good practice to minimize the coupling (i.e., dependency) between classes.

Aggregation Aggregation relationship is informally known as the “has-a” relationship. The aggregation relationship states that objects of one class contain objects of another class. Aggregation is a stronger form of dependency

Aggregation A car has a motor and tires. In object- oriented design, this “has-a” relationship is called aggregation.

Inheritance Inheritance is a relationship between a more general class (the superclass) and a more specialized class (the subclass). This relationship is often described as the “is-a” relationship.

Attributes and Methods in UML

Multiplicities • any number (zero or more):­* • one or more:­1..* • zero or one:­0..1 • exactly one:­1

Five-part program development process 1. Gather requirements. 2. Use CRC cards to find classes, responsibilities, and collaborators. 3. Use UML diagrams to record class relationships. 4. Use javadoc to document method behavior. 5. Implement your program.

Challenging Project – 150 points

Benchmark Project – 100 points

Programming Assignment Due date: Feb 27 Midterm March 3: No Class on March 6 (Conference)