SlideShare a Scribd company logo
1 of 30
UI Prototyping with MS
    Expresion Blend

Bài giảng do giảng viên TechMaster biên soạn




                                               http://techmaster.vn
Agenda
• Problems when coding without prototype
• Introduction to Expression Blend
• UI Prototyping with Expression Blend




                                         http://techmaster.vn
Problems when coding without prototype
• Stakeholders asked for user requirements
• You started building a function immediately
• Stakeholders end up saying that is not what
  they want
• => You ruin and redesign everything with an
  angry attitude
                                        http://techmaster.vn
Problems when coding without prototype
• But it’s not real problem
• Problem here is we need a way to validate
  what’s the stakeholder want before is too late
• It has to fast process for the stakeholder
  provide feedbacks


                                           http://techmaster.vn
Good Pattern




               http://techmaster.vn
Good Pattern




               http://techmaster.vn
SketchFlow Role




                  http://techmaster.vn
3 Ingredients of a Good UX
      Platform




       Tools
                 UX
       Skills



                             http://techmaster.vn
Why is Expression Blend Sketchflow
• Interactive design tool for rich apps
  built in Windows Phone, Silverlight
  and WPF
• SketchFlow is a rapid prototyping
  tool that allows you to build and
  test out UI’s quickly
• Provide an interactive way to get
  stakeholder feedbacks
• Market-leading designer-developer
  integration and workflow
                                          http://techmaster.vn
Designer & Developer Workflow

Designer                       Developer




                               http://techmaster.vn
http://techmaster.vn
28/06/2012
             http://techmaster.vn
http://techmaster.vn
http://techmaster.vn
http://techmaster.vn
SketchFlow hightlights
• Drag & Drop interface
• Sketch controls style
• Navigation, animations, behaviors
• Realistic sample data
• Highly customizable: UI & code
• Package and send prototype to stakeholder for
  adding comment, draw some feedbacks figures
• Documentation generation
                                              http://techmaster.vn
UI Prototyping with Expression Blend
• Define the purpose of the app
  – What are the goals of the app?
  – What are the user’s requirements?
  – How can you keep them aligned?




                                        http://techmaster.vn
Analysis Matrix – User Story
          “Make it easy for busy folks to locate and share quick recipes”
People                      Places                   Activities                             Motivations
College Student             In a classroom           Bored in class                         Impressing a date
Young single professional   In the elevator          Using spare time                       Enjoys cooking


Newly married person        At the bus stop          Waiting for the bus                    Wants to improve cooking skills


New mother                  On the couch             Relaxing for a few minutes             Needs meals that can be cooked quickly


Nurse                       At the doctor’s office   Taking a break                         Wants to try new spices and flavors


Busy Parent                 On the bus/train         Cooking for a crowd                    Looking for recipes for food already in
                                                                                            the house
Fireperson                  At work                  Refreshing memory on favorite recipe   Needs to find fast recipes to feed co-
                                                                                            workers
Cook                        In the kitchen           Researching other people’s favorite    Create more diversity in meals
                                                     recipes
Writer                      In the car               Looking for good food in own home      Likes to try new foods


Teacher                     In the break room        Shopping                                                    http://techmaster.vn
                                                                                            Trying to save time/money
MindMap – User Story




                       http://techmaster.vn
List User Story




                  http://techmaster.vn
Expression Blend Workspace
•   Document windows

•   Artboard

•   SketchFlow Map

•   Tools panel

•   Properties

•   Objects & Timeline




                                              http://techmaster.vn
SketchFlow Map




                 http://techmaster.vn
Sketch styles for controls




                             http://techmaster.vn
Adding navigations




                     http://techmaster.vn
Data binding and sample data




                               http://techmaster.vn
SketchFlow animation




                       http://techmaster.vn
SketchFlow player




                    http://techmaster.vn
Design documentation




                       http://techmaster.vn
What’s next?
• From Sketchflow to production
• Animation, Transition




                                  http://techmaster.vn
Summary
• Sketchflow provide us with a quick way to
  build a prototype using just hand drawn
  sketches.
• How to build a page by using sketched
  controls and reusable components.
• How to add real data to our prototype.

                                           http://techmaster.vn

More Related Content

What's hot

Alpes Jug (29th March, 2010) - Apache Maven
Alpes Jug (29th March, 2010) - Apache MavenAlpes Jug (29th March, 2010) - Apache Maven
Alpes Jug (29th March, 2010) - Apache MavenArnaud Héritier
 
