3. Task Group & Applying Composite Pattern

Size: px
Start display at page:

Download "3. Task Group & Applying Composite Pattern"

Transcription

1 National Taipei University of Technology Object-Oriented Programming (Fall, 2007) Homework # 3 (Due: Wed., Nov. 7, 24:00) 1. Introduction In homework #3, we will assemble several tasks as a group called Task Group. Second, we will practice two design patterns: Singleton and Composite. You have to apply these patterns in your program. Finally, you have to do some unit testing for your homework. In addition, a skeleton program is also offered to implement homework#3. Therefore, you can choose either the skeleton program or your own program. In general, you are encouraged to implementing homework#3 based on your own program. 2. Applying Singleton Pattern Ensure a class only has one instance, and provide a global point of access to it. The TaskManager class plays the Controller role in our application. All the functions of Task Organizer will be completed by using the public methods of TaskManager. It s important for the TaskManager class to have exactly one instance. The TaskManager class ensure that no other instance can be created, and it provide a way to access the instance. Figure 1 shows the related class of class diagram after applying the Singleton pattern. The TaskManager defines an instance operation that lets clients access its unique instance. You should notice that the _instance attribute and instance operation are in class scope. Figure 1: Applying Singleton to TaskManager class 3. Task Group & Applying Composite Pattern 1/7

2 3.1 Add a new tag: <taskgroup> In this homework, several related tasks can be assembled as a group, and we called it a Task Group. Each task group can also assembled other task groups and tasks. Therefore, all the tasks can form as a hierarchical tree structure. By using this tree structure, we can manage our tasks: put the related tasks together, or breakdown a complicated task into several subtasks. In order to support the task group in our current implementation, we add a new tag called <taskgroup> for describing the task group. You have to modify the loadfromfile method for the file format changes. The file format changes section will be described in the following section. 3.2 File Format Changes The description file now has only one default task group which contains all the tasks and task groups. Each task group will be described as <taskgroup id="value"> </taskgroup> format, and it can contains other tasks and task groups. For example, in the Figure 2, the default task group has 2 tasks and 2 task groups, and each task group has one or more tasks. The task format is the same as previous homework. Figure 2: Sample Input File 2/7

3 3.3 Composite Pattern Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Figure 3 shows the class structure of our application after applying the composite pattern. The ITask class is an abstract base class. The ITask class declares the common interface and implements some default behaviors. Both the Task class and TaskGroup class extend the ITask class. The Task class represents leaf objects in the composition, it means a leaf has no children; the TaskGroup class stores several child components and implements child-related operations in the ITask interface. Two specific operations: counttotalexpectedtime and counttotalactualtime, are useful behaviors for managing our tasks. Sometimes, we want to know the total time we spent on some related tasks, such as doing the homework in this semester. If we treat the Task and TaskGroup differently, so the program have to distinguish these objects makes the application more complex. The Composite pattern describes how to use recursive composition so that clients don t have to make this distinction. Figure 3: Applying the Composite pattern 3/7

4 4. Unit Test Begin with this homework, you have to do the unit testing for every following homework. We will provide a unit test skeleton in this homework. Table 1 show all the test methods. The first unit testing has 2 test cases: TaskManagerTestCase and TaskGroupTestCase. Each test case has a test suite that contains a number of test methods. There are 11 test methods in totally. You are required to provide implementation of those 10 test methods at least, and the testmissingrequiredattribute method is for bonus. Test Method Description TaskManagerTestCase testloadfromfilecorrectly All the tasks are loaded into application exactly testmissingrequiredattribute (Bonus) Test if a required attribute is missing testmissingoptionalattributes Test if a optional attribute is missing testchangingattributesordering Test 5 possible combinations at least testsavetofilecorrectly Test that the saved file is the same as expected testimportfilecorrectly Test importing tasks correctly testistaskexistcorrectly Test if one task is exist or not TaskGroupTestCase testaddsubtaskcorrectly Test adding a new subtask correctly testremovesubtaskcorrectly Test removing a subtask correctly testgetsubtaskcorrectly Test get a subtask correctly testfindsubtaskcorrectly Test find a subtask correctly Table 1: Test Methods Listing Moreover, you should get used to the following items so that make your unit tests more effective. 1. When a unit test fails, fix the code right away. 2. All unit tests pass but the code crashed: write a unit test that demonstrates the failure. 3. Maintain your unit tests! Keep them up to date with your architecture/specification changes. 4. Write your code so that it's easy to write unit tests. 5. Refactor your code when necessary to make it more unit test friendly. This will almost always lead to better code as well. 6. Do not copy and paste from your application code that is needed to do setup! 4/7

5 5. Draw the Class Diagram for your program You have to draw the class diagram for your implementation. The structure of your class diagram may be alike the design class diagram, but the class diagram contains more details, including: 1. All the classes you implement. 2. All the attributes and operations of the class. 3. The pattern name and pattern roles that you apply in this homework. You can draw the class diagram by using any UML drawing tool, or using Microsoft Visio as well. However, you have to export the class diagram to the PDF or JPEG file format, and provide the electronic and printed versions both with homework submission. Figure 4 shows how the pattern name and pattern roles are marked. The pattern name will use the Stereotype on each related class, and the pattern role will use the Note to indicate the role which the class plays. Figure 4: the pattern name and pattern role of the class diagram 5/7

