TDDB84 Design Patterns Exam

Size: px
Start display at page:

Download "TDDB84 Design Patterns Exam"

Transcription

1 TDDB84 Design Patterns Exam Tid: October 15, 2005 Place: Ter1 (Terra) Skriv namn, klass, och personnummer på samtliga lösa blad. Poängavdrag kommer att göras om punkterna nedan inte åtföljs! Write name, class, and person number on all solution sheets. Please also observe the following, otherwise it might lead to subtraction of points. 1) Endast ett svar per blad. Använd endast framsidan (delfrågor kan vara på samma sida). Write only the answer to one task on one sheet. Use only the front side of the sheets (answers to subtasks can be on one page). 2) Sortera inlämnade svar med avseende på uppgiftsnummer i stigande ordning. Sort the solution sheets according to the task number. 3) Svaren får vara på svenska eller engelska. Answers may be in English or Swedish. 4) Dina svar skall tydligt visa lösningsmetod. Enbart rätt svar kommer inte att ge poäng. I det fall du är osäker på frågeställning, skriv ner din tolkning och lös uppgiften utifrån din tolkning. Your answers should clearly show solution methods, reasons, and arguments. Short answers should be motivated. If you are in doubt, write a remark. 5) Som hjälpmedel är boken av Gamma eller liknande INTE tillåtna. The Gamma book and the articles are NOT allowed. 1 Singleton (3 points) Give an example where the Singleton design pattern would be useful. 2 Design patterns general knowledge (10 points) Having the following design patterns, please partition them into: creational design patterns, structural design patterns and behavioral design patterns: (a) Abstract Factory (b) Facade (c) Proxy (d) Singleton (e) Observer (f) Prototype 3 Design pattern characteristics (10 points) What are the common and different characteristics of the Bridge and the Strategy design patterns?

2 4 Shell command (2 point) Which design pattern is used by your shell to realize a command like: ls l * cut f1,2 sort Observation: It is totally irrelevant what the three commands do, and you do not even need to know what they are doing. 5 Design Pattern recognition (10 points) Consider the following UML diagram. View models Model -models : Model +Attach() +Detach() +Notify() for all m in models m->update() +Update() ConcreteModel ConcreteView -state +GetState() +SetState() return state view -state -view : ConcreteView +Update() state = view->getstate() (a) First, identify the pattern in the diagram. (b) Second, identify the participants in the diagram and indicate their responsibilities. 6 Evaluation of integer trees (15 points) Consider the following UML diagram. In the ArithmeticExpression the operator is of type char and can have one of the following values: + and -. (a) What pattern is represented by the diagram? (b) Change the class diagram to implement an interpreter over arithmetic expressions. (c) Sketch the methods added to the diagram at section (b) (d) Changes the class diagram obtained in section (b) and add new classes (and methods to the old ones) to implement a visitor over the integer trees. (e) Sketch the new methods added to the class diagram (both for the existing classes and for the new ones) at section (d). For the visitor methods consider just printing out the tree contents.

3 7 Tetris (5 points) A Tetris field is essentially a big collection of stones, some representing empty fields, and some representing parts of a Tetris block, either just falling or landed at the bottom of the play ground some time ago. Whenever a block lands, it dissembles into its individual stones, which are considered independent from then on. It makes sense, therefore, to represent each stone by an individual object in an object-oriented Tetris application. Doing so naively results in a large amount of objects being allocated, deleted, and moved all the time. Task: What design pattern can be applied to optimize this, taking advantage of the fact that the stones are really very similar? Motivate your answer. 8 Ray-tracing (15 points) Ray-tracing is a technology for generating photo-realistic images from scene description data. Very advanced types of this technology have recently been used for creating quite a few, and very impressive, animated pictures (such as Shrek", or Nemo"). Imagine you have to realize a ray-tracer application. At the core of such an application is a data structure, which maintains and represents the scene graph or the world". Objects can be very simple objects, which have a geometrically defined shape and a typically algorithmically defined material, but they can also be arbitrarily complex compositions of other objects. The scene graph is then repeatedly traversed to check for intersections with various optical rays.

