Noun-Verb Decomposition

Similar documents
Developing a CRC Model. CSC207 Fall 2015

Charlie to Go Online Ordering Guide

Semantic Web. Ontology Engineering. Gerd Gröner, Matthias Thimm. Institute for Web Science and Technologies (WeST) University of Koblenz-Landau

Barista at a Glance BASIS International Ltd.

Mosaic Stadium Suites and Loge Seats Premium Experience Online Ordering Tool User Guide

Setting Up the TEXAS WINE CALENDAR by Natalia Kolyesnikova, Ph.D.

The Bottled Water Scam

Fair Trade C E R T I F I E D

Software engineering process. Literature on UML. Modeling as a Design Technique. Use-case modelling. UML - Unified Modeling Language

THE STEEL DETAILER SolidWorks 2016 INSTALLATION PROCEDURE

Activity 10. Coffee Break. Introduction. Equipment Required. Collecting the Data

WORKING GROUP ON TEA TRADE AND QUALITY. Intersessional Meeting of the Intergovernmental Group on Tea Rome, 5-6 May 2014

Parent Self Serve Mobile

Pizza Ontology. a review of core concepts for building a pizza ontology

Topic: Succeed in Wine Storage Management Systems Certification Scheme

Subject: Industry Standard for a HACCP Plan, HACCP Competency Requirements and HACCP Implementation

EUROPEAN PATENT OFFICE U.S. PATENT AND TRADEMARK OFFICE CPC NOTICE OF CHANGES 649 DATE: FEBRUARY 1, 2019 PROJECT RP0569

What s on the MENU? Grammar Project PARTS OF SPEECH

Table of Contents. Toast Inc. 2

Introduction to the Practical Exam Stage 1

The Roles of Social Media and Expert Reviews in the Market for High-End Goods: An Example Using Bordeaux and California Wines

Barista Document Output Object

VIII. Claim Drafting Methodologies. Becky White

Food Words. Ph! (English; Yr 3, ACELA1484) Learn extended and technical vocabulary and ways of expressing opinion including modal verbs and adverbs

Sustainable Coffee Challenge FAQ

Esri Demographic Data Release Notes: Israel

Putting Away the Groceries When you get home from the grocery store, work together to put the groceries away.

APPENDIX PROPER USE GUIDELINES INGREDIENT BRANDING

1. Continuing the development and validation of mobile sensors. 3. Identifying and establishing variable rate management field trials

Global Branding Strategy: Process and Payoff, Part 1

Restaurant reservation system thesis documentation. Restaurant reservation system thesis documentation.zip

Napa County Planning Commission Board Agenda Letter

The Market Potential for Exporting Bottled Wine to Mainland China (PRC)

NVIVO 10 WORKSHOP. Hui Bian Office for Faculty Excellence BY HUI BIAN

User Studies for 3-Sweep

Menus of Change General Session 3 Changing Consumer Behaviors and Attitudes

Introduction to the Practical Exam Stage 1. Presented by Amy Christine MW, DC Flynt MW, Adam Lapierre MW, Peter Marks MW

REFIT Platform Opinion

DeskTop Ordering. Test Beginning November 17 th

The tricky rules for Treated Articles: Ulrike Frank

Food and Restaurant Projects. jessica.toxsl

Welcome to Grubhub. Table of contents. You ve joined the nation s leading online and mobile food ordering platform. Set up your account...

west australian wine industry sustainable funding model

Introduction to the BC WINE COUNTRY EXPLORER S PASS PROGRAM

JBL Resorts. Joe Bolton, Ku ulei Belveal, Brynn Alcain

Engaging with volunteers: risk accompanying benefits. October 25, 2017

What is THE RISE OF THE TEENAGE MUTANT NINJA TURTLES Sewer Squad Pizza Points Rewards Program and how does it work?

Step 1: Prepare To Use the System

Control of treated articles in the Biocidal Products Regulation ECHA Biocides Stakeholders Day 25 June 2013

learning goals ARe YoU ReAdY to order?

Foodware 2.0 Framework. Peter Schultze-Allen, Senior Scientist, EOA Inc.

Making a Snack Make a quick and easy snack with crackers, cheese and peanut butter. Talk about what you want on your crackers and how to make it.