6 6. Grading After completing this homework, your program should provide the following features: 1. Applying the Singleton pattern (10%) 2. Applying the Composite Pattern (50%) (a). Modify the TaskManager class to support task group. (20%) (b). Complete the ITask, Task, and TaskGroup classes correctly. (20%) (c). Implement the counttotalexpectedtime and counttotalactualtime methods correctly. (10%) 3. Doing the unit testing (35%) (a). 10 test methods listing in Table 1. (30%) (b). Bonus: implement the testmissingrequiredattribute method. (5%) 4. Draw the class diagram for your implementation. (10%) Please write a C/C++ program to perform these features described above. The efficiency of your program is not a concern in this homework. 7. Homework submission The homework needs to be submitted in both ways: 1. Electronic version All the related files in this homework have to compress in one ZIP file. The ZIP should include the following items: (1). Source code (the entire eclipse project). (2). Report (PDF or WORD). (3). Class diagram (PDF or JPEG). Please login the Open Cyber Classroom using your student ID from the following URL: You have to upload the electronic version to the web. 2. Printed version You have to write a brief summary for this homework that should include the following items: (1). The features that you finished in this homework. (2). Snapshots of program execution. (3). The implementation class diagram. (4). Source Code Listing as appendix. (5). Measure the time that you spent in this homework. Please record the time precisely in the following table (Table 2). 6/7

7 OOP homework#1 (total: 11:03 hours) Date Start Stop Interrupt Hour Comments :35 15:00 1:25 Run Skeleton program :00 17:00 1:00 Learning STL library Table 2: Measurement Example 8. References Some free UML drawing tolls: (1). StartUML, (2). Visual Paradigm for UML, 7/7

0. Introduction. National Taipei University of Technology. Object-Oriented Programming (Fall, 2008) Homework # 1 (Due: Mon., Oct.

0. Introduction. National Taipei University of Technology. Object-Oriented Programming (Fall, 2008) Homework # 1 (Due: Mon., Oct. National Taipei University of Technology 0. Introduction Object-Oriented Programming (Fall, 2008) Homework # 1 (Due: Mon., Oct. 6, 24:00) In order to improve your programming skill, we will assign you

More information

Design Pattern: Composite

Design Pattern: Composite Design Pattern: Composite Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Motivation

More information

Tecniche di Progettazione: Design Patterns

Tecniche di Progettazione: Design Patterns Tecniche di Progettazione: Design Patterns GoF: Composite 1 Composite pattern Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects

More information

Data Structure and Algorithm Homework #3 Due: 2:20pm, Tuesday, April 9, 2013 TA === Homework submission instructions ===

Data Structure and Algorithm Homework #3 Due: 2:20pm, Tuesday, April 9, 2013 TA   === Homework submission instructions === Data Structure and Algorithm Homework #3 Due: 2:20pm, Tuesday, April 9, 2013 TA email: dsa1@csientuedutw === Homework submission instructions === For Problem 1, submit your source code, a Makefile to compile

More information

BLACKBOARD PORTFOLIOS

BLACKBOARD PORTFOLIOS BLACKBOARD PORTFOLIOS Blackboard Learn Student Support elearning Instructors may create assignments in their courses that require students to build a portfolio using Blackboard s portfolio tool. A portfolio

More information

Com S 227 Assignment Submission HOWTO

Com S 227 Assignment Submission HOWTO Com S 227 Assignment Submission HOWTO This document provides detailed instructions on: 1. How to submit an assignment via Canvas and check it 3. How to examine the contents of a zip file 3. How to create

More information

Topics in Object-Oriented Design Patterns

Topics in Object-Oriented Design Patterns Software design Topics in Object-Oriented Design Patterns Material mainly from the book Design Patterns by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides; slides originally by Spiros Mancoridis;

More information

ECE 449 OOP and Computer Simulation Lecture 11 Design Patterns

ECE 449 OOP and Computer Simulation Lecture 11 Design Patterns ECE 449 Object-Oriented Programming and Computer Simulation, Fall 2017, Dept. of ECE, IIT 1/60 ECE 449 OOP and Computer Simulation Lecture 11 Design Patterns Professor Jia Wang Department of Electrical

More information

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques Fundamentals, Design, and Implementation, 9/e Three Schema Model ANSI/SPARC introduced the three schema model in 1975 It provides a framework

More information

Code Check TM Software Requirements Specification

Code Check TM Software Requirements Specification Code Check TM Software Requirements Specification Author: Richard McKenna Debugging Enterprises TM Based on IEEE Std 830 TM -1998 (R2009) document format Copyright 2017 Debugging Enterprises No part of

More information

Blackboard: Campus Pack Journal Sites

