Design and implement a website for your project. Recall that a website is a domain of HCI and your site will be evaluated accordingly. The website does not need to be elaborate, but it should serve the purpose of the users of your website. Users of your website are your development team (CS and HU students) me (the instructor), graduate students, and your client (the scientist). We use your website to track your progress and evaluate your design and documents. Graduate students will provide additional documents for projects. When your client and I review your project, we will want to refer to the graduate student document, so your website must have links to their documents on a per document basis. Graduate students are also users of your web site. They will refer to your website to find your design documents for the project, which they need to write their documents. Consequently your design documents must be posted timely and kept current. Other users might discover you website and want to know more about your project. In the era of modern web search engines more people may view your web pages than you suspect. In fact, I have received email from some companies interested in a course project.
All design documents should be linked in your website in a format readable by all web browsers. Initially, the website will include a home page with application name, group membership and contact information. The initial website will also contain the interaction design documents (described below). The documents are to be posted online by the due date. The documents do not have to be a single file, but they should be recognized as a group and easily navigated in the website.
You may use most any tool or templates that you’d like to make your team website. It should be a static website, meaning made up of html, jpg and pdf documents. There should not be a database backend. Consequently, something like WordPress would NOT be appropriate. The website should not have redirection, meaning in a .htaccess file. I have two goals for the website:
- A central location to store your design documents that I can zip and save for posterity.
- A media for sharing your documents with your client, team and grad student.
I do not expect anything elaborate in these websites in terms of styling or design. Your design for the website should pay attention to ease of access and finding documents.
These are documents that track your progress and meeting notes with your clients and among yourselves. Both the CS and HU students are responsible for construction and maintenance of these documents. HU students are responsible for the front end design, HTML5 and CSS3 integration, as well as for the subsequent maintenance and upgrade of this website to use a Twitter Bootstrap framework. A new meeting note should be uploaded to your project’s meeting-notes/ directory after each meeting with your client and after each team meeting. The Development Timeline chart should be uploaded to your project directory and linked to website. Your team should update the timeline after each assignment task is completed.
- The spreadsheet recording your development timeline needs update timely. The template for the development timeline chart can be found at resources/AppDevelopmentTimeline.xlsx. (CS & HU students)
- Post meeting notes. This needs timely updates of your meeting records. The template for the meeting notes can be found at resources/PostMeetingForm.docx. (CS & HU students)
These are the design documents that must be posted to your website. Note that many of these documents should be a collaborative effort between the CS and HU students on your team, while others are the primary responsibility of either the CS or HU students. For the app itself, CS and HU students should collaborate on interface design. HU students will also be responsible for suggesting design: layout, colors, typography across devices.
The design documents must include:
- Design, Develop and Maintain a Client Website (HU)
- Brief overview of the system, including the device and any other device used by the system (CS students)
- Descriptions of important stakeholders, including users. (CS & HU students)
- 2 user personas (See lecture notes) (CS & HU students)
- Descriptions of the environment that users will be in while using the device and performing tasks (CS & HU students)
- Scanned or transcribed notes from the interviews with the scientist and among yourselves (CS & HU students)
- 2 scenarios describing the nominal use of the application, drawing on your personas (See lecture notes and below) (CS & HU students)
- Simplified hierarchical task interaction design (See lecture notes and below) (CS students)
- Audience and task analysis memo. (HU students)
- A description of your database schema (CS students)
These documents do not include sketches of the interface’s visual design; your interface’s visual design will be presented during the cognitive walkthrough.
After your website is reviewed in class, graduate students will give you links to their stakeholder analysis documents. You are to link the graduates’ stakeholder analysis to your website. The links should be clear and well organized, so that users of your web site will easily recognize them. You should also review the graduate students’ user-task-goal analysis documents and compare them to the nominal interaction diagram and scenario documents. If there is substantial disagreement, your group should discuss them with the graduate students. A good user interface cannot be designed without a thorough understanding of the users, their goals and the tasks to be performed with the interface.
Stakeholders and Users
List and describe the stakeholders. You should name their role and level in the onion model. Some specific stakeholders you may want to also give proper names, for example the scientists for your project. You should also identify the different users of app and classify them as primary or secondary. Briefly describe the user characteristics that you think are important for the design, for example are they novice or expert users.
Usability expert Carol Barnum (Usability Testing Essentials: Ready, Set…Test! Morgan Kaufman, 2010) defines personas as “fictional representations of people that are created from real data about your users” (94). Remember that although personas require creativity, the information presented should be relevant to the product or document that you are creating and should help designers “understand user motivation, fears, concerns, and goals as they relate to your product” (97).
Nominal Use Scenario
The nominal use scenario is a verbal description of a nominal (error free) sequence of events using the system. It should describe how the major stakeholders (primary and secondary stakeholders) interact with the system or the application. The description should be several paragraphs, one paragraph for each stakeholder interacting with the system. It should read like a story.
Simplified Hierarchical Task Analysis
A complete hierarchical task analysis (HTA) diagrams the different uses of the application in a tree, where the higher level are associated with goals, intermediate levels represent the tasks to achieve these goals, and the lower levels represent actions to perform the tasks. Links in the tree associate tasks with goals, and actions with tasks. A complete HTA can consume lots of time and paper.
I suggest making a simplified HTA which dispenses with links and uses intended tabs to represent the hierarchy. The intent of the simplified HTA is to represent the views of the application by the different indentation levels. A single indentation level may represent more than one view. Try to represent all the views. In other words, the simplified HTA still represents all the uses of the applications, but does not attempt to diagram the actions. You may need to use several indentation tables for application goals that have little in common.
I suggest using a top-down approach to develop the simplified HTA. First list all the major goals or tasks of the application; this will represent the views. Then indent and list the actions to achieve the corresponding goal or task; this will represent UI elements in the view. Try to name the tasks and sub-tasks with words that might be used in the application view.
Audience & Task Analysis
For this component of the assignment, you will use the information that you collect during the scientist interviews to create a 1-2 page memo memo that defines the user profile for the app and that gives an overview of major goals and tasks that users will accomplish with the app. This memo should be addressed toyour CS group members.
The memo should define the major groups of users who will be using the app. The information that defines your user profile will mostly be drawn from your interview with the scientist, but it can also be grounded in other research. Cite sources, including the interview, as appropriate. Give as much information about these users as you can (demographic information, technological skill level, scientific knowledge, and so on).
The memo should also outline the major goals that users will try to achieve by using the app, the main tasks that they will perform with the app to accomplish these goals, and the contexts in which they will be using the app to achieve these goals. This task analysis does not need to go into great detail, as the CS students are performing a more detailed hierarchical task analysis. The goal here is to get a big picture overview of how, why, and in what environments different user groups will be using this app.
All Citizen Science projects collect data for scientist to use. In order for the scientist to have access to the data, your app should upload the data to a website.
Grails and GORM create the database table from the Grails project domain classes. The domain class is a collection of typed class members. The domain class represents the table in the database or a row of the table. The class members name represents the column names in the table.
A database schema is the design of tables composing your database. I expect that your schema design to evolve during development, but you should begin the design now. An appropriate design format is list of domain classes with an intended list of class member names (column names in the table) with type and description. The format is:
Domain : <name> – <description>
- var1 – <type>, <description>
- var2, – <type >, <description>
Schema Specification Example
Suppose you are designing the “Army App” data base that soldiers use to read missions and report incidents that can have photos or recordings (read lecture notes). Your schema design might be:
List of Domain Classes:
- Mission – list of mission names with dates
- Incident – list of incidents
- Incident_photo – associates photos with missions
- Incident_recording – associates recordings missions
Domain Class: Mission – list of missions
- name – String, mission name
- date – Date, date of mission
Domain Class: Incident – list of incidents
- mission – Mission, foreign key into missions table
- date – Date, date of incident
- Time – long, time of incident
- latitude – double, latitude coordinate of incident
- longitude – double, longitude coordinate of incident
- type – String, incident type = (civil, suspicious, littering, theft, …)
Domain Class: Incident_photo
- incident – Incident, foreign key into incident table
- date – Date, date of photo
- time – long, time of incident
- latitude – double, latitude coordinate of photo
- longitude – double, longitude coordinate of photo
- file_uri – String, URI (path with name) to the photo file
- incident – Incident, foreign key into incident table
- date – Date, date of recording
- time – long, time of incident
- latitude – double, latitude coordinate of recording
- longitude – double, longitude coordinate of recording
- flie_uri – String, URI (complete path) to the recording file
HU4642 & CS4760 Collaboration
Both CS and HU students should have access to the directory and website. Your team will work together to create the progress and design documents indicated above. When HU team members finished design plan, CS students should help the HU students post their assignments on the websites.
Note that although the HU and CS students sometimes have separate task analyses, you should discuss the all the tasks with the entire team because all the tasks are associated with the design and development of your app.
Send me (pastel at mtu.edu), and Stefka Hristova (shristov at mtu.edu) an email informing me that your website is initiated (home page is up), so we can review the website and make any suggestions. The subject line of the email should be
cs4760-HU4642 Project Assignment 2 – <group name>