Pair Ranking. Problem Domain Analysis CHAPTER 9

Size: px
Start display at page:

Download "Pair Ranking. Problem Domain Analysis CHAPTER 9"

Transcription

1 CHAPTER 9 Pair Ranking Pair ranking is a voting system developed in 1987 by Nicolaus Tideman. It selects a single winner using votes that express preferences. It can also be used to create a sorted list of winners. Problem Domain Analysis Let s say we need to rank four choices: A, B, C, and D. To pair-rank these choices, we list them in a column, one beneath the other: Choice B Choice C Choice D We then ask: Which is better, A or B? We mark the choice we decide is better say, B. Choice B Choice C Choice D We then ask why B is better and record our reasoning separately. The voting yields only our preference if we don t ask why we favor B over A. The question identifies the rationale, which is the most important part of the process. Now, which is better, A or C? We mark C and record our reasoning. Choice B Choice C Choice D Which is better, A or D? We mark D and record our reasoning. Choice B Choice C Choice D Bala Paranj 2017 B. Paranj, Test Driven Development in Ruby, DOI / _9 277

2 Which is better, B or C? We mark B and record our reasoning. Choice B Choice C Choice D Which is better, B or D? We mark B and record our reasoning. Choice B Choice C Choice D Which is better, C or D? We mark C and record our reasoning. Choice B Choice C Choice D We systematically compare each item with every other item. Choice B has three votes, C has two votes, D has one, and A has none. The item with the most votes is ranked first. In this case, that s choice B. Table 9-1 summarizes the result. Table 9-1. Pair-Ranking Result Choices Votes Ranking A 0 4 B 3 1 C 2 2 D 1 3 If two items up with the same number of votes, we rank the two items head to head to break the tie. The solution domain analysis, designing test cases, and developing the solution driven by tests are left as an exercise for the reader. Solution The following is one way to solve the problem. Create a pair_rank.rb file with the following code: module PairRank # Value Object # - Pair - Consists of two options # - Choice - Selected option from a given pair # - Criteria - Rationale for the preference. Why was the choice was made? class RationalChoice attr_reader :choice, :criteria, :pair 278

