Welcome!

PowerBuilder Authors: Dan Joe Barry, Carmen Gonzalez, Ian Thain, Yakov Werde, Paul Slater

Related Topics: PowerBuilder, Java

PowerBuilder: Article

A New Methodology for Retraining the IT Workforce

A New Methodology for Retraining the IT Workforce

As everyone working in the IT business is aware, the technology we use to develop our applications is constantly changing.

Keeping abreast of the latest trends and practices could be a full-time job for developers, leaving no time for productive work.

The problem facing the IT project manager is even more acute. He or she is responsible for delivering projects on time and under budget. Determining whether to use newer technologies for projects, or whether to stick with the tried and true, is a balancing act in which you must factor the need to train the IT staff in the new technology, the post-training learning curve they will face as they try to apply what they have learned, and the staff's desire to move into new technologies; in addition, there are budgetary requirements and other risk factors.

In many cases, this leads to the decision to remain with the older technology, even though the newer may be more appropriate to the task or will lead to a longer and more useful life for the project.

It can be argued that the need for training and the inadequacies of the current methods of training IT staff actually slows the pace of adoption of newer technologies. As a consequence, many companies have remained with older technologies and applications developed in COBOL or PL/1 and have never availed themselves of the benefits offered by newer object-oriented technologies such as PowerBuilder or Java.

The recent economic downturn has forced many companies to rethink each and every expenditure they make, placing increased emphasis on the issue of return on investment (ROI). This has been particularly true of the dollars spent on IT training, traditionally looked upon as an area where cuts can be made when times get tough. This is due to the fact that IT training using the current methodologies has always been low on ROI. Companies find that students may learn basic concepts in weeklong training classes, but still struggle when they return to their jobs and attempt to integrate those basic concepts into the much more complex world of corporate IT development. Since the students still face an enormous on-the-job learning curve, the return on investment for training dollars is low, making such training an obvious place to cut when cost savings are required.

Still, the need to train employees in emerging technologies that will form the basis of new projects continues to exist, even in a bad economy. The economy may be static, but technology isn't. To meet the challenge of increased return on investment for training dollars, a new methodology must be devised.

Context Based Learning, developed by Millennium Learning Technologies, is a methodology that's in use at many corporations, such as LexisNexis. It's designed to train students within the framework of the intended usage of the technology that they are learning. In other words, the training is performed within the context of the project. This increases the return on investment for the training dollars since the output of the training is not only students well versed in the underlying technology, but the project software as well.

Project Scenario
Let's look at the two training methods in more detail, beginning with the current training methodology. For the purposes of this comparison, we will examine a typical IT project in which a company's IT department maintains an application that's used by the company's internal employees. The current system is written using Visual Basic in a typical "fat-client" architecture. Data is stored in a Sybase database. The company desires to move to a thinner client-side solution by maintaining the user interface in Visual Basic while developing server-side code in J2EE. The company has researched alternatives and has standardized on Sybase's EAServer as their J2EE application server. Data will remain in the Sybase database, with no changes to the structure. Eventually, they plan to move the Visual Basic client programs to browser-based interfaces, although that is a longer-term goal not associated with this project.

Currently, the company does not employ any developers who have knowledge of Java or J2EE, and it wishes to complete the project using the current development staff. For that reason, the company must either train the developers in what they need to know in order to make the changes, or bring in additional staff knowledgeable in the target technologies. Bringing in additional staff is a liability, as it discards the many years of business-process knowledge represented by the current staff. For that reason, the company decides to retrain the existing staff. The company employs five developers and two managers, all of whom require training in the target technology. The decision to begin the project is made in September and planning begins for its execution.

Accomplishing the Project Using the Currently Accepted Training Methodology
Using the current methodology for training IT employees first requires the management team to perform research to discover exactly what will be involved in making the switch. Since they currently have no knowledge of J2EE application development, this proves quite difficult. The team struggles with the different technologies utilized by J2EE and where they fit into the big picture. They spend time on the Internet, reading white papers and ordering several books from Amazon.com. Eventually, they determine that the project team will need the following skills - Java basics and Enterprise JavaBeans. Most of September and some of October is taken up with this basic research.

Next, the team locates an IT training company in their area, explains what they want, and contracts for two weeks of Java and J2EE training. The total cost of the training for seven employees is $40,000. No discounts can be arranged, since the number of students is low. The company reluctantly agrees and the training is scheduled for mid-December.

The training is delivered and seems to go well. The students are presented with lectures and lab work, and have no difficulty understanding the concepts and getting the labs to run. They give both the instructor and the training company high evaluations.

Project development begins in January. Almost immediately, the project team realizes that what they are developing is much more complex than the labs and sample code they were exposed to in the training class. The class had utilized only the basic J2EE SDK, using Notepad to write the Java code, and the students are having a hard time learning the PowerJ interface. They struggle for several weeks and the coding phase of the project begins to fall behind schedule.

