1. CMMI is not universal
  2. Package or Customized Software
  3. Offshore boosts onshore
  4. The 7 Barriers of Offshore Software Development for SME and Easteq Solutions

1.CMMI is not universal

Supported by DOD, proven by the success of Indian companies, pushed by the sales men of Carnegie Mellon University, CMMI is one of most hot topics of software engineering, maybe the hottest today. Many software companies spend a lot of consulting fees and time of their engineers and managers for CMMI certification. CMMI’s sellers told us that CMMI “provides the latest best practices for product and service development and maintenance” (http://www.sei.cmu.edu/cmmi/general/general.html May 2007).

However, There are seirous reasons to doubt about the actual efficiency of CMMI.

Since forty years ago, software engineers and researchers have designed many “the best method”. They all want to solve all software development issues, for all kind of project and for all kind of company.

Unfortunately, as its predecessors, CMMI fails to meet its promises. The standard practices of CMMI are suitable for some type of projects for the others, some practices maybe useless, some may lack important details, some may need be tuned another way.

The fundamental question is : ARE THERE BEST PRACTICES FOR ALL KIND OF PROJECTS AND FOR ALL KIND OF DEVELOPMENT TEAMS ?

The obvious answer is NO !

Can we manage General Motors and Google with same practices of business and technical management ?

CMMI proposes the same practices for all projects : for a 2 Man*year project as well as a 1000 man*year project; for a small website and a large scale telecommunication system; for a VB management software and a C++ embedded defense system. That is absurd !

It is possible to find the best practices for a project, but we don’t believe there is “best practices” for all projects. For companies which apply CMMI blindly, the teams waste a lot of time filling useless formalities, and at meantime suffer the lack of other appropriate models. Most of smart companies use CMMI only as marketing tool : to convince customers that the company is well managed, but they don’t apply CMMI in most of cases after the reception the certification of SEI of Carnegie Mellon University.

The sellers of CMMI use the success of Indian companies as the main commercial argument. It is wrong. The success of Indian companies on US market have many reasons :
- The low cost and the abundance of qualified English speaking labor is certainly the main reason.
- Indian companies were the first on the market of offshore software development business : They started the more than 20 years ago. The weakness of local economy pushes Indian companies to focus on the export market.
- There are many Indian CTO in US companies who naturally bring business to Indian suppliers.

The application of CMMI is facilitated in Indian because the low labor cost allows Indian companies to absorb the waste of time, but the application of CMMI certainly doesn’t help to increase the efficiency of Indian teams.
Proposition of Easteq method :

Easteq proposes to make a method study as the first step of any project, to define a customized practices for the project depending on the characteristics of the project. Then it is possible to define the best practices for the project.

The project method should be defined according to many factors such as size of project, characteristics of team, duration of project, type of technology, required quality of software, type of application, etc.

The consideration of above factors helps to define appropriate and optimal process, model, formalities, and team organization. We may vary and optimize the method during the project to take into consideration the changes of the factors.

2. Package or Customized Software

Customized Development vs. Package Software Application

One of the fundamental choices of software solution is :
  1. Development of a customized software, or
  2. Implementation of a mature package software
The second solution is attractive. Using a mature package software is certainly the best solution if you find a package software which really meet your current and future requirement.

However, it is not easy to assure that condition, because
  • Enterprises are complex and changing organizations, the software too,
  • Not well armed, many users are mainly influenced by sales man.
  • Even if you have qualified consultants for selecting the software, the selection and validation process it is very expensive
If there is an important gap between the package software and requirement, the modification will be very difficult, expensive, uncertain, and needs a lot of time. The real difficulty will appear after implementation.

The customized software development is difficult too. However, it offers much more flexibilities which reduce the risks, if the project is managed correctly.

Both customized and package software may have problem. It is important to evaluate its consequences: If a problem is discovered in the specific solution, it will be the handled as the top priority by a dedicated and devoted team. Every line of program can be modified to solve the problem. However, when there is a problem which requires some modification of the package software, it would be added to the bug list waiting next release.

The following is a detailed analysis of advantages and inconveniences of each solution:


Package Software
Customized Development
Easteq development services
Responding user needs (1) Differentiation with competitors
The usage of package software means application of a standard management approach. They provide little differential advantages to competitors.
Customized information system may enhance the competitive advantage of the user.
Easteq has recommended some unique features which will help the user to realize the most competitive system.
Responding user needs (2) Correctness comparing to needs
It is difficult for users to judge whether the Package software respond to the needs during a short, theoretical study before the implementation. The danger is that if users discover any problem after the implementation, even if it is a small detail, it may be very difficult or impossible to change the standard software.
Based on user needs, customized development should achieve a system meeting perfectly user needs. In case of any problem, it is relatively easy to solve it. The danger is that IT engineers misunderstand user needs.
The understanding will be easier because if the software engineers have experience of similar software applications.
Responding user needs (3) Complementary Development
Users have certainly some special needs that the standard software cannot respond. So it will need complementary development, which may require special development tools and special interface. It may be difficult and expensive to find engineer experienced in such development.
Complementary development = Regular evolution
Easteq methodology allows us to assure the evolution with maximum flexibility.
Reliability of software
It is difficult for user to assure the reliability of a package software before real utilization. If any reliability issue is discovered after implementation, the user may experience some difficulties.
A dedicated R&D team will focus on quality assurance.
Easteq will apply a professional quality assurance system to enhance the reliability of the software.
Evolution
The evolution depends on the policy of the supplier. If the feature needed is not the priority of the supplier, the customer has to pay its own complementary development, when it is possible. Such development is much more expensive than a development based on a specific solution.
Adding more feature is only a matter of financial negotiation with the supplier. There is not any special technical difficulty, and the cost is certainly less expensive than customization of package software.
Easteq methodology allows us to assure the evolution with maximum flexibility for evolution.
Usage of latest technology
Mature packaged software is developed many years ago, and cannot benefit from the latest technology.
It is natural to use the latest technology to better serve the users.
Easteq advises users on the choice of the technology to maximize the user’s interests.
Time
A lot of time and effort may be necessary for requirement analysis, configuration, complementary development, testing, organization change, …
Traditional R&D requires a lot of time between analysis
Easteq methodology allows us to deliver the software quickly.
Cost
Very high
Very high
Easteq methodology allows us to improve significantly the ratio quality/price.
Reliability of Supplier
An eventual abandon of the software by the supplier may cause serious damage, because the customer doesn’t own the source code. The customer may be obliged to abandon the software.
The consequence of a failure of the supplier is less serious because the customer own the source code and the documentation, so it is possible to use another team to
Easteq exists since 1998, and grow in a stable way. It is a very reliable company.

3.Offshore boosts onshore

Offshore Software Development doesn't reduce local engineer job, but increase the total volume of software project and generate more local engineer job in USA and Europe.
The requirement of software is unlimited. The main problem of the enterprises and government today is the lack of resources of qualified software engineers to respond to the requirement. The offshore software development bring resources from worldwide to solve that problem. However, the offshore software development can never replace local software engineers.
1) The requirement of software development is unlimited.
Software is every where : every action in enterprise is or can be optimized and managed by software; every machine integrates or can integrate a chipset with software.
Existing software has many problems :
- lack of functions : most of software don't answer all requirement of the users, and need more features
- wrong features : many functions of software are not correct
- bugs : Many software have reliability issue
- difficulty of evolution : many software cannot well follow the change of the business organization,
- bad performance : Most of software can be optimized in terms of performance
- difficulty of usage : Software are not always well designed to facilitate the usage
...
Our software are described with following words : weak, bad, wrong, difficulte, sclerose, risky! If you don't believe in that, just try Vista of Microsoft, the best software company in the world.
There are unlimited work to do to improve our software and really respond to user requirement.
2) The lack of software engineers
There are not enough software engineers, not enough good engineers. The job market of software engineers are among the hotest job market : the largest quality of engineering job and the highest qualification.
3) The high cost of software is a huge barrier of the progress of enterprises
That lack of resources makes the salary of software engineers among the highest of engineering job, and the software service cost very high. The cost is so high that many requirements cannot be saitisfied, bugs not fixed, evolution not supported. The cost and low quality of software impact seriously the productivity and profitability of enterprises.
The problem is particularly serious for many small and medium companies. Many can afford the software necessary for their business. Many start-up fail because they cannot raise enough fund to assure their R&D because of the huge cost of the software R&D.
4) Offshore software development bring engineering resources from around world
Supporting the improvement of productivity and reducing the barrier of innovation in America and Europe, the offshore software development is an engine of the economy for the countries that buy the service and for countries that offer the service.
5) The offshore software development can never replace local software engineers.
The offshore software development can never replace local engineers for many tasks especially for requirement analysis, implementation and project management, which represents at least 50% of the total workload. There always local engineers in front of offshore engineers.
The offshore software development reducing the average cost of software, will push entreprises to launch more software project, and generate more local software engineering job.
According to our market survey, the offshore software development may increase by 50% the requirement of local engineers:
- The offshore software development transfers about 50% of software development workload
- The cost of transfered workload may be reduced by 70%
- The total cost may be reduced by 35%
- The 35% cost reduction may push enterprises may launch 3 times more software projects
- Conclusion : Enteprises may need 150% local software staff thanks to the offshore software development !

