Starting a startup is no easy task. Neither is selecting a team and then finishing your first mobile project. If you haven’t read our previous post, “how to select a startup squad & finish a project: part one”, you need to immediately. The post will guide you through building your very own startup team.
As for finishing a project, it’s more than just having an idea and making it come to life. The devil is in the details i.e. you need to see your project through, end-to-end. Let’s get started:
1. Developing the idea
Your startup is created upon one small yet powerful thing: an idea that fulfilled a customer need. Coming up with ideas isn’t the hard part, it’s figuring out whether or not this idea can be converted into a worthwhile business. Not every “great idea” can turn into a “great startup”. You need to research the market and figure out the following things to narrow down a very specific customer:
- Who are you helping?
- What do they need?
- Why do they need it?
- How would they solve this need?
- What are your potential customers’ financial habits?
- What are their lifetime goals?
Once you’ve figured this out, the next critical step is the gathering of requirements. With the help of your product manager, you need to figure out the kinds of requirements your application would need. A critical component in the development life-cycle, requirement gathering takes two forms: functional requirements and non-functional requirements.
Functional requirements are the elements you would see visibly in your application. For instance, if you have a taxi service app, a functional requirement would be allowing users to see how many cabs are available near their current location. A non-functional requirement would take the form of figuring out how long it would take for a customer to book a taxi (should it take 20 seconds, 30 seconds?)
Get feedback from your stakeholders, figure out the strengths and weaknesses of the market, have a solution for each weakness and if there are any holes in your product, the time to tackle those issues is at this stage. Lastly, have a sketch of mockups ready as you move on to the next stage which is strategizing and implementing.
2. Strategy and implementation
Stage two involves strategy and implementation, which means defining actionable roadmaps, identifying the kinds of resources needed, prioritizing certain features, and setting specific timelines. With the help of your product manager, a development manager and the UI/UX lead, you have to figure out the plan of attack.
At the idea stage, you have figured out who your customer is by implementing a 360-analysis of their persona. With that information, you need to figure out how your solution can fulfil the needs and wants of your customer and what would be the barriers in achieving this goal.
By resources, you need to figure out what kind of application you are building, and allocate all the resources towards it: a development team, a design team, a QA team. If the project is larger, you can expect the team to be larger as well.
Features prioritization means figuring out what is essential to your application being successful. If you have an ecommerce app, would a checkout be necessary? What about creating a personal profile? Would you offer a feature that does order tracking within the app? These are just some of the key features you would have to narrow down.
Setting realistic timelines is key. Many startups seek to accelerate their project and set exceedingly optimistic “going-live” dates regardless of the limitations and speedbumps that come along the way. For instance, sometimes the design phase extends or the testing phase takes longer than expected due to quite a few bug reports but that does not mean the timeline is going to change. There needs to be set deadlines for every phase of the project and continuous monitoring of progress in order to make sure the lifecycle of the project does not get interrupted.
3. Designing and prototyping
Once there is a clear road-map of what needs to be done and actionable plans are defined, the next stage is envisioning and designing what the concept could be. With the product manager and the UI/UX design lead, you are going to come up with a visually exciting interface that keeps users in mind. First and foremost, as we keep impressing upon in this post, a timeline needs to be decided. If you have given two weeks to spend on designing the entire interface, you need to keep a realistic expectation of how much can be done in that time.
Your designer is most likely going to ask you the following questions to determine what kind of experience he or she should create:
- What is your startup about?
- What goals do you want to achieve with your application? (A presentation of the company, a presentation of product or multiple products, get new customers to your business, convey news, drive support online)
- Who is your target audience?
- Why do you think your application should be preferred by visitors for the services you provide?
- Have you finalized the content and visual material?
- Do you have any content writers you would like to engage in the project?
Once you have sat down and answered all these questions with your designer, the next step is wireframing. This step is usually done either by hand (sketching) or with photoshop. Your designer will create a graphical representation of what your application will look like and you will finalize what you like and what you don’t.
Then we move on to the final part, the actual designing. The wireframe gives a rough idea of what your application would look like but using tools such as Photoshop and Adobe Illustrator, the final design is created using a color scheme and font style you provide to the designer. In the case of well-established brands, the “style” is given by the client beforehand. As a startup, this is something you will have to do hands-on with your designer to give a unique look and feel to your application.
Lastly, you can keep check on the designs with a tool most designers use called “inVision”. It allows you to monitor the designs and provide feedback in a comments section of what you like and don’t like about the graphics. If you are satisfied with the designs, you progress on to the next stage which is as important as the application itself: prototyping.
As your UI/UX Design Lead finishes up the designs, he or she uses inVision to create a prototype along the way. Prototypes are extremely effective in collecting responses from clients (or the startup owners for instance). It’s an interactive listening tool and allows people to share their ideas. For instance, if there is an idea you cannot particularly articulate to your designer, the prototype can translate your vision into reality in order for you to see if your idea would actually work.
Prototypes are an “official requirement” for most businesses and they offer live interaction. Your designer will create multiple application screens and the buttons are hyperlinked to different screens in order to give you the actual “feel” of how your application would work once it’s built.
4. Development and testing
Now we can let the games begin, creating the actual application and bringing it to life. Your Development Manager and development team will now make the magic happen using coding and programming to develop the application. Here are a few of the languages that are currently trending in the software world and you can expect your development team to use:
- Java (used for mobile applications, enterprise applications & desktop features)
- Python (extremely popular for it’s easy syntax allowing fast development)
- Ruby on Rails (ease of use since not as much code used and some of the biggest companies, like Twitter, have used Ruby in one way or another)
- Swift/iOS (works best with Apple products and is easier to read & maintain)
- C++ (has been used in Windows for decades and is often used to create video games)
The Product Manager will work on the sprints i.e. the monthly goals, down to the day-to-day tasks. This timeline is decided on a tool called Jira, a project management tool that also provides bug and issue tracking. There is also a daily scrum that defines goals for the entire team. Additionally, there also needs to be an “environment” set up before getting development started. For instance, to build an iOS app, you need a Mac laptop, the operating system on a Mac is the only thing that will allow you develop an iOS application.
The scrum can look something like this:
Of course, you would like to see your product being built along the way. Milestones are set up by the PM to show sets of features by demoing to clients along the way, so that the client can provide feedback of what they like and don’t like.
Lastly, but most importantly, testing is essential to the entire process. The Quality Assurance Lead and their team work closely with the development team to manage, control and fix any bugs and issues that come along the way. The QA team will also use Jira to report bugs (as we have previously mentioned) and generate reports on every feature giving it a pass or fail grade.
Now that you have a finished product, it’s time to go live. With the help of your project leader and PM, list your application in an app store either for free or for a small fee. When all things are said and done, you need to ensure that you are offering something of value and quality to users. Something they will want to use and share.
Along the way, your team will provide continuous support so that the application never falls short of users expectations, but only exceeds them. Application updates, operating software updates, all the like, are something your team will have to keep on top of so that you don’t fall behind in this ever-changing tech market.
Let’s summarize a few key takeaways for you:
- A good software project team will have the following people: a Project Leader, Product Manager, UI/UX Design Lead, Development Manager, Developer, and a Quality Assurance Lead.
- There are 5 stages in the lifecycle of a product: developing an idea, strategy and implementation of that idea, designing and prototyping, developing and testing and finally deployment.
- All throughout the project, your right hand man and best friend will be your Product Manager who is there at every stage and every step of the way.
- A great product not only needs a great team, but a great strategy as well. If you have done your research thoroughly, there shouldn’t be any reason why your app will not be a success.
- Providing support after your application has launched is absolutely necessary. Not only will you get important user feedback, but you can quickly implement the required changes to ensure your product meets today’s demanding standards.
Keep these things in mind and your startup will be well on its way to conquering new horizons of tech success.