3 Mobile App Development Disasters and How to Avoid Them

Page 1

3 Mobile App Development Disasters and How to Avoid Them Own Your App Development Process. Don’t Let It Own You.

mentormate.com | 3036 Hennepin Avenue, Minneapolis, MN 55408 | (844) 206-8707


Contents

Caution development ahead

1

Mobile development disaster 1: Out of time, over expected budget

2

How to avoid running out of money during mobile development

5

Mobile development disaster 2: Aimless investing

12

How to avoid wasting money in software development

15

Mobile disaster 3: Asked for one thing, got another

23

How to avoid miscommunications in software development

25

Worksheet: Building a mobile app project plan

32


Caution development ahead

“Under construction.” It’s a phrase splashed on

Mobile development and road work share more

road signs across the country. Road work isn’t so

than just end goals. When a construction project

different from building a mobile solution. In both

veers off course, things can go from bad to worse

types of projects, teams are working — hard —

quickly — from lost work that requires additional

to get from point A to B. In construction, that

days, weeks or months for completion to spiking

might mean building a new bridge or widening a

costs that have both team members and taxpayers

freeway to physically move people between two

shaking their heads. We’ve seen what it takes

locations. While mobile developers don’t need

to design, develop and deliver on-schedule and

orange pylons or reflective vests, they connect

on-budget projects. Now let’s look at three of

people too — with features, functionality and

the worst mobile development disasters and

capabilities that add value to their daily lives.

what you can do to avoid them. 1


Mobile development disaster 1: Out of time, over expected budget

2


Setting the scene You’ve reached the end of your mobile app development project. Looking at your invoices it’s clear you’ve gone far over your expected budget. Besides that, weeks have passed since your projected launch date. With each meeting, go-live is pushed further into the future. You may be racking your brain and wondering how this could happen. You have a business strategy

Why (any) projects run over budget

and a five-year plan. Where did you go wrong?

• Poor communication between the project team and client

In software development, the world ‘over’ can

• Replacing resources midway through

with a partner who over delivers exceeding your

• Human error • Pivoting to add new features halfway through

either be a very good or a very bad thing. Working expectations furthers your dual partnership and mutual trust. The opposite case is a quintessential mobile development nightmare. The “average” IT project runs 200 percent over schedule and 200 percent over budget.1 What can you do to avoid it? 3


The cost of tardiness

Don’t let perfect get in the way of great. What’s an MVP? No, this doesn’t mean most valuable player. In software development, MVP stands for the

When mobile app development companies

Minimum Viable Product defined during feature

overextend beyond their capabilities and over

prioritization. This is the leanest first version of

promise beyond what they can deliver, there are

the app that satisfies client needs and offers

very real costs associated. The costs beyond just

users value. Just because an MVP is released

development dollars are important too. What does

and functioning doesn’t necessarily mean

over-schedule and over-budget delivery mean for

development is complete. Tasks may still exist

businesses? It might mean the launch of a new

to be completed for future releases. Don’t

brand or other internal software is delayed, or the

let perfection stand between you and working

growth of your business is constrained. Worst of

software. There’s always the opportunity to

all, a competitor may beat you to market.

fine-tune in future releases. 4


How to avoid running out of money during mobile development

5


Coordinate closely between internal and external development If your project requires splitting development duties between a software provider and an internal IT department, set aside time for regular meetings between teams and project leads. Communication is key to ensure all parties

Don’t forget to ask these questions in your next cross-functional development meeting

advance at a similar speed and any new functionality can integrate with legacy systems.

Are we on track?

How often should you meet?

Are there any blockers or impediments to success?

Plan on a meeting of the development teams once a week. During the first meeting, identify the completion objectives, who is working on them and when they must be finished. Then, focus the subsequent meetings on sharing status updates and ongoing risks.

What questions or challenges have we identified in the last week? How are we going to set up our test environments and validate success has been achieved before pushing the software to production? 6


Define your needs Conceptualization and ideation are the initial project stages that ensure development is well-positioned for success. Have a clear understanding of your need before you approach a mobile app development company. Know what purpose you want your solution to serve. Begin to define the scope of your solution. Determining your users and business needs will help guide initial strategy discussions with the software

Sign of success: Your software partner asks questions from the user’s perspective.

provider you choose.

Begin thinking about this before approaching a software partner:

The key to a successful project is coming to an

• Who are my users?

understanding with your software provider about what you both expect to see in the final project.

• What are their business needs?

The right software development partner should

• What value will my app add?

spend a lot of time asking about the features of

• What are the high-level features under consideration?

the project from your users’ perspective.

7


Prioritize your features Your software development partner should work with you to understand your basic needs,

1

2

3

4

business objectives and goals. Prioritizing your features is crucial to staying on schedule and on budget. If you are on a tight deadline to complete core functionality avoid the temptation to backtrack and add more features halfway through. This only serves to divert you from the core capabilities your solution needs to launch. Instead add them to the backlog. Backtracking, rework and adding additional “bells and whistles� to the first release are key culprits responsible for driving up costs and pushing out your completion timetable. If you do choose to add features to your first iteration or reprioritize functionality, understand the cost. 8


The race to feature complete

The “race to feature complete” is a risk management and development strategy to identify, plan and develop core functionality. Once you’ve worked with a software partner to define your MVP, you’ve identified a given number of features to complete before launch. Let’s say there are 10. Work on those features until they are functional but not polished. Then use your extra time and budget before launch to double back and take higher priority features from “good” to “perfect.” Don’t get stuck in a continuous loop perpetually For example, suppose you’re working on a reader

fixing and editing one feature. If feature complete

app. You could spend hours finessing the page

isn’t achieved and the app doesn’t launch the

turn animation. Or, you could code it so it’s

component you spent so much time on —

workable, and return to polish later.

won’t matter anyway. 9


Continue working through the feature backlog after launch Software development is a balancing act between time and value. How can you release an app that offers maximum functionality in the shortest time frame? In determining and working toward the software MVP defined during feature prioritization, additional functionality will remain in the backlog. Subsequent releases will involve working through the backlog. That’s why it’s important to make sure you haven’t bit off more than you can chew with your MVP. You will revisit the backlog anyway. In some instances, you may groom the backlog and reprioritize features as you race to feature complete so previously high priority functionality may be exchanged for something with higher business value. 10


Bring design and development together at the beginning Design and development go hand-in-hand. The best software partners bring the design and development teams together for collaboration early. Worst case scenario? The design team creates wireframes and mockups with a skin and functionality the client loves. Then when shared with development, they slam on the brakes. Why? Maybe the design team developed work that doesn’t overlay well on existing backend data and processes. Maybe it’s difficult to implement. Or maybe the problem is a simple one. The design team got too fancy for the needs of the solution. It’s also important for developers to reconnect with designers along the way to avoid development at the expense of the user experience. Communication between the teams early on will ensure as little rework as possible is required. We all know what rework means. Double the work and double the cost.

Silence isn’t golden Here’s what can happen when your development and design teams don’t talk. Development can’t implement design work. Costly rework is needed to align design with software norms informed by development resources. A subpar solution is created that doesn’t leverage intuitive use patterns because collaboration was rushed. 11


Mobile disaster 2: Aimless investing

12


Setting the scene You started out with the best intentions.

Development is a careful dance between satisfying user needs to add true value within the project budget and scope.

You had a budget and planned to stick to it. Let’s say you began your software development process with a fixed sum of $50,000. You signon with a firm who says they can deliver exactly what you need within your budget. As you move through the process, the mistakes begin to grow like a pile of leaves in the fall. Only this time you’re not trying to jump in. You need to dig out. Questions start to overtake your thoughts. Have I wasted it all? Maybe you took out loans or a lien to pay for the development. Then another equally destructive thought starts to creep in, “Well, I’ve come this far. I might as well continue on. It will be worth it in the end.” Wrong. Software development should never be continued because you’ve “come this far.” Development is a careful dance between satisfying user needs to add true value within the project budget and scope. 13


Assessing the alternatives Sunk Cost Fallacy When an investment goes belly-up there’s a human tendency to want to continue on the current path in hopes that more money and time will make it better. The Sunk Cost Fallacy is generally categorized by thinking that follows this formula. W has been invested in project X. More money is needed to complete it. Let’s call this Z. Because Z will complete the project, it is justified. Throwing money at a wall because you’ve already invested a large sum isn’t necessarily the answer. The better move is to consider the long game. You have two options. Commit to fixing your

It’s a matter of process

solution or abandon the effort. Choosing the

Projects running Agile Methodology encounter

right one is the difference between salvaging this

this situation less. Why? The Agile process is

disaster and piling more money into a ship already

characterized by delivering business value as

taking on water. In this case, the sinking ship is

soon as possible. Frequent releases and demos

known as the Sunk Cost Fallacy.

let you know if development is on track. 14


How to avoid wasting money in software development

15


Don’t be logically fallacious. Just be logical.

There is a difference between falling victim to the Sunk Cost Fallacy and smart investing. The Sunk Cost Fallacy is defined by aimless investing and the idea that seeing through a poor investment will make it better. Continuing to build a mobile solution on an unstable or poorly built platform is much like trying to construct a house on quicksand. The more you struggle, the faster you crumble. Rather, smart investing is taking stock of your options and

Ask yourself these three questions to determine whether to continue on. • Does my app add value or fill a pre-existing user need? • Is my solution unique, or does it offer new capabilities other apps don’t address? • Is my app scalable, and can it be monetized?

selecting the path where you will see the most

If the answer to these three questions is “Yes,”

long-term return on your investment.

consider staying the course. 16


Redirecting your development

It can be easy to focus on a short-term loss, especially if it’s a large one. But if you see true

Choose the right software provider from the beginning

value in your solution, a simple redirect can get

For anyone looking to choose a software provider

your app development back on track. Take a

outright or begin working with a new provider

step back, and ask yourself how you ended up

after development has stalled, committing is

in this situation. Was it because you valued

a little like putting your life in someone else’s

economic savings over lasting development

hands. And, in essence it is. After all, the success

value? Maybe. Regardless of how you landed

of a development project can have very real

here the right software development partner

consequences for your personal and professional

can throw you a metaphorical life raft to keep

life. Your stress level, happiness and even financial

you and your software from going under.

solvency rest on on-time and in-budget completion. 17


Meeting the hard questions head on That last question is an important one. One of the best advantages to working with a software development partner is they become as invested in your solution as you are. They learn the history. Ask yourself these three questions to help you determine whether the software provider you

As a result, they will be able to provide the best, quickest and most economical support down

are considering is up to the task.

the road. Why? They won’t require onboarding

• Is your new partner solvent?

a new version or add additional functionality.

• Do they have proven experience developing for your platform?

each time you want to make a change, release

Bonus points

• Do they give you the impression they will work with you to make good decisions rather than always saying, “Yes,” especially if proposed ideas have the potential to harm the project?

Pay special attention to software development

• Do they have the breadth and bandwidth to support your solution as it grows and evolves?

delivery of wireframes and mockups for review,

firms looking to be in touch every step of the way and make decisions together. If a potential development partner begins talking about early they are a gem. Don’t let them go. 18


Invest future-first If things go your way, your app and business will be around a long time. Choose a partner that helps you remain relevant 5 or even 10 years down the road — ancient history in app time. A good partner asks “Why” to position your business for growth. The right questions can even help you reconsider what you need and the best model to achieve it. Your partner should make

Past experience predicts future success.

you smarter and not be running to catch up. In selecting a software development partner, consider their experience. • Do they possess the expertise to anticipate emerging trends and how those needs will impact your trajectory? • Do they have referenceable examples of success? Past experience predicts future success. Consider the long game now. Your future depends on it. 19


Do your research

Five things to ask when interviewing development house references:

• What was your overall experience like working with X? • Was your project delivered on time and in budget? • What value did X add that you didn’t anticipate? • How did you overcome challenges along the way? • Was the final result in line with what you expected? • How did they collaborate with you throughout the course of the project?

Honesty is the best policy Ideally, your software development partner will be upfront with you and provide realistic timetables Before you select a software partner, complete

for development and delivery. You want a partner

your due diligence. Ask for references and

who’s transparent, not one who works for three

reach out to previous clients to learn more

months, and then shows you the results. More on

about their experience.

transparency in Mobile Disaster Scenario 3. 20


Don’t settle for a race to the bottom

The landscape to secure client business is a

Go with your gut, not just the budget

competitive one. Developer Economics estimates

An important — maybe the most important —

there are 2.3 million developers worldwide with

thing to consider is what you value in a software

680,000 of those working in the U.S.2 These

development partner. Don’t select a firm just

developers are either working independently

because they offer you the best rate. Consider

or split between firms across the country.

what might accompany that decision to undercut

With a glut of developers and firms vying to

the competition. Maybe they are an inexperienced

secure business, many mobile and digital

firm hoping to win big business and bolster their

solution providers will say what it takes —

portfolio? Whatever the case, set yourself up for

whatever it takes — to secure client business.

success by securing the long-term value that

This includes over promising on delivery time

comes with practiced software development.

and underestimating the funds it will take to

So what does this scenario look like,

actually complete the project.

and how can you spot it? 21


Avoid the classic oversell Tell-tale signs you’re being oversold When new clients release an RFP for business and software development firms respond, clients hear it all. All vendors claim to be the best, the first and the smartest. So how can you recognize the

• The vendor can’t offer specifics detailing how or why the recommendations they are making matter. • They don’t ask thought-provoking

diamonds who actually CAN deliver. Ask yourself,

questions. They are only parroting

do the vendors I’m considering know as much or

back your assumptions.

more than me? They should have the technical expertise to add value and show you what you don’t already know. That’s what you’re paying for. Growth is another factor to consider. During the software partner’s time in business, has it been stagnant or marked by continued expansion? Especially in choosing a strategy firm, look for

• They offer aggressive timelines that seem “too good to be true.” • Their rates are SIGNIFICANTLY lower than other vendors. This could be a vendor’s play to expand their area of expertise. Ask yourself if you want your project to be the guinea pig?

a partner whose business trajectory mirrors the results you are hoping to achieve. 22


Mobile disaster 3: Asked for one thing, got another

23


Setting the scene Start Developing functional, valuable software is as far as you can get from peering into a crystal ball and divining the future. It relies upon clear and continuous communication between clients and software partners along with actionable results to make that anticipated future a reality. Depending on who you choose to partner with or how they operate check-ins, sometimes that communication just breaks down. If and when it does, you’re up a creek without a paddle AND working software. Maybe you selected an off-shore development house from China or India that asks for software

Finish

specifications then delivers convoluted, sub-par code. Or maybe the software development house wanted to flex their design muscle at the expense of your app’s functionality. It could happen to you. Here’s how to make sure it doesn’t. 24


How to avoid miscommunications in software development

25


Create a system of checks and balances Consider developers your second team of UI/ UX designers. Developers, by the very function of their title and expertise, know their SDKs well. They know what a default button or text field on a certain software. In other words, like designers, they know what users expect to see. The best software development partners leverage this understanding to create a system of checks and balances between developers and designers. Collaboration is essential to render the design and development process as smooth as possible. Developers can also recommend changes to design along the way to align with development best practices or intuitive use patterns that have

What’s an SDK?

become normative. Collaboration between

SDK stands for software development kit or

designers and developers isn’t just about making

devkit. It includes the base set of tools that

the design better earlier. It sets you up to avoid

allow developers to create software framework,

problems you aren’t expecting down the road.

packages or other platforms. 26


1

Get involved

Here’s how to spot a valuable software development partner early on in the process: They ask a lot of questions — ones you’ve never thought of. Your software development partner should challenge you. They bring a wealth of experience having worked on an expansive set of projects for other clients. They have seen and experienced what works — and what doesn’t. They are widely familiar with the use patterns of today and what features work best across the variety of devices in the market. Your software company moves from provider to partner status when they can offer new insight you haven’t considered and offer suggestions to take your

The best development partners will involve you in the process. Valuable, functional apps aren’t built in a vacuum. They require collaboration and communication between the project delivery team and client along the way. Formal check-ins between client and team should happen on a weekly basis. If you’re in talks to select a development partner and they don’t mention collaborative planning and review sessions, gather your sketches and don’t look back.

solution to the next level. This should be the standard. Unfortunately it isn’t, when you find it you’ll know you’ve struck gold. They advocate for what you need. Find a good software development partner and they become a technical extension of your close-knit product team. Call it mind-meld or just close listening, you become in synch. As a result your partner has an understanding of your needs and expectations. Your partner should become your biggest supporter and most trusted counsel. 27


Embrace transparency

Look for a partner who embraces transparency. Perfection is the enemy of progress. If your partner is afraid to show you in-progress software and wants to wait for a “big reveal,” be very afraid. Only by reviewing software frequently can you ensure you’re getting exactly what you expect. Imagine if you waited for the reveal only to find out your partner’s expectations and takeaways from your meetings were confused all along. Disaster. You and your software development partner are in this together. Realistically, they should provide you working software every two weeks. Now, it may not be perfect. But, along the way you should see fixes happen and capabilities expand until finally it’s just right.

Imagine if you waited for the reveal only to find out your partner’s expectations and takeaways from your meetings were confused all along. Disaster. Benefits of reviewing software every two weeks • There are no surprises at the end. • You know what’s being worked on and what’s being held for later. • You can track how much money you’ve spent in a week. • You can identify features that don’t perform as you expect early on. 28


Sprint to success

Using Agile Methodology, the two-week period of planning, development, progress and review is called a sprint. Shippable — meaning coded

Review the review

and tested software — is then reviewed during

After each demo, review the progress.

a meeting of both the client and partner teams

Ask yourself whether the work completed

during a sprint review, also known as a demo.

by your provider matches your expected timeline and budget.

Sprint planning is integral to the success of a software development project. The meetings

If not, be vocal. Your mobile app development

allow each team member to realistically estimate

partner should be guiding the process, not the

how long each task will take. It’s important

other way around. If you’re bringing more ideas

to remember resources are not machines.

and process to the table then they are, there’s a

Setting realistic timelines together safeguards

problem. Quickly re-assess progress and if you’re

everyone from overcommitting and under

not seeing the development you expect, seek out

delivering during the development process.

another provider to avoid long-term delays. 29


Use call and response communication

The best software development processes are like a melody of creation and communication where client needs to harmonize with development capabilities. Whenever you hear a difference between what you say and a member of your partner team, cut the music. Assuming you’re on the same page is dangerous. If you’re not comfortable with level of updates or what is being planned, ask to dive deeper. Your

Say it back

expectations of the development process

Repeating back what you hear as next steps

can be just as important as expectations

will ensure the client and development teams

of the end product. If you’re unfamiliar with

are moving forward in tandem. Something as

develoment methodology and language,

insignificant as a wording tweak might not be

ask your partner to use basic language.

so insignificant at all. 30


Cue credits: Development takeaways Design software users can’t resist and keep them coming back A user’s experience accessing software depends on the amount of value they gain from it. At the very beginning of your process, think about what

Simple experiences standout

your user needs and expects from your solution.

When in doubt — simplify. Creating value

As you work with a software partner to map how

for your users isn’t achieved by providing

users move through your app, portal or website,

every feature imaginable, it’s achieved by

break their actions into steps. Then create an

choosing only the features users need.

interface that guides them seamlessly through

Research your target audience. It’s easy

each. Put yourself in your user’s shoes. The

to say yes to features you think users may

best strategists, designers and developers are

want. Instead, let your conclusions be driven

empathetic. They adopt their users’ mindset

by data, established use patterns and user

and think about the features and experience

empathy. It’s difficult to have a lot of features

that would provide the most value.

and a clear user experience at the same time. 31


Worksheet: Building a mobile app project plan Don’t go in blind. On-time, in-budget software development that meets your expectations and fits your needs starts with an understanding of what you want and who can help you realize it. Use this guide to help you identify what matters. Goals

Target Audience

Know answers to these questions. 1. How old are your users?

2. Where do your users live?

3. What do your users do for a living?

What do you want your app to do? Identify three main goals. 1. 2. 3.

4. Are your users a certain gender?

5. What characteristics separate them from the rest of the population? (Relationship status, languages spoken, family size)

Costs

How much money do you want to invest in software development?

How much money do you want to save to market your solution?

Features

What features or functionality are most important to you?

6. How, where and why will they be using your software?

Delivery Date

When would you like to have your project completed?

32


Talk with an expert Ready to innovate? Contact us to learn more about mobile app develpoment. We’re all ears. 844-206-7807 info@mentormate.com

MobCon developed by MentorMate MentorMate has designed, delivered and staffed digital experiences since 2001. Along the way we’ve learned a lot. Now it’s time to share. That’s why we founded MobCon in 2012 and MobCon Digital Health in 2015. Each year we host conferences for the top minds in mobile and digital strategy to do just that. Be part of what’s next and dive deep into the trends and technologies revolutionizing engagement in today’s business landscape. Connect. Listen. Grow. We’ve taken the leap. Have you? Register for our next event at mobcon.com

mentormate.com | 3036 Hennepin Avenue, Minneapolis, MN 55408 | (844) 206-8707

33


References 1 Eichorn, Frank L. ( 2005, Sept. 1). Who owns the data? Using internal customer relationship management to improve business and IT integration.

2 Sethuraman, Anusha. (June 13, 2014). Mobile App Development Trends Worldwide: What You Need to Know. https://blog.newrelic.com/2014/06/13/mobileapp-development-trends-worldwide-needknow/


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.