Environmental Monitoring for Optimized Production in Wineries

PRISM AWARDS BEST USE OF AN EVENT TO BUILD OR CHANGE REPUTATION THE BOTANIST: THE FORAGER 2.0 THE FRIDAY STREET CLUB OPENING STATEMENT

Food Image Recognition by Deep Learning

Algorithms. How data is processed. Popescu

Shaping the Future: Production and Market Challenges

Roya Survey Developers Bil Doyle Brad Johns Greg Johnson Robin McNal y Kirsti Wal Graduate Consultant Mohammad Sajib Al Seraj Avinash Subramanian

IMSI Annual Business Meeting Amherst, Massachusetts October 26, 2008

openlca case study: Conventional vs Organic Viticulture

THE MEAT PRODUCTS REGULATIONS 2003 SUMMARY GUIDANCE NOTES

TREATED ARTICLES NEW GUIDANCE AND REGULATION BIOCIDE SYMPOSIUM 2015 LJUBLJANA MAY DR. PIET BLANCQUAERT

confidence for front line staff Key Skills for the WSET Level 1 Certificate Key Skills in Wines and Spirits ISSUE FIVE JULY 2005

Is Fair Trade Fair? ARKANSAS C3 TEACHERS HUB. 9-12th Grade Economics Inquiry. Supporting Questions

Chef And Team Derby Green Ooty

THE ECONOMIC IMPACT OF BEER TOURISM IN KENT COUNTY, MICHIGAN

US FOODS E-COMMERCE AND TECHNOLOGY OFFERINGS

Appendix 2. Food Safety Plan Worksheets

Frequently Asked Questions

AVEINE The brand that enhances the pleasure of sharing

classroomsecrets.com The Mayan Cookbook Year 4 Teaching Information

TURNING A MEAL INTO AN EXPERIENCE 2018 RESTAURANT INDUSTRY REPORT

THE STEEL DETAILER SolidWorks 2015 INSTALLATION PROCEDURE

Cafeteria Ordering System, Release 1.0

Making a Valentine s Day Float. Using pink or red soda/juice and ice cream, make a float for Valentine s Day or make a classic Root Beer float.

Roux Bot Home Cooker. UC Santa Cruz, Baskin Engineering Senior Design Project 2015

The R&D-patent relationship: An industry perspective

This is USDA s Non-Discrimination Statement and MUST be available in this format.

A La Carte Review Guide

The New EU Rules on Articles Treated with Biocidal Products. Cándido García Molyneux European Food Law Conference 2014 ERA, Trier May 5, 2014

Operations Manuals For Restaurants READ ONLINE

A Practical Guide to Biocidal Products and Articles

Using Six Sigma for Process Improvement. Office of Continuous Improvement, Information Technology

Missing value imputation in SAS: an intro to Proc MI and MIANALYZE

Haccp Manual For Institutional Food Service. Operations >>>CLICK HERE<<<

Northern Region Central Region Southern Region No. % of total No. % of total No. % of total Schools Da bomb

Overall stability of multi-span portal sheds at right-angles to the portal spans

AWRI Refrigeration Demand Calculator

WELCOME T O O U R H O M E Kurry Qulture's seasonal menu masterfully blends fresh Indian and local produce delivered in a casual, trendy ambiance. Kurr

4 Steps to Survive the Fast Casual Digital Ordering & Delivery Revolution

Background & Literature Review The Research Main Results Conclusions & Managerial Implications

Administration Guide HighSpeedWaiter.com

Measuring and Managing the Quality of Service in Hotels in Cyprus. Professor Christine Hope and Leontios Filotheou

CONSUMER SEGMENTATION ANALYSIS

What do Calls to Restaurants Signify?

Narrative. Description of Process. REVISED SEPTEMBER 2017 Commercial Processing Example: Wild Salmon Sushi Rolls

Imperative:s Imperatives: instructions

INTRO TO TEXT MINING: BAG OF WORDS. What is text mining?

An Advanced Tool to Optimize Product Characteristics and to Study Population Segmentation

MOANA LOGI MANUAL MOANA BLUE. Copyright 2017 K.K. Moana Blue 1