Blackboard: Campus Pack Journal Sites 1 Blackboard: Campus Pack Journal Sites TLT Instructional Technology Support (631) 632-2777 Stony Brook University blackboard@stonybrook.edu http://tlt.stonybrook.edu/facultyservices In this document,

More information

Homework Assignment #3

Homework Assignment #3 CS 540-2: Introduction to Artificial Intelligence Homework Assignment #3 Assigned: Monday, February 20 Due: Saturday, March 4 Hand-In Instructions This assignment includes written problems and programming

More information

The Ethic Management System (EMS) User guide

The Ethic Management System (EMS) User guide The Ethic Management System (EMS) User guide On the web browser, type the URL link: https://www.witsethics.co.za Click on Login (on right corner of top menu bar) to access the Ethics Management System

More information

Ch. 11: References & the Copy-Constructor. - continued -

Ch. 11: References & the Copy-Constructor. - continued - Ch. 11: References & the Copy-Constructor - continued - const references When a reference is made const, it means that the object it refers cannot be changed through that reference - it may be changed

More information

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques Fundamentals, Design, and Implementation, 9/e Three Schema Model ANSI/SPARC introduced the three schema model in 1975 It provides a framework

More information

HHH Instructional Computing Fall

HHH Instructional Computing Fall Quick Start Guide for School Web Lockers Teacher log-on is the same as for Infinite Campus Student log-on is the same initial log on to the network except no school year is required before their user name

More information

Think of drawing/diagramming editors. ECE450 Software Engineering II. The problem. The Composite pattern

Think of drawing/diagramming editors. ECE450 Software Engineering II. The problem. The Composite pattern Think of drawing/diagramming editors ECE450 Software Engineering II Drawing/diagramming editors let users build complex diagrams out of simple components The user can group components to form larger components......which

More information

Instructions PLEASE READ (notice bold and underlined phrases)

Instructions PLEASE READ (notice bold and underlined phrases) Assignment 4 Recursive and Sorting Methods Solutions Required Reading Java Foundations Chapter 13 Linked Structures Chapter 17 Recursion Chapter 18 Searching and Sorting Chapter 19 Trees Instructions PLEASE

More information

CS3114 (Fall 2013) PROGRAMMING ASSIGNMENT #2 Due Tuesday, October 11:00 PM for 100 points Due Monday, October 11:00 PM for 10 point bonus

CS3114 (Fall 2013) PROGRAMMING ASSIGNMENT #2 Due Tuesday, October 11:00 PM for 100 points Due Monday, October 11:00 PM for 10 point bonus CS3114 (Fall 2013) PROGRAMMING ASSIGNMENT #2 Due Tuesday, October 15 @ 11:00 PM for 100 points Due Monday, October 14 @ 11:00 PM for 10 point bonus Updated: 10/10/2013 Assignment: This project continues

More information

Last Lecture. Lecture 26: Design Patterns (part 2) State. Goals of Lecture. Design Patterns

Last Lecture. Lecture 26: Design Patterns (part 2) State. Goals of Lecture. Design Patterns Lecture 26: Design Patterns (part 2) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2003 Last Lecture Design Patterns Background and Core Concepts Examples Singleton,

More information

Network Administration/System Administration (NTU CSIE, Spring 2018) Homework #1. Homework #1

Network Administration/System Administration (NTU CSIE, Spring 2018) Homework #1. Homework #1 Submission Homework #1 Due Time: 2018/3/11 (Sun.) 22:00 Contact TAs: vegetable@csie.ntu.edu.tw Compress all your files into a file named HW1_[studentID].zip (e.g. HW1_bxx902xxx.zip), which contains two

More information

CMPE 152 Compiler Design

CMPE 152 Compiler Design San José State University Department of Computer Engineering CMPE 152 Compiler Design Section 1 (Class) Sections 2 and 3 (s) Fall 2018 Course and Contact Information Instructor: Ron Mak Office Location:

More information

CS/SE 153 Concepts of Compiler Design

CS/SE 153 Concepts of Compiler Design San José State University Department of Computer Science CS/SE 153 Concepts of Compiler Design Section 1 Fall 2018 Course and Contact Information Instructor: Ron Mak Office Location: ENG 250 Email: ron.mak@sjsu.edu

More information

Design Patterns. Comp2110 Software Design. Department of Computer Science Australian National University. Second Semester

Design Patterns. Comp2110 Software Design. Department of Computer Science Australian National University. Second Semester Design Patterns Comp2110 Software Design Department of Computer Science Australian National University Second Semester 2005 1 Design Pattern Space Creational patterns Deal with initializing and configuring

More information

The Composite Pattern

The Composite Pattern The Composite Pattern Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. This is called

More information

Design Patterns IV. Alexei Khorev. 1 Structural Patterns. Structural Patterns. 2 Adapter Design Patterns IV. Alexei Khorev. Structural Patterns

