![]() |
PROJECT PERFECT Project Management Software Specialists in Project Infrastructure |
IntroductionMost projects have either schedule or effort overruns, or both, which leads to customer dissatisfaction. This is a widespread problem faced by most project managers. What usually happens is that issues that crop up during the integration testing, lead to delays in delivery of software. We received a major project of 100 person years to be delivered in 9 months. Our goal was not only to meet the client's expectations, but to exceed them. We started looking at various ways and means to meet this expectation. This included reviewing existing tools and techniques and also looking at best practices prevalent across the globe. The team decided that it would not be possible to achieve our goal, unless they did something radical. We decided that one of the techniques the team would adopt was a weekly "Build and Smoke Test".
Definitions:
There is an interesting semi-parallel to this term among typographers and printers: When new typefaces are being punch-cut by hand, a "smoke test" (hold the letter in candle smoke, then press it onto paper) is used to check out new dies. Implementing for the first time is by no means an easy task. It requires a lot of discipline and changes to the way you do your work.
Frequency of BuildThe principle behind weekly "Build and Smoke Testing" is to build the components and perform smoke testing every week, so as to reduce integration issues later. It could also be performed daily if several components are developed every day. We tried implementing it on a daily basis but found that few components were getting developed on a daily frequency. We ended up building the same system two days in a row, and hence decided that the frequency of build could be weekly. We first organised training sessions on weekly "Build and Smoke Testing". The team felt that it was a good concept and it would definitely help them. They also suggested that it would be time consuming, if weekly testing was done manually and a "Build and Smoke" test tool should be developed.
Implementing Weekly BuildIt was quite important that the "Build and Smoke Testing" activity be incorporated in the Project plan. This ensured that adequate resources are allocated for the build activity and we knew what components are undergoing weekly testing. The key is to know the progress of the project accurately. The weekly build gave an enormous amount of visibility to the Project Manager as he could see the components being integrated, and issues being resolved each week. Earlier the issues would be known only during integration testing. Some of the issues would be major and it would take up a lot of effort and consequently impact the schedule. There was a Schedule drawn for weekly "Build and Smoke Testing" for each project, and a manager responsible for overseeing the test activity. It ensured that the complete activity was done in a clean environment (a build PC). The Process used is outlined in Appendix A
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| BUILDER: | DATE | ||
| Build Number | Build Status | Success/Fail | |
| Modules Included | Module Name | ||
| Total Modules | |||
| Modules Successfully Built | Module Name | Developer Name | Log File |
| Modules Successfully built | |||
| Modules Failed | Module Name | Developer Name | Log File |
| Broken Modules |
iii. For each error, which is there in into the build report, (Component name, Name of developer), use the email to e-mail the owner of that module with the module name and error that broke the build.
iv.- After the build report is complete, host it on the Project Web
i - Register the C++ components at Application Server and create msi file.
ii - Move the ASPs code to the virtual directory on Web Server. Install msi file at Web server.
iii - Record Rational test scripts on the Test machine
iv - Automated Rational Test script to be run from Test PC and the following smoke test report is produced.
| BUILD NUMBER | DATE | ||
| Tester | |||
| Sl. No | Test Case | Result | Reason |
| Total Cases | |||
| Total Failures | |||
| Total Warnings |
Mohan Srinivasan is working as Advisory Project Manager with IBM Global Services India, Bangalore, India. Mohan holds a Masters Degree in Industrial Engineering from National Productivity Council, New Delhi. He has around 15 years of experience in the software industry and has been managing projects in the areas of Mainframe, Client server and Web Technologies for clients in US, UK and Asia. He is an ISO 9000 certified Lead Assessor and has been involved in CMM Level 4/5 assessments.
![]()
1. Daily build - Rapid development and control, Swedish Engineering Industries 1999
To date, 118 people have rated this article. The average rating is 3.72 - Add your rating. Just select a rating and click the button. No other information required. Only one rating per person is allowed. |
|
|||||||||||||||||||||||||||||||||||
![]()