IN THIS ISSUE


Realization's Customer Support

Accelerating Feature Flow:
How Realization has integrated TOC and Lean to increase throughput and responsiveness.

News and Events

New Customers

CUSTOMER SUPPORT

Supporting our Customers' Needs

Our job in Realization’s customer support team is to ensure that our customers can use our system fully and productively; this involves timely and effective response to their questions and issues, helping them upgrade to new versions quickly and efficiently, and providing web-based training.

It is a great privilege for us to advocate our customers’ interests with other departments internally. We know that you may need help, not only with technical issues but also with system usage. Therefore, we have a team of talented professionals who are trained in handling system, software, and implementation related issues. We also receive strong support from our development and implementation groups and can get their expert advice when required. As a part of our commitment to fully support our customers, we may contact third parties or provide specific guidelines on using third party software, when such issues lead to a problem using our software.

Quality is our first priority. We believe that every interaction with the customers should deliver the desired value. While providing support, we realize the uniqueness in every customer environment irrespective of company size, and believe that we need to provide whatever it takes to make our customers successful.

Let me take this opportunity to briefly discuss our support process. Issues are reported to us via e-mail, phone, or through our web based system. Once we receive an issue, we try to resolve it immediately. Most issues are resolved in the first interaction itself. If the issue is not resolved by end of the day, we then add it to our tracking system (also accessible to customers), and commit a response time for high priority issues. We will typically respond to medium and low priority issues within 3 working days. Customer priorities are used to prioritize issues on our end. If the issue is serious, we immediately involve our development team. If we cannot find a solution or acceptable workaround, a patch is then created to address the problem. Non-serious software issues with acceptable workaround, minor issues, and enhancements are prioritized and incorporated in the software based on customers’ current needs. We interact with all our customers on regular intervals to better understand their emerging needs.

We would like to thank all of our customers for your encouragement and feedback. We are always thinking of new ways to better serve you. We have extended our support schedule from 5 AM- 6 PM PST to better support our East coast and European customers. Our development team has significantly reduced release cycle time to respond faster to your requirements. We continue to develop new tools to quickly identify and resolve problems.

Finally, we would like to introduce the new members in our support team:

Kenneth Lew joined Realization as scheduling engineer. In a short-period, he has become a customers’ favorite for quick troubleshooting of software issues and for providing custom tools. Ken has a Bachelor’s degree from UC-Davis and enjoys listening to music and watching movies in his spare time.

 

Anju Kaul recently joined Realization as flow engineer with significant technical, customer support and project management experience. She has Bachelor’s and Masters Degrees in Computer Science and Electrical Engineering. She speaks five languages including Spanish and Russian. Anju was vice-president of Hacienda Parks toastmaster’s club, and in her spare time, enjoys jazz music, golfing, reading and writing.


We are always keen to hear from you. Please keep on providing your feedback.

Thank you,

Pankaj Painuly, Customer Support Manager

Support information:

Email: support@realization.com
Phone: 408-271-6571
(Regular hours Monday- Friday 5 AM- 6 PM PST)
Emergency Phone: 408-271-1505
(For urgent production issues outside regular support hrs)
Tracking system: https://system.netsuite.com/pages/customerlogin.jsp
(If you do not know your e-mail or password, please contact support)

back to top

SOFTWARE DEVELOPMENT

Accelerating Feature Flow:
How Realization has integrated TOC and Lean to increase throughput and responsiveness.

by Ravi Shankar, VP of Software Development

Realization’s software development department has been running all its projects on Concerto since 2001. Cycle time for a normal release was between three to four months and about six months for major releases. Each release consisted of several projects followed by final integration and testing.

Our due-date performance was about 90 percent. However, scope was often changed during execution to satisfy urgent new customer needs. Our customers and our services department consistently asked us to develop features and functionality at a faster rate, both to support diverse environments and to fully exploit the power of critical chain.

A quick analysis indicated that, even though we were already very productive compared to before 2001, we needed to increase our throughput by another 50 percent.

Where to improve
After studying our entire process, from feature request through development and testing to deployment at the customer site, we came to the following conclusions:

  1. Throughput for our customers is not a version release, but a fully working feature or functionality.
  2. Bundling several bug fixes and enhancements into one release was a major reason for throughput losses:
  • With many features in process, it was difficult to contain interruptions. When there is a problem on one feature, one’s tendency is to move to the next one rather than solving that problem.
  • Even if a feature was completed early in the cycle, it had to wait until the end of the release.
  • Since customers do not want to go through hefty upgrades frequently, it takes six months or more from the time of release for customers to use the features. Thus, a feature developed by us got to the customer (converted into real throughput) much later.
  • Customer feedback on new functionality came to us very late, affecting our speed in making further enhancements.
  • If a required feature did not make it into a release, our customers had to wait for the next release to get that feature. Therefore, we always faced pressure to cram even more features into a release, stretching the development cycle still further.