Design Patterns IV. Alexei Khorev. 1 Structural Patterns. Structural Patterns. 2 Adapter Design Patterns IV. Alexei Khorev. Structural Patterns Structural Design Patterns, 1 1 COMP2110/2510 Software Design Software Design for SE September 17, 2008 2 3 Department of Computer Science The Australian National University 4 18.1 18.2 GoF Structural

More information

Design Patterns IV Structural Design Patterns, 1

Design Patterns IV Structural Design Patterns, 1 Structural Design Patterns, 1 COMP2110/2510 Software Design Software Design for SE September 17, 2008 Class Object Department of Computer Science The Australian National University 18.1 1 2 Class Object

More information

Unified Modeling Language (UML)

Unified Modeling Language (UML) Appendix H Unified Modeling Language (UML) Preview The Unified Modeling Language (UML) is an object-oriented modeling language sponsored by the Object Management Group (OMG) and published as a standard

More information

15-122: Principles of Imperative Computation, Spring 2013

15-122: Principles of Imperative Computation, Spring 2013 15-122 Homework 6 Page 1 of 13 15-122: Principles of Imperative Computation, Spring 2013 Homework 6 Programming: Huffmanlab Due: Thursday, April 4, 2013 by 23:59 For the programming portion of this week

More information

PowerSchool Parent Portal Quick Reference Card

PowerSchool Parent Portal Quick Reference Card What is PowerSchool Parent Portal? PowerSchool Parent Portal gives parents and students access to realtime information including attendance, grades and detailed assignment descriptions. Once parents have

More information

Parent Instructions for Registration in Genius Course Requests, Drop Requests & Transcripts

Parent Instructions for Registration in Genius Course Requests, Drop Requests & Transcripts Parent Instructions for Registration in Genius Course Requests, Drop Requests & Transcripts To begin, log in to the NSO Genius page: http://mn.geniussis.com/publicwelcome.aspx?id=2 There is also a link

More information

PowerSchool Parent Portal Quick Reference Card

PowerSchool Parent Portal Quick Reference Card What is PowerSchool Parent Portal? PowerSchool Parent Portal gives parents and students access to realtime information including attendance, grades and detailed assignment descriptions. Once parents have

More information

Fundamentals of Computer Science CSCI 136 Syllabus Fall 2018

Fundamentals of Computer Science CSCI 136 Syllabus Fall 2018 Fundamentals of Computer Science CSCI 136 Syllabus Fall 2018 CSCI 136 Section 00 Instructor: Michael Cassens Office: SS 411 Office Hours: MWF 11:00-11:50 am or by appt Phone: (415) 787-0577 E-mail: michael.cassens@mso.umt.edu

More information

MTAT Systems Modelling

MTAT Systems Modelling MTAT.03.083 Systems Modelling Homework 2 (HW2) - Interaction Modelling, Application Modelling, and Coding (24 points + BONUS) Due on 20.11.2017 at 23:59 complete the homework in groups of 2 students. SUBMISSIONS:

More information

Object-Oriented Oriented Programming

Object-Oriented Oriented Programming Object-Oriented Oriented Programming Composite Pattern CSIE Department, NTUT Woei-Kae Chen Catalog of Design patterns Creational patterns Abstract Factory, Builder, Factory Method, Prototype, Singleton

More information

Considerations. New components can easily be added to a design.

Considerations. New components can easily be added to a design. Composite Pattern Facilitates the composition of objects into tree structures that represent part-whole hierarchies. These hierarchies consist of both primitive and composite objects. Considerations Clients

More information

Conceptual Modeling in ER and UML

Conceptual Modeling in ER and UML Courses B0B36DBS, A7B36DBS: Database Systems Practical Classes 01 and 02: Conceptual Modeling in ER and UML Martin Svoboda 21. and 28. 2. 2017 Faculty of Electrical Engineering, Czech Technical University

More information

Student Guide to elearn

Student Guide to elearn Student Guide to elearn 1 Course Navigation Student Guide to elearn When you first enter a course, you will see the Course Home page. Here you will find directions on how to get started in your specific

More information

San José State University Computer Science CS 122 Advanced Python Programming Spring 2018

San José State University Computer Science CS 122 Advanced Python Programming Spring 2018 Course and Contact Information San José State University Computer Science CS 122 Advanced Python Programming Spring 2018 Instructor: Office Location: Telephone: Email: Office Hours: Class Days/Time: Classroom:

More information

SIMON. Creating and Assessing Assessment Tasks. Creating an Assessment Task. Step 1