Seeing this, the management team looks for additional resources to bring to bear on the project. They finally agree to arrange for a consultant to work with the team on the project. The consultant charges $150 per hour and works an average of 50 hours per week for four months, at which time the project is ready for testing. The consultant then moves on to another project, while the staff now moves this project into the testing phase.

During the testing phase, the development team discovers issues with the code. Since many of the most complex objects were developed by the consultant, with little knowledge transfer to the development team, they struggle to devise solutions. They continue to use the consultant by phone and e-mail and the consultant continues to bill for his time, even though he is unavailable for large parts of the day while working on other projects, further slowing progress. The consultant has billed $130,000 for his part of the project.

Eventually, all the bugs are worked out and the system is placed into production. Faced with performance issues in the production environment, the management team contracts with the original training company for a course in EAServer administration and performance tuning, incurring another $20,000 in training costs. Based on what they learn, as well as their experience gained from developing the project, the development team is able to correct the performance issues and the project is deemed a success. The total time from project inception to completion is eight months and the total project cost for outside training and consulting is $190,000.

Next, let's see how this project could have been completed using Context Based Learning.

Accomplishing the Project Using Context Based Learning
Using Context Based Learning for this project will result in a savings of $129,000. Let's see how it works, starting in September, when the IT department has determined that they will utilize J2EE for the new platform.

Rather than spend time in an attempt to understand the technology to make an informed decision on training, the management team decides to use Context Based Learning. The instructor assigned to their project then schedules a week to work onsite with the management team to determine their needs.

The week the instructor spends onsite is used to review the scope of the project. He or she looks over all project documents, including the specifications for the existing system and the business requirements for the new system. At the end of the week, the management team is provided with a training program and a learning plan that is custom designed for their specific project and that takes into account the current skill sets of the students being trained. The instructor presents this program to the management team for approval. Total cost of the analysis phase is $8,000.

The management team approves the training and schedules a start date of October 15. Millennium develops the material, at a cost of $15,000, covering the fundamentals of Java and J2EE, with all hands-on work being comprised of project deliverables.

The training begins on schedule. The first three days are all classroom work, designed to teach the programmers the fundamentals of the Java language as well as the J2EE platform. In addition to covering the basics and Enterprise JavaBeans, the material covers servlets and JavaServer Pages (because the company wants to move to Web-based development later). In addition to Java and J2EE, the instructor covers COM and DCOM as the basis of communication between the Visual Basic client-side applications and the Java server-side components. All lab work is performed using PowerJ, which is the IDE chosen by the management team to complete the project. Since the material is custom designed, not only for the project but for the students, some students may not attend all sessions. This eliminates a common problem element associated with off-the-shelf material in that each student is exposed only to material they will find relevant and interesting.

As the first week wraps up, the students move from classroom work only to a mixture of classroom and hands-on assignments. Since the material is custom-developed for this project, the exercises are designed to be the actual components that comprise the software the project team is scheduled to convert. Classroom work in the form of lectures continues in the morning, while the exercises continue in the afternoon. All work is done in a common classroom, with the instructor monitoring and assisting. The instructor has a background in IT project development and management and is able to assist the development team over the rough spots.

As week three begins, all of the classroom work is over, and the development team is continuing with the real work of the project, still under the supervision of the instructor. The instructor remains on site through week four, at which time the first application is completed. Total cost for the three weeks of training is $30,000.

The instructor is then released, but remains available through November and December for telephone consultation or remote assistance. Onsite time is scheduled as needed, to assist the development team over the issues of testing, tuning, and rollout. The total cost for this period is $8,000. The instructor is not assigned to another client's onsite phase, maintaining high availability for the team's questions. Since the instructor is also an experienced developer, he or she is able to anticipate the issues with performance, eliminating the extra training required in the old methodology.

Using Context Based Learning, the project team is trained and able to complete their project in a much shorter timespan than using the current methodology. This is accomplished by completing prototypes and some production development as part of the classroom training curriculum, effectively fast-tracking these phases via instructor facilitation. The traditional approach, with its unfacilitated, vertical post-training learning curve, offers the literal opposite of fast-tracking: serial, slow, and painful. With Context Based Learning, the project can be well into the implementation phase in the timeframe in which the traditional approach has barely begun the development phase.

The total cost for training is $61,000. Since the developers are well trained within the context of the application that they are developing, the company is able to save costs by eliminating the outside consulting help required to complete the project as well as the time savings by keeping the project on schedule. Figure 1 shows the project time lines for both approaches, while Table 1 shows the costs.

Summary
Context Based Learning is a good way to train employees in new technologies linked to a pending project. The training is delivered within the context of the project, and is custom designed around exactly what the business project must accomplish.

With this method, the training your programmers receive will be on point and targeted specifically toward allowing them to complete the task at hand. There will be minimal on-the-job learning curves. Actual project code will be developed as part of the training. At the end of your training engagement, you will have the completed project and well-trained developers who can use what they learned to complete additional projects.

More Stories By Tim Hatton

Tim Hatton, a principal in Millennium Technical Trainers, Beavercreek, Ohio, develops Java-oriented courseware and classroom curriculums.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.