Web app development and your business strategy

 

Smartphones have changed the way people expect to interact with websites on the internet.

55% of internet traffic is from phones and it continues to grow. And 46% of consumers complete the entire purchase process on their phone. This is why we have an article on stats that show why your ecommerce site needs to be mobile-first.

In this article we’re explaining why your mobile-first ecommerce site needs to be a web app.

The App cost dilemma

Apps are eating websites. They’re nicer to use. They’re designed for mobile. They look better on mobile. They have user interaction features that are familiar and designed to make navigation and content consumption intuitive.
This leads to the obvious decision as part of your business strategy to invest in building an app to stay competitive.

But there are a couple of important drawbacks with this strategy.

Your traditional native app is costly to build and maintain. You need to build two of them, one for iOS and one for Android, if you don’t want to lose half your market. And you need to keep your website running for desktop browsers.

Because you need an app you’re suddenly supporting three different platforms and bearing a sudden spike in costs.

Will having an app increase your revenue enough to pay for multiple platforms and still turn a profit?

How long will it take to see a positive ROI if you go down this path?

This spike in costs is why native apps are often out of reach to SMBs and they find themselve losing market share to better funded or simply larger competitors.

Investing in a web app, instead of a native app, is how SMBs can avoid the cost spike and still compete on mobile.

 

Avoiding the high cost of apps

A web app can be thought of as a fancy website, like SpaceX’s Falcon 9 rocket can be thought of as a fancy plane. Technically, they use the same foundation, and even some of the same materials and technology, but the final product, and how it performs, is quite different.

A web app uses advanced frameworks that run in the browser (like React, Vue, Angular), to create the same kind of rich interfaces that you find in a native app. There are limitations, because a web app runs inside of the browser on the phone, which impacts performance and access to device features, but unless you want to build a game or access the phone hardware, most businesses don’t need to worry about them.

Because web apps are built with web technologies – meaning they are designed to run within a browser – their single code base can be built to work across all phones, tablets and desktops. Wherever there is a browser they can run. Even on some smart TVs. In practice, a lower threshold is set on the performance requirements, based on your intended market, in order to ensure quality of the user experience.

Using a single web app code base to run across phones, tablets and desktops means web apps don’t create the expensive spike in costs that comes with supporting multiple platforms.

In fact, a web app makes it possible to generate revenue across all platforms, allowing you to observe where you should invest more money and possibly take your web app to the next level.

 

Taking your web app to the next level

One of the most powerful features of web apps is that anyone can purchase from your business on the internet. You don’t have to go through an app store review process or pay 30% to the app store provider.

Once your web app is live on the internet you will learn a lot. You will learn which platform is your most profitable. You may discover that it will be worth the investment and the fees to turn your web app into a native app.

If you build your web app with the right framework, such as React, you may have already paid for a substantial part of a native app’s development.

You already have the backend paid for and working. All that is left is the interface. With multiple platforms generating revenue, and insights gathered over the months or years your web app has been running, creating a native app might now be feasible.

Tools like React Native can make it cost effective to finally add dedicated support to iOS or Android (depending on your numbers) platforms. Using React Native avoids the full re-code to create a native app if, and only if, you built your web app frontend using React.

Web apps for the win online

The internet is the most competitive market in the world. Because it is the entire world online. Pursuing a web app based strategy gives you access to the largest cross section of customers across platforms. Risks are further mitigated by the lower cost in development compared to native apps, and being from the impact of gatekeepers coming between you and your customers.

At the same time, launching with a web app gives you a foundation of revenue and feedback that will help you make the move into native apps for your customers if the numbers show it makes sense.

If you want to talk more about how building a custom web app can be part of your business strategy, get in contact with us.

10 SaaS startups that can cut months off your runway

As a LEAN+Agile dev house dedicated to building apps and websites for our clients, we are always preaching buying functionality over building it to our clients.

We are as aware of their runway as they are. And we’re dedicated to getting them to launch with the best MVP possible. And when speed counts and budgets are limited, and even when they’re not, we always go for buy over build.

Our clients are often surprised by not just the quality but the depth of functionality that is now available to be integrated via APIs from thousands of providers. 

Here’s a list of some of the more useful and powerful integrations you should be considering. Note – this isn’t a survey. We’re not providing options or reviews. Think of it more as a proof of existence and a starting point for doing your own dive into the SaaS options out there. 

 

Feed as a Service – stream