2013 04-02-server-side-backbone
2013 04-02-server-side-backbone2013 04-02-server-side-backbone
2013 04-02-server-side-backboneSC5.io
 
Symfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsSymfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsXavier Lacot
 
MC435: Web Design
MC435: Web DesignMC435: Web Design
MC435: Web Designbutest
 

What's hot (6)

Bootstrap4 x pages
Bootstrap4 x pagesBootstrap4 x pages
Bootstrap4 x pages
 
Alpes Jug (29th March, 2010) - Apache Maven
Alpes Jug (29th March, 2010) - Apache MavenAlpes Jug (29th March, 2010) - Apache Maven
Alpes Jug (29th March, 2010) - Apache Maven
 
2013 04-02-server-side-backbone
2013 04-02-server-side-backbone2013 04-02-server-side-backbone
2013 04-02-server-side-backbone
 
Symfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsSymfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating products
 
Getting a CLUE at the Command Line
Getting a CLUE at the Command LineGetting a CLUE at the Command Line
Getting a CLUE at the Command Line
 
MC435: Web Design
MC435: Web DesignMC435: Web Design
MC435: Web Design
 

Viewers also liked

Tìm nền tảng lập trình cho 5 năm tới
Tìm nền tảng lập trình cho 5 năm tớiTìm nền tảng lập trình cho 5 năm tới
Tìm nền tảng lập trình cho 5 năm tớiTechMaster Vietnam
 
Cấu hình Postgresql căn bản trong 20 phút
Cấu hình Postgresql căn bản trong 20 phútCấu hình Postgresql căn bản trong 20 phút
Cấu hình Postgresql căn bản trong 20 phútTechMaster Vietnam
 
Postgresql các vấn đề thực tế
Postgresql các vấn đề thực tếPostgresql các vấn đề thực tế
Postgresql các vấn đề thực tếTechMaster Vietnam
 
Cơ sở dữ liệu postgres
Cơ sở dữ liệu postgresCơ sở dữ liệu postgres
Cơ sở dữ liệu postgresTechMaster Vietnam
 
Bài trình bày cho sinh viên Bách Khoa 9/2012
Bài trình bày cho sinh viên Bách Khoa 9/2012Bài trình bày cho sinh viên Bách Khoa 9/2012
Bài trình bày cho sinh viên Bách Khoa 9/2012TechMaster Vietnam
 
Authentication and Authorization
Authentication and AuthorizationAuthentication and Authorization
Authentication and AuthorizationTechMaster Vietnam
 
Stop doing Retrospective and Start your Toyota Kata
Stop doing Retrospective and Start your Toyota KataStop doing Retrospective and Start your Toyota Kata
Stop doing Retrospective and Start your Toyota KataHåkan Forss
 
How to Teach Yourself to Code
How to Teach Yourself to CodeHow to Teach Yourself to Code
How to Teach Yourself to CodeMattan Griffel
 
Thiết Kế Giao Diện Người dùng
Thiết Kế Giao Diện Người dùngThiết Kế Giao Diện Người dùng
Thiết Kế Giao Diện Người dùngPhương Minh
 

Viewers also liked (17)

Making a living
Making a livingMaking a living
Making a living
 
Phalcon căn bản
Phalcon căn bảnPhalcon căn bản
Phalcon căn bản
 
Phalcon introduction
Phalcon introductionPhalcon introduction
Phalcon introduction
 
Tìm nền tảng lập trình cho 5 năm tới
Tìm nền tảng lập trình cho 5 năm tớiTìm nền tảng lập trình cho 5 năm tới
Tìm nền tảng lập trình cho 5 năm tới
 
Postgresql security
Postgresql securityPostgresql security
Postgresql security
 
iOS Master - Detail & TabBar
iOS Master - Detail & TabBariOS Master - Detail & TabBar
iOS Master - Detail & TabBar
 
Minimum Viable Products
Minimum Viable ProductsMinimum Viable Products
Minimum Viable Products
 
Cấu hình Postgresql căn bản trong 20 phút
Cấu hình Postgresql căn bản trong 20 phútCấu hình Postgresql căn bản trong 20 phút
Cấu hình Postgresql căn bản trong 20 phút
 
