We are quite flexible in the way we work as the nature of our assignments varies widely. Not always we get to work on an assignment from scratch and build it entirely ourselves. Sometimes, we take up screwed up projects and repair them. Sometimes we are just doing some consulting, or maintenance work. So, whatever process model we adapted had to blend in perfectly with all these different plots. Since several years, the offshore software development teams & outsourced production processes have been plagued by a few common issues. Several small & big projects have failed due to requirements volatility, inefficient communication & consultation, unfinished feedback loops, quality deterioration over time, etc.
No amount of Red Bulls, or fancy office furniture, or eco-friendly living is going to help in overcoming those issues. The only thing that can save a team from those problems is a bulletproof process model build on the backbone of Scrum framework. So, it was a no brainer for us to set up our process model that was inspired by Scrum principles. Our process that we follow in the studio is meticulously structured by our Scrum Masters. It is based on the Agile development methodology. It is a carefully crafted process consisting of 8-steps. All these 8 steps help us in achieving the end objective efficiently without requiring us to wear ties, or prepare boring presentations, not that we hate ties or presentations, but still, you get the point.
BRAINSTORMAnalyse | Consult | Plan | Strategize | Dream
After the initial discussions with you about the project, we begin by helping you get all the prerequisites in order. Doing this homework is of prime importance. It is the foundation of the project. If you do not happen to have sufficient knowledge and material to begin with, our analysts will help you with all the research & study that is needed to get going. This is carried out in a rather disciplined way. Documentation is an integral part of this stage. We know what you’re thinking! You hate those dull PDFs and the morbid triteness of PPTs. So do we! We only prepare those essential documents that are absolutely vital for the execution of the project. And even those documents aren’t boring at all. They are an interesting read and are treated as guidebooks to the project in subsequent stages by all the team members.
BlueprintWireframe | Layout | Sketches | Mockups | Data Flow
In this stage, we take things up a notch. Our software analysts take those documents prepared in the first stage and begin sketching up the wireframes. Be it a product for a mobile platform, or a web-browser based system – every single part of its interface is wireframed. This serves two purposes: (a) For the client, it is the first visual preview of the layout of the entire system’s content placement & data flow. Seeing these wireframes clears up several crucial questions for the client. (b) In the subsequent stages, these wireframes will be the Bible for the designers, the programmers and the QAs. They’ll study the documentation prepared in the first stage very carefully. But it is these wireframes that they’ll refer to on everyday basis. You should see the number of sticky notes we add to these wireframes – the attention to detail is remarkable! Our analysts claim that they create the best blueprints in the industry, and their work evinces they certainly are!
DesignColours | Fonts | Pixels | Palette | Styles
This is the work we pride ourselves in. In this stage we set about the difficult task of finding the perfect balance between making the design look modern and futuristic, while keeping the interface so functional that it becomes invisible. Fortunately, all the hard work put in during the blueprinting stage comes handy now. The arduous task of simplifying the interface has almost been taken care of, so now, the designers begin making a number of other refinements in a variety of other domains. For example, exercises like understanding the cultural conventions, studying the target audience’s anthropological backgrounds, and researching about subject-oriented semiotics, take the designs to a level beyond the measures taught in books & classrooms. Apart from designing the final look of the product’s interface, we also help our clients with the designing of branding and marketing material. We’d gladly design even the logo and brand ambience of your product based on your ideas.
PrototypeTemplate | First model | Transitions | Animations | Experience
Since we take great care in keeping each of our projects unique, we don’t have any common model, or a reference product that we can revert to; and as Sir Jonathan I’ve said, “If you are truly innovating, you don’t have a prototype you can refer to.” And so, we create exclusive models for each of our active projects. This allows us to push the envelope a little further with every project we undertake and try out some crazy ideas and create an original user experience. We take up the designs of the interface and create prototypes of all important sections of the system. They are quick to build and they give a clear insight on how the end product is going to feel like. Prototyping isn’t a branched-out stage in the regular flow of the project. Whatever demos that we prepare during this stage aren’t tossed out after they are presented. On the contrary it is these prototypes that form the base of the project upon which the code is written and the entire system is built.
CodeFunctionality | Continuous Integration | Algorithms | Logic | Repository
Nothing can explain what this stage means to us better than ‘the magic trick’ analogy. As Christopher Priest explained in his book that every good magic trick has 3 important acts, so do our process model. The first 2 stages (Brainstorming & Blueprinting) were act #1: ‘The Pledge’, where we begin with something ordinary that is known to you. Then the next 2 stages (Designing & Prototyping) were act #2: ‘The Turn’ where we turn that ordinary into something extraordinary. But you wouldn’t clap yet, because the magician hasn’t showed you how great the trick was, which is why there is the 3rd act, the hardest part – ‘The Prestige’. It is after the end of this act that the audience is left mesmerised. For us, this stage of writing Code and the next one, together, are ‘The Prestige’. Our programmers & QA guys work their hardest to pull off these 2 stages perfectly and then when you see the outcome, you turn into a fan.
TestUnit Testing | Black-box | Bugs | Refinements | Performance
The process of testing isn’t carried out as a standalone process after the coding stage completes. That’d be too late to begin testing. We begin testing right from the blueprinting & designing stages. Initially, it starts with a slow pace. The QA team performs logical analysis and dry-runs different scenarios based on the wireframes and the interfaces designed. Then when the prototyping & coding stages begin, the throttle of testing is pressed a little harder. Precise and detailed test cases are drawn out and the builds are submitted by programmers on short intervals after writing a code for a particular module. The QA team responds quickly by reporting all bugs & issues using our bug-tracker tool. The priorities are set as well, so the programmers have a clear objective to accomplish. Thus, testing for us is like a continuous refinement process in our pursuit to perfection. It begins with the project and never really ends until the project goes live.
DeployBeta | Release | Test Environment | DevOps | Version Control
After undergoing through those 6 gruelling stages filled with anticipation, frustration, excitement and a dozen of other emotions, we arrive at this moment when the pilot program is ready for the launch. But the mission isn’t over yet. There are a zillion things that could go wrong and mess up all the work that is done so far. Thus, we approach the deployment phase with as much attention as the above 6 stages. With every project the manual exercises & technical duties that need to be performed in this deployment stage keep changing. We analyse what a product needs for going live, we design the plan accordingly. There are some basic exercises like preparing the transition material & grooming the on-site team, deploying the assets in the live environment, vigorously monitoring the performance metrics & traffic inflow, setting up multiple instances as backup environment, etc. that are mandatory for almost all our projects. These exercises are aided by state-of-the-art tools & infrastructure, and are scaled up or down depending on the launch’s requirements.
UpgradePLM | Sprints | Maintenance | Migrations | Code Health
Okay, so the launch went well and everyone is loving your product. Your product is going places and you’re getting rave reviews from all your users, so is it time to party, cocktails and beaches? Umm… not exactly. In fact, we’re barely getting started. Going further, your product should have a feature-upgrade cycle planned for at least next 12 months. If you don’t have sufficient upgrade plans for that long, then your product’s survival is in serious jeopardy. Along with that, you’ll need to maintain the current version of the product, enhance its performance, and cater to all the customer feedback. All this requires constant effort and since we’d be the ones who knows the product inside out, there is no team better than us who can assist you with that. We’ve got Annual Maintenance & Upgrades Contracts (AMCs) signed with 9 clients out of 10. Under the contract, we set up a dedicated team as per the project’s need that ensures the future growth of the product.