shiran alush shai kerer dor altshuler academic instructor: prof. ronen brafman the decider group...

25
Shiran Alush Shai Kerer Dor Altshuler Academic instructor: Prof. Ronen Brafman The Decider Group Decision Making A Application D Design D Document

Upload: kristina-adams

Post on 28-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

Shiran AlushShai KererDor Altshuler

Academic instructor: Prof. Ronen Brafman

The Decider

Group Decision Making

AApplicationDDesign

DDocument

Reminder – About the project Main System Requirements System Architecture Class Diagram – Main Classes Database Scheme User Interface Algorithms Task List

ContentsContents

The Decider© is a web-based Facebook application for group decision making.

The Decider is a new tool that will help groups of different scale to convey polls & questionnaires, while letting the voter express his preferences, and process the results using the most cutting-edge algorithms in order to get an ideal decision.

What is “The DeciderWhat is “The Decider? ”? ”

Create questionnaires with four types of possible questions (Choose, Rank, Grade, Budget).

Invite others to participate in a questionnaire.

Vote - fill out and submit questionnaire and Express

preferences.

Decide/ View result - Reach a decision in a fair

way.

View statistics about questionnaires, votes, results

and users.

Main System RequirementsMain System Requirements

System ArchitectureSystem Architecture

Our System will be deployed on a web server, exposing its API and communicating with the front-end users as a web-service, via a 3rd-party actor which is the Facebook interface.

Class DiagramClass Diagram

Questionnaire – represent a collection of questions

(variables)

and possible answers (values), and some other additional

information regarding the questionnaire.

Variable – represent a question in a questionnaire.

Value – represent a possible answer to a certain

question.

Class DiagramClass Diagram

Vote (Abstract) – a vote is basically a pair of type question-answer. An instance

of vote can be according to the question type (Choose, Rank, Score).

VoteManager – this class's role is to create the above mentioned votes according

to the user's input, and save those votes in the Database.

Class DiagramClass Diagram

Decider – Creates the decision.

It does so by reading the votes from the Database and

invoking the decision-making algorithms.

Decision –Represent a complete decision to a questionnaire.

Algorithm (Interface) – provide an interface for the classes

that implements a decision-making algorithm.

Class DiagramClass Diagram

SystemHandler – a type of façade controller that handles all the

transactions between the end-user and our system.

GuiHandler – translate requests made by the user via the GUI to real system

functionality expressed as objects instantiation and methods invocation.

DatabaseHandler – responsible for communication with the Database.

FacebookHandler – API that connects between

our system and Facebook.

Class DiagramClass Diagram

Database Scheme - ERDDatabase Scheme - ERD

Database Scheme Database Scheme (partial)(partial)

Questionnaire (ID, Name, Description, Creator-Id, Creation-date, settings)

Variables (Question-Id, Var-num, Name, Description, Type)

Values (Question-Id, Var-number, Value-num, Name, Is-Visible)

Constraints (Question-Id, Var1-num, Value1-num , Var2-num, Value2-num)

Single-Value-Vote (Question-Id, Dependency-comb, Var-num, Value-num, Count)

Ranking-Vote (Question-Id, Dependency-comb, Var-num, Ranking, Count)

Grading-Vote (Question-Id, Dependency-comb, Var-num, Value-num, Sum-Score, Count)

Dependency-Combination (Question-Id, Dependency-Id, Var-num, Value-num)

User interface exampleUser interface example

:An example of a questionnaire

• Brand? (rank)– 1) Porsche– 2) Volvo– 3) Subaru– 4) Mazda

• Color? (rank)– 1) Red– 2) black– 3) White– 4) Blue

• Gear? (choose)

– 1) Automatic– 2) Manual

What community car to buy?

Does your answer to any question will depend on other questions?

My answer to Brand depends on my answer to: Color Gear

My answer to Color depends on my answer to: Brand Gear

My answer to Gear depends on my answer to: Brand Color

Does your answer to any question will depend on other questions?

My answer to Brand depends on my answer to: Color Gear

My answer to Color depends on my answer to: Brand Gear

My answer to Gear depends on my answer to: Brand Color

Does your answer to any question will depend on other questions?

My answer to Brand depends on my answer to: Color Gear

My answer to Color depends on my answer to: Brand Gear

My answer to Gear depends on my answer to: Brand Color

The car’s manufacture and model.

Does your answer to any question will depend on other questions?

My answer to Brand depends on my answer to: Color Gear

My answer to Color depends on my answer to: Brand Gear

My answer to Gear depends on my answer to: Brand Color

Does your answer to any question will depend on other questions?

My answer to Brand depends on my answer to: Color Gear

My answer to Color depends on my answer to: Brand Gear

My answer to Gear depends on my answer to: Brand Color

Rank your preferences to “Brand:”

Instructions: Click on a value and move it up or down using the arrows.

Porsche

Volvo

Subaru

Mazda

Ranking-Vote:

Question-IdDependencyVar-numRankingCount

00010112341

Questionnaire’s ID

Specifies the dependencies in which this vote is cast.

Here there are none so we put value zero.

Variable number

The ranking given to this variable.

‘1234 ’means that in first place is the 1st value

(Porsche), in second place is the 2nd value (Volvo) and etc.

Number of similar votes cast on this

variable.

Dependences:

If “Brand” is then rank your preferences to “Color”: Red

Black

White

Blue

Porsche

Ranking-Vote:

Question-IdDependencyVar-numRankingCount

00011212341

Dependency-Combination:

Question-IdDependency-IDVar-numValue-num

0001111 The ranking given to this variable.

Specifies the dependencies in which this vote is cast.

‘1 ’points to the record on the Combination table .

Color

“Porsche”

Choose your preferences of “Gear:”

AutomaticManual

Single-Value-Vote:

Question-IdDependencyVar-numValue-numCount

00010321

Gear “Manual”

Decision Making AlgorithmsDecision Making AlgorithmsChoose one Algorithms

•Plurality•Plurality with run-off (two rounds)•Sequential run-off (multiple rounds)

Ranking Algorithms•Borda count•Condorcet (can return empty set)•Plurality with run-off •Sequential run-off •Extended Condorcet - Copeland

Score Algorithms•Maximum sum•Minimal regret

http://www.math.princeton.edu/math_alive/Voting/

Task ListTask List

Data base Build-up.

Decision Algorithms implementation.

Graphical User interface (creation, voting, editing, result viewing)

• Domain layer implementation.

• System handler implementations.

• Proto-type testing.

• Smart Voting and Sequential voting implementation.

• Project- day presentation – Due date 10/6/2010

Thank YouThank You