4 (a) Design a class structure, which can represent a scene graph. Which design pattern is applicable? (b) It is often useful to be able to transform existing objects in a scene graph, for example by moving, scaling or rotating them. This should be possible for simple and complex objects alike. Enhance the class structure from the previous subtask to enable transformation of objects. Which design pattern do you use? (c) When transforming an object it is typical to construct the transformation from the basic transformation (scaling, rotation, and translation) by putting them in a sequence of transformation operations. Extend the class structure to represent such sequences of transformations. Discuss different solutions. (d) When tracing complex objects it is often worthwhile to first check whether the ray will ever intersect their bounding box (i.e., the smallest box completely enclosing the object). Enhance the class structure to add this functionality. What design pattern could you use? Are there other ways of doing it? 9 Drinking habits (5 points) Consider the following inheritance hierarchy. Person Employee Student Professor PhD student Each Person provides a method drink, which encapsulates the drinking behavior of the person. Task: Add runtime tracing of drinking behavior. You should be able to switch tracing on or off for any object in the hierarchy at runtime. If tracing is on, the system logs when a person starts and when it stops drinking. Which design pattern could you use? What does your solution look like? 10 Flight booking (10 points) Suppose you should design an application, which enables clients to book the cheapest flight to a destination of their choice from a number of providers. (a) Assume, every provider is known in advance, and implements an interface IFlightProvider, which provides operations for querying for a connection, and for

5 booking a flight. In this application you will need a way to enable clients to interface to these providers and book the cheapest flight on offer for the destination and date they are interested in. Flight providers should require (and receive) no knowledge on other flight providers known to the system. Which design pattern could you use? (b) Many airlines offer on-line booking services as web services. How can you incorporate such an airline as a flight provider in the system above? 11 Generic event-driven simulator (15 points) Consider a generic event-driven simulator, i.e. a simulator skeleton that may simulate a wide range of systems. The simulator contains a queue of events and a variable indicating the simulated time. Each event has a time stamp that indicates the time at which the event will occur. The queue contains events, which are sorted in the ascending order of the time at which the events occur. The generic event-driven simulator executes the following infinite loop provided by the simulate method of class GenericSimulator: abstract class GenericSimulator protected State newstate, oldstate; protected double simulatedtime; protected EventQueue eventqueue; protected Event currentevent; public abstract State consequences(state oldstate, Event event); public abstract void actions(state newstate, State oldstate); public void simulate() while (true) simulatedtime = eventqueue.top().time; do currentevent = eventqueue.pop().event; newstate = consequences(oldstate, currentevent); actions(newstate, oldstate); oldstate = newstate; while (simulatedtime <= eventqueue.top().time); (a) The design of the generic event-driven simulator is based (partly) on a design pattern. Which design pattern? Motivate your answer. If unsure, motivate other alternatives that you consider. (b) The GenericSimulator is given above. Why are some methods abstract? Consider that you have to write a simulator for a specific system, let us call it WeatherSimulator. Draw the class hierarchy of this specific simulator.

6 (c) Could you use any of the Abstract Factory or Factory Method design patterns in order to generate system-specific events? Motivate your answer. (d) How would you implement different specific simulators using the Strategy design pattern? Consider changing the given code. Draw the class diagram of the improved system.

Tentamen NGP012 Systemarkitektprogrammet. 24 poäng

Tentamen NGP012 Systemarkitektprogrammet. 24 poäng Game Programming Provmoment: Ladokkod: Tentamen ges för: Tentamen NGP012 Systemarkitektprogrammet 7,5 högskolepoäng Namn: (Ifylles av student) Personnummer: (Ifylles av student) Tentamensdatum: 2013-03-27

More information

Binary Heaps * * * * * * * / / \ / \ / \ / \ / \ * * * * * * * * * * * / / \ / \ / / \ / \ * * * * * * * * * *

