Developing a mobile app

Go To All Articles

mobile appssoftware
read time: 5 minspublished 20 June, 2022

Mobile apps have exploded in terms of their sheer numbers, and the depth and breadth of what they can now do. The emergence and continual development of the smartphone and tablets makes going mobile the more accessible and convenient choice for people, but is developing a mobile app right for you? 

Let’s find out. 

What is a mobile app exactly?

Here’s the simple answer: a mobile app or application is a piece of software that you download onto your phone or other mobile device such as a tablet or iPad. 

Ta da! 

We could leave it there. This could be the shortest article in the history of web articles, but for thoroughness, we might as well get down into the guts of it. 

When we say a mobile app is software. What does that even mean

In some respects, this is the really cool part about mobile apps - and any software development project really. The reality is that software can literally be anything. If you can think of something you’d like not to have to do for yourself, such as having daily reminders telling you what you’re supposed to do today instead of relying on your brain remembering it all - that’s software - and I guarantee you that there’s an app for that. 

That’s the beauty of software. What it is and what it does is entirely up to you. 

We’ll wait here while that sinks in and your brain explodes.... 

Yes, this can be both incredibly empowering - and intimidating. From gaming apps, to productivity tools, mobile apps cover a broad spectrum of tasks and purposes; you just have to decide what that purpose is. 

Ok. So you’re now completely sold on developing your very own mobile app. Congratulations! … But, where do you start?

There are different processes and procedures that a software development company might take to develop your mobile app, but we think it should broadly cover the following steps:

Step 1: Research, research, research

Often the least favourite step (unless you’re a UX geek and then this step is simply the best - ever!). 

We know how difficult it can be to stop yourself from getting stuck straight in when the idea is still so new, fresh, and exhilarating. Who wants to kill that buzz with a bunch of tedious searches and data gathering exercises? Yawn.

… but, taking a beat and doing some initial research can pay dividends. So, go do some market research. Look at your competitors. What are they doing? What aren’t they doing? - that’s called a Gap Analysis (Google it - you’re welcome!).

If you do nothing else: talk to your users.

Talk to your customers and ask them what they need, and what they’d like to see from you. If your product or service is used internally, then talk to your own people. What are their pain points? How could their work processes be made easier? 

Even a little bit of knowledge can go a long way here. Make the time. 

Step 2: Branding

If you’re building something for your existing business and already have all your branding and logo in place, excellent. 

If you’re creating something brand new (excuse the pun), then you’ll need to start thinking about branding. This process can include the following: coming up with a name, checking name availability (company’s house, the app or play store), designing a logo, and creating your brand identity. 

You don’t need to have this all figured out immediately, but you should definitely have it nailed down before we get to the design step. 

Step 3: Decide what operating system you want your app to work on

Why does this matter? Well, it’s a simple case of if you don’t know your target audience (or in this instance, what operating system to build for), you can’t cater for their needs. If you’ve done your research (see how it’s already useful?), then you’ll know if your users will even want a mobile app, and if they do, what devices they use. 

And why is that important? Simple. A mobile app can only ever be downloaded onto a user’s device. What device - and therefore which operating system it's using - matters. It has huge implications in terms of how the app looks, works, and …crucially: how it’s built.

iOS operated devices are manufactured by Apple (we’re familiar with Apple, right?), while Android devices seem to fall under “everything else non-Apple”. Maybe it goes without saying, but the two operating systems tend not to be compatible, for errr… obvious commercial reasons. 

Say, we want to build something that works on both iOS and Android. Totally doable.

How do you build a mobile app? 

Excellent question!. An app can be built using either a native or hybrid system, but unless you’re a software developer, that’s not going to mean much - if anything - to you. 

If you are super interested in a high level overview of the techy stuff, carry on… but if you can feel your eyes glazing over; feel free to quickly scroll down to the next step.

Ok.. still with us? Awesome. Let’s look at what we mean by native and hybrid in a bit more detail.

First let’s start with a quick checklist of the basics:

  1. Software development is done by writing some code

  2. That code is written using what’s called a programming language

  3. There are LOTS of programming languages out there

  4. When it comes to developing a mobile application, you have a few choices. In this article, we’re going to focus on Native or React Native. 

Native or React Native

Both Native and React Native systems use specific programming languages. As with all languages, it’s about effective communication and being understood by the other person - or in this case - operating system.