Postgresql các vấn đề thực tế
Postgresql các vấn đề thực tếPostgresql các vấn đề thực tế
Postgresql các vấn đề thực tế
 
Cơ sở dữ liệu postgres
Cơ sở dữ liệu postgresCơ sở dữ liệu postgres
Cơ sở dữ liệu postgres
 
Slide that wins
Slide that winsSlide that wins
Slide that wins
 
Bài trình bày cho sinh viên Bách Khoa 9/2012
Bài trình bày cho sinh viên Bách Khoa 9/2012Bài trình bày cho sinh viên Bách Khoa 9/2012
Bài trình bày cho sinh viên Bách Khoa 9/2012
 
Authentication and Authorization
Authentication and AuthorizationAuthentication and Authorization
Authentication and Authorization
 
Node.js căn bản
Node.js căn bảnNode.js căn bản
Node.js căn bản
 
Stop doing Retrospective and Start your Toyota Kata
Stop doing Retrospective and Start your Toyota KataStop doing Retrospective and Start your Toyota Kata
Stop doing Retrospective and Start your Toyota Kata
 
How to Teach Yourself to Code
How to Teach Yourself to CodeHow to Teach Yourself to Code
How to Teach Yourself to Code
 
Thiết Kế Giao Diện Người dùng
Thiết Kế Giao Diện Người dùngThiết Kế Giao Diện Người dùng
Thiết Kế Giao Diện Người dùng
 

Similar to Prototyping giao diện sử dụng Expression Blend Sketch Flow

UI prototyping with ms expression blend sketch flow
UI prototyping with ms expression blend sketch flowUI prototyping with ms expression blend sketch flow
UI prototyping with ms expression blend sketch flowTung Nguyen Thanh
 
Technology in the CTE Classroom
Technology in the CTE ClassroomTechnology in the CTE Classroom
Technology in the CTE ClassroomRachael Mann
 
Integrating technology w_classroom
Integrating technology w_classroomIntegrating technology w_classroom
Integrating technology w_classroomDave Meister
 
Yai 2008 For Web
Yai 2008  For WebYai 2008  For Web
Yai 2008 For Webafraumann
 
Prototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of EdinburghPrototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of EdinburghNeil Allison
 
Ub d staff development lesson
Ub d staff development lessonUb d staff development lesson
Ub d staff development lessonsavannahporter1
 
Using your projector in your classroom
Using your projector in your classroomUsing your projector in your classroom
Using your projector in your classroomHeather Lewis
 
Geek out : Adding Coding Skills to Your Professional Repertoire
Geek out: Adding Coding Skills to Your Professional RepertoireGeek out: Adding Coding Skills to Your Professional Repertoire
Geek out : Adding Coding Skills to Your Professional RepertoireBohyun Kim
 
Data carpentry run-a-workshop
Data carpentry run-a-workshopData carpentry run-a-workshop
Data carpentry run-a-workshoptracykteal
 
Accelerate the ROI of PHP in your Enterprise
	Accelerate the ROI of PHP in your Enterprise	Accelerate the ROI of PHP in your Enterprise
Accelerate the ROI of PHP in your EnterpriseEnterprise PHP Center
 
Using your projector in your classroom- UPDATED
Using your projector in your classroom- UPDATEDUsing your projector in your classroom- UPDATED
Using your projector in your classroom- UPDATEDHeather Lewis
 
Using your projector in your classroom
Using your projector in your classroomUsing your projector in your classroom
Using your projector in your classroomHeather Lewis
 
Technology in the Classroom
Technology in the ClassroomTechnology in the Classroom
Technology in the Classroomsarahwells002
 
Creately and Glogster
Creately and Glogster Creately and Glogster
Creately and Glogster marisrl
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsChad Mairn
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsSt. Petersburg College
 

Similar to Prototyping giao diện sử dụng Expression Blend Sketch Flow (20)

UI prototyping with ms expression blend sketch flow
UI prototyping with ms expression blend sketch flowUI prototyping with ms expression blend sketch flow
UI prototyping with ms expression blend sketch flow
 
Technology in the CTE Classroom
Technology in the CTE ClassroomTechnology in the CTE Classroom
Technology in the CTE Classroom
 
Integrating technology w_classroom
Integrating technology w_classroomIntegrating technology w_classroom
Integrating technology w_classroom
 