Binary Heaps * * * * * * * / / \ / \ / \ / \ / \ * * * * * * * * * * * / / \ / \ / / \ / \ * * * * * * * * * * Binary Heaps A binary heap is another data structure. It implements a priority queue. Priority Queue has the following operations: isempty add (with priority) remove (highest priority) peek (at highest

More information

DECISION/BESLUT 2003-09-30

DECISION/BESLUT 2003-09-30 DECISION/BESLUT 2003-09-30 Ärendenr. 23. Sökande/Complainant IT Butikken A/S, Danmark Motpart/Respondent Shoppingsajterna Svenska AB, 556577-2547, Önsvala Gård, 245 93 Staffanstorp Saken/The Matter Alternativt

More information

Tanden Care Provider Interfaces PreAssessmentSTB v3

Tanden Care Provider Interfaces PreAssessmentSTB v3 Tanden Care Provider Interfaces Integrationskrav ICC 2 (21) Table of contents 1 INTRODUCTION... 3 2 INTEGRATIONS... 4 3 INTEGRATION 1... 6 3.1 PREASSESSMENTSTB REQUEST... 6 3.1.1 Message and translation...

More information

Domains and Competencies

Domains and Competencies Domains and Competencies DOMAIN I TECHNOLOGY APPLICATIONS CORE Standards Assessed: Computer Science 8 12 I VII Competency 001: The computer science teacher knows technology terminology and concepts; the

More information

Quiz 4 Solutions EECS 211: FUNDAMENTALS OF COMPUTER PROGRAMMING II. 1 Q u i z 4 S o l u t i o n s

Quiz 4 Solutions EECS 211: FUNDAMENTALS OF COMPUTER PROGRAMMING II. 1 Q u i z 4 S o l u t i o n s Quiz 4 Solutions Q1: What value does function mystery return when called with a value of 4? int mystery ( int number ) { if ( number

More information

CMSC 132: Object-Oriented Programming II. Design Patterns I. Department of Computer Science University of Maryland, College Park

CMSC 132: Object-Oriented Programming II. Design Patterns I. Department of Computer Science University of Maryland, College Park CMSC 132: Object-Oriented Programming II Design Patterns I Department of Computer Science University of Maryland, College Park Design Patterns Descriptions of reusable solutions to common software design

More information

Tanden Care Provider Interfaces Reverse Claim v1

Tanden Care Provider Interfaces Reverse Claim v1 Integrationskrav.dot PB3 Tanden Care Provider Interfaces Integrationskrav ICC 2 (18) Attachment- and reference list Number Title, document ID, search path 1 ZT_I_028_ZSubmit.doc PA3 2 TandenTypes.xsd 20080328

More information

Java EE Web Development Course Program

Java EE Web Development Course Program Java EE Web Development Course Program Part I Introduction to Programming 1. Introduction to programming. Compilers, interpreters, virtual machines. Primitive types, variables, basic operators, expressions,

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

How To Use The Command Pattern In Java.Com (Programming) To Create A Program That Is Atomic And Is Not A Command Pattern (Programmer)

How To Use The Command Pattern In Java.Com (Programming) To Create A Program That Is Atomic And Is Not A Command Pattern (Programmer) CS 342: Object-Oriented Software Development Lab Command Pattern and Combinations David L. Levine Christopher D. Gill Department of Computer Science Washington University, St. Louis levine,[email protected]

More information

Demo Gotland (Smart Customer Gotland)

Demo Gotland (Smart Customer Gotland) Demo Gotland (Smart Customer Gotland) Monica Löf, Research & Development, Vattenfall Smart Grid Gotland Agenda Vattenfall at a glance Project overview and setup Customer analysis Vattenfall, at a glance

More information

BSc (Hons) Business Information Systems, BSc (Hons) Computer Science with Network Security. & BSc. (Hons.) Software Engineering

BSc (Hons) Business Information Systems, BSc (Hons) Computer Science with Network Security. & BSc. (Hons.) Software Engineering BSc (Hons) Business Information Systems, BSc (Hons) Computer Science with Network Security & BSc. (Hons.) Software Engineering Cohort: BIS/05/FT BCNS/05/FT BSE/05/FT Examinations for 2005-2006 / Semester

More information

Object Oriented Software Models

Object Oriented Software Models Software Engineering CSC 342/ Dr Ghazy Assassa Page 1 Object Oriented Software Models Use case diagram and use case description 1. Draw a use case diagram for a student-course-registration system. Show

More information

Engelsk Grammatik. Namn: Personnummer: Institutionens anteckningar: Maxpoäng: 62 Din poäng: Betyg:

Engelsk Grammatik. Namn: Personnummer: Institutionens anteckningar: Maxpoäng: 62 Din poäng: Betyg: 1(11) Engelsk Grammatik Skriftligt prov för ENG A21, 17 november 2007, kl. 9-12. Namn: Personnummer: Institutionens anteckningar: Maxpoäng: 62 Din poäng: Betyg: Ifylles av skrivvakten: Legitimation Terminskort

More information

10CS35: Data Structures Using C

10CS35: Data Structures Using C CS35: Data Structures Using C QUESTION BANK REVIEW OF STRUCTURES AND POINTERS, INTRODUCTION TO SPECIAL FEATURES OF C OBJECTIVE: Learn : Usage of structures, unions - a conventional tool for handling a

More information

Patterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering

Patterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering Patterns in Software Engineering Lecturer: Raman Ramsin Lecture 2 GoF Design Patterns Creational 1 GoF Design Patterns Principles Emphasis on flexibility and reuse through decoupling of classes. The underlying

More information

Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

More information

9 Marital status Single Married Separated Divorced Widow(er) * 19 Current occupation Valid: From

9 Marital status Single Married Separated Divorced Widow(er) * 19 Current occupation Valid: From Harmonised application form (1) Application for Schengen Visa This application form is free. Photo 1 Surname (amily name) (x) OR OICIAL USE ONLY 2 Surname at birth (ormer family name(s)) (x) Date of application:

More information

Sorting revisited. Build the binary search tree: O(n^2) Traverse the binary tree: O(n) Total: O(n^2) + O(n) = O(n^2)

Sorting revisited. Build the binary search tree: O(n^2) Traverse the binary tree: O(n) Total: O(n^2) + O(n) = O(n^2) Sorting revisited How did we use a binary search tree to sort an array of elements? Tree Sort Algorithm Given: An array of elements to sort 1. Build a binary search tree out of the elements 2. Traverse

More information

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as

More information

Analysis of Binary Search algorithm and Selection Sort algorithm

Analysis of Binary Search algorithm and Selection Sort algorithm Analysis of Binary Search algorithm and Selection Sort algorithm In this section we shall take up two representative problems in computer science, work out the algorithms based on the best strategy to

More information

Java (12 Weeks) Introduction to Java Programming Language

Java (12 Weeks) Introduction to Java Programming Language Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short

More information

Curriculum Map. Discipline: Computer Science Course: C++

Curriculum Map. Discipline: Computer Science Course: C++ Curriculum Map Discipline: Computer Science Course: C++ August/September: How can computer programs make problem solving easier and more efficient? In what order does a computer execute the lines of code

More information

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology)

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology) ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology) Subject Description: This subject deals with discrete structures like set theory, mathematical