Keeping it as simple as possible: 

Native uses different programming languages to “speak” to iOS and Android. 

By comparison, React native, which many people refer to as a cross platform system because it errr… works on both platforms or operating systems. It uses only one language.

When to use Native for your mobile app

Developing in native provides faster loading times, more control over what you can do, and is therefore most suited for bigger applications that have a lot of traffic (users).

When to use React Native for your mobile app

Using React Native can sometimes be quicker and easier to develop, but can have slower updating and loading times. However, because it works on both iOS and Android; it’s perfect if you want to cover all your bases. 

Ok, so we’ve decided what operating system and which system (and language(s) we’re going to be using to write the code…we’re now ready for the next step:

Step 4: Scope the functionality

You have to dig a little deeper at this point. We can’t be vague anymore. This is where we define and scope out a list (or spreadsheet or table, or however you want to capture this process) of the functionality your app is going to have. 

Getting everyone onboard and involved at this stage is a really good idea. This shouldn’t just be a business decision, or a development decision, or a design decision - having all these teams in the room and scoping the app functionality out is going to reduce surprises or unforeseen issues further down the line. Plus, it’s just good manners and stakeholder management.

These meetings or workshops or brainstorming sessions - whatever you want to call them - this is where you start thinking about the following questions:

  • What do you want it to do? 

  • What features do your users want? 

  • What features do your users need? - this is an important distinction. What people think they want isn’t always what they need. Give people what they need. 

  • What features does your business need? 

  • What is technically possible? 

Choices will usually have to be made here about whether a particular functionality or feature is a “nice-to-have” or necessary. Sometimes the choices are easy, other times it’s tougher. 

In product or service development we often refer to something as an MVP - Minimum Viable Product. It means building the most cost effective version of your app first so you can test the waters before digging into your pockets for all the bells and whistles. It’s a way of controlling costs and risk - usually a critical business need! Unless you have an unlimited budget - in which case, we definitely want to hear from you. Kidding!… not kidding…

Right, so, you’ve got your functionality, your market and user research. You know what the mobile app has to do, and how you're going to build it, and now you need to design what it looks like.

Step 5: Design your mobile app

We’re not going to go into too much detail here because realistically design is a whole other article. Suffice it to say that this stage is about capturing user flows (how a user achieves x, y, and z), getting the look and feel right, and designing a usable and accessible application. 

It’s also when you’ll want to do user testing,  iterate your design, rinse and repeat until it’s as good as you think it can be. Why do we do this? Because there’s a truism that people in the industry know, but can ignore: it costs 100 times more to rewrite code than it does to redesign. 

Be smart, save yourself a bob or two, and take the time to test and iterate before anyone writes a single line of code. 

For now, let’s say your mobile app is all pimped out, looking amazing, flowing nicely, and ready for handover to the development team. Whoop! Whoop!

Step 6: Build (develop) your app

Finally, we made it to the actual build! It can feel like it takes forever to get to this stage - and hopefully, if you’ve followed best practice, that’s exactly as it should be. 

At this stage, you let a bunch of software developers loose and start coding. Many, many  hours go into developing a mobile application… it can get very boring - unless you’re one of the We Do Code nerds, in which case, you love this stuff!

The development phase is still an iterative one. You build and you test. Build and test. On and on and on it goes. 

Step 7: Testing

You’ve got your mobile app all built, but it’s not over yet! Before we can launch this bad boy into the App or Play store, we need to know that it works. 

Now’s the time for that final round of user acceptance testing and then beta testing. 

Once you’ve got most of your bugs ironed out - and let’s be honest here - no product or service is ever perfect. There is always going to be room for improvement or unforeseen issues that crop up, and that’s perfectly normal and fine. But once it’s mostly perfect and we’re happy with where we’re at … it’s time to launch!

And that’s it. It’s not all of it, there’s always more to something as complex as developing software, but hopefully you get the gist.

Ultimately, your mobile app should reflect and deliver what your business needs, while meeting the needs of your users. We Do Code can help you with that - start the conversation today and let’s build your perfect app! 

What do you want to create? 

If you want to keep up to date with our shenanigans and our latest articles and insights, make sure you follow us on Facebook, Twitter, or LinkedIn

Related Articles

software - general

Why every project should include user research

15 July, 2022

mobile apps - software

Developing a mobile app

20 June, 2022