SIMON. Creating and Assessing Assessment Tasks. Creating an Assessment Task. Step 1 Creating an Assessment Task Step 1 Navigate to the subject area in your Learning Areas and select Assessment Tasks. Step 2 Select Maintain Tasks (View Tasks is for assessing the completed tasks, recording

More information

Project 6: Assembler

Project 6: Assembler Project 6: Assembler CS 220 Start: Oct. 16; Due: Nov. 1 at 11:55 pm Background Low-level machine programs are rarely written by humans. Typically, they are generated by compilers. Yet humans can inspect

More information

MARKING CANVAS ASSIGNMENTS OFFLINE (INCLUDING MARKING ANONYMOUSLY)

MARKING CANVAS ASSIGNMENTS OFFLINE (INCLUDING MARKING ANONYMOUSLY) LEARNING TECHNOLOGY AT LJMU MARKING CANVAS ASSIGNMENTS OFFLINE (INCLUDING MARKING ANONYMOUSLY) Information about Downloading Student Submissions If you want to download all student submissions for an assignment,

More information

PROGRESS BOOK PARENT ACCESS NAVIGATION

PROGRESS BOOK PARENT ACCESS NAVIGATION PROGRESS BOOK PARENT ACCESS NAVIGATION Enter the following web address into your internet browser. https://parent.laca.org From the resulting screen, you can click on your child s school district icon.

More information

USER MANUAL COLLEGE MCS E-LEARNING MANAGEMENT SYSTEM

USER MANUAL COLLEGE MCS E-LEARNING MANAGEMENT SYSTEM COLLEGE MCS STUDENT MANUAL USER MANUAL COLLEGE MCS E-LEARNING MANAGEMENT SYSTEM 2 TABLE OF CONTENTS TOPIC DESCRIPTIONS PAGE NUMBER 1.0 System Log In 3 2.0 Forgot Username and Password 4 3.0 Editing Student

More information

Teiid Designer User Guide 7.5.0

Teiid Designer User Guide 7.5.0 Teiid Designer User Guide 1 7.5.0 1. Introduction... 1 1.1. What is Teiid Designer?... 1 1.2. Why Use Teiid Designer?... 2 1.3. Metadata Overview... 2 1.3.1. What is Metadata... 2 1.3.2. Editing Metadata

More information

CSE 214 Computer Science II Introduction to Tree

CSE 214 Computer Science II Introduction to Tree CSE 214 Computer Science II Introduction to Tree Fall 2017 Stony Brook University Instructor: Shebuti Rayana shebuti.rayana@stonybrook.edu http://www3.cs.stonybrook.edu/~cse214/sec02/ Tree Tree is a non-linear

More information

CprE 381 Computer Organization and Assembly Level Programming

CprE 381 Computer Organization and Assembly Level Programming CprE 381 Computer Organization and Assembly Level Programming Mini-Project B, Version 1.0 Last update: 10/21/2013 This is a three-week project. You will design and implement two versions of a single-cycle

More information

NEW FEATURES AND ENHANCEMENTS ON REGULAR COURSE WORKFLOW FOR WINTER 2015

NEW FEATURES AND ENHANCEMENTS ON REGULAR COURSE WORKFLOW FOR WINTER 2015 NEW FEATURES AND ENHANCEMENTS ON REGULAR COURSE WORKFLOW FOR WINTER 2015 1. Instructor Resource Documents Feature Enhancements: Now an Instructor can share the documents uploaded under master section with

More information

CSE 100 Advanced Data Structures

CSE 100 Advanced Data Structures CSE 100 Advanced Data Structures Overview of course requirements Outline of CSE 100 topics Review of trees Helpful hints for team programming Information about computer accounts Page 1 of 25 CSE 100 web

More information

Teacher Guide. Edline -Teachers Guide Modified by Brevard Public Schools Revised 6/3/08

Teacher Guide. Edline -Teachers Guide Modified by Brevard Public Schools  Revised 6/3/08 Teacher Guide Teacher Guide EDLINE This guide was designed to give you quick instructions for the most common class-related tasks that you will perform while using Edline. Please refer to the online Help

More information

I. Downloading Grades from the Grade Center

I. Downloading Grades from the Grade Center I. Downloading Grades from the Grade Center If you use the Blackboard Grade Center for grading, it is recommended that you download the data from the Grade Center into Excel to keep a backup copy for yourself.

More information

Go to the Covenant College website: covenant.edu and click on the gray Scots Links box in the top-right menu, and select Canvas, or use this link:

Go to the Covenant College website: covenant.edu and click on the gray Scots Links box in the top-right menu, and select Canvas, or use this link: Covenant College Getting Started with Canvas Fall 2017 For Students LMS A learning management system is an online service with built-in tools and features to support individual courses. The primary objective

More information

CS2110 Assignment 3 Inheritance and Trees, Summer 2008

CS2110 Assignment 3 Inheritance and Trees, Summer 2008 CS2110 Assignment 3 Inheritance and Trees, Summer 2008 Due Sunday July 13, 2008, 6:00PM 0 Introduction 0.1 Goals This assignment will help you get comfortable with basic tree operations and algorithms.

More information

Laboratorio di Sistemi Software Design Patterns 2

Laboratorio di Sistemi Software Design Patterns 2 TITLE Laboratorio di Sistemi Software Design Patterns 2 Luca Padovani (A-L) Riccardo Solmi (M-Z) 1 Indice degli argomenti Tipi di Design Patterns Creazionali, strutturali, comportamentali Design Patterns

More information

Cmpt 135 Assignment 2: Solutions and Marking Rubric Feb 22 nd 2016 Due: Mar 4th 11:59pm

Cmpt 135 Assignment 2: Solutions and Marking Rubric Feb 22 nd 2016 Due: Mar 4th 11:59pm Assignment 2 Solutions This document contains solutions to assignment 2. It is also the Marking Rubric for Assignment 2 used by the TA as a guideline. The TA also uses his own judgment and discretion during

More information

Illustrated Guide to the. UTeach. Electronic Portfolio

Illustrated Guide to the. UTeach. Electronic Portfolio Illustrated Guide to the UTeach Electronic Portfolio UTeach Portfolio Guide 1 Revised Spring 2011 The Electronic Portfolio All UTeach students have access to the electronic portfolio. If you can t log

More information

Quick Reference Guide for Students: Applying for Course or Campus Transfer

Quick Reference Guide for Students: Applying for Course or Campus Transfer Quick Reference Guide for Students: Applying for Course or Campus Transfer This guide contains information for current Monash students applying for a Course or Campus Transfer using a new online course

More information

Once you see the screen below click on the MESA Dropbox

Once you see the screen below click on the MESA Dropbox The following provides instructions for uploading competition files to the online dropbox. The dropbox can be used to submit the following MESA competition components: Elementary School SCRATCH Interactive

More information

HireaHawk Job Posting Instructions

HireaHawk Job Posting Instructions HireaHawk Job Posting Instructions TABLE OF CONTENTS We highly encourage you to start at STEP I. These instructions will take you through posting a job and all the options that you have related to your

More information

ECE2049: Embedded Systems in Engineering Design Lab Exercise #3 C Term Making a Time and Temperature Display

ECE2049: Embedded Systems in Engineering Design Lab Exercise #3 C Term Making a Time and Temperature Display ECE2049: Embedded Systems in Engineering Design Lab Exercise #3 C Term 2019 Making a Time and Temperature Display In this laboratory you will use the MSP430 and several of its peripherals to implement

More information

Blackboard: Campus Pack Blog Sites

Blackboard: Campus Pack Blog Sites 1 Blackboard: Campus Pack Blog Sites TLT Instructional Technology Support (631) 632-2777 Stony Brook University blackboard@stonybrook.edu http://it.stonybrook.edu/ In this document, you will learn how

More information

Summer 2017 ECE 3056

Summer 2017 ECE 3056 Assignment 2 Due Dates: Part I C++ Program: 11:55 pm, Friday June 2 nd, 2017 Part II Homework Problems: Prior to the beginning of class, Thursday June 1 st, 2017 NOTE: for students in Atlanta, you are

More information

CIS 121 Data Structures and Algorithms with Java Spring 2018

CIS 121 Data Structures and Algorithms with Java Spring 2018 CIS 121 Data Structures and Algorithms with Java Spring 2018 Homework 2 Thursday, January 18 Due Monday, January 29 by 11:59 PM 7 Required Problems (85 points), and Style and Tests (15 points) DO NOT modify

More information

SLATE APPLICATION HOW TO GUIDES

SLATE APPLICATION HOW TO GUIDES SLATE APPLICATION HOW TO GUIDES Accessing and Navigating Slate How to log into Slate How to find an application in Slate How to view an applicant s PDF Slate Record Overview The Dashboard Tab Slate Record

More information

Project 5: Computer Architecture

Project 5: Computer Architecture Project 5: Computer Architecture CS 220 Start: Oct. 7; Due: Oct. 15 at 11:55 pm Background In previous projects we ve built the computer s basic processing and storage devices (ALU and RAM, respectively).

More information

Moodle 2.2 Student User Guide My Private Files

Moodle 2.2 Student User Guide My Private Files Moodle 2.2 Student User Guide My Private Files Using My Private Files My Private Files saves files in the cloud. Only the user may access it, but you can access it from any computer where you can access

More information

ManageBac Parent Guide

ManageBac Parent Guide PARENT GUIDE 1 Getting Started 1.1 Accessing Your Account 1.2 Registration 1.3 Navigating Through ManageBac 1.4 Updating your E mail Address, Password and Contact Information 1.5 Switching between Children

More information

CS/SE 153 Concepts of Compiler Design

CS/SE 153 Concepts of Compiler Design San José State University Department of Computer Science CS/SE 153 Concepts of Compiler Design Course and Contact Information Instructor: Ron Mak Office Location: ENG 250 Email: Website: Office Hours:

More information

Computer Science 210 Data Structures Siena College Fall Topic Notes: Trees

Computer Science 210 Data Structures Siena College Fall Topic Notes: Trees Computer Science 0 Data Structures Siena College Fall 08 Topic Notes: Trees We ve spent a lot of time looking at a variety of structures where there is a natural linear ordering of the elements in arrays,

More information

Canvas Quick Guide for Students

Canvas Quick Guide for Students Canvas Quick Guide for Students This quick guide will provide a brief overview for students on how to set up basic settings and customize notification emails. Canvas Login: Login URL: https://sjsu.instructure.com

More information

ECE 449, Fall 2017 Computer Simulation for Digital Logic Project Instruction

ECE 449, Fall 2017 Computer Simulation for Digital Logic Project Instruction ECE 449, Fall 2017 Computer Simulation for Digital Logic Project Instruction 1 Summary We present in this document the project instruction for ECE 449 including the grading policy. Our goal is to build

More information

QuickStart Guide for External Assessors

QuickStart Guide for External Assessors Students may be required to submit their work to external assessors who do not have Chalk & Wire accounts. Additionally, administrators may send assessments directly to external assessors, which do not

More information

Online Registration Detailed Instructions For Infinite Campus

Online Registration Detailed Instructions For Infinite Campus STEP DESCRIPTION 1 Login to Infinite Campus Portal Visit https://campus.elmbrookschools.org/campus /portal/elmbrook.jsp If you have a portal account, enter your username (email address) and password and

More information

Inheritance STL. Entity Component Systems. Scene Graphs. Event Systems

Inheritance STL. Entity Component Systems. Scene Graphs. Event Systems Inheritance STL Entity Component Systems Scene Graphs Event Systems Event Systems Motivation: Decoupling events from where they are sent and where they are processed. It facilitates communication between

More information

THOMAS LATOZA SWE 621 FALL 2018 DESIGN PATTERNS

THOMAS LATOZA SWE 621 FALL 2018 DESIGN PATTERNS THOMAS LATOZA SWE 621 FALL 2018 DESIGN PATTERNS LOGISTICS HW3 due today HW4 due in two weeks 2 IN CLASS EXERCISE What's a software design problem you've solved from an idea you learned from someone else?

More information

Power School Parent Portal User Guide

Power School Parent Portal User Guide Power School Parent Portal User Guide Preface Use this guide to assist you while navigating the PowerSchool Parent Portal. This guide is based on the PowerSchool Parent Portal online help, which you can

More information

Uses for Trees About Trees Binary Trees. Trees. Seth Long. January 31, 2010

Uses for Trees About Trees Binary Trees. Trees. Seth Long. January 31, 2010 Uses for About Binary January 31, 2010 Uses for About Binary Uses for Uses for About Basic Idea Implementing Binary Example: Expression Binary Search Uses for Uses for About Binary Uses for Storage Binary

More information

CMPT 354 Database Systems. Simon Fraser University Fall Instructor: Oliver Schulte

CMPT 354 Database Systems. Simon Fraser University Fall Instructor: Oliver Schulte CMPT 354 Database Systems Simon Fraser University Fall 2016 Instructor: Oliver Schulte Assignment 1: Entity-Relationship Modeling. The Relational Model. MS SQL Server. Instructions: Check the instructions

More information

San José State University College of Science/Department of Computer Science CS152, Programming Paradigms, Sections 3 & 4, Fall Semester, 2016

San José State University College of Science/Department of Computer Science CS152, Programming Paradigms, Sections 3 & 4, Fall Semester, 2016 Course and Contact Information San José State University College of Science/Department of Computer Science CS152, Programming Paradigms, Sections 3 & 4, Fall Semester, 2016 Instructor: Office Location:

More information

CSCI315 Database Design and Implementation Singapore Assignment 2 11 January 2018

CSCI315 Database Design and Implementation Singapore Assignment 2 11 January 2018 School of Computer Science & Software Engineering Session: 1, January 2017 University of Wollongong Lecturer: Janusz R. Getta CSCI315 Database Design and Implementation Singapore 2018-1 Assignment 2 11

More information

CMPSCI 187 / Spring 2015 Hanoi

CMPSCI 187 / Spring 2015 Hanoi Due on Thursday, March 12, 2015, 8:30 a.m. Marc Liberatore and John Ridgway Morrill I N375 Section 01 @ 10:00 Section 02 @ 08:30 1 Contents Overview 3 Learning Goals.................................................

More information

If you click the links in this document or on the class website and get a logon screen:

If you click the links in this document or on the class website and get a logon screen: Introduction The enclosed information is required reading by the end of the first day of class. Hopefully it will answer your questions and get you on the right track for successfully completing the course.

More information

PlagScan Instructions

PlagScan Instructions How to Change Your Password and Configure Your Settings 1) Contact Christine Iannicelli (610-409-3466; ciannicelli@ursinus.edu) and ask her to create an account for you. 2) Go to Plagscan.com 3) Login

