There is a growing demand in the technology industry to build the next generation applications that is faster, cheaper and performs better even on low cost hardware. This demand grows even wider with the shortage of good talent and sharp minds who can understand the complexity of building such systems that can interact seamlessly with end users while not compromising on the performance.
Constraints with development teams
When you don’t have an in-house development team and find an IT partner to work for you, there are several factors that affect the outcome of the project. You need to be careful in selecting the right partner for you which requires a separate blog post by itself. However, once the execution starts you need to know some of the common pitfalls that can happen and also how you can eliminate it to ensure a smooth development cycle.
The following summary gives you some pointers on what you need to do to get the best out of your development partner
Work with Mock Ups
Nothing conveys your vision and thoughts better than mock ups. A Mock up can save you a thousand words, as the team can get a first-hand impression on where you’re coming from and what your big picture is.
There are several online tools that lets you do mock ups instantly and most of them are free. Try some of these like:
There are also desktop tools and browser extensions like Dia, Mozilla pencil that can be used.
But the best thing about mock ups is that they do not have a standard form. So if you are not sure whether you want to use these tools, take a pen, draw what you see on a piece of paper and send that to the team. That’s all it takes to eliminate a chasm of miscommunications.
Insist on a Workflow
Development workflows are vital to any development cycle for it to be successful. Most development teams have predetermined workflows that they follow across all their projects. There are no standards as to what your development workflow should be like as long as it is followed meticulously across the team.
A general workflow goes like this.
List of requirement feature is to be implemented and identified bugs.
Chosen for design
Depending on the type of card/ticket anything that needs to be discussed before implementation
Anything that is undergoing active discussion on how the implementation takes place
Chosen for development
Anything that is finalised on design and ready for development
Anything that is undergoing active development
Ready for Review
Anything that is moved to staging after development for review by QA
Anything reviewed by QA or product manager and ready to be integrated to production.
This is a general guideline that most of the development team follows. Many development methodologies such as Agile-Scrum, Kanban are tightly integrated with a workflow that can be tweaked to suit our specific needs.
Automation is a very important yet often over looked part of a development cycle. Often many teams neglect this because of the over-heads that goes with the initial setup of automation process. Always insist on automating the essential parts of your development cycle to ensure that you are maximizing the available time for development. This removes any error that accompanies manual tasks due to human intervention.
Automation can be implemented in deployment to staging, testing and development, executing test cases. There are several open source tools available across technologies that can make this process efficient.
Next time you interact with your development partner, be sure to check with them on these tips above and make the most out of your development experience.