More information

GCE Computing. COMP3 Problem Solving, Programming, Operating Systems, Databases and Networking Report on the Examination.

GCE Computing. COMP3 Problem Solving, Programming, Operating Systems, Databases and Networking Report on the Examination. GCE Computing COMP3 Problem Solving, Programming, Operating Systems, Databases and Networking Report on the Examination 2510 Summer 2014 Version: 1.0 Further copies of this Report are available from aqa.org.uk

More information

AP Computer Science AB Syllabus 1

AP Computer Science AB Syllabus 1 AP Computer Science AB Syllabus 1 Course Resources Java Software Solutions for AP Computer Science, J. Lewis, W. Loftus, and C. Cocking, First Edition, 2004, Prentice Hall. Video: Sorting Out Sorting,

More information

Algorithms and Data Structures Written Exam Proposed SOLUTION

Algorithms and Data Structures Written Exam Proposed SOLUTION Algorithms and Data Structures Written Exam Proposed SOLUTION 2005-01-07 from 09:00 to 13:00 Allowed tools: A standard calculator. Grading criteria: You can get at most 30 points. For an E, 15 points are

More information

Computer Programming I

Computer Programming I Computer Programming I COP 2210 Syllabus Spring Semester 2012 Instructor: Greg Shaw Office: ECS 313 (Engineering and Computer Science Bldg) Office Hours: Tuesday: 2:50 4:50, 7:45 8:30 Thursday: 2:50 4:50,

More information

GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1

GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1 Welcome to GUI! Mechanics 26/02/2014 1 Requirements Info If you don t know C++, you CAN take this class additional time investment required early on GUI Java to C++ transition tutorial on course website

More information

How To Design Your Code In Php 5.5.2.2 (Php)

How To Design Your Code In Php 5.5.2.2 (Php) By Janne Ohtonen, August 2006 Contents PHP5 Design Patterns in a Nutshell... 1 Introduction... 3 Acknowledgments... 3 The Active Record Pattern... 4 The Adapter Pattern... 4 The Data Mapper Pattern...

More information

Chapter 1: Key Concepts of Programming and Software Engineering

Chapter 1: Key Concepts of Programming and Software Engineering Chapter 1: Key Concepts of Programming and Software Engineering Software Engineering Coding without a solution design increases debugging time - known fact! A team of programmers for a large software development

More information

USER GUIDE Appointment Manager

USER GUIDE Appointment Manager 2011 USER GUIDE Appointment Manager 0 Suppose that you need to create an appointment manager for your business. You have a receptionist in the front office and salesmen ready to service customers. Whenever