More information

Step-by-Step Application Guide: How to Apply to RMIT Melbourne (Semester Exchange)

Step-by-Step Application Guide: How to Apply to RMIT Melbourne (Semester Exchange) Step-by-Step Application Guide: How to Apply to RMIT Melbourne (Semester Exchange) Welcome to Mobi RMIT University s online application portal for inbound students for semester exchange. Screen 1 Enter

More information

[ 8 marks ] Demonstration of Programming Concepts

[ 8 marks ] Demonstration of Programming Concepts Assignment 9 Due: Mon, December 5 before 11:59 PM (no extensions, no grace days, late assignments receive 0) Final Project This is a self-directed assignment where you get to decide what your Processing

More information

Using Blogs in BOLT Student Guide

Using Blogs in BOLT Student Guide Using Blogs in BOLT Student Guide Table of Contents Blog vs Journal... 2 Accessing a Blog... 2 Navigating in a Blog... 3 Using a Blog... 6 Adding a New Entry... 6 Finding Recent Entries in a Blog... 7

More information

CS 374 Fall 2014 Homework 2 Due Tuesday, September 16, 2014 at noon

CS 374 Fall 2014 Homework 2 Due Tuesday, September 16, 2014 at noon CS 374 Fall 2014 Homework 2 Due Tuesday, September 16, 2014 at noon Groups of up to three students may submit common solutions for each problem in this homework and in all future homeworks You are responsible