Transcription:

Noun-Verb Decomposition Nouns Restaurant [Regular, Catering, Take- Out] (Location, Type of food, Hours of operation, Reservations) Verbs has (information) SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Reservation Information Location Hours of operation Things Account User [Diners, Logged-in, Guest, Restaurant] (Name, Rewards points, Password, Google login, Reservations) make (reservation) complete (reservation) saves (reservation) modifies/deletes/views (reservation) authenticate with (??)

Using nouns and verbs provides a perspective for an initial class decomposition. Nouns may represent Classes Specializations, i.e. subclasses Attributes of classes Data elements Verbs may represent Services a client needs Services a server provides

An analysis beyond a simple list of the nouns and verbs provides additional guidance. Using structure and annotating the nouns and verbs list moves you toward a class decomposition. This helps yield a class structure that is isomorphic to the world view of the problem similar to your domain modeling. It also helps identify the location for responsibilities.

Restaurant Reservation System (RRS) Each restaurant has information about its location, type of food, hours of operation, and reservations. The restaurants are broken up into regular, catering, and take-out where making a reservation means a different thing for each category of restaurant. Diners will be able to use the system either when logged into their account or as a guest. Diners, either as guests or logged in users, can make reservations. Reservations will be saved to a user's account if they are logged in. Logged in users can also modify or delete reservations in their account. A user's account will store a name, rewards points, and their upcoming and past reservations. Restaurant users will have an account which can view, modify, or delete any reservation made for their restaurant. The restaurant user can also complete a reservation when diners arrive. All users will authenticate using a password or Google login.

Step 1 is to identify the nouns in the problem statement, domain, and user stories. Make a list of all the nouns in the left column of a two column table. Put each noun in a table row. You only need to list a noun once.

RRS Identify the nouns Each restaurant has information about its location, type of food, hours of operation, and reservations. The restaurants are broken up into regular, catering, and take-out where making a reservation means a different thing for each category of restaurant. Diners will be able to use the system either when logged into their account or as a guest. Diners, either as guests or logged in users, can make reservations. Reservations will be saved to a user's account if they are logged in. Logged in users can also modify or delete reservations in their account. A user's account will store a name, rewards points, and their upcoming and past reservations. Restaurant users will have an account which can view, modify, or delete any reservation made for their restaurant. The restaurant user can also complete a reservation when diners arrive. All users will authenticate using a password or Google login.

RRS Identify the nouns Nouns Restaurant Reservation Information Location Type of food Hours of operation Things Category of restaurant Diners Account Guest User Name Rewards points Password Google login Verbs

Step 2 is to determine any specializations of the nouns that might exist. Identify any words that might be specializations of other nouns. Put the specializing word in brackets [] next to the noun it is specializing If the word is a noun and has no other use than this specialization remove its row in the table

RRS Identify specializations Each restaurant has information about its location, type of food, hours of operation, and reservations. The restaurants are broken up into regular, catering, and take-out where making a reservation means a different thing for each category of restaurant. Diners will be able to use the system either when logged into their account or as a guest. Diners, either as guests or logged in users, can make reservations. Reservations will be saved to a user's account if they are logged in. Logged in users can also modify or delete reservations in their account. A user's account will store a name, rewards points, and their upcoming and past reservations. Restaurant users will have an account which can view, modify, or delete any reservation made for their restaurant. The restaurant user can also complete a reservation when diners arrive. All users will authenticate using a password or Google login.

RRS Identify specializations Nouns Restaurant [Regular, Catering, Take-Out] Reservation Information Location Type of food Hours of operation Things Category of restaurant Diners Account Guest User [Diners, Logged-in, Guest, Restaurant] Name Rewards points Password Google login Verbs

Step 3 identifies which nouns might be associated with other nouns. Identify any associated nouns that might be Attributes of other nouns Properties of other nouns Information/data owned by other nouns Connect the nouns together Put the associated noun in parentheses () next to the noun it is associated with Remove the associated noun's row only if it is a primitive data type. Err in the direction of keeping nouns in the list.