More information

Programming and Software Development CTAG Alignments

Programming and Software Development CTAG Alignments Programming and Software Development CTAG Alignments This document contains information about four Career-Technical Articulation Numbers (CTANs) for Programming and Software Development Career-Technical

More information

Sweden National H.O.G. Rally. 23 25 July 2010

Sweden National H.O.G. Rally. 23 25 July 2010 Kiss a Moose, Massage and Rock Karaoke. Ever felt like kissing a Moose? Millestgården Moose Farm in Åre, Sweden offer you the opportunity to get close to the animal the Scandinavians call "The king of

More information

CS 2112 Spring 2014. 0 Instructions. Assignment 3 Data Structures and Web Filtering. 0.1 Grading. 0.2 Partners. 0.3 Restrictions

CS 2112 Spring 2014. 0 Instructions. Assignment 3 Data Structures and Web Filtering. 0.1 Grading. 0.2 Partners. 0.3 Restrictions CS 2112 Spring 2014 Assignment 3 Data Structures and Web Filtering Due: March 4, 2014 11:59 PM Implementing spam blacklists and web filters requires matching candidate domain names and URLs very rapidly

More information

C++ Programming Language

C++ Programming Language C++ Programming Language Lecturer: Yuri Nefedov 7th and 8th semesters Lectures: 34 hours (7th semester); 32 hours (8th semester). Seminars: 34 hours (7th semester); 32 hours (8th semester). Course abstract

More information

Java 6 'th. Concepts INTERNATIONAL STUDENT VERSION. edition

Java 6 'th. Concepts INTERNATIONAL STUDENT VERSION. edition Java 6 'th edition Concepts INTERNATIONAL STUDENT VERSION CONTENTS PREFACE vii SPECIAL FEATURES xxviii chapter i INTRODUCTION 1 1.1 What Is Programming? 2 J.2 The Anatomy of a Computer 3 1.3 Translating

More information

Vector storage and access; algorithms in GIS. This is lecture 6

Vector storage and access; algorithms in GIS. This is lecture 6 Vector storage and access; algorithms in GIS This is lecture 6 Vector data storage and access Vectors are built from points, line and areas. (x,y) Surface: (x,y,z) Vector data access Access to vector

More information

1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++

1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ Answer the following 1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ 2) Which data structure is needed to convert infix notations to postfix notations? Stack 3) The

More information

Foundations of Programming

Foundations of Programming Foundations of Programming Bulletin Description A first formal course in computer programming required (e.g. Comp 110, UNC). Intermediate programming: objects, pointers, classes, interfaces, packages,

More information

MF2019, CAD 3D-modeling och visualization Spring 2011 PROJECT

MF2019, CAD 3D-modeling och visualization Spring 2011 PROJECT MF219, CAD 3D-modeling och visualization Spring 211 PROJECT Please, select a physical or mental (an idea) object that you want to model in the project. If you have a hobby, such as fishing, shooting, engines,

More information

Vet du redan nu att du vill studera på Emirates Academy kan du fylla i ansökan nedan och skicka till KILROY.

Vet du redan nu att du vill studera på Emirates Academy kan du fylla i ansökan nedan och skicka till KILROY. ANSÖKAN Emirates Academy Undergraduate KILROY education hjälper dig med ansökan till Emirates Academy. Vi ger dig information om kurser, antagningskrav, terminsavgifter, CSN, boendemöjligheter och visum.

More information

Projektet Computer: Specifikation. Objektorienterad modellering och diskreta strukturer / design. Projektet Computer: Data. Projektet Computer: Test

Projektet Computer: Specifikation. Objektorienterad modellering och diskreta strukturer / design. Projektet Computer: Data. Projektet Computer: Test Projektet Computer: Specifikation Objektorienterad modellering och diskreta strukturer / design Designmönster Lennart Andersson Reviderad 2010 09 04 public class Computer { public Computer(Memory memory)

More information

Skills for Employment Investment Project (SEIP)

Skills for Employment Investment Project (SEIP) Skills for Employment Investment Project (SEIP) Standards/ Curriculum Format for Web Application Development Using DOT Net Course Duration: Three Months 1 Course Structure and Requirements Course Title:

More information

11 November 2015. www.isbe.tue.nl. www.isbe.tue.nl

11 November 2015. www.isbe.tue.nl. www.isbe.tue.nl UML Class Diagrams 11 November 2015 UML Class Diagrams The class diagram provides a static structure of all the classes that exist within the system. Classes are arranged in hierarchies sharing common

More information

2) What is the structure of an organization? Explain how IT support at different organizational levels.

