DZone
Mobile Zone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone > Mobile Zone > Do Yourself a Favour – Stop and Think Before You Start Developing Your Mobile App

Do Yourself a Favour – Stop and Think Before You Start Developing Your Mobile App

Per Ola Sæther user avatar by
Per Ola Sæther
·
May. 30, 11 · Mobile Zone · Interview
Like (0)
Save
Tweet
4.35K Views

Join the DZone community and get the full member experience.

Join For Free

when starting developing a new mobile app it is always tempting to jump directly to your favourite ide and start developing, but do yourself a favour and spend a few minutes planing what you are going to develop. this will most likely save you a lot of time later on.

i’m creating a very simple windows phone 7 app called pincodekeeper and as the name states this application will keep your pin codes.

sketching

it’s always a good idea to start sketching the wire frames for your application. i like to just make some easy and not very detailed wire frames covering the most important parts of the application. the most important at this phase is to identify the functionality you want the app to contain. these sketches are also very good to use when discussing the app with potential users/customers.

for sketching i use balsamiq mockups and since this application is for windows phone 7 i have downloaded and imported windows phone 7 templates and controls to balsamiq mockups.

while sketching i identified 4 main functionality areas and i created a sketch for each of them as you see below.

first screen displaying stored pin codes

screen displaying selected pin code

add a new pin code

about screen

analysing

when the sketching is done i use to analyse the app i am about to make just to get an idea of what challenges i might meet and to define the most suitable architecture for the application. if this was a more complex application i would also create a navigation map together with the sketches so i could see the screen flow and avoid deep linking if possible.

the analyses of pincodekeeper tells me that i need to use the local storage to save pin codes and that i most likely need to create a custom control for the pin code image card.

for the local storage part i will use isolated storage and store pin codes as xml files. i need a pincode object that will contain the name and a double int array representing the numbers to be drawn in the pin code image card.

the pincodecard custom control will draw red, blue , green and yellow squares in a given pattern for the pin code image. the user must be able to select any square and enter a number between 0-9. there must be a scramble function that adds random numbers in the empty squares.

i also want the app to be available in different languages and support both portrait and landscape mode.

architecture

i now know enough to decide how the application architecture will be. i will use the model-view-presenter (mvp) pattern and i will have a utilization class for storing and retrieving data from the isolated storage.

for a quite simple application like the pincodekeeper i will not spend more time on sketching or analysing, i’m no ready to start developing the application. the hour i have now spent planning the application will probably save me several hours when i start developing.

from http://breathingtech.com/2011/do-yourself-a-favour-stop-and-think-before-you-start-developing-your-mobile-app/

mobile app

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Develop Multi-Value Applications With Modern Source Code Managers
  • Ensure API Consistency and Security With Anypoint API Governance
  • Conducting Sprint Retrospective Meetings
  • How to Test JavaScript Code in a Browser

Comments

Mobile Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • MVB Program
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo