Home    >    Case Studies    >    Integrated Release Management project

Case Study: Integrated Release Management project

Abstract

Client for this software product is an Austrian based IT company. The goal of this project is to provide a minimal framework that implements all the necessary processes required for Configuration Management and Release Management, integrates and uses the existing software applications which are already presented and in use at the client side.

Situation

Before this project was outsourced to us, one Vietnamese team had already spent a long time on the development process.

  • The source code provided by the client was quite jumbled; the page layout logic was very complicated due to the dynamically uploaded widget; the coupling degree of widgets was incredibly high; the maintainability and stability was so terrible that even slight changes would cause exceptions and incorrectness of page layout display in other scenes.
  • As this was our first cooperation and the client didn't thoroughly understand our technical capabilities at first, we were not fully trusted in the very beginning of the project.
  • The clients lacked sense of security and were very cautious about progress and quality because of Vietnamese team's previous failure.

Solution

Technology required

  • .NET Framework 3.5
  • Web Client Software Factory
  • Enterprise Library
  • Castle Project
  • ClearQuest
  • NHibernate
  • NUnit
  • RadControl
  • After we re-factored the entire web client, the coupling degree between widgets and page layouts were greatly decreased, and the code became tidy and logical enough for easier modification and maintenance.

  • After a period of cooperation, the client turned to have more trust in us, listen to our opinions, and even allocate more work to us. For instance, we were required to change the front-end only at first, but afterwards we were also asked to fix bugs in the back-end service. And after that we were required to be responsible for new functions from the front to the business logic and then even to the overall development of the database.
  • In the co-operation, we sent the client detailed work daily and summed up weekly to inform the clients the schedule to eliminate the clients' insecurity. Meanwhile we paid attention to the quality of the code through testing all the codes before submitting to the clients to reassure the clients of the quality. We had completed all the tasks assigned to us on time in high quality and the team even did some improvements themselves. The client had a relatively high level of satisfaction with the team's work.

Benefits to the Client

  • The rewritten tidy and well-organized code has greatly enhanced the expansibility, stability and maintainability of the application.
  • We have helped the client with the front-end process so that he could focus on business rules.
  • We have helped our client reduce their development cost dramatically.
  • It is much easier for the client to reconstruct, release, download, and deploy their existing version, which is very helpful to improve their work efficiency and quality.
  • As all the related information were included into the electronic management system, it is much more convenient for the users to search and manage the information they are concerned about.,