Outsourcing Risks
How EdenLogic Can Minimize The Risks Associated With It Outsourcing
IT Outsourcing
Despite its numerous undisputed advantages, Information Technology (IT) outsourcing is often associated with certain risks.
Many research works define the four main problem issues usually faced by customers when outsourcing projects on custom software, web and database development to offshore companies. They are: schedule, cost, functionality and quality.
This list items largely partake of the claims usually asserted in process of software development in general, rather than just as regards its outsourcing aspect. This is what Frederic P. Brooks, the OS/360 Development Manager, had to say about his product in the introduction to his famous "The Mythical Man-Month" book:
"Any OS/360 user is quickly aware of how much better it should be. The flaws in design and execution pervade especially the control program, as distinguished from the language compilers.... Furthermore, the product was late, it took more memory than planned, the costs were several times the estimate, and it did not perform very well until several releases after the first."
So, what's the reason for such software development inconsistencies? According to Frederic P. Brooks, the key problems are low level of management in general and difficulty trying to ensure effective communication inside large groups of developers, in particular (in fact, he was examining the large-scale (tens of man-years) system creation issues).
The above-mentioned problems get even worse when we consider the fact that the product requirements are formed at one company (customer), while its realization is carried out by another (developer).
The main reason for not observing the customer-appointed time schedule along with the estimated price and functionality lies in inadequate project documentation. Given that in process of outsourcing the informal way of contact characteristic to the internal development is unacceptable, the only communication means between a customer and development team left is documentation, which has to contain the complete set of requirements as to the application functionality as well as the terms of its final delivery. Failure to comply with those requirements leads to a resulting product unconformity to the customer's needs, which, in turn, entails various alterations. So, the project timeframe along with its budget inevitably get exceeded, or, in case the project development time has been strictly limited, the desired functionality is not met. That is why we, before other things, pay our utmost attention to drawing up as comprehensive documentation as possible.
First of all, we elaborate a preliminary estimate; this paper is to outline the basic features of the application, its approximate cost and a timeframe. The next stage, coming just before starting the project, will be drawing up a detailed estimate containing as complete requirements towards a custom solution as possible. This is a rather serious and time-consuming task that may last for up to a week depending on the project complexity. Special attention is paid to the project time schedule with precise milestones for each of the functional modules. During the course of the project implementation we are constantly keeping a two-way communication with the customer all along the way, trying to make sure all the system parameters are understood and being implemented correctly. We also do our best to agree upon the order of further technical parameter changes, because in practice during the implementation of projects on custom software, web or database application development clients often get to know their requirements better, which results in their seeing the final product in a different light. So, thanks to the above organizational measures, one can avoid facing the time and functionality problems (plus the budget extension, correspondingly).
However, this option may not always be exercised. Drawing up an estimate, we expect a customer to provide us with all the information regarding the final product description and its required functionality right from the start. But this often appears not feasible due to the custom solution complexity, or when a customer does not have enough experience in software development management and/or he/she does not possess proper technical qualifications.
In this case we include some extra time for research and draft software sample creation to our estimate. With this organization of the working process the product specification is being created gradually and may even be drawn by a person without high level of technical knowledge - the customer having a clear idea of the software application concept will suffice.
The work is organized based on the following principle: first, the customer provides a rough description of what he/she wants. This will be enough for us to create a demo version. Then, as a rule, the customer may want some elements to be functioning in a different fashion or the design changed or some more functionality added. Then the cycle goes over again and again until all customer requirements are met in full.
This way we'll be able to avoid the major cause for the project budget inflation as well as the customer's dissatisfaction with the final software or web application performance being an insufficient (or inaccurate) technical specification. Although in such case the application development work efforts will increase, the overall budget will remain very advantageous due to the offshore development aspect and you are sure to get a better solution that best answers all your needs for less money than if receiving services from domestic software development companies.
Our company EdenLogic always has and does now pay the closest attention to quality issues. What can best guarantee the highest standard of our products is the fact that under the conditions of our contract the customer effects a payment only after the product quality assurance. Trying to maintain our high quality level we mainly focus on the following aspects of the software development process: high proficiency level of developers, strict conformity of the development process to the industry standards and thorough testing of the final product.
For more information, please refer to the detailed description of EdenLogic Software Development Methodology applied to the development of medium- to large-scale custom software applications.
back to top