A news feed or activity feed with the rich interactions we’re all accustomed to – likes, tagging friends, etc – drives engagement. Feeds aren’t just for social sites. They’re for marketplaces, ecommerce, any app or website that involves events happening in realtime that someone somewhere wants to see. If you have a database its contents can probably be presented as an infinite scrolling feed to your users to like and share.

All that rich interactivity is complex and time-consuming to implement. Then there’s the technical difficulties involved in delivering the feed to all your users so they have a smooth, hiccup-free experience. You’re looking at 1000s of programmer hours whether you sit down and do it right and eat the delay, or launch with the basics working and iterate towards the complete solution.

stream provides APIs for client and server feed management as well SDKs for building apps and websites that integrate their feeds.

 

Authentication as a Service – Auth0

How many ways are there for potential customers to login and access your product? Email address + password? Social logins? Magic email link? SMS link? Let them use it anonymously and authenticate later? Multi-factor authentication using a code sent via SMS, voice, a one-time password app, a hardware key or biometrics? 

It depends, doesn’t it. But security is one of the hardest things to get right. A home-rolled solution will be enough for the early stages of development, but once you’re live on the internet your vulnerability is related to how much money, time and expertise you can spend on security.

Or you can use a provider such as Auth0 who is solely focused on secure authentication.  

 

Fraud Detection as a Service – Sift Science

As the pandemic created a surge in internet usage and online purchases, it also created a surge in digital fraud across both true fraud and friendly fraud categories. If you haven’t heard of friendly fraud, it mainly manifests as chargeback fraud – customers claiming they never received their order. 

Digital fraud requires cooperation and huge datasets to detect and defeat. It’s not something you can do on your own. Services like Stripe Payments and Sift Science integrate thousands of data feeds and signals – such as device fingerprints, transaction histories – to predict and mitigate fraud.

Should you be using their services? If you’re not sure, your accountant can probably tell you.  

 

Images as a service – imgix

Images have a huge impact on your users’ perception of your app or site. They can make it look more engaging, but due to their size loading them can also slow it down. If you rely on user-generated content, like a restaurant recommendation app would, or a marketplace, or you have your own deep catalogue of product images, then handling images and handling them well is an absolute necessity.

But manipulating images is technically challenging and delivering them quickly to your users takes planning and infrastructure.

Services like imgix save you from having to develop inhouse image editing and management expertise. It provides an API that can crop, resize and compress images, and a CDN for caching and delivering them to your users. 

You might say there are open source libraries for manipulating images and Amazon has a CDN, so why? You can ask the same question for every service in this article. The answer is time. Time now, as you move towards launch as quickly as you can, and time later, when you lose feature development hours to maintaining and debugging the code you wrote in house.  

 

Recommendations as a service – Algolia

You have an online store. It would be nice to increase Average Order Value by surfacing appropriate products for your customers. Where do you even start on that? Do your developers need to know statistics? Machine learning? Can you afford developers that already have the skills?

Even with a feature that will deliver a positive ROI it may end up being too expensive, again in time as well as money, to implement or just impossible. A lot of the modern user experience is pretty close to rocket science. But not everyone can hire rocket scientists.

But a service like Algolia lets you access that rocket science through an API that is easily integrated and with pricing that is easy to sign off on.

 

User Comms as a Service – twilio

There are dozens of services that will help you put a chatbox on your site or in your app. Making it easy for a customer to talk to a rep to help boost conversions is a strategy that is growing in popularity as it gets easier to implement.

A text chat today might lead later to a call to support after purchase or an email with warranty information or a newsletter with your latest offers.

We’re highlighting twilio for this category because their service offers APIs that allow you to integrate chat, voice and email comms with your customers. On top of the comms, it allows you to unify all your interactions with each customer to streamline engagement and allow you to personalise their interactions with your business.

This is the kind of feature you don’t even dream of being able to build for yourself. You use theirs and you’re grateful you can leverage it to your advantage.     

 

Payments as a Service

This is a no-brainer. There is no question you are going to use a third party payments API. You’re trying to launch here, not reinvent online banking. The question you have to answer is which one, or which ones, are you going to integrate?

And are you going to stick to straight payments or are you going to integrate a Buy Now Pay Later service like Afterpay or Klarna? 

 

Onboarding as a Service – Pendo

For an app or site of any complexity one of the biggest challenges is onboarding new users so they can use your powerful features, recognise the value of your product, and become long term customers.

This onboarding is handled by tours using on-screen pop-ups and overlays. The value is in the tour, not in the code that animates the tour.  

The advantage of integrating a service like Pendo is that their implementation of product tours has advanced to the point where it offers authoring tools. This frees your developers from having to dedicate time to what is intrinsically a marketing function. 

