Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Document an example of the dialogue that your chatbot may take with a user for each your three key tasks.
This exercise will help define the backbone of your bot and provide a starting point for your script.
All three tasks should start out the same, but quickly divert once the user triggers a path. Look at the example starting points in the template, but edit it with your chatbot dialogue and take it to the conclusion of an interaction.
Carefully consider the language the bot uses and how to structure clear prompts that will direct the conversation in a productive way.
While you are documenting this single instance of how a dialogue may go, start to think about the many ways the user may respond--you will have to deal with that in your final product.
Each team member should evaluate the sample dialogue (much like you would a paper prototype) by having two people individually follow your sample dialogue using the think-aloud protocol. Synthesize your results and define important decisions for chatbot design before coding begins.
Thinking Aloud from Nielsen Norman Group.
❏ Deliverables A document or slide that summarizes the results of your dialogue evaluation
Outline the features to program by priority--core features, enhanced features, and wish list features. You are creating a basic functional requirements document. Begin coding and maintain well organized code as you progress towards your first full demonstration.
Functional Requirements ExamplesCore Features - The chatbot will have a customized background and font that differs from the template - The chatbot will handle a simple intoduction dialogue and save the user's name - The chatbot will present three buttons to the visitor to select one of three topics of interest - The chatbot will be able to search a dictionary of terms based on visitor input - ....add more core features Enhanced Features - The chatbot will be able to offer embedded videos to the user based on dictionary searches - The chatbot will provide further suggestions as a follow up to search results to expand the user's experience. - ...add more enhanced features Wish List - The chatbot will respond to voice input - The chatbot will save a history of interactions with a user. - .....
❏ Deliverable A document or slide that outlines your progressive development plan.
✓- Below Standard
✓ At Standard
✓+ Above Standard
An evaluation is presented but doesn't communicate any added value to the team's development process.
An evaluation that produces valuable insights on improving and developing the team's concept.
An evaluation that is exhaustive and thoughtful in collecting as much useful information from participants while be respectful of their time.
✓- Below Standard | ✓ At Standard | ✓+ Above Standard |
The outline is not complete and does provide a clear path for coding the chatbot. | The outline is clear and organized, following a logical progression that will aid in the development of the chatbot. | The outline is a detailed view that can be clearly used as a checklist of progress, keeping the team on track with stable chatbot code that can be refined in small steps. |
While the chatbot script (Rivescript) is your main method of controlling the flow of your chatbot dialogue, you will likely want to use a basic database to store tabular data that your chatbot could incorporate in it's service. For example, you may have a large dictionary of terms that a visitor may want to search through your chatbot, or maybe you develop a large set of study questions to quiz a visitor of your chatbot. There are a lot of possibilities.
You will find that providing a chatbot that is backed by a rich data source for people will take careful thought and multiple iterations. So getting a good start on your database will be very beneficial. Follow the instructions for managing a database for your team and make an intentional plan to develop your database of valuable facts for use in your chatbot.
You will have to think carefully and discuss with your team about what kind of data will be most valuable, along with how you can best format the data to make it useful in the chatbot.
❏ Deliverable Your properly formatted database that will support use in the chatbot. Items may continue to be added.
✓- Below Standard
✓ At Standard
✓+ Above Standard
The database is mostly complete but lacks quality of work, revealing a hurried approach or little reflection.
The database is complete and presents a consistent method and attention to detail.
The database provides exceptionally formed content that reveal a thoughtful approach to generating the data and evaluating the quality of the data.
Conduct some basic code testing to verify that the app is acting as expected under different conditions. Ensure that everything works as expected on different size screens and with touch or mouse interactions.
Consider all the things a user might do with your chatbot--like common misspellings, sending an empty message, sending a seemingly random message, or maybe sending calls for help ("help", "reset", "what?", etc.)
Make a simple checklist of conditions you will test to verify that your chatbot works as expected and handles some unintended (but somewhat foreseeable) user responses. Then one by one test each condition while playing the part of a visitor that is new to your chatbot.
❏ Deliverable A document outlining the checklist and results of your code testing.
Design a prototype of the solution for a detailed internal review and evaluation by a sample of stakeholders. Based on what you learn from your prototype, organize a development strategy to methodically program and style your solution with efficiency and quality. Also prepare for the promotion and launch of your solution, and conduct unit testing to ensure all is in working order before an in-class demonstration.
✓- Below Standard
✓ At Standard
✓+ Above Standard
The code testing documentation has been completed but lacks detail or an accurate evaluation of the code quality.
The code testing is complete, accurately represents the state of the application's development, and is useful in identifying needed improvements.
The code testing is very thorough and goes beyond the standard testing items provided in the example.
Task
Estimated Time
Database Development
2 hours
Sample Dialogues
1 hour
Pseudocode Functions
1 hour
Dialogue Script
2 hours
Style Guide
1 hour
Code Development Outline and Begin Coding
6 hours
Marketing Cared
1 hour
Code Testing
2 hours
Prepare Development Review and Demo
2 hours
Based on your sample dialogue evaluation and pseudocode functions, code your Rivescript file in a methodical way by dividing up the chatbot tasks and prioritizing the features. You want to have your chatbot working early in the development process, then carefully add features and refinements, testing along the way.
❏ Deliverable A properly formatted Rivescript file functioning in your chatbot.
Create pseudocode for each programming function your chatbot will need to perform your defined tasks.
Resource: Pseudocode on Wikipedia
See the example pseudocode below as a guide. Don't worry about syntax. Pseudocode is meant to describe, in plain english, what you will need the computer to process.
❏ Deliverable
A document containing each functions pseudocode.
✓- Below Standard
✓ At Standard
✓+ Above Standard
The dialogue script is disorganized and leads to multiple errors or dead-ends for a user.
The dialogue script is well-formatted and demonstrates a clear path for the user.
The dialogue script demonstrates clear and concise paths for the user that properly handles ambiguous responses from the user and leads to a pleasant and valuable experience.
✓- Below Standard
✓ At Standard
✓+ Above Standard
The pseudocode is incomplete and doesn't clearly describe what each function will do.
The pseudocode clearly defines the basic operations of each chatbot function, providing a good template for coding the Javascript functions.
The pseudocode provides a detailed description of each function that thoughtfully considers the logic needed for the programming.
Create a simple document that outlines the style elements of your chatbot. You will want to determine the following elements, at a minimum, and document a description and visual samples of each when possible.
Background color or image descriptions and visual samples
Text font-family and font-size descriptions and samples (Consider using Google Fonts for a custom look)
Text message "bubble" colors and styles for the chatbot messages and the user messages (you want them to look different)
Sound effects - Describe any sound and how it will be used.
Buttons - This would include the send message button as well as any other buttons you may use in your chat interface.
❏ Deliverable A style guide document.
✓- Below Standard
✓ At Standard
✓+ Above Standard
The style guide is incomplete and lacking basic descriptions of what the chatbot will look like.
The style guide provides a complete description of the visual presentation and sound of the chatbot that will provide a clear target for coding the HTML/CSS/JS
The style guide provided a rich presentation of the style elements with fine details in how the chatbot should look and sound. The style guide reflects a carefully considered design process with the user experience clearly addressed.
Create a 3" x 5" marketing card. The marketing card will be a valuable lead-in to your chatbot that could be distributed physically or as a digital image. Think about what your elevator pitch would be for the game and make it visual.
❏ Deliverable A PNG image file of your marketing card.
✓- Below Standard
✓ At Standard
✓+ Above Standard
A marketing card is complete but is very basic and lacks cohesion with the overall team's project.
A marketing card conveying a consistent visual and narrative story about your chatbot that will clearly generate interest in your offering.
A marketing card with an exceptionally engaging and visual message to try the chatbot.
Take this opportunity to wrap-up your trivia app the best you can in order to begin testing your chatbot in the next phase.
❏ Deliverable A slide set with a link to your prototype, a summary of evaluation results, a copy of your marketing card, and a link to your working chatbot. Prepare to demonstrate and present your background work.
✓- Below Standard
✓ At Standard
✓+ Above Standard
The live chatbot is functioning, but the style and/or content has been developed very little from the base template provided.
The app demonstrates intentional design and styling consistent with the team's concept and goals. The app code, dialogue script, and features demonstrate a customized interaction that largely functions as desired.
The app is clearly a work of diligent and thoughtful work that goes beyond the base requirements for the project.
The in-class demonstration and development review were presented but lack a cohesive explanation.
The demonstration and development review provided a coherent explanation of the background work completed and the functions and features of the demonstrated application.
The team demonstrated an exceptional development process due to the thorough prototyping and evaluation work.