More information

TEACH UNICEF

TEACH UNICEF Online Educational Apps and Resources page 1 TEACH UNICEF http://www.teachunicef.org/topics 1. Select a topic from the options provided. 2. On the succeeding screen, you will find various teaching materials

More information

CMPE/SE 135 Object-Oriented Analysis and Design

CMPE/SE 135 Object-Oriented Analysis and Design Course and Contact Information San José State University Department of Computer Engineering CMPE/SE 135 Object-Oriented Analysis and Design Instructor: Ron Mak Office Location: ENG 250 Email: ron.mak@sjsu.edu

More information

COSC 115: Introduction to Web Authoring Fall 2013

COSC 115: Introduction to Web Authoring Fall 2013 COSC 115: Introduction to Web Authoring Fall 2013 Instructor: David. A. Sykes Class meetings: TR 1:00 2:20PM, Olin 212 Office / Hours: Olin 204E / TR 8:00-10:20AM, MWF 1:00 3:00PM, or by appointment/happenstance

More information

CMPSCI 187 / Spring 2015 Sorting Kata

CMPSCI 187 / Spring 2015 Sorting Kata Due on Thursday, April 30, 8:30 a.m Marc Liberatore and John Ridgway Morrill I N375 Section 01 @ 10:00 Section 02 @ 08:30 1 Contents Overview 3 Learning Goals.................................................