Pendo also collects data so you can see which features are being used, allowing you to continuously improve your onboarding experience and profit from it.

 

Shipping as a Service – ShipEngine

If your business deals in physical items then you’re going to be dealing with the headaches of shipping. It’s a time sink that cuts into the profits of every transaction.

Services like ShipEngine let you use a single integration to hook into a network of delivery and logistics companies, allowing you to optimise your costs and helping quickly and painlessly arrange local or national or international deliveries.

Security as a Service – Wazuh

Your business is online. You have a server. Perhaps multiple servers. Connected to the internet. What are you doing to keep your business secure? How much time and how many developers and devops can you dedicate to security? 

Staying current with threats and mitigations is a full-time job for a team. Being able to lean on the smarts of a large, dedicated security team through services like Wazuh reduces the risk of you being knocked offline or worse. 

Are you going to buy or build?

Software is a different kind of business. And if you have a website or an app make no mistake, you are in the software business. Pick almost any portion of an app or service and a deep expertise is either necessary or provides a huge advantage. 

This is what makes SaaS such a pervasive model. It’s the expense of expertise distributed across hundreds of customers. This business model is creating the re-usable modularity of functionality that software businesses have been wishing for since the 80s.

Any app can now launch with top-tier features in a fraction of the time and the fraction of the budget that was possible just five years ago.

You might worry about lock-in, and seeing money going out the door to other services might cause you physical pain, but that’s a problem that can be solved down the road when you are big enough for it to matter. 

For launching a new website or app, a strategic set of SaaS services can get you impressing customers and pulling in revenue faster than you can imagine, no matter how many developers you have.

The big $$$ questions about app development answered

We see the same questions about app development coming up again and again. It’s no surprise. More and more businesses are recognising that they need apps. Developing apps is a complex and opaque process. They’re big ticket items where unscrupulous operators don’t want to share numbers until they can guess how much you have to spend.

We’re going to fix that. By answering your questions. Many of them are of the “how long is a piece of string” variety. We can’t tell you how long a piece of string is, but in our answers we do give some recommendations on how you should be thinking about your string. Or, for this article, how to think about your app and how you’re going to get it built.

Q: How much does app development cost?

Short answer: Under $50,000 for a simple app. Under $150,000 for a basic app. Over $150,000 for a complex app.

Long answer:

You need to be comfortable with spending 5 and 6 figure sums if you want to build a competitive app. If you don’t think you’re going to earn the money back then now might not be the right time to start the process. Maybe start with a basic website.

The cost at each tier comes down to complexity. That complexity is a combination of frontend features, backend/admin features, third party integrations, the amount of business logic that needs to be encoded (after being documented!), and the variety and volume of traffic and transactions your app needs to handle.

A short discussion with us about your app, your market, and the features you want would enable us to tell you which range your app would fall into.

Q: Why does app development cost so much?

Short answer: Details x Time x Expertise

Long answer:

We understand this question. Unless you have worked as a developer on multiple similar projects it can be impossible to look at the screens of an app and see where 5 and 6 figure sums were spent. Hint: a lot doesn’t show up in the user interface.

App development costs what it does for two main reasons: it requires expertise and it takes time. And then there are the details. Building software is all about managing a mind-boggling number of details. It is not unlike building an actual sized house out of Lego bricks. Individually positioning all those little pieces adds up to a lot of time. And you need people who know how all the pieces fit together.

When looking at the cost it helps to remember app development is an investment. You invest in an app to generate revenue. Much as you might buy a machine for a factory, or pay to rent, fit-out and stock a brick and mortar retail store. You expect your big investment to give you more in return.

Of course you’re cost conscious. You spend your money wisely. That is why SoftwareSeni provides full transparency during the entire app development process. You can see the time spent at each stage of app development and even for each feature. Also for all the code that doesn’t touch the screen – the integrations with other services, the code that talks to the database, the code that creates the backend that your business will use.

Q: How long does app development take?

Short answer: At least a couple of months to launch. Then months to polish. Then years to grow.

Long answer:

Our business philosophy combines Lean and Agile methodologies. Under Lean, businesses want to be launching an MVP (Minimal Viable Product) as soon as possible to verify their idea, start gaining users, and start generating revenue.

This is done by implementing features in two-week work blocks called sprints under Agile. You won’t be launching your MVP app after 1 sprint, but 4 isn’t impossible, and 6 is feasible. All depending on your feature set and how far advanced your product conception is, of course.

And once launched, new features continue to be added using two-week sprints, along with addressing any user feedback received along the way.