Taedtech 3 tools for writing
Taedtech   3 tools for writingTaedtech   3 tools for writing
Taedtech 3 tools for writing
 
Yai 2008 For Web
Yai 2008  For WebYai 2008  For Web
Yai 2008 For Web
 
Prototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of EdinburghPrototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of Edinburgh
 
Ub d staff development lesson
Ub d staff development lessonUb d staff development lesson
Ub d staff development lesson
 
Using your projector in your classroom
Using your projector in your classroomUsing your projector in your classroom
Using your projector in your classroom
 
Geek out : Adding Coding Skills to Your Professional Repertoire
Geek out: Adding Coding Skills to Your Professional RepertoireGeek out: Adding Coding Skills to Your Professional Repertoire
Geek out : Adding Coding Skills to Your Professional Repertoire
 
Data carpentry run-a-workshop
Data carpentry run-a-workshopData carpentry run-a-workshop
Data carpentry run-a-workshop
 
Accelerate the ROI of PHP in your Enterprise
	Accelerate the ROI of PHP in your Enterprise	Accelerate the ROI of PHP in your Enterprise
Accelerate the ROI of PHP in your Enterprise
 
Using your projector in your classroom- UPDATED
Using your projector in your classroom- UPDATEDUsing your projector in your classroom- UPDATED
Using your projector in your classroom- UPDATED
 
Nlp workshop-share
Nlp workshop-shareNlp workshop-share
Nlp workshop-share
 
Using your projector in your classroom
Using your projector in your classroomUsing your projector in your classroom
Using your projector in your classroom
 
Techclass2
Techclass2Techclass2
Techclass2
 
Technology in the Classroom
Technology in the ClassroomTechnology in the Classroom
Technology in the Classroom
 
Smes
SmesSmes
Smes
 
Creately and Glogster
Creately and Glogster Creately and Glogster
Creately and Glogster
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other Tools
 
Inspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other ToolsInspiring Kids to Code Using Scratch and Other Tools
Inspiring Kids to Code Using Scratch and Other Tools
 

More from TechMaster Vietnam

Go micro framework to build microservices
Go micro framework to build microservicesGo micro framework to build microservices
Go micro framework to build microservicesTechMaster Vietnam
 
Chia sẻ kinh nghiệm giảng dạy CNTT
Chia sẻ kinh nghiệm giảng dạy CNTTChia sẻ kinh nghiệm giảng dạy CNTT
Chia sẻ kinh nghiệm giảng dạy CNTTTechMaster Vietnam
 
Hướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSX
Hướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSXHướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSX
Hướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSXTechMaster Vietnam
 
Day0: Giới thiệu lập trình ứng dụng Apple iOS
Day0: Giới thiệu lập trình ứng dụng Apple iOSDay0: Giới thiệu lập trình ứng dụng Apple iOS
Day0: Giới thiệu lập trình ứng dụng Apple iOSTechMaster Vietnam
 
Chương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMaster
Chương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMasterChương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMaster
Chương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMasterTechMaster Vietnam
 
Apple iOS Memory Management - Vietnamese version
Apple iOS Memory Management - Vietnamese versionApple iOS Memory Management - Vietnamese version
Apple iOS Memory Management - Vietnamese versionTechMaster Vietnam
 
Sinh viên CNTT làm gì trong 5 năm tới
Sinh viên CNTT làm gì trong 5 năm tớiSinh viên CNTT làm gì trong 5 năm tới
Sinh viên CNTT làm gì trong 5 năm tớiTechMaster Vietnam
 

More from TechMaster Vietnam (15)

Neural Network from Scratch
Neural Network from ScratchNeural Network from Scratch
Neural Network from Scratch
 
Go micro framework to build microservices
Go micro framework to build microservicesGo micro framework to build microservices
Go micro framework to build microservices
 
Flutter vs React Native 2018
Flutter vs React Native 2018Flutter vs React Native 2018
Flutter vs React Native 2018
 
C đến C++ phần 1
C đến C++ phần 1C đến C++ phần 1
C đến C++ phần 1
 
Control structure in C
Control structure in CControl structure in C
Control structure in C
 
Basic C programming
Basic C programmingBasic C programming
Basic C programming
 
Knex Postgresql Migration
Knex Postgresql MigrationKnex Postgresql Migration
Knex Postgresql Migration
 
Arrowjs.io
Arrowjs.ioArrowjs.io
Arrowjs.io
 
