Designing a mobile app Chris Greenhalgh G54UBI / 2011-03-02 1Chris Greenhalgh

Slides:



Advertisements
Similar presentations
Support.ebsco.com Searchasaurus Tutorial. Welcome to EBSCOs tutorial on Searchasaurus, EBSCOs full text database for elementary school research and reading.
Advertisements

How to Use The CFL Experience Toolkit Building Residential Energy Efficiency Programs Based on Compact Fluorescent Lamps (CFLs)
Android architecture overview 1 CS 150. Android  A software stack for mobile devices developed and managed by Open Handset Alliance  Free software under.
A really fairly simple guide to: mobile browser-based application development (part 1) Chris Greenhalgh G54UBI / Chris Greenhalgh
You Sale Distribution & Monitoring Product. It’s Only One Step … Take it Agenda  Introduction to Mass Distribution Environment  System Overview  System.
Hear&There An Augmented Reality System of Linked Audio Joey Rozier Karrie Karahalios and Judith Donath Sociable Media Group MIT Media Lab ICAD 2000 Conference.
Basic Powerpoint NEXT. Viewing Your Slides Click on Slide Show and on View Show. The slide show will automatically be displayed on the screen.
Marketing Best Practices Office Xpats September 30, 2014 Presented by Marietta Szubski.
© by Pearson Education, Inc. All Rights Reserved.
Google AppInventor implementation quickstart Chris Greenhalgh G54UBI / Chris Greenhalgh
Coursework 2 implementation options Chris Greenhalgh G54UBI / Chris Greenhalgh
Michael Donovan, River Campus Libraries – 12/03 DocuShare Overview and Training.
Coursework 2: getting started (4) – using PhoneGap to build mobile applications (optional) Chris Greenhalgh G54UBI /
Coursework 2: getting started (2) – using the phone emulator and browser Chris Greenhalgh G54UBI /
A Guide to Oracle9i1 Creating an Integrated Database Application Chapter 8.
Customizing Outlook. Forms Window in which you enter and view information in Outlook Outlook Form Designer The environment in which you create and customize.
How to Create Accessible PowerPoint Presentations Elizabeth Tu and Thayer Watkins April, 2010.
Unity 3D game IDE 1.  Unity is a multi-platform, integrated IDE for scripting games, and working with 3D virtual worlds  Including:  Game engine ▪
User Interface Design Chapter 11. Objectives  Understand several fundamental user interface (UI) design principles.  Understand the process of UI design.
Microsoft Visual Basic 2005 CHAPTER 8 Using Procedures and Exception Handling.
Mobile App Certification Course. In this course we will work you through on how you can start developing mobile apps for yourself or for many industries.
StressChill App Click the StressChill icon (shown to the right) to open the app. If you do not see this on the desktop, you will find it in the pull up.
Common Alerting Protocol (CAP) Implementation Workshop – 2014 ArcGIS Geotrigger for CAP Implementation by Nalaka Kodippili Geo Technical Manager GIS Solutions.
The Project Planning Process
GPS Parking System Team 29 (Campus) Shinyi Chen Chih-Ching Huang Pei-Hua Lu.
Methods For Web Page Design 6. Methods Why use one? What it covers –Possibly all stages Feasibility Analysis Design Implementation Testing –Maybe just.
® IBM Software Group © 2009 IBM Corporation Rational Publishing Engine RQM Multi Level Report Tutorial David Rennie, IBM Rational Services A/NZ
A really fairly simple guide to: mobile browser-based application development (part 4, JQuery & DOM) Chris Greenhalgh G54UBI / Chris Greenhalgh.
Online Reporting Guide
Once you have contacted me to set up a new account, your computer needs to be configured to dial into.DevlinEx and use our servers for things like .
Final Project Presentation William Blaney Chris Combs Ellen Eramya David Wagner.
Section 17.1 Add an audio file using HTML Create a form using HTML Add text boxes using HTML Add radio buttons and check boxes using HTML Add a pull-down.
App Inventor MIT App Inventor.
Installing and Using Active Directory Written by Marc Zacharko.
CPSC203 Introduction to Computers Lab 33 By Jie Gao.
Objectives By the end of the class, you will be able to… Describe typical users by using “personas” Write detailed task descriptions to inform design.
CREATING TEMPLATES CREATING CUSTOM CHARACTERS IMPORTING BATCH DATA SAVING DATA & TEMPLATES CREATING SERIES DATA PRINTING THE DATA.
Enjoy-a-Ball Franchisee Basic training guide. Welcome to your Enjoy-a-Ball Micro site. Here you can create your own personal page within the Enjoy-a-Ball.
Originated by K.Ingram, J.Westlake.Edited by N.A.Shulver Use Case Scripts What is a Use Case Script? The text to describe a particular Use Case interaction.
Implementing a mobile app: general strategy Chris Greenhalgh G54UBI / Chris Greenhalgh
JavaScript - A Web Script Language Fred Durao
Lyra – A service-oriented and component-based method for the development of communicating systems (by Sari Leppänen, Nokia/NRC) Traditionally, the design,
XP New Perspectives on Microsoft Office FrontPage 2003 Tutorial 7 1 Microsoft Office FrontPage 2003 Tutorial 7 – Creating and Using Templates in a Web.
A really fairly simple guide to: mobile browser-based application development (part 2, CSS) Chris Greenhalgh G54UBI / Chris Greenhalgh
Systems Development Life Cycle
1 High Level Design Phase Refining Use Cases User Interface Information.
How-to Build In-Banner Lead Forms Website: | | Phone:
Schoolwires Calendar App. Calendar Overview Calendar app uses the same color scheme and fonts as the rest of the IRHS site.
CSC480 Software Engineering Lecture 7 September 16, 2002.
Microsoft Office 2008 for Mac – Illustrated Unit D: Getting Started with Safari.
GSU Indoor Navigation Senior Project Fall Semester 2013 Michael W Tucker.
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
AVIOS new flight selection page. Process to follow Step 4 Test and Refine Step 3 Prototype Step 2 Rough Wireframe Step 1 Card Sort Card Sort Balsamiq.
Designing User Experience (UX) This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.Creative Commons.
START Application Spencer Johnson Jonathan Barella Cohner Marker.
MOBILE CAMPUS NAVIGATION APPLICATION WITH AUGMENTED REALITY GROUP - 20.
LOGO Supervisor: Mr.Huỳnh Anh Dũng Students: Nguyễn Công Tuyến Nguyễn Cảnh Phương Phạm Thị Hằng Bùi Thị Huệ Trần Đức Bình Nguyễn.
Guide To Develop Mobile Apps With Titanium. Agenda Overview Installation of Platform SDKs Pros of Appcelerator Titanium Cons of Appcelerator Titanium.
My World of Work Registration
Section 17.1 Section 17.2 Add an audio file using HTML
Customize a business process in CRM
PROJECT MANAGEMENT Bill Biddle.
AN INTRODUCTION TO: POWERPOINT.
So far Learnt how to use App inventor.
InnovationQ Plus Quick Start Guide
Enabling Compatibility Mode in IE For Statistics Module
Registration Walkthrough
Telegram style text description:
Business PowerPoint Template
MOBILE MONITORING SYSTEM
Presentation transcript:

