Things to know when embarking on large IT projects
If small projects can be treated as ships (or starships, if your prefer), guiding large IT projects is closer to commanding a whole fleet. How can you, as entrepreneur, approach leading complex projects and make sure that your offshore development team will deliver the best possible results?
1. Forget development and start planning
If for startups it is crucial to jump from the idea to the first MVP version of the product as quick as possible, for complex IT projects it is important to spend enough time on business analysis, software project planning and clarifying your objectives, in particular:
- What are the goals of the project?
- What types of users will use this product?
- What features should the product include?
- On what kind of scale will the product operate?
Big IT projects don’t have the flexibility to adjust and pivot like startups do so it is important to set a clear focus from day one of the project. Clear project scope and goals lead to clear tasks for managers, designers and developers while clear tasks lead to efficient execution.
After communicating project scope to your offshore software development team it’s time to describe all the functions from standpoints of various users (for example, drivers, operators, freight handlers if you’re creating a product for logistics) and prepare a functional specification.
In case with small projects functional specifications can go through a number of iterations as the project progresses. But when managing large software projects functional specifications got to be solid before your team can move on.
2. Architecture your success
Your know what your business are, identified the functions you need but have a vague idea what should be done on the technical side to achieve it. Systems architect is your best friend here. In simple words he or she:
- Breaks down complex software requirements into manageable parts (in very simple words things like «Users can login to their profile from various platforms and website to check the status of their order or choose to receive SMS» would be translated into «API development and SMS service integration»);
- Prepares the structure of the system (can be drawn using various impact-mapping and mind-mapping tools);
- Chooses technical decisions and methods to be used (for example, chooses MongoDB over mySQL, depending on project needs).
Of course, systems architect is not working in isolation and is constantly consulting with you, project manager and other team members.
System architecture for MeinFernbus
3. Maintain visibility
Earlier we’ve mentioned that everybody should understand the goal of the project and their role within the process of achieving it. But there’s another aspect of managing complex projects here — participants got to understand what other’s are doing as well so that:
- Changes are communicated effectively;
- Cross-team collaboration takes place;
- Participants can clearly see at which point of the roadmap they and other teams currently are.
4. Get used to longer sprints
Agile approach with a working version of the project delivered every two weeks is common among offshore development teams. But for large development projects longer time frames should be used to avoid dummy sprints.
But it doesn’t mean that you shouldn’t have access to your team’s progress. Request access to the tools they use for managing large projects so that you have access to daily and weekly reports on time spent and can monitor project handling.
5. Be happy about mistakes
Of course, mistakes and bugs are irritating and the less, the better is true but for big software projects the earlier the better is true as well — the earlier someone notices and reports the mistake in functional or operating requirements, the cheaper it will be to fix it. And for large scale projects like the ones using AngularJS or Symfony2 we have covered it is a significant sum of money.
All in all, while ordering large-scale development projects you’ve got to consult business analyst, allow enough time for planning and agreeing upon various parts of the project, ask the software outsourcing company to bring the systems architect and make sure the process of working on the project is transparent for all the participants and create atmosphere where reporting mistakes early is an established practise.
Studio stfalcon.com has strong experience in developing large-scale solutions for big companies and we’d love to work on a project for your business. Tell us more about what you need firstname.lastname@example.org. Let’s create something amazing together!