Midterm 1 Overview Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.

Slides:



Advertisements
Similar presentations
Transport Layer3-1 Transport Overview and UDP. Transport Layer3-2 Goals r Understand transport services m Multiplexing and Demultiplexing m Reliable data.
Advertisements

Introduction 1-1 Chapter 3 Transport Layer Intro and Multiplexing Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.
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.
Chapter 1 Object-Oriented System Development
Object-Oriented Design & Programming Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Midterm 2 Overview Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
1 CS1001 Lecture Overview Java Programming Java Programming Midterm Review Midterm Review.
Modern Software Development Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
CMSC 132: Object-Oriented Programming II
Software Development Study Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Networking Support In Java 2 Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
1 Programming Section 9 James King 12 August 2003.
Unified Modeling Language (UML) Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Davide Rossi 2002 Using Sockets in Java. 2Davide Rossi 2002 TCP/IP  A protocol is a set of rules that determine how things communicate with each other.
Algorithmic Complexity 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Department of Computer Science University of Maryland, College Park
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved L24 (Chapter 25) Networking.
Networking Support In Java Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Software Engineering 3156 Fall 2001 Section 1 24-Sep-01 #5: Project, OOA, UML Phil Gross.
Final Overview Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Unified Modeling Language (UML)
UML Examples Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Networking Support In Java 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Algorithmic Complexity Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Object-Oriented Design 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
OOP in Java Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
What Is TCP/IP? The large collection of networking protocols and services called TCP/IP denotes far more than the combination of the two key protocols.
Unified Modeling Language
Using UML to report results of project management for information systems projects Donna M. Gavin MMIS 621 Information Systems Project Management Assignment.
Databases ? 2014, Fall Pusan National University Ki-Joune Li.
Introduction To System Analysis and Design
Modern Software Development Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Lecture91 Administrative Things r Return homework # 1 r Review some problems in homework # 1 r Questions about grading? Yona r WebCT for CSE245 is working!
CSNB534 Networked Computing Course Outline. Some Details.. Lecturer:Asma Shakil Room:BW-3-C48 Phone:2387 Web:
1 Chapter 28 Networking. 2 Objectives F To comprehend socket-based communication in Java (§28.2). F To understand client/server computing (§28.2). F To.
Introduction to Sockets “A socket is one endpoint of a two-way communication link between two programs running on the network. A socket is bound to a port.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
CS 3050 Object-Oriented Analysis and Design. Objectives What is “Object-Oriented?” Object-Oriented Approach Vs. Structured Approach How Has the Object-Oriented.
Socket Programming Introduction. Socket Definition A network socket is one endpoint in a two-way communication flow between two programs running over.
Data Structures Using C++ 2E
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Advanced UNIX programming Fall 2002, lecture 16 Instructor: Ashok Srinivasan Acknowledgements: The syllabus and power point presentations are modified.
CSI 3125, Preliminaries, page 1 Networking. CSI 3125, Preliminaries, page 2 Networking A network represents interconnection of computers that is capable.
서울대한양대 ( 안 산 ) 충남대 1년1년 컴퓨터기초 (C) 컴퓨터프로그래밍 (C, Java) 컴퓨터프로그래밍 (C) 2. 봄 프로그래밍 원리 (Scheme, ML) Structure & Interpretation of Computer Programs 프로그래밍 방법론.
Networking Mehdi Einali Advanced Programming in Java 1.
1 M206 Chapter 31: An Overview of Software Development 1.Defining the problem 2.Analyzing the requirement – constructing initial structural model 3.Analyzing.
Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved. 1 Chapter 33 Networking.
Internet Socket Programing
Chapter 3 outline 3.1 Transport-layer services
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Network Layer, and Logical Addresses
Object-Oriented Analysis & Design
MCA – 405 Elective –I (A) Java Programming & Technology
CSC 221: Computer Programming I Fall 2005
Subject Name: Computer Communication Networks Subject Code: 10EC71
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
CSCI {4,6}900: Ubiquitous Computing
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Systems Analysis Overview.
Introduction To System Analysis and Design PART 2
Transport Protocols An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
CSCD 330 Network Programming
INFORMATION FLOW ACROSS THE INTERNET
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Presentation transcript:

Midterm 1 Overview Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park

Overview of Topics 1. Software development & software life cycle 2. Object-oriented design 3. Unified Modeling Language (UML) 4. Networking 5. Algorithmic complexity

Software Life Cycle Phases of cycle Specification  …  maintenance Waterfall model Program design methods Top down Object oriented Testing Verification Empirical Unit, integration, acceptance tests Code coverage

Object-Oriented Design Objects & classes Motivation State, behavior, identity Inheritance Finding classes Nouns in problem specification Finding methods Verbs in problem specification

Unified Modeling Language (UML) UML Views Logical, use-case Class diagrams Association (has a …) Dependency (uses a …) Generalization (is a …) Implementation Multiplicity Sequence diagrams

Networking Network model Physical layer  …  application layer Network concepts IP address, sockets, ports, URLs Reliability Connections vs. packets TCP vs. UDP Client / server Java network support Socket, ServerSocket, DatagramSocket, URL Applets, Java sandbox

Algorithmic Complexity Benchmarking vs. analysis Asymptotic analysis Big-O notation Average & worst case Comparing complexity Finding critical sections Finding code Evaluating complexity Recursive algorithms

Midterm Question Formats Multiple choice questions Short 1-sentence answers Design classes (from specification) Analyze UML class diagrams Draw UML class diagrams (from code) Analyze complexity of code fragments

Multiple Choice Question Example Using Object-Oriented design, we view a problem as a collection of Objects Functions None of the above We find objects in the problem specification by looking for Nouns Verbs All of the above

Short 1-Sentence Answer Example What is an IP address? A unique 64-bit number for each computer connected to the internet using the Internet Protocol (IP) How do you get an IP address for your computer? Your IP address is assigned by a server at your service provider when you connect to the internet

Class Design Example Given the following problem specification Design a heating simulation where each room has a thermostat that controls a heater. The thermostat turns on the heater if the current temperature in the room is lower than the thermostat setting. Design the classes for solving the problem Data for each class Methods for each class

Analyze UML Example Given the following UML class diagram Which classes contain class W? Which classes use class Z? Which classes may change if class Z changes? How many instances of class W does class Y have? Can class X be used wherever class Y is used? XZ YW *

Draw UML Example Draw UML class diagram for following code class foo { go() { class bar b; } class bar { class foo f; } class test extends foo { }

Analyze Complexity Example What is the complexity of the following codes? for (i = 1; i < n; i++) { for (j = 1; j < 2*n; j++) … } for (i = 1; i < n; i=i*4) { for (j = 1; j < 100; j++) … }