4.The 7 Barriers of Offshore Software Development for SME and Easteq Solutions

Software development is never easy, for small and medium enterprises and for large corporations, for onshore service and for offshore service, but the problem can be more serious for SME using offshore service. We summarize that as 7 barriers. Easteq has the right solution to succesfully satisfy SME customers: 90% of our SME customers continue to use our service after the first project.

The following text summarizes the barriers and Easteq solution.

Barrier 1 : Preparation of professional requirement specification.
Usually, the customer enterprise needs to hire an expensive onshore system analyst for the requirement analysis and to modelize it in a professional way, before contracting with an offshore software partner. In addition, the managers who know the requirement, usually key managers, must spend a lot of time to communicate with the analyst to explain their requirement and to verify the result.
However, many SME don't want to hire an expensive onshore analyst, and the managers are very busy.
Easteq solution : You don't need to hire any onshore analyst and you only need to list your ideas about the software to develop without any professional formality and modelization. Easteq has an appropriate methodology to assure that the software fully answer your requirement. In other words, Easteq is able to handle remotely the full life cycle of the software from analysis to development and maintenance.

Barrier 2 : Preparation of contract for the complex offshore software activity.
Preparing a contract handling all issues and eliminating all risks is a "mission impossible", because of the fundamental difficulty of reqiurement specification.
Easteq solution : Easteq proposes very simple measures to significantly reduce risks to an acceptable level for the customers, with a simple contract, so that the customers don't need to pay professional legal services.

