NOVEMBER 24, 2019
9 min read
A fortified digital ecosystem is one of the most valuable competitive advantages that a business can have. Information technologies are moving brands to the future with improved solutions, software, or engineering approaches that solve their customer needs in the most effective way. In this armaments drive, the most valuable and sometimes undervalued parameter for a business is time. There is a right time and place for everything, and you don’t want to miss your opportune moment to enter into a market. The time spent on the development of a new application or feature may cause the release to be delayed, and consequently, a business can miss the time when the market is the most active and waiting for that solution.
Thus, software development is a rather complicated process that includes many steps such as software product concept building, application design, writing requirements, building infrastructure for the future digital product, actual implementation, quality assurance process, and the maintenance of the digital ecosystem. In general, the development of mobile and web solutions for businesses and individual users is fascinating, exciting, as well as money- and time-consuming. By the way, according to Gartner, the projected IT spending is going to total $3.74 trillion in 2019.
New information technologies require progressive approaches for companies that are on their way toward developing their products. The outsourcing of digital ecosystem development and its maintenance have become essential for businesses. The most valuable benefits from IT outsourcing for a business include the following:
- the reduction of costs for product development;
- obtaining access to intellectual capital, especially when there is no need for full-time employment;
- free internal resources that enable you to focus on the core of your business;
- the ability to solve capacity issues;
- the capacity to enhance service quality.
Small, medium, and enterprise-level companies are searching for the right outsourcing partners to outperform their competitors. Such businesses start by creating the requirements for the vendor that consist of the defining qualifications for the developers, budget, deadlines, and processes of the inter-teams communications. At this very moment companies may find themselves caught in the Iron Triangle trap.
What is the Iron Triangle and how does it work?
You may come across different names for this concept, such as the “Project Triangle,” or “Triple Constraint.” However, the idea of the iron triangle was introduced by Dr. Martin Barnes in 1969. At that time, the business that he worked at used the waterfall approach for product development. Martin Barnes figured out that there is a dependency that exists between the main aspects of the development process and impacts the project delivery. He emphasized that the main determinants of the project management process must be the Scope, Time, and Cost. Dr. Barnes stressed that these parts are tightly connected, and they define the quality of the product. A business can’t apply changes on one of the components without having an impact on the others.
Let’s illustrate the concept of the iron triangle with a business that wants to develop a mobile application. They document the requirements and give them to the development company. At this moment, the company freezes the scope. The business has an additional condition such as the time of launch because it sticks more appropriately to the market or business demands. The company fixes another peak of the triangle - time. Hence the last one - the cost is up to the IT outsourcing company. They analyze the scope, estimate it, and put it on the timeline to check if they can meet the deadline. The leading influencers on the cost of the development are the qualification of the developers, team size, programming language, number of third-party integrations, and architectural approaches. At this very moment, the iron triangle is frozen, but commitments are accepted. If the company changes the scope, it influences the timeline and cost of the project as well. It seems plain now, though many product managers don’t understand that if they add one more screen to the application (even a simple one), they change the scope. This small action affects other parts of the Iron Triangle, like the butterfly effect.
On the other side, clients often want to reduce the cost of development. Fair enough. The solution is to change the scope and sometimes the timeline. Everything is connected.
Quality is at the center of the Iron Triangle. This value defines the ability of the software to conform to the business and technical requirements. In some cases, a business is not seeking bug-free software. In the Dashdevs’ experience, we had such requests from companies that had a frozen budget, scope, and timeline. As a result, they needed to have a minimum viable product (MVP) or proof of concept (POC) for the investors. We agreed on the level of quality for these applications. For example, they were running only on specific devices, with some hard-coded information, without an offline mode or beautiful animations and user-friendly interactions. This application had the purpose of demonstrating the idea to investors or stakeholders, but it wasn’t a production-ready solution.
As time went on, the concept of the Iron Triangle was modified. Three more peaks were added, such as Risk, Quality, and Resources, however, we believe that all these criteria are highly dependent on the budget and business willingness to pay extra money. Therefore at Dashdevs, we stick to the original version of the Iron Triangle.
In most cases, the main question for companies is how to define and freeze the peaks. We’ve analyzed our experience and outlined a few pieces of practical advice to help you decide on the best solutions.
Scope
The backlog of your digital product is endless. It starts with the idea and then can be modified during the development process hundreds of times. The technical implications and restrictions can influence the User interface (UI) and User experience (UX) as well. After the release, a business will most likely start to verify the hypotheses they’ve had at the beginning of the product creation. They may find out that the product needs to be changed based on the users’ feedback and current market state, while the scope may be changing throughout the course of the development lifecycle. So, what should a business do in such a complicated situation?
- Team augmentation. A dedicated team is one of the best solutions if you know that the scope is unstable, and you need to control the budget. You can hire a team and manage it directly or entrust it to the service provider. The IT outsourcing company needs to provide its employees with the facilities, equipment, and all the necessary working conditions. Another advantage of this approach is that the vendor can control, replace, and add human resources if the business requires it. Nevertheless, the cost of development is frozen as long as the size of the team is fixed.
- Break up the scope into phases. Different phases can have various scopes and timelines. They may even have different requirements for the quality of the product. I’ve illustrated this in the example above: the first phase can contain a POC to present it to investors and prove that the idea of the product is worth pursuing the ongoing development. The next step is an MVP, which has higher requirements for the scope and quality. The goal of this stage in the digital product design and development is to cover the primary user necessities, after which, the business can extend its feature set during the next phases of the implementation. Understandably, firms want their app(s) to contain all the most up-to-date features, and for them to be developed quickly and simultaneously. However, such an approach is not manageable, and the cost is high.
- Verify the scope before the beginning of the development. The usual bias is that the product visioner, the owner, or the product manager wants to add a feature that is useless for the end-users. The best question that you may ask your customer is not if they need this feature, functionality, or improvement. The main point is if they are ready to pay for the feature. The visual prototype created in the Marvel Application can simplify the process of understanding the function. You can share it with the focus group or target audience and receive the answers to what is required from the end-users’ side. The upside to this is that it can reduce the cost of product development because the functionality suits the market needs from the very beginning.
Time
There is a crucial difference in such terms as product development cost estimation, the timeline for the development, and the business deadlines. However, these terms are usually confused. The development estimate shows the number of hours that are needed for development, deployment, and testing. The timeline can provide approximate dates for when the feature or product can be delivered to production for the end-user. The timeline includes estimates and the sequence of the development processes. It can give you the date of the product delivery, but this date can be different from the business deadline. The last one is in regard to the date when the business needs to have the product live. This date may be connected to the marketing campaign, events, investors meetings, and other business processes. When we speak about time within the Iron Triangle concept, we are referring to the business deadlines and keeping that in mind, we want to provide you with the following recommendations:
- Let your deadline be heard. The problem is caused by communication barriers between the business and the IT vendor. The outsourced development team is not sitting in the headquarters, and they are disconnected from the rest of the processes. The company doesn’t need to add an IT project manager to each meeting; however, if the main team member knows the deadline and the reason for this deadline, they can manage the expectations, change the scope, or provide the business with some actionable options. Usually, we suggest giving this responsibility to the delivery manager or product manager.
- Understand the estimates and the app development process. All the people who manage IT products need to understand their software development lifecycle. The timelines for the IT architecture and design processes, coding, feature testing, regression testing, deployment on production, and acceptance testing make the timeline for small features complicated. The digital ecosystem puts some inertness into the processes and resistance to changes.
Cost
Usually, outsourcing companies use two pricing models: fixed price and time & materials. The fixed price is sometimes called a fixed bid or fixed fee, as it means that the outsourcing company is ready to develop the scope of work within the agreed-upon budget. They will not increase or decrease the cost as long as the scope stays the same. Time and materials (T&M) introduces agility to the process of development. The business knows the rate of the developer per hour and knows the approximate number of hours according to the estimate. They simply multiply these numbers to get the cost of the app development. Our advice here is as follows:
- Define the scope as detailed as you can. In both price models, the main element is the scope of work (SoW). If it is clear and stable, and the company had experience in the development of such products, they know the risks and can give you a fixed price estimate for the implementation.
- Estimate before opting for the T&M model. Usually, such project cost estimations can provide a range of hours with a description of risks and dependencies. Consequently, you can manage your expectations regarding the cost.
- Mix the price models if necessary. The development of an MVP can be precisely estimated and developed on a fixed cost base, but improvement and maintenance can be done on a T&M basis. In this way, you can mitigate cost expectations for your stakeholders.
How does the Iron Triangle work and where is the balance
The mature approach for a company is not trying to achieve everything at once. The success is hidden in understanding that every peak is connected with the quality of software products. All software vendors are doing their best to maintain a balance within the Iron Triangle between the Scope, Time, and Cost, while a trade-off between a business and a contractor always takes place. They must work together and provide each other with solutions that will lead to a successful result and partnership. IT outsourcing companies have access to the best development resources, so they can provide clients with massive potential of new digital technologies and capabilities, as well as share their cross-market experience and flexibility. Meanwhile, businesses can give fascinating challenges and exciting projects to app development teams for a fair price. In fact, it is a win-win relationship between a company and an outsourcing firm that can result in groundbreaking products that we use daily and recommend to our friends and relatives.