This process results in lower upfront costs, puts a working Android app or iOS app, or both, in front of your customers sooner, and enables you to start generating revenue sooner.

Q: How big a team do you need for app development?

Short answer: 3-5 depending on the stage of development.

Long answer:

The app stores are filled with apps built by a single developer. So is that all you need?

Maybe? But there is only so much a single developer can do in a week. Or a month. There are only so many facets of app development a single developer can be an expert at. And how many developers are also experts at graphic design or UX or at running user testing?

And the big issue with a single developer – it only takes a single accident, or a single personal crisis, for your app development or app support to grind to a halt. What business wants to take on that risk profile?

A serious app, with a sensible launch schedule, that looks good, that works well and continues to work, requires a team. The size of that team depends on the app, its features, and how the development can be scheduled. But we find that, on average, at any particular stage of the app development process, you need about 3-5 people contributing.

It is a truism of software development that the best way to slow down a project is to throw more people at it. At SoftwareSeni we have launched enough apps, and our teams have collaborated on enough of these apps, that we’re pretty good at putting together the optimal team for creating your app.

Q: Should I develop an app?

Short answer: If you have to ask then you should develop a website first.

Long answer:

An app is a major investment. Are you sure you’re going to get a return on that investment? If you’re not sure, if you don’t have a ready market or an eager customer base, then it will be wiser to test your business idea using a website first.

A modern website, designed to be mobile-first, can approach the user experience of a dedicated native app with a lower upfront investment while providing you access to the entire global marketplace across all devices, not just phones.

Q: Should I develop an Android app or an iPhone/iOS app?

Short answer: Android if you want market reach, iPhone/iOS if you want to charge a premium.

Long answer:

In most of the world Android is the dominant mobile operating system, holding about 75% of the global market. But in some markets, like the US, UK, Canada and Australia, iOS holds more than half of the market.

This difference in market share, and user base, leads to a non-intuitive result. Global non-game app revenue in 2020 was $32.1 billion. Despite its smaller global market share, about 25%, iOS apps captured $24.7 billion, 77%, of that revenue.

The decision to develop an Android app or an iPhone app comes down to knowing where your audience is and what your goal is.

For markets like Australia, USA, UK and Canada, where the market is almost evenly split, it’s lucky that there are frameworks like React Native that make developing apps for both platforms financially feasible. But still we would recommend focusing on your iOS app first, because that platform will likely provide most of your revenues.

Q: How long does it take for an app to earn back its development cost? Also: How long does it take for an app to cover its running costs?

Short answer: If you read the first question you already know the answer.

Long answer:

This question is looking at app development backwards. You should not be spending money on developing an app, or purchasing any asset, without forecasting or modeling costs and revenue.

The real question should be: given my forecast revenue and current budget, can I build an app with the planned feature set, keep it running, and market it?

(You don’t want to forget your marketing budget. Expecting enough people to simply stumble across your app is not a path to success.)

If the answer to the real question is no, you don’t have enough money to do all that, then you are left with three options:

  1. Don’t develop an app. Put your money towards another revenue generating project.
  2. Reduce the scope of your app. Will a simpler, less expensive app bring in enough revenue to fund further development?
  3. Build a website instead. This is a faster way to reach an even larger market. Websites can have app-quality interaction (at a price). This approach can allow you to invest even less up front and still have a foundation you can extend as revenue grows. With proper planning, converting it to an app when revenue allows can be quite cost effective.

Still have questions about that app you want developed?

Hopefully by answering the big questions about app development we’ve helped you think strategically about getting your app developed.

If you find you have more detailed questions on costs and starting app development then get in contact with us. We’re always up for a chat and we love finding revenue-focused solutions to app creation.

Now, if you feel like you want a little more background on app development before talking to us, we have written a series of short, easy-to-read articles on the process:

A quick guide to Agile for businesses and start-ups
What is product conception and how to do it
How to prototype your app
Business rules and the business logic that drives your app
How the app development process works

Also, here are two articles that will help with your decision making:

Should you build an app or a website?
Fixed price contract vs Agile for app development

Contact us here for any questions you still need answered.

Should you build an app or a website?

Should you build an app or a website

The title might strike you as a dumb question. It’s the 2020s. You probably already have a website. But if you’re launching a new product or service or ecommerce play, or you’re finding competition is eating into your revenue, then the question is one you’re already asking yourself. 

This article is going to help you make that decision. It’s going to start with a quick tech review, followed by a short discussion of the trade-offs between the two options, then it will jump into the surprise “have your cake and eat it too” twist.  

Let’s start with the tech.

There are only three types of websites