RRS Identify associated nouns Nouns Restaurant [Regular, Catering, Take-Out] (Location, Type of food, Hours of operation, Reservations) Reservation Information Location Type of food Hours of operation Things Account User [Diners, Logged-in, Guest, Restaurant] (Name, Rewards points, Password, Google login, Reservations) Name Rewards points Password Google login Verbs

Step 4 expresses the use of each verb in a subject-noun verb object-noun form. Identify all of the verbs For each verb, express its use in a phrase of the form subject-noun verb object-noun subject-noun invokes the action object-noun has the action done on it Use the active voice for the verb If it is in the passive voice, rephrase it

RRS Identify the verbs Each restaurant has information about its location, type of food, hours of operation, and reservations. The restaurants are broken up into regular, catering, and take-out where making a reservation means a different thing for each category of restaurant. Diners will be able to use the system either when logged into their account or as a guest. Diners, either as guests or logged in users, can make reservations. Reservations will be saved to a user's account if they are logged in. Logged in users can also view, modify, or delete reservations in their account. A user's account will store a name, rewards points, and their upcoming and past reservations. Restaurant users will have an account which can view, modify, or delete any reservation made for their restaurant. The restaurant user can also complete a reservation when diners arrive. All users will authenticate using a password or Google login.

RRS Express verbs in subject verb object form Restaurant has information Diners are able to use system Diners (users) make reservations Reservations will be saved (by the user? system?) User saves reservations to account User modifies/deletes/views reservations Restaurant user completes reservation Users authenticate with password or Google account (object-noun??)

Step 5 connects each verb to the nouns in the phrase expressing the verb's use. Connect each verb to the subject-noun Put the verb in the right column of the table row of the subject-noun Connect each verb to the object-noun Put the object-noun in parentheses () to the right of the verb

RRS Connect verbs to nouns Nouns Restaurant [Regular, Catering, Take-Out] (Location, Type of food, Hours of operation, Reservations) Reservation Information Location Hours of operation Things Account User [Diners, Logged-in, Guest, Restaurant] (Name, Rewards points, Password, Google login, Reservations) Verbs has (information) make (reservation) complete (reservation) saves (reservation) modifies/deletes/views (reservation) authenticate with (??)

Step 6 does grooming of the noun-verb table If a noun has no attributes or specializations, and does not invoke any verbs, consider eliminating it from the table. Is there a verb missing that this noun invokes, or expresses an action performed on this noun? Is this noun really outside the system boundary? If a verb is not invoked by anything, consider eliminating it from the table. Is there a noun missing that invokes the verb? Is there a noun missing that has this action performed on it? Are some nouns synonyms? Do some verbs have little relevance?

RRS Groom the noun-verb table Nouns Restaurant [Regular, Catering, Take-Out] (Location, Type of food, Hours of operation, Reservations) Reservation Information Location Hours of operation Things Account User [Diners, Logged-in, Guest, Restaurant] (Name, Rewards points, Password, Google login, Reservations) Verbs has (information) make (reservation) complete (reservation) saves (reservation) modifies/deletes/views (reservation) authenticate with (??)

Step 7 is creating a first-cut class decomposition. Nouns in a table row (row-nouns) are potential classes. Nouns on the left in parentheses are potential attributes of the row-noun. Nouns on the left in brackets are potential subclasses in an inheritance hierarchy with the row-noun as the superclass. Verbs on the right are responsibilities potentially defined in the object-nouns in parentheses. A noun that is "responsible" for a verb action contains the code that implements that action. The implementation is typically in the receiver of the action and not the doer.

RRS First-cut class decomposition Classes Subclasses Attributes Responsibilities, i.e. implements the action Restaurant Reservation User Account Location Hours of Operation Regular, Catering, Take-Out Diner, Guest, Restaurant Location, Type of food, Hours of operation, Reservations Name, Rewards points, Password, Google login, Reservations Make, complete, save, modify, delete, view

You now have another perspective for a starting point for your application's class structure. This was created with a mechanical approach from the nouns and verbs. Everything may not make sense, e.g. Restaurant as a class and also a subclass of User You will reconcile this suggested structure with the structure that your domain model motivates. They should be very similar since they both derive from the same information. This mechanical approach provides additional guidance for placement of responsibilities. What is suggested here is not absolute and will be subject to change and refinement. 22