Barrier 3 : Geografic distance with the offshore service team
The geographic distance is a barrier for many managers of SME. It is difficult for a manager who never travel far away to imagine such indepth cooperation with a company in China. However, this is psychological only. Today, the Internet communication technology allows us to talk, to see, to share documents each other very easily and for free. We can cooperate efficiently without travel.

Barrier 4 : Cultural distance with the offshore service team
Many managers may worry about working with foreign people because of language and cultural differences. Easteq assures that you will feel confortable while communicating with our team because Easteq staff have a lot of experience working in a multinational environment. Many staff have lived in Europe or North America.

Barrier 5 : Control of quality
Quality control is difficult, especially for a SME customer. Easteq proposes a special method for SME customers to assure the succesful achievement of the project and transparency of quality control for customers.

Barrier 6 : Control of schedule & budget
Delay is another frequent difficulty of software development.

Easteq has implemented unique methodology which allows us to assure the on time delivery:

  • Easteq has a well organized expert team which helps engineers to solve technical difficulties, so that the engineers don't waste time to find the solutions them self.
  • Easteq has very experienced prject managers and analysts able to well understand customers requirement to avoid the under-estimation of software functionalities and workloard.
  • Easteq method assures efficient communication between differents participants of a project, to avoid any trouble of cooperation
  • Easteq has a very motivated team which is able to absorbe all bad surprises without additional delay.

SME always have limited budget. Easteq offers its service for a very low cost, and accept to commit on the achievement of the project with a pre-negotiated budget.

Barrier 7 : Selection of the right software development partner
How to find a offshore software development partner to obtain quality service with low cost, low risk and high quality? Contact Easteq.
Making the world flat for you !
Copyright ©2007 Easteq Limited. All Rights Reserved.