That’s right. Only 3. We’re talking under the hood, not content. Here they are:

Static

Static websites serve visitors pre-generated pages of content. This is how websites worked when the internet was born. It’s had a resurgence in popularity recently due to its speed and security. This tech is best used for sites that don’t change often – blogs, documentation, and brochureware sites.

Dynamic

Dynamic websites serve visitors pages that include content pulled from a database or generated by code. This is called server-side rendering, as the layout and content is assembled by the server delivering the page. It’s more complicated than that, but we’re keeping things simple. 

If a website isn’t static then it’s dynamic. This includes the millions of WordPress sites in existence along with every other site on the internet. The term “dynamic” is now more of an umbrella term, as there are many different ways to build a dynamic website, and the next type is a recent specialisation of the dynamic website type.

Web App

You might have seen this style referred to by a couple of acronyms: “SPA”. “PWA”. “Web app” is simpler and they all mean a website built to behave like an application. Instead of responding to user interaction by following clicked links to new pages rendered by a web server, web apps pull data off the server and redraw the contents of the current page. This is faster than requesting and loading new pages and creates that “app” feel.

Web apps are more complex than server-side dynamic websites due to the added complexities of marshalling content on and off the page and the richer interactions they tend to implement.

Twitter.com is an example of a web app that features the kind of detailed interface and high level of interactivity that used to be only associated with dedicated apps.

Should you build an app or a website?

If a website looks like an app and acts like an app, is it an app?

No. While you can build a website with an app-level user experience, when it is visited from a handset it will not have the integrations into the handset operating system a native app will enjoy. It will also be lacking the look and feel of a native app, placing it visually in a lower tier.

Performance in some areas will also suffer. The biggest one is smooth scrolling. Despite the power of modern handsets, the complexities of displaying rich content in a browser window is still not as smooth and efficient as within a native app. 

Keeping the killer feature of websites

Websites have one killer feature that apps don’t have – they run everywhere. They run on desktops. They run on phones, no matter who makes them. They can even run on smart TVs. 

When you are deciding between an app and a website you need to understand where your users are and how they are going to interact with you.

It’s a balancing act between audience, features that you need, features that will appeal to the audience, and cost. 

The cost of websites vs apps

A native app with similar functionality to a website is going to cost more than the website. The main reason is simple economics. The number of app developers is much, much smaller than the number of website developers and demand for their services remains strong.

As each of the two major platforms, Android and iOS, have different development environments, releasing your app on both platforms can (roughly) double your costs.

Another cost apps must pay is time. Getting approval for your app from each platform app store takes time, sometimes weeks, with any problems potentially causing long delays. No-one can stop you from launching a website whenever you want.

Each option has its benefits. But you should know there is a strategy that can get you the best of both worlds – the lower cost and lower time to market of a website, and the power and polish of a native app – while spreading out your risk.

Should you build an app or a website?

The app that starts out as a website

This is our favourite strategy for creating a new product or service. It combines the rapid development and deployment of a website, while at the same time it lays the groundwork for the heavy lifting required to create an app.

This strategy is based on React Native. React Native is a spin-off of ReactJS, one of the world’s most popular website frameworks. If you’ve never heard about React Native you might want to read Everything you need to know about React Native apps – the business side

By building a web app using ReactJS it takes much less effort to convert it to a native app using React Native. 

By starting with a web app you can prove the business model of your product or service with a lower investment than going straight to a native app. Once the business model is proven, moving from web app to native app is straightforward. 

How easy it is depends on if you included this path in your strategy. And why wouldn’t you? Your app will use the same backend as your website. Your UX has been tested and proven. If you built your web app on ReactJS it becomes a matter of changing code that would tell a web browser to draw a form to React Native code that displays native form elements on a handset.

And the same React Native code works on Android and iOS. You don’t need a separate team for each platform.

The final answer to the app or website question

So, the final answer to whether you should build an app or a website is you should build the website first. And that website will take you 80-90% of the way towards your app.

When the website shows you have a foothold in the market, it is simply a matter of converting the website into a native app.

If you want to know more about this strategy and how it could work with your business, get in contact with us and we can discuss the details with you.

Making it real – the software development process behind your app

This article is going to go into details on the software development process at SoftwareSeni. The target audience is our clients and potential clients. If you’re thinking about getting an app or a site built some day, then you will find it interesting to understand how these processes are run.

The article is a follow on from similar articles on product conception, prototyping, and business rules

With all the above completed, the software development can now start. If you’re curious about the cost of software development, we recommend reading our article on Fixed Price Contract vs Agile Development