Designing a mobile app Chris Greenhalgh G54UBI / Chris Greenhalgh

First… Work out what the application is meant to do, e.g. – Identify possible users and situations of use – Identify use cases, i.e. main activities – Write one or more user stories 2Chris Greenhalgh

Example: tree walk Chris Greenhalgh Existing paper walking guide to trees and gardens on the University Park campus (as used for GLF)

Example: user story Ali is visiting University Park and installs the tree walk app on her Android phone She starts the app and the main view shows the walking map As she explores the area the app chimes and pops up more detail of nearby points of interest She reads these with interest before continuing her walk Chris Greenhalgh

D1. Identify application “screens” Work out how the application will be divided into screens, e.g. – Splash screen – Map overview – Location detail view – Help – … 5Chris Greenhalgh

D1: Example Welcome screen Main map screen Point of interest screens – 4: Acer saccharinum; 5: Ulmus ‘Sapporo Autumn Gold’; 7: Metasequoia glyptostroboides Where am I? screen (native app) Help screen Chris Greenhalgh

Non-GUI apps “Screens” are most relevant for GUI-based apps, but still a necessary starting point for other apps, e.g. audio For non-GUI apps there may be other application “modes” which effectively sub-divide/specialise each screen – E.g. “seeking”, “detail”, … These should be identified and charted in the same way as screens 7Chris Greenhalgh