3.Another major cause of loss in throughput was that technical issues and bugs that came up during design, coding and testing could not be resolved promptly:

  • When a bug was found during QA, developers had already moved on to other projects and forgotten about the work they did on the feature in question.
  • Due to the high number of features in process, issues were either not discovered or not resolved quickly during design and development, causing rework.
  • Testers found themselves jumping between features due to long turnaround times in bug fixing. They would set up the test system for a feature, find bugs, send them to development for fixing, set up the system to test the next feature, and when the bugs were fixed – redo the setup for retesting. That is a substantial waste of both time and capacity.

We realized that features could be tested, fixed and completed much faster with faster issue resolution. However, due to many features in process, these features were getting stretched out and throughput was lost.

Changes to make

  1. Cut the batching of features and bugs – Have more frequent releases with fewer features in each release.
  2. Cut the batching of tasks in development and testing – Work only on a certain number of testable units of throughput and complete them, before starting others.
  3. Reduce the number of concurrent features in QA.

Details of the changes
We decided upon an aggressive three-week release cycle. Features that follow this cycle are bug fixes, and minor to medium enhancements.

The number of concurrent features in QA was limited to two. A feature goes into QA when some or all code units are ready for the feature and the end of the feature is fairly clear. It is possible that more code units for that feature are still being developed and will be tested after the feature has already been introduced into QA.

As soon as one of the concurrent features is fully completed, another one is introduced into QA. When testers are done testing and waiting for bugs to be fixed by developers, they do infrastructure work such as preparing test data and adding test cases to our automated regressions. (In the past, testers would move to testing the next feature.)

To ensure uninterrupted work in QA, we maintain a buffer of three to four features ready to go into QA. The release of work into design and coding is paced based upon maintaining this buffer. As a result, this buffer gives us flexibility in choosing which features to introduce into the QA pipeline. If the design and coding of a feature is delayed due to unforeseen issues, the buffer makes sure that QA still keeps working. The developer and lead resources personnel assigned to the two features in QA are not used for design and coding of features that are replenishing the above buffer.

Emphasis during execution is on getting the two features through testing as correctly and quickly as possible without interruptions. In execution, there is infrequently a major issue that is going to delay a feature. In those rare situations, we take the feature out of QA, reschedule it and introduce a waiting feature.

Larger features and functionality with multiple testable functional units may be broken down to fit them into consecutive releases. Each such testable unit is considered a feature from the release control perspective. A bug reported by a customer is also considered a feature since a bug fix can vary from a day to a week or more of effort.

Management process to support accelerated feature flow

  1. All features are planned and pipelined in Concerto based on the lead and QA capacity to ensure overall feasibility. Pipeline Manager (that is me) establishes the sequence in which features are release into execution.
  2. Each feature is assigned a Feature Manager, who coordinates the delivery of the feature with the developers and QA Manager. Feature Managers are mostly lead engineers, so they are also the ones who manage task priorities.
  3. Project plans are finalized just before design/coding is going to start to replenish the ‘QA Buffer.’
  4. The QA Manager pulls a feature out of the QA Buffer upon completing a feature, informs the Feature Manager, and assigns QA resources to start QA.
  5. The Feature Manager is responsible for getting fixed the bugs that are reported by QA.

Larger features that require investigation, prototyping and major new development are managed separately until it is determined that they can be folded into this release process. Source-code and release control changes to support this process are not discussed here.

Expected Benefits
With more frequent releases, enhancements and bug fixes get to our customers much faster. It also gives them flexibility in choosing the version to upgrade, based on the features they want.

Since fewer features go into each release and the work-in-process is lower, features do not get stretched out due to Interruptions, Parkinson’s Law and scope creep. Lower work in process not only gets the features done faster, it also enables better quality control.

What about customer upgrades?
Will our customers NEED to upgrade more often to take advantage of our release cycle, creating an administrative overhead?

As we see it, the frequency of upgrades is still our customers’ choice. Our goal currently is to give our customers and our support department greater flexibility in selecting the release for upgrade based on the customer’s needs. If a customer finds that some very important issue has been addressed, they can upgrade to the release immediately instead of being forced to wait in a longer release cycle.

From our perspective, even a single customer upgrading to a release and using a feature provides us quick feedback.

The above being said, with fewer features in each release, training and testing load on our customers is much lighter. We expect that even our customers will want to upgrade more frequently. But, batching of upgrades could be as unproductive as batching in design, development and testing!

Please let us know what you think, or if you have any suggestions.
Send an e-mail to FeatureFlow@realization.com.

back to top

NEWS AND EVENTS

4/8/05 - Viable Vision: An exclusive offer from Dr. Goldratt for projects based businesses

4/11/05 - Managing Constraints for Better Organizational Performance

5/24/05 - World Pharmaceutical Congress: the premier pharmaceutical R&D event of the year

Bosch Security Systems Implementing Realization’s Execution System in New Product Development

back to top

NEW CUSTOMERS

Bosch Security Systems

Controlled Automation

Caesar ViaNova B.V

Le Tourneau, Inc.

Hoyu Tooling Limited

back to top

Read Past Issues

Have Feedback?
Send comments to feedback@realization.com

Visit us on the web at www.realization.com