SoftwareSeni is an Agile house. Software development under Agile has a definite beginning, but it doesn’t really have a middle or an end. This is due to the iterative nature of Agile development. One of the early iterations will see the launch of your product. But once it is live each iteration after that will be launching new features and capabilities. 

The beginning of the software development process

At SoftwareSeni we divide the beginning into two phases: Preparation and Kick-off.

In the Preparation phase we take the wireframes and business rules and use them to create the product backlog.

The product backlog is an Agile thing. It is the single source for everything that the dev team needs to work on. So it includes the features of your app that need to be implemented, but it will also contain bug fixes, setting up hosting infrastructure and any changes it needs — anything and everything the dev team needs to complete your app and keep it running.

Using the product backlog, work is prioritised based on impact and effort. The business rules you documented earlier are broken down into epics. The epics are broken down into stories and those are finally broken down into tasks. All of these go into the product backlog.

Because the product backlog is used to prioritise work it is not a static list. Everything that needs to be done gets added to the backlog as it pops up. This requires the product backlog to be regularly updated and re-prioritised. This is part of the Agile process.

Along with the product backlog, the preparation phase involves:

Kick-off

The kick-off for your project is carried out in two meetings. For you, it’s a briefing where we communicate how the software development will proceed and we all confirm we are in agreement on project goals, deliverables and timelines.

The team runs through the same information in their own meeting. This is also the point where the final structure of the team — headcount and skillset — is settled.

After this, the development begins.

The Agile development of your product

Agile operates as a series of sprints. Don’t imagine a roomful of people pounding at keyboards. Programming is a slow and thoughtful process. Agile packages that process into short, often two week long, periods of focus: the sprint.

If you’re new to Agile you might want to read Agile basics for small businesses and start-ups.

The first series of sprints are focused on getting your MVP in front of customers. Once your app or site is live subsequent iterations make it easy to adapt focus and schedules based on app usage and revealed needs. 

A sprint is divided up into multiple stages that can be summarised as: 

The result is a two-weekly cycle that runs like this:

Keeping you in the loop

The beauty of Agile is the regular feedback on progress that is available. You will have opportunities to review work to date and current progress at multiple stages through the project. This will be via weekly or fortnightly Work In Progress (WIP) meetings. This is on top of the weekly reports and updates that we send you.

These meetings are essential to ensure your vision of the app is being correctly interpreted by the team. This might sound surprising, but every product is the sum of thousands of tiny decisions. Being involved in the process, supplying clear and concise feedback, ensures your vision is fulfilled as efficiently as possible.

Development never runs issue-free. There are always issues related to usability or functionality that could not be foreseen from wireframes and business rules alone. These are the kinds of things that more documentation can’t fix. They can only be discovered during the building and testing. 

But this is exactly what the Agile process is designed to cope with. Any issues revealed get added to the product backlog and prioritised and the project keeps moving forward.

Sometimes these issues will impact product scope or your preferred timeline. Agile lets us catch these early and our regular reporting to you ensures you have time to act quickly on them.

Demo day

As you know, software development is often divided between front end — the UI and UX your customers will interact with, and back end — all the code that interfaces with your business, talks to databases, handles logins, etc. 

Once the sprints covering both facets of your app reach a mature enough state fortnightly demos begin. These are yet another opportunity to keep development aligned with your vision, to spot any issues and to just enjoy seeing your product coming to life. It’s an exciting part of the process.

Rushing towards launch

Once the demo days start you are closing in on the launch of your MVP. While you are preparing your marketing push for the big day, the SoftwareSeni team is running QA on your app, hunting down and squashing bugs. They are also preparing for the User Acceptance Testing (UAT) to ensure that your app, and your users, will be secure. 

The first launch is just the beginning. It’s definitely memorable, but you will be launching a new version with new features and new fixes every two weeks as your user base grows and your product’s functionality grows with them. This process will become part of your business’s day-to-day workflow.

The new normal

The Silicon Valley phrase is “Software is eating the world”. Once your product is live, whatever your business is, it is now in part a software business. And as long as you’re in business, SoftwareSeni will be there to help you with insight, strategy, tech talent, and raw people power.

If you’re ready to transform your business into a software business with an app or website, get in contact and let’s get the process started.

If you’re new to the process, we recommend starting with our article on product conception – bringing your business idea to life.

After the wireframes – the rules at the heart of your app


If you have been reading our series of articles on the app development process, this is where the hard work begins.

If you’ve stumbled upon this article, it follows on from our previous article on prototyping your app. You might want to start on the first article in this series: Product Conception – Bringing your business idea to life.

