This document outlines the initial planning process for a mobile application called "Shop it 2 Me" proposed by a client. It discusses iterating from an initial idea to developing use cases, workflows, and functional requirements. The planning process involves refining the problem statement, drawing diagrams of how the app would be used, and identifying components and data needs. This helps uncover more use cases and requirements to create a formal specification document to guide further design and development.
User Experience Design Fundamentals - Part 1: Users & GoalsLaura B
#1 in a 3-part series on UX Fundamentals: Users & Goals
* Value & Process
* Goal-directed design
* Users and their goals
* Learn how to articulate the goals of your product’s users
* Learn how to use user goals to assess a website or product
User Experience Design Fundamentals - Part 3: From People to ProductLaura B
#3 in a 3-part series on UX Fundamentals: From People to Product
* Learn how to analyze the information you get from your users.
* Learn how to apply findings to your product design.
User Experience Design Fundamentals - Part 2: Talking with UsersLaura B
#2 in a 3-part series on UX Fundamentals: Talking with Users
Understand why you should talk to users to uncover, validate and/or understand their goals.
Learn how and when to talk with your users:
User research methods
Planning
Best practices for interviews
This talk has to distinct parts, the first part is about this new design-lead Era at IBM, which is really about how to scale great design to large organizations.
We’re making a huge company-wide commitment and investment to turn IBM to a design lead organization, with design led products and projects.
In the second part of the talk, I’d talk about how my team, which has embraced lean UX methods, has managed to stay focus by adopting the new IBM design thinking framework, as well as some of the lessons of integrating a strong design competency with a lean team.
User Experience Design Fundamentals - Part 1: Users & GoalsLaura B
#1 in a 3-part series on UX Fundamentals: Users & Goals
* Value & Process
* Goal-directed design
* Users and their goals
* Learn how to articulate the goals of your product’s users
* Learn how to use user goals to assess a website or product
User Experience Design Fundamentals - Part 3: From People to ProductLaura B
#3 in a 3-part series on UX Fundamentals: From People to Product
* Learn how to analyze the information you get from your users.
* Learn how to apply findings to your product design.
User Experience Design Fundamentals - Part 2: Talking with UsersLaura B
#2 in a 3-part series on UX Fundamentals: Talking with Users
Understand why you should talk to users to uncover, validate and/or understand their goals.
Learn how and when to talk with your users:
User research methods
Planning
Best practices for interviews
This talk has to distinct parts, the first part is about this new design-lead Era at IBM, which is really about how to scale great design to large organizations.
We’re making a huge company-wide commitment and investment to turn IBM to a design lead organization, with design led products and projects.
In the second part of the talk, I’d talk about how my team, which has embraced lean UX methods, has managed to stay focus by adopting the new IBM design thinking framework, as well as some of the lessons of integrating a strong design competency with a lean team.
This presentation is targeted to developers trying to learn enough design skills to fill in gaps when a ux designer is not available to work on a project. A secondary goal is to give developers insight into the design process.
UX strategy lacks strategy, it is usually just a glorified waterfall process, even agile processes are just incremental waterfall. This presentation tells the current state of UX strategy in pictures while it outlines a real UX Strategy in words.
Scenarios For Design: Interaction10 Workshop by Elizabeth BaconElizabeth Bacon
This presentation supported a 4-hour workshop taught by Liz Bacon at the Interaction10 conference in Savannah, Georgia on February 4, 2010. It describes the nuts-and-bolts of applying a scenario-based approach to design. It also covers some of the theoretical underpinnings of this method as well as how it supports effective team communication and collaboration. Liz will be writing a book on this subject, and welcomes your comments here or directly via http://www.devise.com/contact.
Rapid User Research - a talk from Agile 2013 by Aviva RosensteinAviva Rosenstein
Doing user research before and during development helps inform your choices about strategy (what to build) as well as tactics (how to build it)-- and it doesn't have to slow down your development process . In fact some rapidly executed research can speed up your time to market by reducing the need to refactor late in a project.
This presentation includes practical information to help product owners and developers quickly get inside the heads of their users, validate product ideas and improve the usability of their software at warp speed. The talk included tips and techniques for recruiting research participants, shadowing and interviewing users effectively, getting valuable feedback on product concepts and information architecture, and rapidly iterating on the user interface to improve usability. They discussed remote testing tools that help teams evaluate if users can successfully achieve their goals with their designs, and reviewed best practices collecting feedback from users after launch.
Know Thy User: The Missing Element in SharePoint Solutions (User Centered Des...Marcy Kellar
You want the most out of your investment in SharePoint – a highly adopted, effective and easy-to-use solution. Achieving these objectives requires more than technical skills and knowledge of the inner-workings of SharePoint features – it requires an understanding of user problems and goals as well as a process that keeps the user at the center of the lifecycle. If you are like many organizations implementing SharePoint, you are using “surrogates” to represent user requirements, collecting inadequate user information and not engaging users later in the design and development process. If this sounds familiar, you may be headed toward a costly redesign.
This session defines both User Centered Design (UCD) and User Experience (UX) concepts and provides tangible methods that incorporate users into your process without compromising business goals.
It's Better To Have a Permanent Income Than to Be Fascinating: Killer Feature...Ultan O'Broin
Presented at Product Camp Dublin 2018. Presentation on picking the right thing to design, right. The Jobs To Be Done framework trumps UX profiles and personas. Keeping it simple, wireframing best practices, and Lean Startup methodologies included!
It's Better To Have a Permanent Income Than to Be Fascinating: Killer Feature...Ultan O'Broin
Presented at Product Camp Dublin 2018. Presentation on picking the right thing to design, right. The Jobs To Be Done framework trumps UX profiles and personas. Keeping it simple, wire-framing best practices, and Lean Startup methodologies included!
Knowing that a problem exists is one thing. Knowing how to solve it efficiently and cost-effectively is another. Discover the core foundational requirements in UX and Design Thinking that are vital to the success of an application that gets optimal buy-in from your users. If you're looking to optimize data visualizations, dashboards, and reports for effective communication of key business metrics, this will put you on the right track.
Experiences and Creative Process (Semih Energin Technology Stream)IT Arena
Lviv IT Arena is a conference specially designed for programmers, designers, developers, top managers, inverstors, entrepreneurs and startuppers. Annually it takes place at the beginning of October in Lviv at Arena Lviv stadium. In 2016 the conference gathered more than 1800 participants and over 100 speakers from companies like Microsoft, Philips, Twitter, UBER and IBM. More details about the conference at itarena.lviv.ua.
Are agile and user experience design compatible? Can they work together or is agile a square hole to the UX round peg? We contend that they are compatible. We help you recognize your company's UX appetite, regardless of software methodology. We then look at how agile changes things, discuss some of the UX practices developers need to understand (including CRAP), show how UX and developers can collaborate, and finally discuss agile and UX in the wild.
User Experience Design is a backbone of the usability and functionality of a product. With the creativity and proficiency a designer can enhance the experience of the product leading towards making it more reliable and user friendly.
Here is process for Better User Experience!
This presentation is targeted to developers trying to learn enough design skills to fill in gaps when a ux designer is not available to work on a project. A secondary goal is to give developers insight into the design process.
UX strategy lacks strategy, it is usually just a glorified waterfall process, even agile processes are just incremental waterfall. This presentation tells the current state of UX strategy in pictures while it outlines a real UX Strategy in words.
Scenarios For Design: Interaction10 Workshop by Elizabeth BaconElizabeth Bacon
This presentation supported a 4-hour workshop taught by Liz Bacon at the Interaction10 conference in Savannah, Georgia on February 4, 2010. It describes the nuts-and-bolts of applying a scenario-based approach to design. It also covers some of the theoretical underpinnings of this method as well as how it supports effective team communication and collaboration. Liz will be writing a book on this subject, and welcomes your comments here or directly via http://www.devise.com/contact.
Rapid User Research - a talk from Agile 2013 by Aviva RosensteinAviva Rosenstein
Doing user research before and during development helps inform your choices about strategy (what to build) as well as tactics (how to build it)-- and it doesn't have to slow down your development process . In fact some rapidly executed research can speed up your time to market by reducing the need to refactor late in a project.
This presentation includes practical information to help product owners and developers quickly get inside the heads of their users, validate product ideas and improve the usability of their software at warp speed. The talk included tips and techniques for recruiting research participants, shadowing and interviewing users effectively, getting valuable feedback on product concepts and information architecture, and rapidly iterating on the user interface to improve usability. They discussed remote testing tools that help teams evaluate if users can successfully achieve their goals with their designs, and reviewed best practices collecting feedback from users after launch.
Know Thy User: The Missing Element in SharePoint Solutions (User Centered Des...Marcy Kellar
You want the most out of your investment in SharePoint – a highly adopted, effective and easy-to-use solution. Achieving these objectives requires more than technical skills and knowledge of the inner-workings of SharePoint features – it requires an understanding of user problems and goals as well as a process that keeps the user at the center of the lifecycle. If you are like many organizations implementing SharePoint, you are using “surrogates” to represent user requirements, collecting inadequate user information and not engaging users later in the design and development process. If this sounds familiar, you may be headed toward a costly redesign.
This session defines both User Centered Design (UCD) and User Experience (UX) concepts and provides tangible methods that incorporate users into your process without compromising business goals.
It's Better To Have a Permanent Income Than to Be Fascinating: Killer Feature...Ultan O'Broin
Presented at Product Camp Dublin 2018. Presentation on picking the right thing to design, right. The Jobs To Be Done framework trumps UX profiles and personas. Keeping it simple, wireframing best practices, and Lean Startup methodologies included!
It's Better To Have a Permanent Income Than to Be Fascinating: Killer Feature...Ultan O'Broin
Presented at Product Camp Dublin 2018. Presentation on picking the right thing to design, right. The Jobs To Be Done framework trumps UX profiles and personas. Keeping it simple, wire-framing best practices, and Lean Startup methodologies included!
Knowing that a problem exists is one thing. Knowing how to solve it efficiently and cost-effectively is another. Discover the core foundational requirements in UX and Design Thinking that are vital to the success of an application that gets optimal buy-in from your users. If you're looking to optimize data visualizations, dashboards, and reports for effective communication of key business metrics, this will put you on the right track.
Experiences and Creative Process (Semih Energin Technology Stream)IT Arena
Lviv IT Arena is a conference specially designed for programmers, designers, developers, top managers, inverstors, entrepreneurs and startuppers. Annually it takes place at the beginning of October in Lviv at Arena Lviv stadium. In 2016 the conference gathered more than 1800 participants and over 100 speakers from companies like Microsoft, Philips, Twitter, UBER and IBM. More details about the conference at itarena.lviv.ua.
Are agile and user experience design compatible? Can they work together or is agile a square hole to the UX round peg? We contend that they are compatible. We help you recognize your company's UX appetite, regardless of software methodology. We then look at how agile changes things, discuss some of the UX practices developers need to understand (including CRAP), show how UX and developers can collaborate, and finally discuss agile and UX in the wild.
User Experience Design is a backbone of the usability and functionality of a product. With the creativity and proficiency a designer can enhance the experience of the product leading towards making it more reliable and user friendly.
Here is process for Better User Experience!
Design Studios are a popular method for getting product teams together to focus on design. Design Studios are more than just getting people together to sketch and critique. In this workshop, Brian Sullivan, author of The Design Studio Method: Creative Problem Solving with UX Sketching, will share his secrets to planning, running, and leading successful Design Studios
In this workshop, you will learn:
Ways to creative and evaluate sketches quickly
See different tools to get you started
The 9 Steps of a Design Studio
Stories of success and failure in Design Studio
How to deal with difficult people/strong personalities
We will have plenty of time for your burning questions, too.
Getting Started With User Research, Presented at Agile2010Carol Smith
The gap between a good product and a great one can be bridged by understanding your users.
This presentation shared how better systems are built by taking small, iterative steps to understand the users desires, needs and abilities.
Attendees will learn how to get information about users quickly and cheaply. For those that have more time (and perhaps a small budget) Carol introduced methods to use to get more detailed information from your users. Carol also introduced ways to effectively share and communicate this information.
The attached narrated power point presentation explains the principles process and frame work of design thinking. The material also mentions a few applications of design thinking. The material will be useful for KTU second year students who prepare for the subject EST 200, Design and Engineering.
Lecture on Advanced Human Computer Interaction given by Mark Billinghurst on July 28th 2016. This is the first lecture in the COMP 4026 Advanced HCI course.
Setting Course: Design Research to Experience RoadmapJason Ulaszek
Presented by Jason Ulaszek and Brian Winters at Interactions '13 on January 28th, 2013.
Have you ever been enlisted by your company or client to create a consumer “vision” for the evolution of their product or service? As design-thinking principles and activities continue to become centerstage in transforming business models, creating new products and services to meet consumer and market demand, we'll be counted on to leverage our skill to help inform business direction.
So, how do you do it?
Design research is critical. Creating foundational, living documentation about the needs, beliefs and behaviors of your customer is of the utmost importance. And, being able to identify needs, opportunities and the future direction for the business, based on both sound process and analytical thought, will be your keys to short and long-term success.
In this session you'll learn how to turn design research activities into a mental model, identify potential new business opportunities and derive business and experience direction from your newly found consumer insight. And, you'll look like a freakin' rockstar in your company doing it.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
Embracing GenAI - A Strategic ImperativePeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
Operation “Blue Star” is the only event in the history of Independent India where the state went into war with its own people. Even after about 40 years it is not clear if it was culmination of states anger over people of the region, a political game of power or start of dictatorial chapter in the democratic setup.
The people of Punjab felt alienated from main stream due to denial of their just demands during a long democratic struggle since independence. As it happen all over the word, it led to militant struggle with great loss of lives of military, police and civilian personnel. Killing of Indira Gandhi and massacre of innocent Sikhs in Delhi and other India cities was also associated with this movement.
A Strategic Approach: GenAI in EducationPeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
1. The George Washington University
Design Part I
The Journey of an Idea to Invention
Kunal Johar
CSCI 4243 (Senior Design)
Kunal Johar Design Part I 1
3. What is Senior Design?
Idea
Formal Planning
Practice Software Engineering
Technical Challenge
Polished Product
Ability to Articulate Your Vision
Kunal Johar Design Part I 3
4. What is Kunal Doing Here?
“I’ve been here for 8 weeks and I feel like
I’ve done 2 mini senior designs”
- Zack Schwartz (GW CS Class of 2011)
Kunal Johar Design Part I 4
5. What is Kunal Doing Here?
• Goals
– Think like an outsider while commanding
strong engineering skills
– Communicate superbly to coders, managers,
and the public at large
Kunal Johar Design Part I 5
6. What is Kunal Doing Here?
Idea
Formal Planning
Practice Software Engineering
Technical Challenge
Polished Product
Ability to Articulate Your Vision
Kunal Johar Design Part I 6
7. The Idea
• This is YOUR project
• It is up to YOU to transition it to invention
• Own it!
Kunal Johar Design Part I 7
8. Technical Challenge
''My mother made me a scientist without ever intending it.
Every other Jewish mother in Brooklyn would ask her
child after school: 'So? Did you learn anything today?'
But not my mother. She always asked me a different
question. 'Izzy,'
she would say, 'did you
ask a good question today?' That
difference - asking good questions -made me become a
scientist!''
http://www.nytimes.com/1988/01/19/opinion/l-izzy-did-you-ask-a-good-question-today-712388.html
(Isidor I. Rabi, Nobel laureate in physics)
…often quoted by Dr. Youssef
Kunal Johar Design Part I 8
9. Technical Challenge
• Not knowing what you don’t know is the
battle
• You can implement any* algorithm
• Trial and Error is the formula of innovation
*I have yet to successfully implement the CS151 dynamic programming based
assignments
Kunal Johar Design Part I 9
10. How Will We Learn?
• Shop it 2 me
Idea
Formal Planning
Practice Software Engineering
Polished Product
Ability to Articulate Your Vision
Shop it 2 Me will be developed through in-class discussion and exercises
Expand upon the techniques used as you develop out your idea
Kunal Johar Design Part I 10
11. Shop it 2 Me: Overview
• Whose Idea is It?
– Yours
– Mine
– Client
• Heather
Kunal Johar Design Part I 11
12. Developing Heather’s Idea
• How are other projects started?
– Flickr? Twitter? Craigslist?
– Can you name a project where the “idea” did not
originate from someone who can program?
http://money.cnn.com/2011/08/24/technology/startups/startups_technical_founder/
• Who is Heather?
– Individual
– Self-Funded
– Has an “idea”
Kunal Johar Design Part I 12
13. But She Actually Has No Idea
http://www.cs.uni.edu/~wallingf/blog/archives/monthly/2010-12.html#e2010-12-01T15_45_40.htm
• “I just need a programmer”
– Our insights, our ideas become the invention
– We solve the core challenges of the project
• Algorithms
• Data structures
• Workflows
Kunal Johar Design Part I 13
14. Let’s Begin with the Idea!
“I want to go to the mall and if I want to buy
something, I should be able to ask friends
and get their ideas and see if I should by it
buy looking at a yes/no pie chart”
• “I also like the name ‘Shop it 2 Me’ is it available?”
Kunal Johar Design Part I 14
15. Getting to an Idea
• One Option is to Refine the Problem
Statement
“I want to go to the mall and if I want to buy something, I should
be able to ask friends and get their ideas and see if I should buy
it by looking at a yes/no pie chart”
• Another option is to jot out features
needed
• Another option is to jot out how it will be
used
Kunal Johar Design Part I 15
16. What is the Main Idea?
“I want to go to the mall and if I want to buy
something, I should be able to ask friends
and get their ideas and see if I should by it by
looking at a yes/no pie chart”
What features are How should this
needed? work?
How can you restate
the problem? ise
ss Exerc
In-Cla
Kunal Johar Design Part I 16
17. Some Thoughts….
• Must be mobile
• Must be multi-user but asynchronous
• Has feedback element
• Interfaces with camera?
• Needs a server?
• Sends notifications?
• Is “Shop it 2 Me Available?”
– .com? App name? Trademark?
Kunal Johar Design Part I 17
18. How Will People Use It?
• Scenario I
– I go to the store and take a picture to send to
friends
• Scenario II
– I receive a picture and am asked my thoughts
• Scenario III
– I look at results of a past question
Kunal Johar Design Part I 18
19. But How Can People Use It?
• Scenario IV
– How do I Authenticate?
Kunal Johar Design Part I 19
20. Organizing Our Thoughts
• Idea
– What are we building?
• Use Cases / Scenarios
– How will it be used and who will use it?
• Functional / Non Functional Requirements
– What will it do and how will it do it?
Kunal Johar Design Part I 20
21. Keep Refining
REQ
UI RE
MEN
T S
A
IDE
US
E
CA
SE
S
Kunal Johar Design Part I 21
22. Use Cases
• Define a scenario
– Describe how the application will be used
– Determine actors
• Individuals
• Groups
• Other Systems
– Specify Pre-Condition or “State”
– Specify Trigger or “Action”
Kunal Johar Design Part I 22
23. Defining a Scenario
• I go to the store and take a picture to send
to friends
– What is the objective?
– Who are the “actors”?
– What are the preconditions?
– Who are the actors?
Kunal Johar Design Part I 23
24. Scenario Refined
• Generic Names for Actors
– Instead of “I” perhaps “Requestor” or even
“Vote Requestor”
– This helps us incrementally create our
workflow and data structures
Kunal Johar Design Part I 24
25. Drawing Our Use Case
• Plenty of Tools
– Microsoft Visio (Free to GW Students)
– Gliffy (Free Trial)
– Omnigraffle (Mac Only)
Kunal Johar Design Part I 25
26. Example of Our Use Case
• How Can we Improve this?
Kunal Johar Design Part I 26
27. Example of Our Use Case
• How Can we Improve this?
Kunal Johar Design Part I 27
29. Use Cases -> Structure / Workflow
• We are starting to see the iterative
process of building out an idea
• The simple use case has identified at least
a few components, client app, server app,
messaging system
Kunal Johar Design Part I 29
32. Functional / Non-Functional Specs
• Functional Specs / Requirements
– Describes action or display
– E.g. “Use camera to take photo of item to be
voted on”
• Non-Functional Specs/Requirements
– Describes external requirement
– E.g. “Must work on iPhone” or “App must load
within 2 seconds”
Kunal Johar Design Part I 32
33. Formalizing Requirements
• We build these elements in parallel
– Idea / Problem Statement
– High Level Requirements
– Use Cases
– Functional / Non-Functional Requirements
– Components Needed
– Workflow
Kunal Johar Design Part I 33
34. Formalizing Requirements
• However at some point we need to move
on to coding
• SCRUM / Waterfall / X P
– Describe management style of moving from
requirements to coding
Kunal Johar Design Part I 34
35. Brainstorming -> Formalizing
• Overview
iOS app to allow a user to solicit a “Yes/No”
feedback on a photograph sent to a
subset of contacts
Kunal Johar Design Part I 35
36. Use Cases
• Shopper asks friends if she should buy an
item
• Friend responds to vote request
• Shopper views response
Kunal Johar Design Part I 36
37. Workflow
• Shopper asks friends if she should buy an
item
– Takes picture
– Chooses contacts
– Writes message
– Sends request
Kunal Johar Design Part I 37
38. Analysis Leads to More Use Cases
• User adds other user to contact list
• User removes other user from contact list
Kunal Johar Design Part I 38
39. In
-C
la
Workflow Refinement s s
Ex
er
ci
se
• Articulate workflows for each step
– Shopper asks friends if she should buy an item
– Friend responds to vote request
– Shopper views response
– User adds other user to contact list
– User removes other user from contact list
• What other use cases/requirements can you
uncover?
Kunal Johar Design Part I 39
40. Some Use Cases
• Vote Related
– Shopper asks friends if she should buy an item
– Friend receives vote request
– Friend views vote request
– Friend responds to vote request
– Shopper receives notification of response
– Shopper views response
• Contact Related
– User adds other user to contact list
– User removes other user from contact list
– User searches for other user
– User adds friend via Facebook Connect
– User ‘blocks’ user from communicating with self
• Authentication
– User authenticates
Kunal Johar Design Part I 40
41. Some Requirements
• Authentication
– Probably need a server
– Probably need to use some sort of cryptography
• Non-functional (General) Requirements
– iOS App, RESTFul web service
• Functional
– Use OAUTH Challenge/Response
Kunal Johar Design Part I 41
42. Some Requirements
• Sending a vote request
– Data: Photo, geo-location, from user, to contacts
• Non-functional (General) Requirements
– UI should not freeze during send process
• Functional
– Upload photo via Amazon S3 API
– Use asynchronous calls during upload process
– Send push notifications to contacts
Kunal Johar Design Part I 42
43. Requirements Lead To More…
• Upload photo via Amazon S3 API
– Anyone have experience with this?
Kunal Johar Design Part I 43
44. Upload to Amazon S3
• “Basics” of S3 uploads
– Need to secure upload request
– Need to apply access control to photo links
• APIs are not necessarily trivial
~30 hours of coding to get this component
- Plan ahead. Perhaps label this as its own
module in your requirements plan
Kunal Johar Design Part I 44
45. Bottom Line
- Construct your project with organized
brainstorming
- High level
- Use cases
- Workflow
- Requirements
- More use cases
- More requirements
Kunal Johar Design Part I 45
46. Bottom Line
- Draw a clear picture as you refine
Kunal Johar Design Part I 46
47. Specifications Document
- Attached is a redacted specification document
for ShopVote
- Use this as a guide as you create your
specification document
- Homework (Due 9/15)
- Develop a specification document and a screencast as
you would talk a developer through it
Kunal Johar Design Part I 47
48. Shop It 2 Me
• Waterfall
Determine Requirements
Determine Workflow / High Level Components
Identify Unknown Steps
Determine 3rd party APIs
Setup Bootcamp Tasks to Overcome
Determine Overall Code Structure
Develop Task List with Pseudo Code
Code / Test
Polish
Kunal Johar Design Part I 48
49. Next Steps
• Our Specification Document Provides a Framework for us to continue
planning
• Create Low Level Workflow (Design Part II)
– For each high level work flow
• Create a UI mockup
• Determine data structures needed
• Determine control flow
• Determine the pseudocode design
• Reorganize / Refactor into Task List (Design Part III)
– Finalize psuedocode and class structures
– Think about design patterns, classes, helper/utility classes, third party APIs
– Reorder into logical units of coding
– Develop test plan
• Code!
Kunal Johar Design Part I 49
50. How Good Do You Want to Be?
• The 10,000 Hours Rule
DO
• Write your ideas out
• Refactor and optimize your thoughts
LEARN
• Try a tool like Visio
• Critique a Friend’s Design
DO
• Further refine your ideas
• Write some proof of concept code
LEARN
• Read a book like Design Patterns
• Try a new paradigm (functional language, NoSQL DB)
http://www.gladwell.com/outliers/outliers_excerpt1.html
Malcolm Gladwell, Author (Outliers) Kunal Johar Design Part I 50