More information

Data Structure and Algorithm Homework #6 Due: 5pm, Friday, June 14, 2013 TA === Homework submission instructions ===

Data Structure and Algorithm Homework #6 Due: 5pm, Friday, June 14, 2013 TA   === Homework submission instructions === Data Structure and Algorithm Homework #6 Due: 5pm, Friday, June 14, 2013 TA email: dsa1@csie.ntu.edu.tw === Homework submission instructions === For Problem 1, submit your source codes, a Makefile to compile

More information

Introducing the UML Eng. Mohammed T. Abo Alroos

Introducing the UML Eng. Mohammed T. Abo Alroos Introducing the UML Eng. Mohammed T. Abo Alroos Islamic University of Gaza Introduction to the UML: The UML stands for Unified Modeling Language. It was released in 1997 as a method to diagram software

More information

Last Lecture. Lecture 17: Design Patterns (part 2) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 4448/ Spring Semester, 2005

Last Lecture. Lecture 17: Design Patterns (part 2) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 4448/ Spring Semester, 2005 1 Lecture 17: Design Patterns (part 2) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 4448/6448 - Spring Semester, 2005 2 Last Lecture Design Patterns Background and Core Concepts Examples

More information

Illustrated Guide to the. UTeach Electronic Portfolio

Illustrated Guide to the. UTeach Electronic Portfolio Illustrated Guide to the UTeach Electronic Portfolio The Electronic Portfolio All UTeach students have access to the electronic portfolio. If you can t log in or if you are assigned to the wrong portfolio

More information

Student Information System User Guide

Student Information System User Guide Student Information System User Guide This User Guide is designed to help you get started using the Student Information System. We ll take you step by step in using your organization s database, so that

More information

Integrated Marks Management System (IMMS) Grade Submission Updated 02 October 2017

Integrated Marks Management System (IMMS) Grade Submission Updated 02 October 2017 Integrated Marks Management System (IMMS) Grade Submission Updated 02 October 2017 This document shows you how to enter grades into the Integrated Marks Management System (IMMS) through the NUS staff portal.

More information

Coastal Office of Online Learning

Coastal Office of Online Learning Moodle Enhancements This resource guide highlights new features that are now available in the upgraded Moodle 3.1. It also addresses changes to existing features. Coastal Office of Online Learning Keep

More information

Moodle User Guide Participants

Moodle User Guide Participants Moodle User Guide Participants Moodle User Guide Participants... 1 Logging in to Moodle... 2 Page layout... 2 Home page... 2 Course page... 3 Submitting an assessment... 5 Editing a draft assessment...

More information

COMP 250 Fall Homework #4

COMP 250 Fall Homework #4 COMP 250 Fall 2015 - Homework #4 Due on November 11 th at 23:59 (strict). Your solution must be returned electronically on MyCourse. The only format accepted for written answers is PDF. PDF files must

More information