At this point in the process your wireframes are a beautiful representation of how your app will look. Your clickable prototype is an accurate representation of how some of the features will work. Together they give you a real feel of how it will be to use your app. User-testing with this early stage prototype has shown the people get it and want it.

App development has been fun so far. Your vision has taken form. The process has been visual, iterative and the challenges have been a joy to solve.

Now it’s time for the hard work. If we knew what you were wearing we’d tell you this is the point where you start rolling up your shirt sleeves. Maybe make the first of many strong cups of coffee.

The hard work is producing the business rules for your app. Business rules will be the core of the technical specifications for your app.

Business rules – the core of your app

The business rules detail exactly how each button, each slider, each interface element will work. It will detail how actions taken by your users through your app’s interface will interact with your business processes, third party services, and your backend.

It’s all about the details, details, details, and thinking them through and getting them right. This is why it is hard work. And why it’s important work. Getting your business rules right the first time saves you money and time.

As the core of your app’s technical specification, they will enable the developers to work out the infrastructure you will need to run your app. Things like:

If your business already has technical infrastructure the effort will instead be spent on how to integrate it with your existing set-up.

But those big decisions are things we work on with you. We’re here to give you the benefit of our experience across hundreds of client jobs during every step of the process, including advice on writing the business rules.

what-business-rules

What business rules look like

There is no standard format for business rules. Some clients have presented us with complete technical specification documents. Others have used a spreadsheet to list out how they want their app to function. A popular option is laying out the screens created during the wireframe stage alongside the details of how the interface elements on the screens will work. That’s what we’re going to do here.

For this example we are going to pretend that we are building a mobile app for dining recommendations. Let’s call our imaginary app Bancwit. That name needs a few more iterations, but it will work fine for us.

We’re going to specify the business rules for the main screen of Bancwit. This screen is where they start the selection process for a dining destination. It provides access to all the venues registered with Bancwit as well as directing users to venues in their immediate vicinity.

Some of the functionality is obvious, but as you can see below there is some business logic that can’t be derived from looking at the prototype. This can all be done within Google Docs for easy collaboration. Below we use a simple two column table with the screen on the left and the relevant business rules on the right. It helps to work from the top down.

Bancwit Screen 4a – Main Screen
Mockup
Description
mockup
Search:
Searches use autocomplete. After first character entered the search overlay appears (see 4b for details)
Location
tapping will bring up map with nearby restaurants (see 4c for details)

Top categories buttons:

  1. tapping will replace Dining Options panel with category venue options ordered by:
    • Special positioning buys
    • Paid positioning
    • Premium venue members
    • Paid venue members
    • Other venues
  2. will be recorded for venues appearing in first 5 positions
Dining options – View all:
Transition to screen 4d.

Dining options buttons:

  1. Overlay venue carousel (see 4e for details).
  2. Update Near Me to appropriate venue for dining option

Near Me:

  1. If no Dining Options category is selected, where distance is within threshold, Venue order will be:
    • Special positioning buys
    • Paid positioning
    • Premium venue members
    • Paid venue members
    • Other venues
  2. If a Dining Option is selected, display nearest venue in category ordered by:
    • Special positioning buys
    • Paid positioning
    • Premium venue members
    • Paid venue members
    • Other venues
  3. Special positioning buys and Paid positioning venues are distance adjusted by -10% and -8% respectively
  4. Impression will be recorded for venue appearing in the first position
  5. Tapping on any part of Near me panel will go to Venue screen 4f.

What business rules aren’t

Business rules are purely about what needs to happen, not how it will happen. The how will be handled by the developers once your business rules are complete. That process will be covered in a future article.

Business rules are not flexible. And they are not vague. The business rules need to be simple and clear enough that a developer can code them without the need to hit you with questions. This is another opportunity to save you time and money. Meeting this level of clarity takes practice. We’ve had the practice and it’s one of the many things SoftwareSeni can assist you with on the path to launching your app.

business-rules-programming

Let the programming commence

That’s it for this short introduction to business rules. Unless your app has some particularly tricky tech that needs implementing and testing, completing the business rules brings the prototyping phase of your app’s development to an end.

The next step in the process is software development. We will cover how SoftwareSeni handles building your app, and your role in the process, in a future article. Until then, if you have an app or a web site of your own that needs work, or if one of our extended teams will help you hit your goals, get in contact.

Turning your idea into action – the how and why of prototyping

Following on from our article on product conception (you might want to read that first), this article is about bridging the next gap in the development process.

That gap is the one between having a solidly documented idea and knowing what to build. This is where prototyping takes place.