D2. Define screen “flow” Work out how the application moves from one screen to another, e.g. – On direct user input (e.g. a button) – On “back” – On timer – On sensor input condition 8Chris Greenhalgh

D2: Example Chris Greenhalgh Welcome Main (map) Where? Detail (1) Help Back “Start” button “Help” button “Where?” button GPS trigger

D3. “wireframe” each screen For each screen, work out what GUI elements will make it up and roughly how they will be laid out, e.g. – Images, Text, Buttons, Gauges, … Specify what each GUI element will do Highlight any elements that change – These may be domain model objects or properties! (see 6) 10Chris Greenhalgh

D3: Example WelcomeMain Chris Greenhalgh Welcome to the University Park tree walk Start Help Where am I? GPS:

D3: Example HelpMap (native app) Chris Greenhalgh OK Blah blah blah blah Tree Walk Help

D3: Example Detail 4… Chris Greenhalgh OK On the right hand side of the drive is a group of young Acer saccharinum, the Silver maple, introduced from Eastern North America in It is a fast growing tree. 4: Silver Maple

D4. Specify sensor input and effects Identify – Which sensors are monitored – When, e.g. on which screens – How sensor input is processed E.g. identify region entry – Which screen elements are affected and how E.g. signal strength, user position – What other actions result E.g. screen transitions 14Chris Greenhalgh

D4: Example Sensor is GPS Only required on main screen Accuracy is shown on main screen GPS gauge Position is checked against interest regions Entering interest region switches to detail screen Chris Greenhalgh

D5. Specify any “invisible” activities E.g. – Network operations – Audio / sound effects – Background processing 16Chris Greenhalgh

D5: Example Transition to detail view accompanied by “chime” sound-effect Chris Greenhalgh

Optional: D6. Define/Refine the domain model Identify the classes of “things” that your application “knows” about, e.g. – Trees, shops, exhibits, places, … Identify what your application “knows” about each “thing”, i.e. – the properties and relationships that are shown to the user (see 3) – The properties and relationships that are used internally when deciding what to do (see 2, 4, 5) This activity can be done and re-done at any stage through the design and refinement process 18Chris Greenhalgh

Why D6? Aim to separate – Code = behaviour – Screen and element “templates” = appearance – Domain data = data values = specific content Because – Code is harder to change – Specific content can be represented more concisely as data values – Specific content can be changed more easily Potentially dynamically, e.g. from a server 19Chris Greenhalgh

D6: Example Chris Greenhalgh “Things” are “points of interest” – Or perhaps more specifically “trees” A point of interest has: – A spatial trigger region – A map key (e.g. “4”) – “Detail” information A title Some descriptive text

Iterate… Review and refine taking account of – Walkthroughs – Details emerging from later stages – Other use cases – Paper prototyping – Implementation constraints – User tests Chris Greenhalgh

Summary D1. Identify application “screens” D2. Define screen “flow” D3. “wireframe” each screen D4. Specify sensor input and effects D5. Specify any “invisible” activities D6. Define/Refine the domain model (optional) Chris Greenhalgh