3 def initialize(pair, choice, = = = pair def to_s "You selected #{@choice} because of #{@criteria} for #{@pair}" class Combination def = = -1 def += class PairRank attr_reader :decisions def = = = = Combination.new(@options) def def def def tied_pair return [] if zeros? find_tie 279

4 280 def break_tie(pair, choice, criteria) make_rational_choice(pair, choice, criteria) def make_rational_choice(pair, choice, criteria) rc = RationalChoice.new(pair, choice, criteria) make(rc) private # All choices with 0 scores mean the pair-ranking process has not begun def zeros? list choice score_for(choice)} list.uniq == [0] def tie(combination) first = score_for(combination[0]) second = score_for(combination[1]) first == second def make(rational_choice) store(rational_choice) vote_for(rational_choice) def has_tie?!tied_pair.empty? def += 1 # For display at the of the pair-ranking process def << rational_choice def find_tie result = [] combinations.each do combination if tie(combination) result = combination break result

5 Create combination_test.rb as shown here: require 'minitest/autorun' require_relative pair_rank class CombinationTest < Minitest::Test include PairRank def test_get_first_pair_given_options c = Combination.new(options) result = assert_equal ['A', 'B'], result def test_get_second_pair_given_options c = Combination.new(options) result = assert_equal ['A', 'C'], result def test_get_third_pair_given_options c = Combination.new(options) result = assert_equal ['B', 'C'], result def test_get_pair_when_there_is_no_pair c = Combination.new(options) result = assert_equal nil, result 281

6 Create pair_rank_test.rb as shown here: require 'minitest/autorun' require_relative pair_rank class PairRankTest < Minitest::Test include PairRank def test_score_is_zero_for_the_element_that_did_not_get_vote options = [] result = pr.score_for('a') assert_equal 0, result def test_first_combination result = pr.combination assert_equal ['A', 'B'], result def test_second_combination pr.combination result = pr.combination assert_equal ['A', 'C'], result def test_in_the_beginning_all_scores_are_zero_so_its_not_a_tie options = ['A', 'B', 'C', 'D'] result = pr.tied_pair assert_equal [], result def test_complete_session_when_there_is_no_tie criteria = 'test' choice = 'B' 282

7 assert_equal 2, pr.score_for('a') assert_equal 1, pr.score_for('b') assert_equal 0, pr.score_for('c') def test_score_complete_session_where_there_are_ties criteria = 'test' choice = 'C' choice = 'B' assert_equal 1, pr.score_for('a') assert_equal 1, pr.score_for('b') assert_equal 1, pr.score_for('c') def test_get_tie_for_a_complete_session_when_there_are_ties criteria = 'test' choice = 'C' choice = 'B' assert_equal ['A', 'B'], pr.tied_pair def test_process_ties_for_a_complete_session_when_there_are_ties criteria = 'test' choice = 'C' 283

8 choice = 'B' pr.break_tie(pr.tied_pair, 'A', criteria) assert_equal ['B', 'C'], pr.tied_pair pr.break_tie(pr.tied_pair, 'B', criteria) assert_equal ['A', 'B'], pr.tied_pair pr.break_tie(pr.tied_pair, 'A', criteria) assert_equal [], pr.tied_pair def test_rational_choice_custom_string rc = RationalChoice.new('pair', 'choice', 'criteria') expected = "You selected choice because of criteria for pair" result = rc.to_s assert_equal expected, result Summary In this chapter, we discussed pair ranking and saw one way to code the solution. The concepts found in the domain, such as choice, rationale, and so on, are carried over to the code. We did this deliberately to reduce the semantic gap between the requirements and the code. 284

The Pairwise-Comparison Method

The Pairwise-Comparison Method The Pairwise-Comparison Method Lecture 10 Section 1.5 Robb T. Koether Hampden-Sydney College Mon, Sep 11, 2017 Robb T. Koether (Hampden-Sydney College) The Pairwise-Comparison Method Mon, Sep 11, 2017

More information

Vacation!

Vacation! Objects no really Vacation! Context nand2tetris Registers and RAM Hardware Chips Assembler Hardware Chips Virtual Machine Assembler Hardware Chips Operating System Virtual Machine Assembler Hardware

More information

The Plurality-with-Elimination Method

The Plurality-with-Elimination Method The Plurality-with-Elimination Method Lecture 9 Section 1.4 Robb T. Koether Hampden-Sydney College Fri, Sep 8, 2017 Robb T. Koether (Hampden-Sydney College) The Plurality-with-Elimination Method Fri, Sep

More information

Voting. Xiaoyue Zhang

Voting. Xiaoyue Zhang Voting Xiaoyue Zhang Preference Ballot Ordered list of candidates Assuming no ties Preference schedule = many preference ballots Alice's Preferences 1. Apple 2. Banana 3. Peach 4. Pear 5. Kiwi What is

More information

CS159. Nathan Sprague. September 30, 2015

CS159. Nathan Sprague. September 30, 2015 CS159 Nathan Sprague September 30, 2015 Testing Happens at Multiple Levels Unit Testing - Test individual classes in isolation. Focus is on making sure that each method works according to specification.

More information

15.1 Origins and Uses of Ruby

15.1 Origins and Uses of Ruby 15.1 Origins and Uses of Ruby - Designed by Yukihiro Matsumoto; released in 1996 - Use spread rapidly in Japan - Use is now growing in part because of its use in Rails - A pure object-oriented purely interpreted

More information

Strings and Variables

Strings and Variables Strings and Variables class Player attr_accessor :name attr_reader :health def initialize(name, health=100) @name = name.capitalize @health = health @found_treasures = Hash.new(0) Inside the initialize

More information

CSc 372 Comparative Programming Languages

CSc 372 Comparative Programming Languages CSc 372 Comparative Programming Languages 26 : Ruby Classes Christian Collberg collberg+372@gmail.com Department of Computer Science University of Arizona Copyright c 2008 Christian Collberg [1] Inheritance

More information

Testing Frameworks (MiniTest)

Testing Frameworks (MiniTest) Testing Frameworks (MiniTest) Computer Science and Engineering College of Engineering The Ohio State University Lecture 20 MiniTest and RSpec Many popular testing libraries for Ruby MiniTest (replaces

More information

Ruby II. Classes. Classes are straight forward in Ruby.

Ruby II. Classes. Classes are straight forward in Ruby. Ruby II Classes Classes are straight forward in Ruby. expr Note that the class name begins with a capitol letter. Classes can contain instance variables, instance methods, class variables, class methods,

More information

How To Gain a Competitive Advantage

How To Gain a Competitive Advantage How To Gain a Competitive Advantage VIDEO See this video in High Definition Download this video How To Gain a Competitive Advantage - 1 Video Transcript The number one reason why people fail online is

More information

CSE 413 Programming Languages & Implementation. Hal Perkins Winter 2019 Ruby Containers, Blocks, and Procs

CSE 413 Programming Languages & Implementation. Hal Perkins Winter 2019 Ruby Containers, Blocks, and Procs CSE 413 Programming Languages & Implementation Hal Perkins Winter 2019 Ruby Containers, Blocks, and Procs CSE413 Winter 2019 1 The Plan Ruby container data structures Blocks and control structures (iterators,

More information

1: A: This sends the message swim to the object bound to octopus with the argument "fast" (a string)

1: A: This sends the message swim to the object bound to octopus with the argument fast (a string) 1: A: This ss the message swim to the object bound to octopus with the argument "fast" (a string) B: Same as A - parens optional for one-argument methods. C:This ss the message tentacles= to the object

More information

User Guide. Module 7: Generating Reports

User Guide. Module 7: Generating Reports User Guide Module 7: Generating Reports Module 7 provides information on generating reports to meet the needs of students, faculty, and administration. NOTE: There may be a 10-minute delay from the time

More information

Voting Methods and Colluding Voters

Voting Methods and Colluding Voters . Voting Methods and Colluding Voters Christopher Hanusa Binghamton University December 3, 2007 Outline Voting Methods Plurality/Majority and refinements Ranked Pairs Borda Count Let s vote! Mathematics

More information

CSE 341, Autumn 2015, Ruby Introduction Summary

CSE 341, Autumn 2015, Ruby Introduction Summary CSE 341, Autumn 2015, Ruby Introduction Summary Disclaimer: This lecture summary is not necessarily a complete substitute for atting class, reading the associated code, etc. It is designed to be a useful

More information

Problem Set 4. Danfei Xu CS 231A March 9th, (Courtesy of last year s slides)

Problem Set 4. Danfei Xu CS 231A March 9th, (Courtesy of last year s slides) Problem Set 4 Danfei Xu CS 231A March 9th, 2018 (Courtesy of last year s slides) Outline Part 1: Facial Detection via HoG Features + SVM Classifier Part 2: Image Segmentation with K-Means and Meanshift

More information

INSERT SUBTOTALS Database Exercise Sort the Data Department Department Data Tab Sort and Filter Group

INSERT SUBTOTALS Database Exercise Sort the Data Department Department Data Tab Sort and Filter Group INSERT SUBTOTALS Subtotals are used to summarize data in a range of data. This command offers many kinds of summary information, including counts, sums, averages, minimums, and maximums. When this feature

More information

MATH 1340 Mathematics & Politics

MATH 1340 Mathematics & Politics MTH 1340 Mathematics & Politics Lecture 4 June 25, 2015 Slides prepared by Iian Smythe for MTH 1340, Summer 2015, at Cornell University 1 Profiles and social choice functions Recall from last time: in

More information

Case 2:17-cv-00980-RRS-KK Document 96-4 Filed 10/01/18 Page 1 of 25 PageID #: 2144 Analysis of Fort Polk s Course of Action (COA) Decision Matrix For Horse Elimination U Case 2:17-cv-00980-RRS-KK Document

More information

Test-Driven Development

Test-Driven Development Test-Driven Development Kenneth M. Anderson University of Colorado, Boulder CSCI 4448/6448 Lecture 27 12/2/08 University of Colorado, 2008 Credit where Credit is Due Some of the material for this lecture

More information

Improving Coverage Analysis

Improving Coverage Analysis Improving Coverage Analysis 1 Ryan Davis Coding professionally 25 years, 16 years Ruby Founder, Seattle.rb; First & Oldest Ruby Brigade Author: minitest, flog, flay, debride, ruby_parser, etc. ~114 million

More information

HIRING MANAGER S USER S GUIDE

HIRING MANAGER S USER S GUIDE HIRING MANAGER S USER S GUIDE Northern Kentucky University Hiring System PeopleAdmin, Inc. 1717 W. 6 th Street Austin, TX 78703 512-997-2500 TABLE OF CONTENTS INTRODUCTION... 3 GETTING STARTED... 4 jobs.nku.edu/hr...

More information

DREXELJOBS AND DREXELMEDJOBS USER S GUIDE. Drexel University and Drexel University College of Medicine Hiring System

DREXELJOBS AND DREXELMEDJOBS USER S GUIDE. Drexel University and Drexel University College of Medicine Hiring System DREXELJOBS AND DREXELMEDJOBS USER S GUIDE Drexel University and Drexel University College of Medicine Hiring System TABLE OF CONTENTS INTRODUCTION... 3 GETTING STARTED... 4 CREATING A REQUISITION... 6

More information

Binary Search APRIL 25 TH, 2014

Binary Search APRIL 25 TH, 2014 Binary Search APRIL 25 TH, 2014 The Search Problem One of the most common computational problems (along with sorting) is searching. In its simplest form, the input to the search problem is a list L and

More information

Lecture 27. Lecture 27: Regular Expressions and Python Identifiers

Lecture 27. Lecture 27: Regular Expressions and Python Identifiers Lecture 27 Lecture 27: Regular Expressions and Python Identifiers Python Syntax Python syntax makes very few restrictions on the ways that we can name our variables, functions, and classes. Variables names

More information

Usability Evaluation of Software Testing Based on Analytic Hierarchy Process Dandan HE1, a, Can WANG2

Usability Evaluation of Software Testing Based on Analytic Hierarchy Process Dandan HE1, a, Can WANG2 4th International Conference on Machinery, Materials and Computing Technology (ICMMCT 2016) Usability Evaluation of Software Testing Based on Analytic Hierarchy Process Dandan HE1, a, Can WANG2 1,2 Department

More information

Ruby. Mooly Sagiv. Most slides taken from Dan Grossman

Ruby. Mooly Sagiv. Most slides taken from Dan Grossman Ruby Mooly Sagiv Most slides taken from Dan Grossman Ruby dynamic, reflective, object-oriented, general-purpose programming language Designed and developed in the mid-1990s by Yukihiro "Matz" Matsumoto

More information

James Turnbull

James Turnbull State of the Nation James Turnbull james@puppetlabs.com Where we were Puppet user mailing list membership was 3000 With about 600 messages a month The #puppet IRC channel averaged 400 people Puppet on

More information

Private/Public Saved Searches

Private/Public Saved Searches Private/Public Saved Searches Learning Objectives In this Job Aid, you will learn how to: 1 Save a private/public search page 3 2 Save a search template page 5 3 Access private and public saved searches

More information

Learning Ontology-Based User Profiles: A Semantic Approach to Personalized Web Search

Learning Ontology-Based User Profiles: A Semantic Approach to Personalized Web Search 1 / 33 Learning Ontology-Based User Profiles: A Semantic Approach to Personalized Web Search Bernd Wittefeld Supervisor Markus Löckelt 20. July 2012 2 / 33 Teaser - Google Web History http://www.google.com/history

More information

HIRING MANAGER S USER S GUIDE

HIRING MANAGER S USER S GUIDE HIRING MANAGER S USER S GUIDE Winston-Salem State University Hiring System PeopleAdmin, Inc. 1717 W. 6 th Street Austin, TX 78703 512-997-2500 TABLE OF CONTENTS INTRODUCTION... 3 GETTING STARTED... 4 POSITION

More information

How-To: eschoolplus Preparing for Secondary Report Cards

How-To: eschoolplus Preparing for Secondary Report Cards How-To: eschoolplus Preparing for Secondary Report Cards Summary: This Document goes through the prerequisite steps to be done before Building Report Cards are processed and generated. Steps: 1. Log into

More information

Equivalence Class Partitioning. Equivalence Partitioning. Definition and Example. Example set of classes

Equivalence Class Partitioning. Equivalence Partitioning. Definition and Example. Example set of classes Equivalence Class Partitioning Equivalence Partitioning From S. Somé, A. Williams 1 Suppose that we were going to test a method that implements the absolute value function for integers. Definition public

More information

How to register and enter scores for a NASP virtual tournament. Basic Steps:

How to register and enter scores for a NASP virtual tournament. Basic Steps: How to register and enter scores for a NASP virtual tournament. Basic Steps: 1. Register the school and the tournament roster. 2. Add group information, coaches, and other registration info. 3. Come back

More information

Visualization Re-Design

Visualization Re-Design CS448B :: 28 Sep 2010 Visualization Re-Design Last Time: Data and Image Models Jeffrey Heer Stanford University The Big Picture Taxonomy task data physical type int, float, etc. abstract type nominal,

More information

Solutions for CSC 372 Ruby Mid-term Exam April 11, 2014

Solutions for CSC 372 Ruby Mid-term Exam April 11, 2014 Problem 1: (21 points) Mean and median: 17.6, 19 Solutions for CSC 372 Ruby Mid-term Exam April 11, 2014 In this problem you are to write a Ruby program tail.rb that prints the last N lines of standard

More information

1. What is Excel? Page 2 of 17

1. What is Excel? Page 2 of 17 Data Analysis & Business Intelligence Made Easy with Excel Power Tools Excel Data Analysis Basics = E-DAB Notes for Video: E-DAB-02: Data, Proper Data Sets, Excel Tables, Sort, Filter, Logical Tests Objectives

More information

Demands on task recommendation in crowdsourcing platforms the worker s perspective

Demands on task recommendation in crowdsourcing platforms the worker s perspective Demands on task recommendation in crowdsourcing platforms the worker s perspective Survey Design Documentation for RecSys 15 CrowdRec Submission 1. Overall Survey Design The survey shown on the following

More information

USING DATA DRIVEN PAGES

USING DATA DRIVEN PAGES USING DATA DRIVEN PAGES Mid-West ESRI Utility User s Group Conference March 26, 2014 Presented by: Hillary Bjorstrom, GIS Analyst STAR Energy Services LLC Alexandria, Minnesota EXERCISE 1 CREATING A GRID

More information

For Facilitator Use Only. B3. Conformity Assessment: Roles and Responsibilities (Perfect score: 30 points)

For Facilitator Use Only. B3. Conformity Assessment: Roles and Responsibilities (Perfect score: 30 points) For Facilitator Use Only B3. Conformity Assessment: Roles and Responsibilities (Perfect score: 30 points) 1. a. Council on Standards and Certification b. Board on Conformity Assessment c. Standards Committees

More information

ΕΠΛ660. Ανάκτηση µε το µοντέλο διανυσµατικού χώρου

ΕΠΛ660. Ανάκτηση µε το µοντέλο διανυσµατικού χώρου Ανάκτηση µε το µοντέλο διανυσµατικού χώρου Σηµερινό ερώτηµα Typically we want to retrieve the top K docs (in the cosine ranking for the query) not totally order all docs in the corpus can we pick off docs

More information

CMSC330 Spring 2015 Midterm #1 9:30am/11:00am/12:30pm

CMSC330 Spring 2015 Midterm #1 9:30am/11:00am/12:30pm CMSC330 Spring 2015 Midterm #1 9:30am/11:00am/12:30pm Name: Discussion Time (circle one): 10am 11am 12pm 1pm 2pm 3pm Discussion TA (circle one): Amelia Casey Chris Mike Elizabeth Eric Tommy Instructions

More information

Rails Four For you and for me!

Rails Four For you and for me! Realtime Rails Four Rails Four For you and for me! Aaron Patterson @terlove HI!! :-) AT&T, AT&T logo and all AT&T related marks are trademarks of AT&T Intellectual Property and/or AT&T affiliated companies.

More information

CMSC 330: Organization of Programming Languages. OCaml Expressions and Functions

CMSC 330: Organization of Programming Languages. OCaml Expressions and Functions CMSC 330: Organization of Programming Languages OCaml Expressions and Functions CMSC330 Spring 2018 1 Lecture Presentation Style Our focus: semantics and idioms for OCaml Semantics is what the language

More information

Lecture 20: SW Testing Presented by: Mohammad El-Ramly, PhD

Lecture 20: SW Testing Presented by: Mohammad El-Ramly, PhD Cairo University Faculty of Computers and Information CS251 Software Engineering Lecture 20: SW Testing Presented by: Mohammad El-Ramly, PhD http://www.acadox.com/join/75udwt Outline Definition of Software

More information

e-library Tips Look over the e-library Search screen. Notice the three searches in the upper left-hand corner:

e-library Tips Look over the e-library Search screen. Notice the three searches in the upper left-hand corner: e-library Tips Introduction: e-library is now available through DealerNet at http://www.asdealernet.com. This document is intended to give a general overview of the e-library application. For more detailed

More information

A Comparison of the Booch Method and Shlaer-Mellor OOA/RD

A Comparison of the Booch Method and Shlaer-Mellor OOA/RD A Comparison of the Booch Method and Shlaer-Mellor OOA/RD Stephen J. Mellor Project Technology, Inc. 7400 N. Oracle Rd., Suite 365 Tucson Arizona 85704 520 544-2881 http://www.projtech.com 2 May 1993 The

More information

UNIT 6B Organizing Data: Hash Tables. Comparing Algorithms

UNIT 6B Organizing Data: Hash Tables. Comparing Algorithms UNIT 6B Organizing Data: Hash Tables 1 Comparing Algorithms You are a professor and you want to find an exam in a large pile of n exams. Search the pile using linear search. Per student: O(n) Total for

More information

Selection Control Structure CSC128: FUNDAMENTALS OF COMPUTER PROBLEM SOLVING

Selection Control Structure CSC128: FUNDAMENTALS OF COMPUTER PROBLEM SOLVING Selection Control Structure CSC128: FUNDAMENTALS OF COMPUTER PROBLEM SOLVING MULTIPLE SELECTION To solve a problem that has several selection, use either of the following method: Multiple selection nested

More information

Test-Driven Development (TDD)

Test-Driven Development (TDD) Test-Driven Development (TDD) CS 4501 / 6501 Software Testing [Lasse Koskela, Test Driven, Chapters 2-3] 1 Agile Airplane Testing Test harness: Appearance matches Color coding in place Fly 6ft (or 2m)

More information

CSE341: Programming Languages Lecture 19 Introduction to Ruby and OOP. Dan Grossman Winter 2013

CSE341: Programming Languages Lecture 19 Introduction to Ruby and OOP. Dan Grossman Winter 2013 CSE341: Programming Languages Lecture 19 Introduction to Ruby and OOP Dan Grossman Winter 2013 Ruby logistics Next two sections use the Ruby language http://www.ruby-lang.org/ Installation / basic usage

More information

Test First Software Development

Test First Software Development Test First Software Development Jacob Kristhammar Roger Schildmeijer D04, Lund Institute of Technology, Sweden {d04jk d04rp}@student.lth.se 2008-02-06 Abstract In this in-depth study we will try to explain

More information

Creating a Newsletter

Creating a Newsletter Chapter 7 Creating a Newsletter In this chapter, you will learn the following to World Class standards: Setting the Margins Changing the Font and Font Size Inserting a Table Inserting a Picture Adding

More information

INFO 1103 Homework Project 2

INFO 1103 Homework Project 2 INFO 1103 Homework Project 2 February 15, 2019 Due March 13, 2019, at the end of the lecture period. 1 Introduction In this project, you will design and create the appropriate tables for a version of the

More information

Ranked Retrieval. Evaluation in IR. One option is to average the precision scores at discrete. points on the ROC curve But which points?

Ranked Retrieval. Evaluation in IR. One option is to average the precision scores at discrete. points on the ROC curve But which points? Ranked Retrieval One option is to average the precision scores at discrete Precision 100% 0% More junk 100% Everything points on the ROC curve But which points? Recall We want to evaluate the system, not

More information

Ruby logistics. CSE341: Programming Languages Lecture 19 Introduction to Ruby and OOP. Ruby: Not our focus. Ruby: Our focus. A note on the homework

Ruby logistics. CSE341: Programming Languages Lecture 19 Introduction to Ruby and OOP. Ruby: Not our focus. Ruby: Our focus. A note on the homework Ruby logistics CSE341: Programming Languages Lecture 19 Introduction to Ruby and OOP Dan Grossman Autumn 2018 Next two sections use the Ruby language http://www.ruby-lang.org/ Installation / basic usage

More information

Design and Analysis of Algorithms 演算法設計與分析. Lecture 7 April 15, 2015 洪國寶

Design and Analysis of Algorithms 演算法設計與分析. Lecture 7 April 15, 2015 洪國寶 Design and Analysis of Algorithms 演算法設計與分析 Lecture 7 April 15, 2015 洪國寶 1 Course information (5/5) Grading (Tentative) Homework 25% (You may collaborate when solving the homework, however when writing

More information

Unit 7 Day 4 Notes: graph coloring, Graph theory review & Quiz

Unit 7 Day 4 Notes: graph coloring, Graph theory review & Quiz Unit 7 Day 4 Notes: graph coloring, Graph theory review & Quiz Warm-Up Phones OFF & in Blue Pockets! Get out paper for notes! Agenda Notes first, Then do practice and HW questions Quiz at the end Notes:

More information

SEO For Bloggers: Learn How To Rank Your Blog Posts At The Top Of Google's Search Results (The SEO Series) (Volume 4) By R.L. Adams, R. L.

SEO For Bloggers: Learn How To Rank Your Blog Posts At The Top Of Google's Search Results (The SEO Series) (Volume 4) By R.L. Adams, R. L. SEO For Bloggers: Learn How To Rank Your Blog Posts At The Top Of Google's Search Results (The SEO Series) (Volume 4) By R.L. Adams, R. L. Adams READ ONLINE LongtailPro is a great way to find good keywords

More information

Reviewer WordPress Plugin

Reviewer WordPress Plugin Reviewer WordPress Plugin Reviews and Comparison Tables for Your Posts Version: 2.3.0 - by Michele Ivani - evographics.net This is a how-to guide to install your plugin copy. If you have any questions

More information

MTAT : Software Testing

MTAT : Software Testing MTAT.03.159: Software Testing Lecture 03: White-Box Testing (Textbook Ch. 5) Spring 2013 Dietmar Pfahl email: dietmar.pfahl@ut.ee Lecture Chapter 5 White-box testing techniques (Lab 3) Structure of Lecture

More information

Creating and using Moodle Rubrics

Creating and using Moodle Rubrics Creating and using Moodle Rubrics Rubrics are marking methods that allow staff to ensure that consistent grading practices are followed, especially when grading as a team. They comprise a set of criteria

More information

What is Ruby? CSc 372. Comparative Programming Languages. 27 : Ruby Introduction. Department of Computer Science University of Arizona

What is Ruby? CSc 372. Comparative Programming Languages. 27 : Ruby Introduction. Department of Computer Science University of Arizona What is Ruby? CSc 372 Comparative Programming Languages 27 : Ruby Introduction Department of Computer Science University of Arizona Everything is an object. Everything can be changed: method can be added

More information

Content Based Cross-Site Mining Web Data Records

Content Based Cross-Site Mining Web Data Records Content Based Cross-Site Mining Web Data Records Jebeh Kawah, Faisal Razzaq, Enzhou Wang Mentor: Shui-Lung Chuang Project #7 Data Record Extraction 1. Introduction Current web data record extraction methods

More information

Your First Ruby Script

Your First Ruby Script Learn Ruby in 50 pages Your First Ruby Script Step-By-Step Martin Miliauskas @mmiliauskas 1 Your First Ruby Script, Step-By-Step By Martin Miliauskas Published in 2013 by Martin Miliauskas On the web:

More information

Community portal User Guide OACIS

Community portal User Guide OACIS Community portal User Guide OACIS Septembre 2015 Table des matières TELUS Health Community Portal... 3 Registering... 4 First time login... 5 If you forget your password... 5 Set up your community profile...

More information

User Guide NRC Research Press Journals Published by

User Guide NRC Research Press Journals Published by RP Mobile User Guide NRC Research Press Journals Published by ACCESS Accessing RP Mobile Open the browser on a compatible device and enter the URL www.nrcresearchpress.com. As you are accessing the site

More information

Simple TDD Case Study. in Java

Simple TDD Case Study. in Java Simple TDD Case Study in Java Assertions To check if code is behaving as you expect, use an assertion, a simple method call that verifies that something is true. E.g the method asserttrue checks that the

More information

A Tour of Ruby.... for Java programmers

A Tour of Ruby.... for Java programmers A Tour of Ruby... for Java programmers Everything has a value Everything has a value, which I'll show in a comment (following Matsumoto): 1234 # => 1234 2 + 2 # => 4 'Hello' + 'World' # => 'HelloWorld'

More information

Creating an Awards Slideshow

Creating an Awards Slideshow Creating an Awards Slideshow Task 1: Preparation The Awards Slide Show generator uses and open source tool called ImageMagick to generate the award text on top of the photo. Before you start, download

More information

CS47300: Web Information Search and Management

CS47300: Web Information Search and Management CS47300: Web Information Search and Management Prof. Chris Clifton 27 August 2018 Material adapted from course created by Dr. Luo Si, now leading Alibaba research group 1 AD-hoc IR: Basic Process Information

More information

Inheritance. CSc 372. Comparative Programming Languages. 28 : Ruby Classes. Department of Computer Science University of Arizona.

Inheritance. CSc 372. Comparative Programming Languages. 28 : Ruby Classes. Department of Computer Science University of Arizona. Inheritance CSc 372 Comparative Programming Languages 28 : Ruby Classes Department of Computer Science University of Arizona collberg@gmail.com Copyright c 2011 Christian Collberg Let s start with this,

More information

CSc 372 Comparative Programming Languages

CSc 372 Comparative Programming Languages CSc 372 Comparative Programming Languages 28 : Ruby Classes Christian Collberg Department of Computer Science University of Arizona collberg@gmail.com Copyright c 2011 Christian Collberg November 1, 2011

More information

CSC/ECE 517: Object-Oriented Languages and Systems Summer 2008 Test 1 with Answers

CSC/ECE 517: Object-Oriented Languages and Systems Summer 2008 Test 1 with Answers CSC/ECE 517: Object-Oriented Languages and Systems Summer 2008 Test 1 with Answers This was a 95-minute open-book test. There were a total of 102 points on this test. If you answered more than 100% worth

More information

DOWNLOADING YOUR BENEFICIARY SAMPLE Last Updated: 11/16/18. CMS Web Interface Excel Instructions

DOWNLOADING YOUR BENEFICIARY SAMPLE Last Updated: 11/16/18. CMS Web Interface Excel Instructions DOWNLOADING YOUR BENEFICIARY SAMPLE Last Updated: 11/16/18 CMS Web Interface Excel Instructions Last updated: 11/16/2018 1 Smarter reporting. Smarter care. CMS Web Interface file upload. Using the Excel

More information

Credit where Credit is Due. Lecture 29: Test-Driven Development. Test-Driven Development. Goals for this lecture

Credit where Credit is Due. Lecture 29: Test-Driven Development. Test-Driven Development. Goals for this lecture Lecture 29: Test-Driven Development Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2003 Credit where Credit is Due Some of the material for this lecture is taken from

More information

MATH 1340 Mathematics & Politics

MATH 1340 Mathematics & Politics MATH 1340 Mathematics & Politics Lecture 5 June 26, 2015 Slides prepared by Iian Smythe for MATH 1340, Summer 2015, at Cornell University 1 An example (Exercise 2.1 in R&U) Consider the following profile

More information

ReadyResults.net Viewing, Printing, and Customizing Reports. For help, send to: or call:

ReadyResults.net Viewing, Printing, and Customizing Reports. For help, send  to: or call: ReadyResults.net 2014 Viewing, Printing, and Customizing Reports For help, send email to: help@readyresults.net or call: 877-456-1547 Table of Contents Overview... 1 Selecting and Viewing Reports... 1

More information

AUSTIN COMMUNITY COLLEGE CONTINUING EDUCATION. INTRODUCTION TO DATABASE/FILE MANAGEMENT (Access Introduction) (12 hours) ITSW 1053 COURSE SYLLABUS

AUSTIN COMMUNITY COLLEGE CONTINUING EDUCATION. INTRODUCTION TO DATABASE/FILE MANAGEMENT (Access Introduction) (12 hours) ITSW 1053 COURSE SYLLABUS Course Description: Learn how to design and complete a working database system using this popular software. An introduction to database concepts including: Program parameters, data dictionary, optional

More information

1Z0-560 Oracle Unified Business Process Management Suite 11g Essentials

1Z0-560 Oracle Unified Business Process Management Suite 11g Essentials 1Z0-560 Oracle Unified Business Process Management Suite 11g Essentials Number: 1Z0-560 Passing Score: 650 Time Limit: 120 min File Version: 1.0 http://www.gratisexam.com/ 1Z0-560: Oracle Unified Business

More information

SYMBOLS. you would not assign a value to a symbol: :name = "Fred" The Book of Ruby 2011 by Huw Collingbourne

SYMBOLS. you would not assign a value to a symbol: :name = Fred The Book of Ruby 2011 by Huw Collingbourne SYMBOLS Many newcomers to Ruby are confused by symbols. A symbol is an identifier whose first character is a colon (:), so :this is a symbol and so is :that. Symbols are, in fact, not at all complicated

More information

HIRING MANAGER S USER S GUIDE

HIRING MANAGER S USER S GUIDE HIRING MANAGER S USER S GUIDE Drexel University Hiring System PeopleAdmin, Inc. 1717 W. 6 th Street Austin, TX 78703 512-997-2500 TABLE OF CONTENTS INTRODUCTION... 3 GETTING STARTED... 4 CREATING A REQUISITION...

More information

You have this page and the next page to present your solution.

You have this page and the next page to present your solution. CS06B Handout 30 Autumn 0 November 5 th, 0 Section Handout Discussion Problem : Braided Lists Write a function called braid that takes the leading address of a singly linked list, and weaves the reverse

More information

Requirements Validation and Negotiation (cont d)

Requirements Validation and Negotiation (cont d) REQUIREMENTS ENGINEERING LECTURE 2017/2018 Joerg Doerr Requirements Validation and Negotiation (cont d) REQUIREMENTS VALIDATION AND NEGOTIATION Requirements Validation Techniques 2 Techniques Overview

More information

CS 115 Exam 3, Fall 2016, Sections 1-4

CS 115 Exam 3, Fall 2016, Sections 1-4 , Sections 1-4 Your name: Rules You may use one handwritten 8.5 x 11 cheat sheet (front and back). This is the only resource you may consult during this exam. Explain/show work if you want to receive partial

More information

Compiler Design. Fall Data-Flow Analysis. Sample Exercises and Solutions. Prof. Pedro C. Diniz

Compiler Design. Fall Data-Flow Analysis. Sample Exercises and Solutions. Prof. Pedro C. Diniz Compiler Design Fall 2015 Data-Flow Analysis Sample Exercises and Solutions Prof. Pedro C. Diniz USC / Information Sciences Institute 4676 Admiralty Way, Suite 1001 Marina del Rey, California 90292 pedro@isi.edu

More information

BST Deletion. First, we need to find the value which is easy because we can just use the method we developed for BST_Search.

BST Deletion. First, we need to find the value which is easy because we can just use the method we developed for BST_Search. BST Deletion Deleting a value from a Binary Search Tree is a bit more complicated than inserting a value, but we will deal with the steps one at a time. First, we need to find the value which is easy because

More information

Handling Ties. Analysis of Ties in Input and Output Data of Rankings

Handling Ties. Analysis of Ties in Input and Output Data of Rankings Analysis of Ties in Input and Output Data of Rankings 16.7.2014 Knowledge Engineering - Seminar Sports Data Mining 1 Tied results in the input data Frequency depends on data source tie resolution policy

More information

Delegating Access & Managing Another Person s Mail/Calendar with Outlook. Information Technology

Delegating Access & Managing Another Person s Mail/Calendar with Outlook. Information Technology Delegating Access & Managing Another Person s Mail/Calendar with Outlook Information Technology 1. Click the File tab 2. Click Account Settings, and then click Delegate Access 3. Click Add 4. Type the

More information

Web search before Google. (Taken from Page et al. (1999), The PageRank Citation Ranking: Bringing Order to the Web.)

Web search before Google. (Taken from Page et al. (1999), The PageRank Citation Ranking: Bringing Order to the Web.) ' Sta306b May 11, 2012 $ PageRank: 1 Web search before Google (Taken from Page et al. (1999), The PageRank Citation Ranking: Bringing Order to the Web.) & % Sta306b May 11, 2012 PageRank: 2 Web search

More information

Guide for students. Login

Guide for students. Login Guide for students Login seminars.wi.tum.de Log in on the front page of the matching system (seminars.wi.tum.de) with your TUM identifier by clicking on the blue TUM login button, or with your one-time

More information

Data Centric Computing

Data Centric Computing Piyush Chaudhary HPC Solutions Development Data Centric Computing SPXXL/SCICOMP Summer 2011 Agenda What is Data Centric Computing? What is Driving Data Centric Computing? Puzzle vs.

More information

FUNDAMENTAL SPREADSHEET APPLICATIONS (230)

FUNDAMENTAL SPREADSHEET APPLICATIONS (230) FUNDAMENTAL SPREADSHEET APPLICATIONS - REGIONAL 2017 PAGE 1 OF 7 Contestant Number: Time: Rank: FUNDAMENTAL SPREADSHEET APPLICATIONS (230) REGIONAL 2017 Job 1: Create Spreadsheet with Formulas (110 points)

More information

15110 PRINCIPLES OF COMPUTING EXAM 1A FALL 2012

15110 PRINCIPLES OF COMPUTING EXAM 1A FALL 2012 15110 PRINCIPLES OF COMPUTING EXAM 1A FALL 2012 Name Section Andrew id Directions: Answer each question neatly in the space provided. Please read each question carefully. You have 50 minutes for this exam.

More information

How to find a Journal Impact Factor

How to find a Journal Impact Factor Follow us on How to find a Journal Impact Factor Journal Impact Factors are just one way to measure the performance of a journal compared to others in the same field. Checking this before submitting articles

More information

Statistics Case Study 2000 M. J. Clancy and M. C. Linn

Statistics Case Study 2000 M. J. Clancy and M. C. Linn Statistics Case Study 2000 M. J. Clancy and M. C. Linn Problem Write and test functions to compute the following statistics for a nonempty list of numeric values: The mean, or average value, is computed

More information

5.6 Rational Equations

5.6 Rational Equations 5.6 Rational Equations Now that we have a good handle on all of the various operations on rational expressions, we want to turn our attention to solving equations that contain rational expressions. The

More information

CMSC330 Fall 2017 Final Exam Solution

CMSC330 Fall 2017 Final Exam Solution CMSC330 Fall 2017 Final Exam Solution Name (PRINT YOUR NAME IN ALL CAPS ): Discussion Time (circle one) 10am 11am 12pm 1pm 2pm 3pm Discussion TA (circle one) JT Greg Justin Michael BT Daniel David Derek

More information

Information Retrieval Rank aggregation. Luca Bondi

Information Retrieval Rank aggregation. Luca Bondi Rank aggregation Luca Bondi Motivations 2 Metasearch For a given query, combine the results from different search engines Combining ranking functions Text, links, anchor text, page title, etc. Comparing

More information