When you’re prototyping you want to choose the methods and the tools that let you move the fastest, explore the most alternatives, and make the best decisions in the limited time available.

Read on as we cover the prototyping process.

Who are you prototyping for?

From the Lean Canvas that you would have completed as part of your product conception, you will know who your audience is, and within that audience, who your early adopters are.

Your early adopters are the group you’re prototyping for. And who are they? That’s where personas come in.

A persona represents the ideal member of your audience and is based on data gathered by interviewing your potential customers. It is used to direct high level decision making on product features. Instead of asking “What do we do next?”, personas enable you to ask “What would this customer want us to do next?”, reinforcing a focus on delivering value.

You can read more about personas and how to build them in this article and this article.

Personas are a mix of demographics — age, gender, socio-economic status, etc — and needs. Those needs are the ones your product is being built to meet. How your product fulfils those needs are customer journeys.

Customer journeys – trips through your app

A customer journey can be at its simplest the steps a customer goes through to use a feature of your app. For them, it might be finding their dream holiday. For your app, this might involve performing a search, scrolling through options, and tapping a heart icon.

Customer journeys map transactions, transactions that might be essential or emotionally important to your users, to the functional features of your app. This resonance, this emotional value, that is inherent and intrinsic to the use of your app can become invisible to you as cast it into interface elements and interactions. But it is vital to keep your user personas in focus and the needs that drive them to use your app.

From customer journey to screen flow

Finally the sketching can begin! Screen flows are paths touching multiple screens that users will take to complete their journeys. Each required screen needs to be sketched, considered, and re-sketched. The interface elements — displaying information and providing interaction — need to be selected and arranged. It is an iterative cycle of refinement and feedback. You don’t need to invent a new visual language. The more you follow best practices the faster you can move forward.

Finding best practices for your UX

Dribbble.com is a creative community where top designers from around the world share their work. You can check out current trends and best practices in product design and UX for inspiration right here.

A portion of your customer journey, and thus your screen flows, is going to be product hygiene — the basic features common across apps and expected by users. This includes things like authentication, notifications, etc. We discuss product hygiene in more detail in our article How thinking like Frankenstein will help your MVP.

Don’t be afraid to save time and headspace by finding designs that lay out these standard features and cribbing from them. Definitely don’t waste time “re-imagining” them. Save that for your core features.

Building your screen flows

Don’t jump onto the computer too fast. You can move faster sketching wireframes using pen and paper. It’s called paper prototyping. You can do it with blank paper and a pen or you can sketch in device templates you’ve printed out. But don’t go too far down the path of paper kits and cut-outs, etc. You want to sketch enough that you have stopped scratching your head when you think about how a particular feature will operate.

The bonus is that these paper sketches can be used as part of your initial user testing. Grab anyone unfamiliar with your screen layouts. Ask them to point where they would click, get them to tell you what they would do and what they think would happen. Use these tests to iterate on your sketches — you can redraw on the spot — and improve your design before taking it to the computer.

From paper to screen to interactive

Our tool of choice for building wireframes is Figma. It is a web-based, collaborative design and prototyping tool. The way it enables a fluid conversation between designers, users and programmers makes it an essential part of our recommended process.

Figma provides features that allow you to iterate on your UX. You can quickly throw together wireframes with active elements to create a clickable prototype. You use these along with your test users to refine the screen flows that represent your customer journeys.

At the same time, Figma provides the detailed control your designers need to create the branding and polish that will make new users want to download your app.

The design details — sizes, positions, colours — are all communicated cleanly by Figma from the designers to your developers. So when you’re ready to start coding your app it can happen as quickly as possibly.

Iterate, then iterate, then iterate some more

Figma’s ease of use and shareable prototypes means you can be reaching out for feedback as often as your users can stand it.

You’ve already chosen the key feature set your MVP will be launching with. You’ve got your product hygiene features locked down. The more you can test and troubleshoot and streamline your key features before launch the more you reduce the risk at launch.

Time to start building

You’ll know when your customer journeys are ready for the next step. There will be a shared clarity between you, the designers and the users you introduce to your clickable prototypes.

It’s an exciting point to reach. The end feels so close. You can see how your app will look. You have a taste of how it will function. You have users that want it. All that needs to be done now is the coding.

That’s a big step. Too big for this article. We’ll cover it next when we look at Agile development and the MVP.

Until then, if you have some napkin sketches of an idea you want to turn into a prototype, contact us to have a chat.

If you’re not at that stage yet, but you have a business idea, you might like to check out our article on product conception.