2) What is the structure of an organization? Explain how IT support at different organizational levels. (PGDIT 01) Paper - I : BASICS OF INFORMATION TECHNOLOGY 1) What is an information technology? Why you need to know about IT. 2) What is the structure of an organization? Explain how IT support at different

More information

Android Application Development Course Program

Android Application Development Course Program Android Application Development Course Program Part I Introduction to Programming 1. Introduction to programming. Compilers, interpreters, virtual machines. Primitive data types, variables, basic operators,

More information

MAXimize the benefits of Mobility Management

MAXimize the benefits of Mobility Management MAXimize the benefits of Mobility Management New tools for more sustainable transport systems Christer Ljungberg, Trivector Traffic Årets Bild 2010: Henrik Montgomery, Scanpix Max project in short December

More information

IB Maths SL Sequence and Series Practice Problems Mr. W Name

IB Maths SL Sequence and Series Practice Problems Mr. W Name IB Maths SL Sequence and Series Practice Problems Mr. W Name Remember to show all necessary reasoning! Separate paper is probably best. 3b 3d is optional! 1. In an arithmetic sequence, u 1 = and u 3 =

More information

Binary Heap Algorithms

Binary Heap Algorithms CS Data Structures and Algorithms Lecture Slides Wednesday, April 5, 2009 Glenn G. Chappell Department of Computer Science University of Alaska Fairbanks [email protected] 2005 2009 Glenn G. Chappell

More information

PRTK. Password Recovery ToolKit EFS (Encrypting File System) http://en.wikipedia.org/wiki/encrypting_file_system

PRTK. Password Recovery ToolKit EFS (Encrypting File System) http://en.wikipedia.org/wiki/encrypting_file_system PRTK Password Recovery ToolKit EFS (Encrypting File System) http://en.wikipedia.org/wiki/encrypting_file_system PRTK Overview - Interface Manage Profiles... Dictionary Tools... Right or double click to

More information

Design Suggestions for Danske Bank SE

Design Suggestions for Danske Bank SE 2013 10 14 Version 1.0 Instigated and approved by: Compiled by: Karin Haskå (KHAS) Ian Baden (IAB) Jim Persson (JIMP) Design Suggestions for Danske Bank SE Collected design suggestions from the swedish

More information

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY COURSE MODULE (C, C++, DS) KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php [email protected] [email protected] Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

More information

The Tower of Hanoi. Recursion Solution. Recursive Function. Time Complexity. Recursive Thinking. Why Recursion? n! = n* (n-1)!