Chia sẻ kinh nghiệm giảng dạy CNTT
Chia sẻ kinh nghiệm giảng dạy CNTTChia sẻ kinh nghiệm giảng dạy CNTT
Chia sẻ kinh nghiệm giảng dạy CNTT
 
Hướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSX
Hướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSXHướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSX
Hướng dẫn sử dụng CocoaPods trong dự án iOS hoặc MacOSX
 
Day0: Giới thiệu lập trình ứng dụng Apple iOS
Day0: Giới thiệu lập trình ứng dụng Apple iOSDay0: Giới thiệu lập trình ứng dụng Apple iOS
Day0: Giới thiệu lập trình ứng dụng Apple iOS
 
Chương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMaster
Chương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMasterChương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMaster
Chương trình thực tập chuyên sâu dành cho học viên khóa iOS tại TechMaster
 
Apple iOS Memory Management - Vietnamese version
Apple iOS Memory Management - Vietnamese versionApple iOS Memory Management - Vietnamese version
Apple iOS Memory Management - Vietnamese version
 
Sinh viên CNTT làm gì trong 5 năm tới
Sinh viên CNTT làm gì trong 5 năm tớiSinh viên CNTT làm gì trong 5 năm tới
Sinh viên CNTT làm gì trong 5 năm tới
 
Windows 8 vs android 4
Windows 8 vs android 4Windows 8 vs android 4
Windows 8 vs android 4
 

Recently uploaded

“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdfMuhammad Subhan
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?Paolo Missier
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireExakis Nelite
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe中 央社
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Paige Cruz
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...ScyllaDB
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch TuesdayIvanti
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxMarkSteadman7
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfSrushith Repakula
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
الأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهالأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهMohamed Sweelam
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxjbellis
 
Microsoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdfMicrosoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdfOverkill Security
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTopCSSGallery
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptxFIDO Alliance
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfalexjohnson7307
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfAnubhavMangla3
 

Recently uploaded (20)

“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
الأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهالأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهله
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptx
 
Microsoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdfMicrosoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdf
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development Companies
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
 

Prototyping giao diện sử dụng Expression Blend Sketch Flow

  • 1. UI Prototyping with MS Expresion Blend Bài giảng do giảng viên TechMaster biên soạn http://techmaster.vn
  • 2. Agenda • Problems when coding without prototype • Introduction to Expression Blend • UI Prototyping with Expression Blend http://techmaster.vn
  • 3. Problems when coding without prototype • Stakeholders asked for user requirements • You started building a function immediately • Stakeholders end up saying that is not what they want • => You ruin and redesign everything with an angry attitude http://techmaster.vn
  • 4. Problems when coding without prototype • But it’s not real problem • Problem here is we need a way to validate what’s the stakeholder want before is too late • It has to fast process for the stakeholder provide feedbacks http://techmaster.vn
  • 5. Good Pattern http://techmaster.vn
  • 6. Good Pattern http://techmaster.vn
  • 7. SketchFlow Role http://techmaster.vn
  • 8. 3 Ingredients of a Good UX Platform Tools UX Skills http://techmaster.vn
  • 9. Why is Expression Blend Sketchflow • Interactive design tool for rich apps built in Windows Phone, Silverlight and WPF • SketchFlow is a rapid prototyping tool that allows you to build and test out UI’s quickly • Provide an interactive way to get stakeholder feedbacks • Market-leading designer-developer integration and workflow http://techmaster.vn
  • 10. Designer & Developer Workflow Designer Developer http://techmaster.vn
  • 12. 28/06/2012 http://techmaster.vn
  • 16. SketchFlow hightlights • Drag & Drop interface • Sketch controls style • Navigation, animations, behaviors • Realistic sample data • Highly customizable: UI & code • Package and send prototype to stakeholder for adding comment, draw some feedbacks figures • Documentation generation http://techmaster.vn
  • 17. UI Prototyping with Expression Blend • Define the purpose of the app – What are the goals of the app? – What are the user’s requirements? – How can you keep them aligned? http://techmaster.vn
  • 18. Analysis Matrix – User Story “Make it easy for busy folks to locate and share quick recipes” People Places Activities Motivations College Student In a classroom Bored in class Impressing a date Young single professional In the elevator Using spare time Enjoys cooking Newly married person At the bus stop Waiting for the bus Wants to improve cooking skills New mother On the couch Relaxing for a few minutes Needs meals that can be cooked quickly Nurse At the doctor’s office Taking a break Wants to try new spices and flavors Busy Parent On the bus/train Cooking for a crowd Looking for recipes for food already in the house Fireperson At work Refreshing memory on favorite recipe Needs to find fast recipes to feed co- workers Cook In the kitchen Researching other people’s favorite Create more diversity in meals recipes Writer In the car Looking for good food in own home Likes to try new foods Teacher In the break room Shopping http://techmaster.vn Trying to save time/money
  • 19. MindMap – User Story http://techmaster.vn
  • 20. List User Story http://techmaster.vn
  • 21. Expression Blend Workspace • Document windows • Artboard • SketchFlow Map • Tools panel • Properties • Objects & Timeline http://techmaster.vn
  • 22. SketchFlow Map http://techmaster.vn
  • 23. Sketch styles for controls http://techmaster.vn
  • 24. Adding navigations http://techmaster.vn
  • 25. Data binding and sample data http://techmaster.vn
  • 26. SketchFlow animation http://techmaster.vn
  • 27. SketchFlow player http://techmaster.vn
  • 28. Design documentation http://techmaster.vn
  • 29. What’s next? • From Sketchflow to production • Animation, Transition http://techmaster.vn
  • 30. Summary • Sketchflow provide us with a quick way to build a prototype using just hand drawn sketches. • How to build a page by using sketched controls and reusable components. • How to add real data to our prototype. http://techmaster.vn