The Tower of Hanoi. Recursion Solution. Recursive Function. Time Complexity. Recursive Thinking. Why Recursion? n! = n* (n-1)! The Tower of Hanoi Recursion Solution recursion recursion recursion Recursive Thinking: ignore everything but the bottom disk. 1 2 Recursive Function Time Complexity Hanoi (n, src, dest, temp): If (n >

More information

3gamma Från traditionell IT-leverans till modern, processtyrd tjänsteleverans i en multi-sourcing miljö. Peter Wahlgren, September 2013

3gamma Från traditionell IT-leverans till modern, processtyrd tjänsteleverans i en multi-sourcing miljö. Peter Wahlgren, September 2013 3gamma Från traditionell IT-leverans till modern, processtyrd tjänsteleverans i en multi-sourcing miljö Peter Wahlgren, September 2013 Vem är Peter Wahlgren? VD & Konsult på 3gamma sedan 2008 AstraZeneca

More information

Data Structures. Level 6 C30151. www.fetac.ie. Module Descriptor

Data Structures. Level 6 C30151. www.fetac.ie. Module Descriptor The Further Education and Training Awards Council (FETAC) was set up as a statutory body on 11 June 2001 by the Minister for Education and Science. Under the Qualifications (Education & Training) Act,

More information

CSE 1020 Introduction to Computer Science I A sample nal exam

CSE 1020 Introduction to Computer Science I A sample nal exam 1 1 (8 marks) CSE 1020 Introduction to Computer Science I A sample nal exam For each of the following pairs of objects, determine whether they are related by aggregation or inheritance. Explain your answers.

More information

Panthera - A Helpdesk System developed in Visual Studio.NET

Panthera - A Helpdesk System developed in Visual Studio.NET Panthera - A Helpdesk System developed in Visual Studio.NET Master Thesis, 40 Credits Katarina Gyll & Peter Gyll November 2003 ii Abstract Every company that has products or services on the market has

More information

CS193j, Stanford Handout #10 OOP 3

CS193j, Stanford Handout #10 OOP 3 CS193j, Stanford Handout #10 Summer, 2003 Manu Kumar OOP 3 Abstract Superclass Factor Common Code Up Several related classes with overlapping code Factor common code up into a common superclass Examples

More information

Java the UML Way: Integrating Object-Oriented Design and Programming

Java the UML Way: Integrating Object-Oriented Design and Programming Java the UML Way: Integrating Object-Oriented Design and Programming by Else Lervik and Vegard B. Havdal ISBN 0-470-84386-1 John Wiley & Sons, Ltd. Table of Contents Preface xi 1 Introduction 1 1.1 Preliminaries

More information

PES Institute of Technology-BSC QUESTION BANK

PES Institute of Technology-BSC QUESTION BANK PES Institute of Technology-BSC Faculty: Mrs. R.Bharathi CS35: Data Structures Using C QUESTION BANK UNIT I -BASIC CONCEPTS 1. What is an ADT? Briefly explain the categories that classify the functions

More information

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON PROBLEM SOLVING WITH SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON Addison Wesley Boston San Francisco New York London

More information

Tanden Care Provider Interfaces Submit Claim v3

Tanden Care Provider Interfaces Submit Claim v3 Tanden Care Provider Interfaces Submit Claim v3 Integrationskrav ICC 2 (32) Table of contents 1 2 3 4 5 INTRODUCTION... 3 INTEGRATIONS... 3 INTEGRATION 1... 6 3.1 SUBMITCLAIM REQUEST... 6 3.1.1 Message

More information

Fundamentals of Java Programming

Fundamentals of Java Programming Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors

More information

Questionnaire for visa applicants Appendix A

Questionnaire for visa applicants Appendix A Questionnaire for visa applicants Appendix A Business Conference visit 1 Personal particulars Surname Date of birth (yr, mth, day) Given names (in full) 2 Your stay in Sweden A. Who took the initiative

More information

Project 2: Character Animation Due Date: Friday, March 10th, 11:59 PM

Project 2: Character Animation Due Date: Friday, March 10th, 11:59 PM 1 Introduction Project 2: Character Animation Due Date: Friday, March 10th, 11:59 PM The technique of motion capture, or using the recorded movements of a live actor to drive a virtual character, has recently

More information

Application Note C++ Debugging

Application Note C++ Debugging Application Note C++ Debugging TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... High-Level Language Debugging... Application Note C++ Debugging... 1 Sample Code used by This Application

More information

SAS Education Providing knowledge through global training and certification. SAS Foundation. Kursöversikt 2010

SAS Education Providing knowledge through global training and certification. SAS Foundation. Kursöversikt 2010 Kursöversikt 2010 SAS Education Providing knowledge through global training and certification SAS Foundation SAS Forum 2010 och specialkurser SAS Master Class Kontaktinformation Stora Frösunda Gård Box

More information

Cpt S 223. School of EECS, WSU

Cpt S 223. School of EECS, WSU Priority Queues (Heaps) 1 Motivation Queues are a standard mechanism for ordering tasks on a first-come, first-served basis However, some tasks may be more important or timely than others (higher priority)

More information

Readme10_054.doc page 1 of 7

Readme10_054.doc page 1 of 7 Readme10_054.doc page 1 of 7 Date of production: 2007-12-03 News in 10_054 Hardware 1) New thyristor module DASD 145, 600 V - 500 A 2) Improved speed control with incremental encoder at very low speed

More information

Effektiv hantering av Data och Information i M3 Joakim Jannerfeldt Anders Cottman

Effektiv hantering av Data och Information i M3 Joakim Jannerfeldt Anders Cottman Effektiv hantering av Data och Information i M3 Joakim Jannerfeldt Anders Cottman Information Data Information År 2015 kommer 15% av alla organisationer att ha moderniserat sina strategier för informationshantering

More information

The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge,

The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge, The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge, cheapest first, we had to determine whether its two endpoints

More information

Application for Schengen Visa

Application for Schengen Visa Application for Schengen Visa Photo This application form is free 1. (x) For official use only 2. Surname at birth (Former family name(s)) (x) Date of application: 3. First name(s) (Given name(s)) (x)