Editor's Notes

  1. C:\\Program Files\\Microsoft SDKs\\Windows Phone\\v7.0\\IconsUse the application bar button for common application tasks.You are limited to four application bar buttons.Place less frequently performed actions in the application bar menu.You are limited to five application bar menu items to prevent scrolling.Custom application bar icons should be 48 x 48 pixels (You do not need the circle in the icon, as this is drawn by the application bar.)Application icon should be 62 x 62 pixels and PNG format.Portrait is the default application view-you must add code to support landscape viewTile images should PNG format and measure 173 pixels by 173 pixels at 256 dpiMake sure to change Build Action for images to Content when you add them to Visual Studio.For time consuming processes, developers should provide feedback to indicate that something is happening by using content to indicate progress, or consider using a progress bar or raw notification as a last resortYou should set the InputScope property for a text box or other edit controlsCanvas uses a pixel-based layout and can provide better layout performance than the grid for applications that do not change orientations.Grid control is the best choice when the application frame needs to grow, shrink, or rotate.Use panorama elements as the starting point for more detailed experiencesUse a pivot control to filter large data sets, providing a view of multiple data sets, or to provide a way to switch between different views of the same dataDo not use the pivot control for task-based navigation, like in a wizard applicationUse for vertical scrolling through a list or grid in panorama sections is acceptable as long as it is within the confines of the section and is not in parallel with a horizontal scroll.Never place a pivot control inside of another pivot controlNever place a pivot control inside of a panorama controlApplications should minimize the number of pivot pagesThe Pivot control should only be used to display items or data of similar typeUse fonts other than Segoe sparinglyAvoid using font sizes that are smaller than 15 points in sizeMaintain consistent capitalization practices to prevent a disjointed or jagged reading experienceThe title bar application title should be all capitalsUser all lower case letters for most other application text including page titles, list titles, etc.
  2. C:\\Program Files\\Microsoft SDKs\\Windows Phone\\v7.0\\IconsUse the application bar button for common application tasks.You are limited to four application bar buttons.Place less frequently performed actions in the application bar menu.You are limited to five application bar menu items to prevent scrolling.Custom application bar icons should be 48 x 48 pixels (You do not need the circle in the icon, as this is drawn by the application bar.)Application icon should be 62 x 62 pixels and PNG format.Portrait is the default application view-you must add code to support landscape viewTile images should PNG format and measure 173 pixels by 173 pixels at 256 dpiMake sure to change Build Action for images to Content when you add them to Visual Studio.For time consuming processes, developers should provide feedback to indicate that something is happening by using content to indicate progress, or consider using a progress bar or raw notification as a last resortYou should set the InputScope property for a text box or other edit controlsCanvas uses a pixel-based layout and can provide better layout performance than the grid for applications that do not change orientations.Grid control is the best choice when the application frame needs to grow, shrink, or rotate.Use panorama elements as the starting point for more detailed experiencesUse a pivot control to filter large data sets, providing a view of multiple data sets, or to provide a way to switch between different views of the same dataDo not use the pivot control for task-based navigation, like in a wizard applicationUse for vertical scrolling through a list or grid in panorama sections is acceptable as long as it is within the confines of the section and is not in parallel with a horizontal scroll.Never place a pivot control inside of another pivot controlNever place a pivot control inside of a panorama controlApplications should minimize the number of pivot pagesThe Pivot control should only be used to display items or data of similar typeUse fonts other than Segoe sparinglyAvoid using font sizes that are smaller than 15 points in sizeMaintain consistent capitalization practices to prevent a disjointed or jagged reading experienceThe title bar application title should be all capitalsUser all lower case letters for most other application text including page titles, list titles, etc.
  3. C:\\Program Files\\Microsoft SDKs\\Windows Phone\\v7.0\\IconsUse the application bar button for common application tasks.You are limited to four application bar buttons.Place less frequently performed actions in the application bar menu.You are limited to five application bar menu items to prevent scrolling.Custom application bar icons should be 48 x 48 pixels (You do not need the circle in the icon, as this is drawn by the application bar.)Application icon should be 62 x 62 pixels and PNG format.Portrait is the default application view-you must add code to support landscape viewTile images should PNG format and measure 173 pixels by 173 pixels at 256 dpiMake sure to change Build Action for images to Content when you add them to Visual Studio.For time consuming processes, developers should provide feedback to indicate that something is happening by using content to indicate progress, or consider using a progress bar or raw notification as a last resortYou should set the InputScope property for a text box or other edit controlsCanvas uses a pixel-based layout and can provide better layout performance than the grid for applications that do not change orientations.Grid control is the best choice when the application frame needs to grow, shrink, or rotate.Use panorama elements as the starting point for more detailed experiencesUse a pivot control to filter large data sets, providing a view of multiple data sets, or to provide a way to switch between different views of the same dataDo not use the pivot control for task-based navigation, like in a wizard applicationUse for vertical scrolling through a list or grid in panorama sections is acceptable as long as it is within the confines of the section and is not in parallel with a horizontal scroll.Never place a pivot control inside of another pivot controlNever place a pivot control inside of a panorama controlApplications should minimize the number of pivot pagesThe Pivot control should only be used to display items or data of similar typeUse fonts other than Segoe sparinglyAvoid using font sizes that are smaller than 15 points in sizeMaintain consistent capitalization practices to prevent a disjointed or jagged reading experienceThe title bar application title should be all capitalsUser all lower case letters for most other application text including page titles, list titles, etc.
  4. C:\\Program Files\\Microsoft SDKs\\Windows Phone\\v7.0\\IconsUse the application bar button for common application tasks.You are limited to four application bar buttons.Place less frequently performed actions in the application bar menu.You are limited to five application bar menu items to prevent scrolling.Custom application bar icons should be 48 x 48 pixels (You do not need the circle in the icon, as this is drawn by the application bar.)Application icon should be 62 x 62 pixels and PNG format.Portrait is the default application view-you must add code to support landscape viewTile images should PNG format and measure 173 pixels by 173 pixels at 256 dpiMake sure to change Build Action for images to Content when you add them to Visual Studio.For time consuming processes, developers should provide feedback to indicate that something is happening by using content to indicate progress, or consider using a progress bar or raw notification as a last resortYou should set the InputScope property for a text box or other edit controlsCanvas uses a pixel-based layout and can provide better layout performance than the grid for applications that do not change orientations.Grid control is the best choice when the application frame needs to grow, shrink, or rotate.Use panorama elements as the starting point for more detailed experiencesUse a pivot control to filter large data sets, providing a view of multiple data sets, or to provide a way to switch between different views of the same dataDo not use the pivot control for task-based navigation, like in a wizard applicationUse for vertical scrolling through a list or grid in panorama sections is acceptable as long as it is within the confines of the section and is not in parallel with a horizontal scroll.Never place a pivot control inside of another pivot controlNever place a pivot control inside of a panorama controlApplications should minimize the number of pivot pagesThe Pivot control should only be used to display items or data of similar typeUse fonts other than Segoe sparinglyAvoid using font sizes that are smaller than 15 points in sizeMaintain consistent capitalization practices to prevent a disjointed or jagged reading experienceThe title bar application title should be all capitalsUser all lower case letters for most other application text including page titles, list titles, etc.
  5. Document windows A new SketchFlow document opens a start page by default. As you create more navigation screens, they will be opened, and can be selected here. ArtboardThe artboard is your main screen or canvas; you will add various elements such as images, text and forms, and arrange them on the artboard. The artboard represents the authoring view of your application. SketchFlow Map panel The SketchFlow Map panel at the bottom of the screen is a graph editor that allows you to define the various screens in your application. The blue rectangle labeled Start is a node, and by default, represents the initial navigation screen. Hovering over any node expands a section allowing you to create new screens, connections, and components, as well as change the visual tag associated with these nodes. The Tools panel The Tools panel allows you to create and modify objects in your application. You create objects by selecting the tool and drawing on the artboard with your mouse (or a tablet, if connected). Tools with a white rectangle in the bottom right corner expand to display more tools when you click them.
  6. The SketchFlow map shows you all screens composing the prototype and the connections (navigations) between those screens. When you create a new SketchFlow application with Expression Blend 3 you will probably see that map in the center bottom part of the screen, otherwise you can open it from the Window->SketchFlow Map menu.The SketchFlow map shows you all screens composing your prototype and the connections between them. At each moment you can add a new screen to your prototype.
  7. the customer often focuses on the wrong things and also the customer easily tempts into thinking that they are seeing more than there is. That’s why the SketchFlow comes with a built-in sketchy style, which makes controls look as if they were drawn on the white board in the office. Adding to this the various drawing tools and the sticky notes, the designer has a complete set of tools for sketching and prototyping.All sketch controls (styles) may be found in the Assets panel (Windows -> Assets), under the node SketchFlow -> Styles -> SketchStyles.
  8. The SketchFlow map shows you all screens, composing your prototype and the connections between those screens. In order your prototype to be complete and to give the customer a full vision about the flow, the customer must be able to navigate (switch) between the different screens
  9. Making mock up data is sometimes painful, especially if you need to do that for an early prototype. Never more – Blend lets you create meaningful sample data just with a few clicks; you can create working data – bound lists and master – details views just with drag and drop. You can define sample data in the Data pane. You may import data from a XML file or you may choose to use the built in data which Blend offers you. Binding to a list control is just a piece of cake. Just select the collection and drag it onto the desired control.
  10. One of the purposes of the prototype is to quickly and easily express your ideas. There is no better way to do this but to use animations. Since you are using Expression Blend , you have a complete set of key frame-based animation tools. Key frame animations are powerful but not effective for prototyping. You simply have to create and manage too many frames, and that will slow down your work. That’s why SketchFlow offers you a special type animation called “SketchFlow Animation” which purpose is to show the customer what happens on that screen step by step. By default the SketchFlow Animation pane is placed on the center top part of the screen (just above the main design surface).You just add a storyboard frame, making your screen look the way you like. Repeat that procedure as many times as you want. It is extremely simple and most important – it is fast. For each storyboard frame you may specify how long to show that frame (Hold Time) and how long to take the transition from the previous frame to the current one (Transition Time). Also the SketchFlow animation allows you to set an easing function for the transition (by default it is Cubic InOut).
  11. The SketchFlow player is an extremely important part of the prototype. Once you have the prototype ready you may ask yourself how you will interact with the customer. This is what the SketchFlow player is used for. The big advantage is that you don’t need any additional software to run the player (of course you will need the Silverlight plugin installed in your browser). If your prototype is for WPF then the player is an ordinary application. If your prototype is for Silverlight then the player will run in the browserThe player allows anybody who explores the prototype to give an immediate feedback. You can insert comments or use ink to draw directly on the prototype.After that you just turn back the prototype to the designer, who can insert it in the Blend art board. Gathering timely feedback from a client is just as important as creating the prototype. That’s why the player is extremely important part. It helps reducing the time lost and costs in the design and development process. It is freely distributed and can be run on a standard browser. Clients review the prototype, make some tests, provide in context feedback and send back the demo to the designer.
  12. Every project needs design documentation. SketchFlow can export your prototype to a Microsoft Word. Just use the File->Export to Microsoft Word command. The document will contain screenshots of the SketchFlow Map, as well as screenshots of every screen you have in the project; table of contents and table of figures.