More information

Tentamen i GRUNDLÄGGANDE MATEMATISK FYSIK

Tentamen i GRUNDLÄGGANDE MATEMATISK FYSIK Karlstads Universitet Fysik Tentamen i GRUNDLÄGGANDE MATEMATISK FYSIK [ VT 2008, FYGB05] Datum: 2008-03-26 Tid: 8.15 13.15 Lärare: Jürgen Fuchs c/o Carl Stigner Tel: 054-700 1815 Total poäng: 28 Godkänd:

More information

Data Structures. Algorithm Performance and Big O Analysis

Data Structures. Algorithm Performance and Big O Analysis Data Structures Algorithm Performance and Big O Analysis What s an Algorithm? a clearly specified set of instructions to be followed to solve a problem. In essence: A computer program. In detail: Defined

More information

PING PONG Help and Manuals

PING PONG Help and Manuals PING PONG Help and Manuals Version release/16.6.2 Table of contents Time limited groups 3 Project groups: Trainer 6 Create project groups (as trainer) 9 Log book trainer 17 Toolbox 28 Preferences 30 Activating

More information

CSE373: Data Structures and Algorithms Lecture 3: Math Review; Algorithm Analysis. Linda Shapiro Winter 2015

CSE373: Data Structures and Algorithms Lecture 3: Math Review; Algorithm Analysis. Linda Shapiro Winter 2015 CSE373: Data Structures and Algorithms Lecture 3: Math Review; Algorithm Analysis Linda Shapiro Today Registration should be done. Homework 1 due 11:59 pm next Wednesday, January 14 Review math essential

More information

Java Software Structures

Java Software Structures INTERNATIONAL EDITION Java Software Structures Designing and Using Data Structures FOURTH EDITION John Lewis Joseph Chase This page is intentionally left blank. Java Software Structures,International Edition

More information

MATHEMATICS Unit Decision 1

MATHEMATICS Unit Decision 1 General Certificate of Education January 2008 Advanced Subsidiary Examination MATHEMATICS Unit Decision 1 MD01 Tuesday 15 January 2008 9.00 am to 10.30 am For this paper you must have: an 8-page answer

More information

50 Computer Science MI-SG-FLD050-02

50 Computer Science MI-SG-FLD050-02 50 Computer Science MI-SG-FLD050-02 TABLE OF CONTENTS PART 1: General Information About the MTTC Program and Test Preparation OVERVIEW OF THE TESTING PROGRAM... 1-1 Contact Information Test Development

More information

Sickness benefit [Sjukpenning]

Sickness benefit [Sjukpenning] Sickness benefit [Sjukpenning] You are entitled to sickness benefits from Försäkringskassan [the Swedish Social Insurance Agency] when you cannot work due to illness. You can receive sickness benefits

More information

ATM Case Study OBJECTIVES. 2005 Pearson Education, Inc. All rights reserved. 2005 Pearson Education, Inc. All rights reserved.

ATM Case Study OBJECTIVES. 2005 Pearson Education, Inc. All rights reserved. 2005 Pearson Education, Inc. All rights reserved. 1 ATM Case Study 2 OBJECTIVES.. 3 2 Requirements 2.9 (Optional) Software Engineering Case Study: Examining the Requirements Document 4 Object-oriented design (OOD) process using UML Chapters 3 to 8, 10

More information

User's Manual SAM 2.7 PPC 5.3.3

User's Manual SAM 2.7 PPC 5.3.3 User's Manual SAM 2.7 PPC 5.3.3 Copyright Prevas AB 2009 This description is produced by Prevas AB KS011p03b03/en V3 Prevas AB Box 1909 S-651 19 Karlstad Sweden Phone: +46 54 147400 Fax: +46 54 147499

More information

Glossary of Object Oriented Terms

Glossary of Object Oriented Terms Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction

More information

ECE 250 Data Structures and Algorithms MIDTERM EXAMINATION 2008-10-23/5:15-6:45 REC-200, EVI-350, RCH-106, HH-139

ECE 250 Data Structures and Algorithms MIDTERM EXAMINATION 2008-10-23/5:15-6:45 REC-200, EVI-350, RCH-106, HH-139 ECE 250 Data Structures and Algorithms MIDTERM EXAMINATION 2008-10-23/5:15-6:45 REC-200, EVI-350, RCH-106, HH-139 Instructions: No aides. Turn off all electronic media and store them under your desk. If

More information