ZeePedia

How Software Personnel Learn New Skills:The Evolution of Software Learning Channels

<< A Preview of Software Development and Maintenance in 2049:Requirements Analysis Circa 2049
Software Team Organization and Specialization:Quantifying Organizational Results >>
img
Chapter
4
How Software Personnel
Learn New Skills
Introduction
The combination of the financial meltdown of 2008 and 2009 followed
by the global recession will make profound changes in training of pro-
fessional personnel. Low-cost methods such as e-learning will expand
rapidly. High-cost methods such as live conferences, classroom training,
and several forms of paper publications will decline rapidly. Fortunately,
the technologies associated with e-learning are at the point that their
effectiveness is increasing.
The rate of change of software technology is extremely rapid. New
programming languages appear almost monthly. New programming
tools appear almost daily. New software development methodologies
appear several times a year.
The fast rate of software technology change means that software pro-
fessionals are faced with a continuing need to learn new skills. What
channels are available to software professionals for learning new skills?
How good are the available ways of learning, and what new ways are
likely to occur?
Even as software learning methods improve, there are a number of
critical topics where software education lags far behind what is truly
needed to achieve professional status for software. The most glaring
omissions include
1. Software security practices for building low-risk applications
2. Software quality control practices for minimizing delivered defects
3. Software measures and metrics for effective economic analysis
227
228
Chapter Four
4. Software estimating and planning methods for on-time delivery
5. Software architecture for optimizing use of reusable components
6. Software methods for effective renovation of legacy applications
7. Software technology evaluation and technology transfer
8. Software intellectual property protection
These gaps and omissions need to be quickly filled if software is to
evolve from an art form into a true engineering discipline.
Due to the continuing recession, attendance at conferences is going
down, some in-house training is being cancelled, and some software
instructors are being laid off. These are likely to be permanent changes.
From 2009 through the indefinite future, e-learning and webinars are
likely to be the major education channel for professional education.
Even newer methods such as virtual environments, avatars, and text
mining are likely to grow as the recession continues. Over and above
their low costs, these newer methods may offer actual advantages as
approaches to learning.
The Evolution of Software Learning Channels
The world of software is evolving new technologies as rapidly as any indus-
try in human history. This means that software professionals are faced with
a need to acquire new knowledge and new skills at a very rapid clip.
As of 2009, the United States currently employs about 2.6 million per-
sonnel in the technical areas of programming or software development
and maintenance, about 280,000 software managers, and perhaps another
1.1 million ancillary personnel in related specialties such as software
sales, customer support, software technical writing, and many others.
The U.S. total is probably over 3.8 million professionals if all software-
related occupations are considered. The European total is slightly larger
than that of the United States, and the world total is approaching 18 mil-
lion. Exact counts are not available for India, China, and Russia, but these
three countries combined probably are equivalent to the U.S. total, and
software work is growing very rapidly in all three. Globally, all software
personnel need constant refreshment of their knowledge to stay current.
The financial crisis and recession of 2008 and 2009 (and beyond) are
likely to disrupt the normal channels of software education. To conserve
funds, many companies will cut back on training expenses. A significant
number of software personnel may lose their jobs due to downsizing
or to actual bankruptcy of their companies. As a result, attendance at
conferences will probably diminish sharply, as will attendance at com-
mercial education classes. The effect of a long recession on university and
graduate school education is uncertain. It may be that lack of normal
img
How Software Personnel Learn New Skills
229
job opportunities may actually increase university and graduate school
enrollments, assuming that loans and funding sources do not dry up.
Webinars and online educational channels are likely to expand due
in large part to their low costs for both sponsors and students. Indeed,
webinars are exploding so rapidly that there is a need for a central cata-
log of all webinars, organized by topic. On any business day, no fewer
than 50 software webinars are being offered in the United States, and
no doubt this number will soon rise into the hundreds.
It is conceivable that the recession may cause significant new
research into hypermodern training methods such as virtual real-
ity "classrooms," text mining to convert paper documents into web-
accessible documents, and shifting information from paper form into
e-book and web-accessible form.
When this report was first produced in 1995, there were only ten
major channels for software personnel to acquire new information (see
Table 4-1). These channels varied in effectiveness and costs.
Today in 2009, there are 17 channels available for software person-
nel to acquire new information. New forms of electronic books, blogs,
Twitter, web browsing, and webinars, and simulation web sites such as
Second Life have been added to the suite of learning methods. In addi-
tion, Google and Microsoft are in the process of converting millions of
paper documents into online web-accessible documents.
The current report uses a new way of evaluating learning methods.
Each method is ranked in terms of four factors using a scale from 1
(best) to 10 (worst):
1. Cost
2. Learning efficiency
3. Learning effectiveness
4. Currency of information
TABLE 4-1
Software Education Channels Available in 1995
1.
In-house education
2.
Commercial education
3.
Vendor education
4.
University education
5.
Self-study from workbooks
6.
Self-study from CD-ROMs or DVDs
7.
Live conferences
8.
Online education via the Internet and World Wide Web
9.
Books
10.
Journals
230
Chapter Four
The number "1" is the top rank or score for each category. All of the
available methods are then listed in descending order for each topic.
The first factor, cost, does not need much explanation. It simply refers
to the expenses a student is likely to have in order to use the learning
channel. Costs range from almost free for activities such as web brows-
ing, to extremely expensive for attending a major university or going
to graduate school.
The second factor, learning efficiency, refers to the amount of calendar
time required to impart a given amount of new knowledge to students. A
score of "1" indicates the most efficient form of learning. Online educa-
tion and web browsing are the quickest methods of learning.
The third factor, learning effectiveness, refers to the volume of information
that the learning channel can transmit to a student. A score of "1" indicates
the most effective form of learning. Live instructors in universities and in-
house training transmit more information than any other channels.
The fourth factor, currency, refers to the average age of the informa-
tion that is being transmitted, with a score of "1" ranking as highest or
having the most recent data. For currency, the online sources of educa-
tion tend to have the most recent data, followed by conferences and
commercial education. Universities lag in currency.
Table 4-2 lists the 17 channels evaluated in the 2009 versions of this
report.
Between 1995 and 2009, two computer-aided forms of learning, web
browsing and webinars (e-learning), have not only been added to the
list, but also have now achieved top ranking in the categories of cost,
currency, and efficiency. They are still in the middle of the list in terms
of effectiveness, however.
As the recession deepens and lengthens, and as technologies change,
we can expect to see many future changes in learning methods and
especially changes that achieve lower costs. Hopefully, higher effective-
ness might be achieved at the same time.
What Topics Do Software Engineers
Need to Learn Circa 2009?
Table 4-3 is a sample of current terms, acronyms, and abbreviations
that have come into prominence within the software community over
the past few years. The terms give flavor to the kinds of technologies
that software personnel need to know about in 2009, technologies which
in some cases did not exist even as late as 2000.
Even with 75 entries, this list covers no more than perhaps 30 per-
cent of the topics that are part of the overall knowledge of the software
engineering domain as of 2009. Indeed there are more than 700 known
programming languages and dialects, more than 50 software design
img
How Software Personnel Learn New Skills
231
TABLE 4-2
Ranking of Software Learning Channels as of January 2009
Average
Cost
Efficiency
Effectiveness
Currency
Score
Form of Education
Ranking
Ranking
Ranking
Ranking
3.00
Web browsing
1
1
9
1
3.25
Webinars/e-learning
3
2
6
2
3.50
Electronic books
4
3
3
4
5.25
In-house training
9
4
1
7
6.00
Self-study CD/DVD
4
3
7
10
7.25
Vendor training
13
6
5
5
7.25
Commercial training
14
5
4
6
7.50
Wiki sites
2
9
16
3
8.25
Live conferences
12
8
8
5
9.00
Simulation web sites
8
7
13
8
10.25
Self-study from books
5
13
12
11
10.25
Journals
7
11
14
9
10.75
On-the-job training
11
10
10
12
11.75
Mentoring
10
12
11
14
12.00
Books
6
14
15
13
12.25
Undergraduate
15
15
3
16
training
12.25
Graduate training
16
16
2
15
approaches, and at least a dozen named software development methods,
to say nothing of an almost infinite variety of combinations of things.
The topics in Table 4-3 are primarily concerned with software engi-
neering topics. Many other topics affect software outside of software
engineering, such as asset management, licensing, protecting intellec-
tual property, governance, the Information Technology Infrastructure
Library (ITIL), and hundreds of other topics.
Each topic in this list is relatively new. Each is relatively complicated.
How can software personnel stay current with the latest technologies?
Even more important, how can software personnel actually learn how
to use these new concepts well enough to be effective in their jobs?
Since not every new topic is appropriate for every project, and since
some topics are mutually exclusive, it is also important for software
engineers and managers to know enough about each to select the appro-
priate methods for specific projects.
An interesting hypothesis is that one reason why traditional topics
tend to fall out of use is that the volume of new topics in the software
world is so large. For example, most personnel are limited in the amount
of time that can be spent on training. If there is a choice between a new
topic such as "Agile development" and a traditional topic such as "design
inspections," the new is likely to be chosen over the old.
img
232
Chapter Four
TABLE 4-3
Software Knowledge Areas Circa 2009
1. Agile development
35. ITIL (Information Technology
Infrastructure Library)
2. ASP (application service provider--
software available via the World
36. JAD (joint application design)
Wide Web)
37. Java
3. Automated static analysis
38. JavaScript
4. Automated testing
39. OO (object-oriented)
5. B2B (acronym for "business to
40. OLAP (online analytical processing)
business" or business via the World
41. OLE (object linking and embedding)
Wide Web)
6. BPR (business process reengineering) 42. Orthogonal defect tracking
43. Process improvement
7. Caja
44. PSP (Personal Software Process)
8. Client-server computing
45. QFD (quality function deployment)
9. Cloud computing
46. RAD (rapid application development)
10. Computer security
47. REST (Representational State
11. CMM (capability maturity model)
Transfer)
12. CMMI (capability maturity model
48. RPC (Remote Procedure Call)
integration)
49. Ruby
13. COSMIC (a function point variant
50. Ruby with Rails
from Canada and Europe)
51. RUP (Rational Unified Process)
14. Configuration control
52. Renovation of legacy applications
15. CRM (Customer Relationship
Management)
53. Reusability
16. Data mining
54. Scrum
17. Data quality
55. Security vulnerabilities
18. Data warehouses
56. Software as a Service (SaaS)
19. Dot-com (a company doing business
57. SOA (service-oriented architecture)
via the World Wide Web)
58. SOAP (Simple Object Access Protocol)
20. E-business (electronic business)
59. Six Sigma for software
21. E-learning
60. Static analysis
22. E programming language
61. Story points
23. EA (Enterprise Architecture)
62. Supply-chain integration
24. ERP (enterprise resource planning)
63. TCO (total cost of ownership)
25. Extreme programming (XP)
64. TickIT
26. Formal design and code inspections
65. TQM (total quality management)
27. Function point metrics
66. TSP (Team Software Process)
28. GUI (graphical user interface)
67. Trusted computing
29. Hacking defenses
68. UML (unified modeling language)
30. HTML (Hypertext Markup
69. Use cases
Language)
70. Use-case points
31. I-CASE (integrated computer-aided
71. Virtualization
software engineering)
72. Web-based applications
32. IE (information engineering)
73. Web object points
33. ISO (International Standards
Organization)
74. Wiki sites
34. ISP (Internet service provider)
75. XML
How Software Personnel Learn New Skills
233
In the 1500s, the English financier Sir Thomas Gresham noted
that when two forms of currency were in circulation that had differ-
ent values compared with a fixed standard such as gold, people would
hoard the more valuable currency and use the less valuable currency.
Gresham's law describing this phenomenon was quite succinct: "bad
drives out good."
For software education and training, students with finite available
time whose choice is between learning a brand-new technology or learn-
ing an older technology, the odds favor signing up for a class in the new
technology. For software, a variation of Gresham's law for technology
education is "new drives out old."
The fact that courses in new topics tend to be more popular than
courses in older topics has nothing to do with the effectiveness or value
of the two topics. It is merely a phenomenon that new topics seem to be
favored over older topics.
Some older topics such as formal inspections of requirements, design,
and code are still among the most effective forms of defect removal
ever developed and are also valuable in terms of defect prevention. Yet
courses in formal inspections seldom draw as many attendees as courses
in newer subjects such as test-driven development, Agile development,
or automated testing.
In this book, the way of evaluating the overall effectiveness of vari-
ous education channels is to combine data on the numbers of students
using the channel, the students' satisfaction with the materials, and the
students' abilities to actually acquire new skills.
The rankings in this section are derived from interviews and client
benchmark studies that the author and his company have performed.
Overall, about 600 companies have been visited, including roughly 150
large enough to be included in the Fortune 500 set. About 35 govern-
ment sites have also been visited, at both state and national levels.
More than a dozen of the enterprises visited employed at least 10,000
software personnel. Examples of major software employers include IBM,
Microsoft, and Electronic Data Systems (EDS). More than 100 of the
companies employed more than 1000 software personnel.
Software Engineering Specialists Circa 2009
The author was commissioned to carry out a study of software specializa-
tion within large enterprises. Some of the enterprises that participated
included AT&T, the U.S. Air Force, Texas Instruments, and IBM. These
enterprises were visited by the author and his colleagues, and they
participated in detailed surveys. A number of other corporations were
contacted by telephone, or as part of assessment and benchmark consult-
ing studies. These demographic studies are still continuing, and more
234
Chapter Four
recent data was published in the author's book Software Assessments,
Benchmarks, and Best Practices (Addison-Wesley Professional, 2000).
The original study revealed several interesting facts about the soft-
ware workforce, but also revealed considerable ambiguity in software
demographics. For example:
Large corporations employ a huge variety of specialists.
Small corporations employ few specialists and utilize generalists.
Systems software and information technology groups use different
specialists.
Generic titles such as "member of the technical staff" confuse demo-
graphic data.
There is no consistency from company to company in job titles used.
There is no consistency among companies in work done by the same
job titles.
The e-business domain is creating scores of new software job-title
variants.
Human resource departments seldom have accurate software employee
data.
Software has many degrees besides computer science or software
engineering.
Some software personnel prefer not to be counted as software
professionals.
The last point was a surprise. Many of the personnel who write embed-
ded software are electrical or mechanical engineers by training. Some
of these engineers refuse to call themselves programmers or software
engineers, even though their primary work is actually that of creating
software.
In one company visited, several hundred engineers were developing
embedded software for automotive purposes, but were not considered
to be software workers by the human resources group, since their aca-
demic degrees were in other forms of engineering. When interviewed,
many of these engineers preferred to be identified by their academic
engineering degrees, rather than by their actual jobs. Seemingly, soft-
ware engineering is viewed as of somewhat lower status than electrical
engineering, telecommunications engineering, automotive engineering,
and many others.
In none of the companies and government organizations surveyed could
the human resources groups accurately enumerate the numbers of soft-
ware personnel employed or their job titles. In several of the companies
and government agencies visited, the human resources organizations had
How Software Personnel Learn New Skills
235
no job descriptions of the specialist occupations now part of the overall
software community, or even of some mainstream jobs such as "software
engineer" or "programmer."
Assume you were interested in learning the roles and knowledge
required to perform a certain job such as "business analyst," and you
visit ten companies who would seem likely to employ such specialists.
What you might find as of 2009 is the following:
Two of the companies employ business analysts, who use similar
job descriptions maintained by the company human resource orga-
nizations.
Three of the companies employ business analysts, but use unique
local jobs descriptions maintained locally and unknown to the human
resource organizations.
Three of the companies use the title of "business analyst," but have
no written job descriptions either locally or with the human resource
organizations.
Two of the companies have people who seem to work as business ana-
lysts, but have different job titles such as "member of the technical
staff" or "advisory analyst." These two have generic job descriptions
used by many other specialties.
Given the randomness of today's situation, it is very difficult to
ascertain even basic facts such as how many software employees work
for large organizations. Ascertaining more granular data such as the
exact kind and number of specialists employed is impossible as of 2009.
Ascertaining the specific kinds of knowledge and training these special-
ists need is not quite impossible, but has thousands of local variations
and no consistent overall patterns.
The responsibilities for defining positions and recruiting software
technical personnel is often delegated to the software executives and
managers, with the role of the human resource organization being sec-
ondary and involving nothing more than processing offers and entering
new employees into various payroll and administrative systems.
The interviews carried out during the study revealed that statistical
analysis of software occupations using only employment data provided
by human resources organizations would understate the numbers of
software professionals by perhaps 30 percent in typical large high-tech-
nology companies. This is because specialized positions such as embed-
ded software development, quality assurance, technical writers, and
testing specialists may not be included in counts of programmers or
software engineers.
Another source of confusion is the use of generic occupation titles
such as "member of the technical staff," which can subsume more than
236
Chapter Four
20 occupational specialties that include software, electrical engineers,
telecommunications engineers, avionics engineers, and many other
technical occupations such as business analysts and quality assurance
personnel. In some companies, the title "member of the technical staff"
includes hardware engineers, software engineers, and support personnel
such as technical writers.
The gaps and missing data from human resource organizations
explain some of the ambiguity in software population studies published
by journals and by government organizations such as the Bureau of
Labor Statistics. While many studies no doubt are accurate in terms of
reporting the information supplied by human resources organizations,
they are not able to deal with errors in the incoming raw data itself.
Varieties of Software Specialization
Circa 2009
The total number of kinds of software specialists exceeds 100 and
appears to be growing. The overall classes of specialization observed
fall into five discrete domains:
Specialists in specific tools, methods, or languages such as Java or
object-orientation
Specialists in particular business, industry, or technology domains
such as banking
Specialists in support tasks such as testing, quality assurance, or
documentation
Specialists in managerial tasks such as planning, estimating, and
measurement
Specialists in portions of software life cycles such as development or
maintenance
Table 4-4 lists the major kinds of specialists observed in the course
of software demographic studies and assessment studies among large
corporations and government agencies.
Although Table 4-4 includes some 115 job titles or forms of special-
ization (and is not even 100 percent complete), no company yet studied
has employed more than about 50 software specialties that could be
correctly identified. Organizations using "member of the technical staff"
as a generic job title may have other specialties that were not identified
during the author's studies.
An additional recent title found in more than a dozen companies that
specialize in software is that of "evangelist." This is an intriguing title
because it demonstrates that software technology selection tends to be a
faith-based activity rather than a scientific or knowledge-based activity.
img
How Software Personnel Learn New Skills
237
TABLE 4-4
Software Specialization in Large Software Organizations
1.
Accounting/financial specialists
2.
Agile development specialists
3.
Architects (software/systems)
4.
Assessment specialists
5.
Audit specialists
6.
Baldrige Award specialists
7.
Baselining specialists
8.
Benchmarking specialists
9.
Business analysts
10.
Business Process Reengineering (BPR) specialists
11.
Capability Maturity Model Integration (CMMI) specialists
12.
Complexity specialists
13.
Component development specialists
14.
Configuration control specialists
15.
Cost estimating specialists
16.
Consulting specialists (various topics)
17.
Curriculum planning specialists
18.
Customer liaison specialists
19.
Customer support specialists
20.
Database administration specialists
21.
Data center support specialists
22.
Data quality specialists
23.
Data warehouse specialists
24.
Decision support specialists
25.
Development specialists
26.
Distributed systems specialists
27.
Domain specialists
28.
Education specialists (various topics)
29.
Embedded systems specialists
30.
Encryption specialists
31.
Enterprise Resource Planning (ERP) specialists
32.
Frame specialists
33.
Expert-system specialists
34.
Function point specialists (COSMIC certified)
35.
Function point specialists (IFPUG certified)
36.
Function point specialists (Finnish certified)
37.
Function point specialists (Netherlands certified)
38.
Generalists (who perform a variety of software-related tasks)
39.
Globalization and nationalization specialists
40.
Graphics artist specialists
41.
Graphics production specialists
42.
Graphical user interface (GUI) specialists
(Continued)
img
238
Chapter Four
TABLE 4-4
Software Specialization in Large Software Organizations (continued)
43.
Hacking specialists (for defensive purposes)
44.
Human factors specialists
45.
Information engineering (IE) specialists
46.
Instructors (Management topics)
47.
Instructors (Software topics)
48.
Instructors (Quality topics)
49.
Instructors (Security topics)
50.
Integration specialists
51.
Internet specialists
52.
ISO certification and standards specialists
53.
Joint application design (JAD) specialists
54.
Knowledge specialists
55.
Library specialists (for project libraries)
56.
Litigation support specialists
57.
Maintenance specialists
58.
Marketing specialists
59.
Member of the technical staff (multiple specialties)
60.
Measurement specialists
61.
Metric specialists
62.
Microcode specialists
63.
Multimedia specialists
64.
Nationalization specialists
65.
Network maintenance specialists
66.
Network specialists (LAN)
67.
Network specialists (WAN)
68.
Network specialists (Wireless)
69.
Neural net specialists
70.
Object-oriented specialists
71.
Outsource evaluation specialists
72.
Package evaluation specialists
73.
Performance specialists
74.
Personal Software Process (PSP) specialists
75.
Project cost analysis specialists
76.
Project managers
77.
Project planning specialists
78.
Process improvement specialists
79.
Productivity specialists
80.
Quality assurance specialists
81.
Quality function deployment (QFD) specialists
82.
Quality measurement specialists
83.
Rapid application development (RAD) specialists
84.
Rational Unified Process (RUP) specialists
img
How Software Personnel Learn New Skills
239
TABLE 4-4
Software Specialization in Large Software Organizations (continued)
85.
Research fellow specialists
86.
Reliability specialists
87.
Repository specialists
88.
Reengineering specialists
89.
Renovation specialists
90.
Reverse engineering specialists
91.
Reusability specialists
92.
Risk management specialists
93.
Sales specialists
94.
Sales support specialists
95.
Scope managers
96.
Scrum masters
97.
Security specialists
98.
Service-oriented architecture (SOA) specialists
99.
Six Sigma specialists
100.
Standards specialists (ANSI, IEEE, etc.)
101.
Statistical specialists
102.
Systems analysis specialists
103.
Systems support specialists
104.
Technology evaluation specialists
105.
Team Software Process (TSP) specialists
106.
Technical translation specialists
107.
Technical writing specialists
108.
Testing specialists
109.
Test library control specialists
110.
Total quality management (TQM) specialists
111.
Value analysis specialists
112.
Virtual reality specialists
113.
Web development specialists
114.
Web page design specialists
115.
Webmasters
The context of the evangelist title usually occurs with fairly new tech-
nical concepts such as "Java evangelist" or "Linux evangelist." The title
is common enough so that a Global Network of Technology Evangelists
(GNoTE) was formed a few years ago by a Microsoft employee.
While the evangelist job title seems to be benign and is often associated
with interesting new concepts, it does highlight some differences between
software engineering, medicine, and older engineering fields in terms of
how ideas are examined and tested prior to widespread adoption. For
software, charismatic leadership seems to be more widely associated with
240
Chapter Four
technology selection and technology transfer than empirical data based
on experiment or actual usage.
The book Selling the Dream by Guy Kawasaki (formerly of Apple) in
1991 may be the first published use of "evangelist" in a software context.
However, in an interview, Kawasaki said that Apple was already using
"evangelist" when he first arrived, so he did not originate the title. Even
so, Apple is a likely choice as the origin of this interesting job title.
A few other software job titles have occurred whose origins are worth
noting. The Six Sigma community has adopted some of the terminology
from martial arts and uses "yellow belt," "green belt," and "black belt"
to indicate various degrees of proficiency.
If licensing and board certification should come to pass in the future
of software engineering, it is interesting to speculate how titles such
as "evangelist" and "black belt" might be handled by state licensing
examinations.
There are interesting correlations between specialization and com-
pany size, and also by specialization and industry.
In general, large corporations with more than 1000 total software
workers have the greatest numbers of specialists. Small companies with
fewer than about 25 software personnel may have no specialists at all in
terms of job titles, even though there may be some distribution of work
among the software staff.
The high-technology industries such as telecommunications, defense,
and aerospace employ more specialists than do service industries and
companies in the retail, wholesale, finance, and insurance sectors.
The software domain is expanding rapidly in terms of technologies.
The time has arrived when one person cannot know more than a fraction
of the information needed to do an effective job in the software industry.
When this situation occurs, specialization is the normal response.
If the 75 topics shown in Table 4-3 were combined with the 115 spe-
cialists shown in Table 4-4, the result would be a matrix with some 8,625
cells. Since each cell would include its own unique form of knowledge
and information requirements, it can be seen that keeping up to speed
in modern software engineering topics is a very difficult problem.
If a full spectrum of software topics with about 1000 entries were com-
bined with a full range of software and business specialists with about
250 occupations, the resulting matrix would contain some 250,000 cells.
It is apparent that unaided human intelligence could not encompass all
of the knowledge in all of the cells. Some form of simplification and a
formal taxonomy of knowledge branches would be needed to keep this
mass of information in order. No doubt intelligent agents and expert
systems would also be needed to extract and analyze knowledge for
specific activities and occupations.
How Software Personnel Learn New Skills
241
The emergence of specialization has occurred in most scholarly dis-
ciplines such as medicine and law. In fact, specialization has been a
common phenomenon for science in general. The specialties of chem-
istry, physics, biology, geology, and so on are all less than 200 years
old. Prior to the development of these specialized domains, those with
scholarly and scientific aspirations were identified by generic titles such
as "natural philosopher."
If licensing and certification of software specialties should become a
reality, the presence of more than 115 different specialists will present
considerable difficulty. This is almost three times the number of medi-
cal specialties that exist in 2009 and more than four times the number
of legal specialists.
There would seem to be a necessity to prune and consolidate some
forms of specialization in order to bring the total number of specialists
into line with law and medicine; that is, fewer than 50 formal domains of
specialization and perhaps 25 primary specialties that have significant
numbers of practitioners.
It is interesting that software academic curricula appear to be aimed
more at generalists than at specialization. For example, most of the
quality assurance personnel interviewed learned the elements of testing
and quality control via on-the-job training or in-house courses rather
than at the university level.
Currently, the explosive growth of the World Wide Web and the emer-
gence of e-business as a major corporate focus are expanding the num-
bers of job titles. For example, the titles of "webmaster" and "web page
developer" appear to be less than ten years old.
New forms of specialization in the software domain occur very rap-
idly: more than five new kinds of specialists tend to occur almost every
calendar year. Chapter 3 of this book deals with the topic of software
certification and specialization. Chapter 3 offers suggestions about
the minimum number of specialists that might be needed. This is an
attempt to begin to identify the correlation between software occupa-
tions, and the knowledge and learning channels that will be required
to perform at professional levels.
Approximate Ratios of Specialists
to General Software Personnel
One of the major topics in the domain of specialization is how many spe-
cialists of various kinds are needed to support the overall work of the soft-
ware generalist community? Table 4-5 uses the term "generalist" to refer to
employees who perform software development programming and whose job
titles are "programmer," "programmer/analyst," or "software engineer."
img
242
Chapter Four
TABLE 4-5
Approximate Ratios of Specialists to General Software Populations
Specialist Occupations
Specialists to Generalists
Generalist %
Maintenance and enhancement
1 to 4
25.0%
specialists
Testing specialists
1 to 8
12.5%
Systems analysts
1 to 12
12.0%
Technical writing specialists
1 to 15
6.6%
Business analyst
1 to 20
5.0%
Quality assurance specialists
1 to 25
4.0%
Database administration specialists
1 to 25
4.0%
Configuration control specialists
1 to 30
3.3%
Systems software support specialists
1 to 30
3.3%
Function point counting specialists
1 to 50
2.0%
Integration specialists
1 to 50
2.0%
Measurement specialists
1 to 50
2.0%
Network specialists (local, wide area)
1 to 50
2.0%
Performance specialists
1 to 75
1.3%
Architecture specialists
1 to 75
1.3%
Cost estimating specialists
1 to 100
1.0%
Reusability specialists
1 to 100
1.0%
Scope managers
1 to 125
0.8%
Package acquisition specialists
1 to 150
0.6%
Security specialists
1 to 175
0.6%
Process improvement specialists
1 to 200
0.5%
Education and training specialists
1 to 250
0.4%
Standards specialists
1 to 300
0.3%
The generalist category refers to workers whose main role is com-
puter programming, although they often do other work as well, such
as requirements analysis, design, testing, and perhaps creating user
documentation.
The topic of specialization is only just starting to be explored in depth,
so the following ratios have a high margin of error. Indeed, for some kinds
of specialization there are not yet any normative ratios available. Not all
of the specialists shown here occur within the same company. They are
ranked here in descending order. The data in Table 4-5 comes from large
corporations that employ more than 1000 software personnel in total.
Although the purpose of the author's study of software specialization
was to explore software occupations in major companies, a secondary
result of the study was to recommend some significant improvements
in the nature of the data kept by human resource organizations.
In general, the demographic data maintained by human resource
organizations is inadequate to predict long-range trends or even current
How Software Personnel Learn New Skills
243
employment in software occupations. The data appears to be so incom-
plete for software occupations as to invalidate many demographic studies
published by government agencies and large information companies such
as Gartner Group. If we do not even know how many software person-
nel are employed today, it is hard to discuss future needs in a realistic
fashion.
Not only is there a huge gap in software demographic data, but there
also is an even larger gap in what all these specialized occupations
really need to know to perform their jobs with high levels of professional
competence. This gap affects university curricula and graduate schools,
and also affects every single learning channel.
The author hypothesizes that software has such a large number of
informal specialties because it is not yet a true engineering occupation.
Software is slowly evolving from a craft or art form, and therefore has
not yet achieved a stable point in either the kinds of knowledge that
are needed or the kinds of specialists that are required to utilize that
knowledge in a professional manner.
Evaluating Software Learning Channels
Used by Software Engineers
For more than 50 years, major software employers have tried to keep
their employees up to speed by offering training and education on
a continuing basis. The best-in-class software employers typically have
a pattern that resembles the following:
1. From four to ten weeks of intensive training for new technical
employees
2. Annual in-house training that runs from five to ten days per year
3. From one to three external commercial seminars per year
4. Monthly or at least quarterly "webinars" on newer topics
5. A growing library of DVD training courses for self-study
6. A significant library of technical books and journals
7. Tuition-refund programs for managers and technical staff
8. Access to web-based technical sites
9. Subscriptions to software and management journals such as
CrossTalk
10. Subscriptions to executive journals such as CIO
11. Subscriptions to information providers such as Gartner Group
12. Increasing use of webinars, e-books, and web-based information
244
Chapter Four
Unfortunately, the recession of 2009 is likely to cause significant
reductions in many of these methods, as companies scramble to stay
solvent. Not only are some of the educational approaches likely to be cut
back, but also some of the instructors may face layoffs. Hiring itself may
be reduced to such low levels that training needs are also reduced.
Because multiple channels of education are available, it is interest-
ing to consider the topics for which each kind of channel is likely to
be selected, and their strengths and weaknesses. The following edu-
cational channels are ranked in terms of their overall scores. In the
following ranking, "1" is best. There are 17 channels shown in the full
discussion.
Number 1: Web Browsing
Costs = 1; Efficiency = 1; Effectiveness = 9; Currency = 1; Overall
Score = 3.00
Prognosis: Expanding rapidly
Web browsing using search engines such as Google or Ask is now
the most rapid and cost-effective method for finding out about almost
any technical topic in the world. By using a few choice search phrases
such as "software quality" or "software cost estimating," within a few
moments, millions of pages of information will be at hand.
The downside of web browsing is that the information is likely to be
scattered, chaotic, and a mixture of good and bad information. Even
so, web browsing is now a powerful research tool not only for software
engineers, but also for all knowledge workers.
A number of web portals provide unusually large numbers of links to
other relevant sources of information. One of these is the portal of the
Information Technology Metrics and Productivity Institute (ITMPI),
which provides an extensive fan-out to topics in areas such as software
engineering, quality assurance, project management, and maintenance
of legacy applications (www.ITMPI.org).
Among academic links, one of the most complete is that of Dave
W. Farthing of the University of Glamorgan in the United Kingdom (www
.comp.glam.ac.uk). This interesting portal has links to dozens of project
management sites and to the publishers of scores of project manage-
ment books.
A third portal to useful software topics is the web site of the Software
Engineering Institute (SEI), which is somewhat slanted toward the
government and defense sectors. However, it still covers a host of inter-
esting topics and provides many useful links (www.SEI.org).
However, consolidation of information by topic, cross indexing, and
knowledge extraction remain somewhat primitive in the software
domain.
How Software Personnel Learn New Skills
245
Number 2: Webinars, Podcasts, and E-Learning
Costs = 3; Efficiency = 2; Effectiveness = 6; Currency = 2; Overall
Score = 3.25
Prognosis: Expanding rapidly in usage; improving in effectiveness
Using computers for training has long been possible, but new technol-
ogies are making rapid improvements. Within a few years, students may
be able to take extensive training in virtual environments augmented
by many new learning methods.
Webinars are a new kind of seminar that is exploding in popularity.
With webinars, the speakers and the attendees are located in their own
offices or homes, and all use their own local computers. A webinar host-
ing company connects all of the participants and also provides back-up
support in case any participant gets disconnected. The hosting company
also provides evaluations of the event.
Podcasts are similar to webinars, except that they may or may not be
broadcast live. If they are recorded, then the information is available on
demand at any time. Podcasts can also include quizzes and tests, with
automatic scoring and rerouting to different parts of the material based
on student answers.
In webinars, the primary speaker and also an MC communicate
with the attendees by phone, but PowerPoint slides or other computer-
generated information appears on the attendees' screens, under the
control of the primary speaker or the MC.
Because no travel is involved, the efficiency and cost scores of webi-
nars are quite good. The currency score is also quite good. As of 2008,
the effectiveness was only mid-range but increasing rapidly. Webinars
at the moment are primarily used for single-purpose presentations of
up to about 90 minutes in duration.
Webinars and podcasts have expanded in numbers so rapidly that on
any given day, perhaps 50 such webinars are being offered concurrently
by various organizations. It is almost impossible to keep track of the num-
bers of webinars. What would be of value to the industry is a nonprofit
catalog that would allow companies and universities to post the schedules
and abstracts of all webinars for at least two months in advance.
In the future, it can be expected that because of the cost-effectiveness
of the webinar and podcast approach, entire courses of perhaps 10 to
20 hours in duration will migrate to the webinar method. At some point,
virtual environments using avatars will join the mix, and then e-learn-
ing will have a good chance of becoming more effective than any other
form of training in human history.
As of 2009, the technology of webinars is still immature. Disconnects,
low volume, and intermittent telephone problems are not uncommon.
The VOIP form of telephone calls, for example, often does not work at
all. No doubt these issues will be resolved over the next year or two.
246
Chapter Four
It is theoretically possible to envision entire courses taught on a global
basis without the students and instructors ever meeting face to face, by
using webinars and computer communications exclusively.
It is only a short step from today's webinars to using a virtual class-
room where students and instructors can see each other, either as
abstract avatars or by using actual images of real people.
Some universities such as MIT have already integrated video and audio
connections into lecture halls, so that remote students can participate in
live classes. It is only a small step to extend this technology to hand-held
devices or to record the lectures and discussions for later use.
In addition to merely having webinars and then saying goodbye, astute
companies will note that the connections to several hundred possible
customers might be a good marketing opportunity as well. Attendees
can register with the instructor or the company sponsoring the event
to receive additional information.
Indeed, it would also be possible to invite webinar attendees to partici-
pate in other forms of information transfer such as wiki sites. There are
also blogs and Twitter sites, which are essentially channels for personal
views and opinions.
The long-range direction in online learning is positive. More and more
information will be available, and more and more personnel will be able
to communicate and share ideas without travel or face-to-face contact
in real life.
Eventually, some combination of avatars, virtual reality, and improved
methods of using intelligent agents to extract and consolidate knowledge
should lead to the ability to offer entire educational curricula from high-
school through graduate school via online and web-accessible methods.
No doubt wireless technologies will also be involved, and information
will also become available on hand-held devices such as smart phones.
Number 3: Electronic Books (e-books)
Costs = 4; Efficiency = 3; Effectiveness = 3; Currency = 4; Overall
Score = 3.50
Prognosis: Expanding in usage; improving in effectiveness; declining
in costs
Electronic books, or e-books, have been on the periphery of education
and entertainment for more than 20 years. In the past, electronic books
were characterized by dim screens, awkward interfaces, slow downloads,
limited content, and general inconvenience compared with paper books, or
even compared with normal computers whose screens are easier to see.
There have long been organizations such as Project Gutenberg that
make books available in HTML, PDA, Word, or other web-accessible forms.
This trend is now exploding as Google, Microsoft, and other major players
are attempting to use automated text-conversion tools to convert almost
How Software Personnel Learn New Skills
247
100 percent of hard-copy books into web-accessible formats. Needless to
say, these attempts have raised serious issues on copyrights, intellectual
property, and compensation for authors and copyright holders.
Also, given the huge volumes of online text now available, there are
also technical issues that need to be improved such as cross-references,
abstracts, indexes, inclusive catalogs, and so on. However, the trend toward
web-accessible text is expanding rapidly and will continue to do so.
Interestingly, the legal profession seems to be somewhat ahead of the
software profession in terms of concentrating knowledge, cross-refer-
encing it, and making information accessible to professionals who need
it. The Lexis-Nexis company, for example, has access to more than 5
million documents from perhaps 30,000 sources. There is no equiva-
lent organization that has such a well-organized collection of software
information.
More recently, starting in 2007 and 2008, Amazon and Sony began to
change the equation for electronic books with new models that solved
most of the problems of older e-books and simultaneously introduced
powerful new features.
The new Amazon Kindle and the Sony PR-505 have at least an outside
chance at transforming not only software learning, but also learning in
all other scientific disciplines. The best features of these new devices
include excellent screen clarity, very fast downloads (including wireless
connections), long battery life, and much-improved interfaces. In addi-
tion, they have some features that are even superior to regular paper
books. These include the ability to keep permanent annotations, to skip
from book to book on the same topic, and to get frequent updates as new
materials become available from publishers.
Using e-books as software learning tools, it would be easy to select and
download the top ten books on software project management, the top ten
books on software quality, the top ten books on software maintenance,
the top ten books on software cost estimating, and the top ten books
on software development, and have all of them present and available
simultaneously.
For colleges and universities, it would easily be possible to download
every book for every course each semester and have them all available
concurrently.
The current models of the Sony and Kindle devices are already quite
good, but as with all new products, improvements can be expected to
appear rapidly over the next few years. Within perhaps five years, it
can be anticipated that e-books will be making a substantial dent in
the market for conventional paper books. Some features to anticipate
include the ability to deal with graphics and animation downloads;
e-book subscriptions from major technical journals; and perhaps inclu-
sions of links to relevant web sites.
248
Chapter Four
Number 4: In-House Education
Costs = 9; Efficiency = 4; Effectiveness = 1; Currency = 7; Overall
Score = 5.25
Prognosis: Effective, but declining due to recession
Due to the economic crisis and recession of 2008 and 2009, in-house
training is likely to diminish over the next few years due to layoffs and
cost-cutting on the part of major corporations, to say nothing of some
major corporations filing for bankruptcy and going out of business.
In-house education was number one in overall effectiveness from
1985, when our surveys started, through the end of 2007, before the
financial crisis and the recession. In-house education still ranks as
number 1 in effectiveness and is number 4 in efficiency. That means
that a great deal of information can be transmitted to students with
relative ease and speed.
However, this channel is only available for employees of fairly large
corporations such as IBM, Microsoft, Google, and the like. The author
estimates that roughly half of the U.S. software personnel currently
work in organizations large enough to have in-house training, that
is, just over 1.6 million U.S. software professionals have access to this
channel.
More recent studies in 2001, 2002, 2003, and 2004 indicated a decline
in this channel. The economic downturn of 2008 and 2009 caused some
in-house training to be cancelled, due in part to the instructors being
laid off or taking early retirement.
In addition, the reduction in entry-level hiring has reduced the need
for education of recent college graduates who are joining large companies
in junior positions. In-house education is likely to continue to be dimin-
ished through 2010 as the recession lengthens and deepens. If other
channels such as virtual education and webinars continue to expand,
the high-water mark for in-house education may have passed.
Some large software employers such as Accenture, AT&T, EDS, IBM,
Microsoft, and many others have in-house curricula for software pro-
fessionals and managers that are more diverse and current than most
universities in the United States. A former chairman of ITT observed
that the Fortune 500 companies in the United States have more soft-
ware instructors than all universities put together. Employees within
large companies have more student days of in-house training than all
other channels combined.
The in-house courses within major corporations are usually very con-
centrated and very intensive. An average course would run from two to
three business days, starting at about 8:30 in the morning and finishing
at about 4:30 in the afternoon. However, to optimize student availability,
some courses continue on into the evening.
How Software Personnel Learn New Skills
249
From observations of the curricula and attendance at some of the
courses, the in-house education facilities of large corporations are among
the most effective ways of learning current technologies.
Another advantage of in-house training is the ease of getting approval
to take the courses. It requires far less paperwork to gain approval for a
corporation's in-house training than it does to deal with a tuition-refund
program for university courses.
As this is written in 2009, it is uncertain if in-house education will
regain the importance that it had during the 1980s and 1990s. The eco-
nomic future is too uncertain to make long-range predictions.
One interesting finding about in-house education is the impact on
software development productivity. Companies that provide ten days of
training per year for software engineers have higher annual productiv-
ity rates than companies that provide zero days of training, even though
ten working days are set aside for courses. The value of the training
appears to pay off in better performance.
Although the information was not explored in depth and there may
not be a provable relationship, it was interesting that companies with
ten days of training per year had lower rates of voluntary attrition
than companies with zero days of training. Apparently training has a
beneficial impact on job satisfaction.
Number 5: Self-Study Using CD-ROMs or DVDs
Costs = 4; Efficiency = 3; Effectiveness = 7; Currency = 10; Overall
Score = 6.00
Prognosis: Improving slowly in usage; improving faster in effectiveness
The technology of self-study courses is on the verge of being trans-
formed by new CD-ROM and DVD approaches. It may also be trans-
formed by e-books. The older form of self-study courses consisted of
tutorial materials, exercises, and quizzes often assembled into loose-
leaf notebooks. The CD-ROM or DVD varieties include all of the prior
approaches, but can also feature hypertext links and a huge variety of
supplemental information.
The newest form of DVD training actually allows new content to be
added to the course while it is in session. This method is so new that
little empirical data is available. When it becomes widespread, the
"currency" score should climb rapidly.
The prospect of fully interactive learning via DVDs is an exciting one,
since graphics, animation, voices, and other topics can now be included.
However, the costs and skill required to put together an effective
DVD course are significantly greater than those needed for traditional
workbooks. The costs for the students are not particularly high, but the
production costs are high.
250
Chapter Four
Until about 1995, the number of CD-ROM drives in the hands of
potential students was below critical mass levels, and many of these
were older single-speed drives with sluggish access times and jerky
animation.
However, by 2009 the author estimates that more than 99 percent
of software personnel have DVD or CD-ROM drives on their office
computers. (Ultralight net-book devices weighing less than 3 pounds
often lack drives for DVDs and CDs. Also, some organizations that do
highly classified work prohibit all forms of removable media on the
premises.)
As of early 2009, the author estimates that more than 250,000 soft-
ware personnel have taken self-study courses via CD-ROMs or DVDs.
Probably fewer than 125 such courses currently are available due to the
difficulty and costs of production.
As the 21st century advances, it is possible that self-study courses
using CD-ROM and DVD approaches will expand in numbers and
improve in effectiveness. Giving this self-study channel a boost are
lightweight portable CD-ROM or DVD viewers in notebook computers
that can be carried and used on airplanes. The same is true of electronic
books.
Even newer technologies will allow the equivalent to DVDs to be
downloaded not only to computers, but also directly to television sets,
iPods, smart phones, and other hand-held devices.
The impact of the new Blu-Ray format can potentially improve the
interactive capabilities of DVD education, but so far this idea remains
largely unexploited by educational companies due to the fairly high
costs of Blu-Ray production.
Number 6: Commercial Education
Costs = 14; Efficiency = 5; Effectiveness = 4; Currency = 6; Overall
Score = 7.25
Prognosis: Declining due to recession
The economic crisis of 2008 and 2009 and the continuing recession
are having a depressing impact on commercial education. Numbers
of students are in decline, and air-travel is becoming more and more
expensive. No doubt lower-cost methods such as e-learning will start to
supplant normal commercial education.
For many years, commercial education ranked number two in overall
effectiveness. There is a significant subindustry of commercial educa-
tion providers for the software domain. In 2009, it is now in fifth place,
but still quite effective.
Companies within this subindustry include Computer Aid (CAI),
Construx, Coverity, Cutter, Data-Tech, Digital Consulting Inc. (DCI),
Delphi, FasTrak, the Quality Assurance Institute (QAI), Learning Tree,
How Software Personnel Learn New Skills
251
Technology Transfer Institute (TTI), and many others who teach on a
national or even international level. These companies provide education
in both technical and managerial topics.
Operating at a higher level are specialized information companies
such as Gartner Group and Forrester Research. These companies both
provide standard reports and do customized research for clients. The
main client bases of such high-end companies are executives and top
management. In keeping with these target markets, the fees and costs
of such research are high enough so that they appeal primarily to major
corporations and some large government software executives, such as
the CIOs of states and major cities.
Nonprofit organizations also offer fee-based training. For example,
the nonprofit International Function Point Users Group (IFPUG)
offers training and workshops in function point topics. The Project
Management Institute (PMI) also offers commercial education, as does
the Software Engineering Institute (SEI). The International Software
Benchmarking Standards Group (ISBSG) also offers training in esti-
mation and benchmark topics, and publishes books and monographs
on both topics.
Hundreds of local companies and thousands of individual consultants
teach courses on a contract basis within companies and sometimes as
public courses as well. Many courses are offered by nonprofit organiza-
tions such as the ACM (Association for Computing Machinery), DPMA
(Data Processing Management Association), IEEE, IFPUG, SEI, and
scores of others.
The author estimates that about 500,000 U.S. software personnel
take at least one commercial software seminar in the course of a normal
business year. However, from 2009 onward, there will be a sharp decline
due to the global recession.
Since the major commercial educators run their training as a busi-
ness, they have to be pretty good to survive. A primary selling point of
the larger commercial education companies is to use famous people as
instructors on key topics. For example, such well-known industry figures
as Bill Curtis, Chris Date, Tom DeMarco, Tim Lister, Howard Rubin, Ed
Yourdon, Watts Humphrey, Dr. Gerry Weinberg, Dr. James Martin, and
Dr. Carma McClure all offer seminars through commercial education
companies.
A typical commercial seminar will run for two days, cost about $895
to enroll, and attract 50 students. A minor but popular aspect of com-
mercial education is the selection of very good physical facilities. Many
commercial software courses are taught at resort hotels in areas such
as Aspen, Orlando, Phoenix, or San Francisco.
However, the more recent recession of 2009 (and beyond) needs to
be considered. For several years, business activities involving travel to
252
Chapter Four
other cities were reduced somewhat and have never fully recovered. As
the recession grows more widespread, even further reductions can be
anticipated.
The main strengths of commercial education remain and are twofold:
Very current topics are the most salable.
Top-notch instructors are the most salable.
This means that commercial seminars are likely to cover material
that is not available from a university or even from an in-house curricu-
lum. It also means that students get a chance to interact with some of
the leading thinkers of the software domain. For example, in 2009, the
commercial education channel is much more likely than most to cover
current hot topics such as Agile development, Six Sigma for software,
or web-based topics.
The commercial education market has been most widely utilized by
companies in the top quartile of software productivity and with qual-
ity levels as noted during SPR assessment and benchmark studies. In
other words, companies that want top performance from their manag-
ers and technical workers realize that they need to bring in top-gun
educators.
Number 7: Vendor Education
Costs = 13; Efficiency = 6; Effectiveness = 5; Currency = 5; Overall
Score = 7.25
Prognosis: Declining due to recession
Vendor education was formerly ranked number three in overall effec-
tiveness and is now number six. This is not because of slipping quality
on the part of vendors, but because of the rapid emergence of webinars
and new DVD technologies.
Vendor-supplied education has been a staple of the software world for
almost 50 years. Because vendor education in tools such as spreadsheets
and word processors are taken by non-software personnel, the total
number of students is enormous. However, within the software domain,
the author estimates that about 500,000 software personnel will take
at least one vendor course in a normal business year.
Vendor education used to be free in the days when hardware and
software were still bundled together. Some vendor education is still
free today, when used as part of marketing programs. Normally, vendor
education is sold to clients at the same time that they buy the tools or
packages for which training is needed.
Almost every large commercial software application is complicated.
Even basic applications such as word processors and spreadsheets
How Software Personnel Learn New Skills
253
now have so many features that they are not easily mastered.
Thus large software companies such as Artemis, IBM, Oracle, and
Computer Associates offer fee-based education as part of their service
offerings.
The size, feature set, and complexity of software products mean that
every major vendor now has some kind of education offering available.
For really popular tools in the class of Microsoft Word, WordPerfect,
Excel, Artemis Views, KnowledgePlan, and so on, there may be local
consultants and even high-school and college courses that supplement
vendor-supplied education.
For very large applications such as ERP packages from Oracle and
SAP, it is hardly possible to learn to use the software without extensive
education either from the vendors, or from specialized education com-
panies that support these packages.
Vendor education is a mainstay for complicated topics such as learn-
ing how to deploy and utilize enterprise resource planning packages by
vendors such as BAAN, Oracle, PeopleSoft, SAP, and others.
Vendor-provided education runs the gamut from very good to very
poor, but on the whole does a creditable job of getting clients up and
running on the applications in question.
Vendor education is usually a lot cheaper than commercial education,
and the effective costs are sometimes less than $100 per student day.
Vendor education is often offered on a company's own premises, so it is
generally very convenient. On the other hand, you don't expect big name
instructors to constitute the faculty of vendor training either.
However, newer methods such as e-learning are even cheaper and
have the advantage that courses can be taken 24 hours a day at the
convenience of the students. Therefore, vendor education will decline in
future years, and e-learning methods will become the major vehicle.
Further, as the recession deepens and lengthens, instructors are usually
among the first to lose their jobs due to cost-cutting measures. Therefore,
vendor education with live instructors is entering a period of decline.
As software packages continue to evolve new features and more com-
plexity, vendor-supplied education will remain a stable feature of the
software world well into the next century, but moving from live instruc-
tors toward perhaps e-learning or even using virtual environments with
avatars.
Vendor education has also been negatively affected by the economic
downturn circa 2008­2009. Some vendors lost money due to reduced
sales, so course offerings were naturally reduced as well. Other vendors
were acquired, and some went out of business. In spite of the reduc-
tion in courses and instructors, vendor-supplied education remains an
important channel of instruction, even though the numbers of vendors,
students, and courses are in decline.
254
Chapter Four
Number 8: Live Conferences
Costs = 12; Efficiency = 8; Effectiveness = 8; Currency = 5; Overall
Score = 8.25
Prognosis: Declining due to recession
Unfortunately, the financial crisis and recession of 2008 and 2009
(and beyond) are causing a severe decline in live conferences, and this
trend may continue indefinitely. The author estimates that attendance
at live conferences in 2009 will probably be about 30 percent less than
the same events in 2006, due to layoffs, cost cutting, and other financial
issues.
Software-related conferences rank number eight in effectiveness in
teaching new skills. However, they would rank number one in highlight-
ing interesting new technologies. Unfortunately, the combined impact
of the September 11 disaster and the economic downturn since 2000
caused many companies to cut back corporate travel, which affected
conference attendance.
The author estimates that attendance at software conferences in 2003
was probably 15 percent below what might have been the norm in 1999.
However, 2006 and 2007 saw increases in conference attendance. The
recession of 2008 is still too new to have impacted many conferences as
this is written, but no doubt conference attendance will decline before
the end of 2008 and perhaps in 2009 based on the poor results of the
U.S. and world economies.
Even so, there are major software conferences every month of the
year, and some months may have multiple events. Conferences are
sponsored both by nonprofit organizations, such as the U.S. Air Force
STSC (Software Technology Support Center), IEEE, IFPUG, GUIDE
(Global Uniform Interoperable Data Exchange), SHARE (Software-
Hardware Asset Reuse Enterprise), or ASQC (American Society for
Quality Control), and also by commercial conference companies such
as Computer Aid (CAI), Cutter, Digital Consulting Inc. (DCI), Software
Productivity Group (SPG), or Technology Transfer Institute (TTI). There
are also high-end conferences for executives sponsored both by research
companies such as Gartner Group, and also by academia such as the
Harvard Business School or the Sloan School.
In addition, there are vendor-hosted conferences for users by compa-
nies such as Apple, Microsoft, Computer Associates, Oracle, CADRE,
COGNOS, SAS, SAP, and the like. These are often annual events that
sometimes draw several thousand participants.
The author estimates that about 250,000 U.S. software professionals
attended at least one conference in 2007, and some professionals may
have attended multiple conferences. The year 2008 will probably see a
drop due to the declining status of the U.S. economy.
How Software Personnel Learn New Skills
255
Software conferences are where the cutting edge of software technolo-
gies are explained and sometimes revealed for the very first time. Many
conferences also feature training seminars before or after the main
event, and hence overlap commercial education channels and vendor
education channels.
However, most of us go to conferences to find out what is new and
exciting in our chosen domains. The mix of speakers and topics at con-
ferences can range from brilliant to boring. Conferences are arranged
with many concurrent sessions so that it is easy to leave a boring session
and find a better one.
Most conferences combine keynote speeches to the whole audience
with parallel sessions that cover more specialized topics. A typical
U.S. software conference will run for three days, attract from 200
to more than 3000 attendees, and feature from 20 to more than 75
speakers.
In addition to primary speakers and seminar leaders, many confer-
ences also have "vendor showcases," where companies in related busi-
nesses can display their goods and perhaps make sales or at least
contacts. The fees that vendors pay for participating in such conferences
defray the administrative costs and sometimes even allow conferences
to be run as profit-making opportunities.
On the whole, conferences do a good job in their primary role of expos-
ing leading-edge technologies to the audience. You seldom come away
from a conference with an in-depth working knowledge of a new tech-
nology. But you often come away with a solid understanding of what
technologies merit closer analysis.
Within recent years, several conferences have become so large that
the proceedings are now starting to be released on CD-ROM rather than
in traditional notebooks or bound hard copies.
In the future, it is possible that live conferences will merge with webi-
nars and with DVD production. It is technically possible to have simul-
taneous live events and webinars so that the speakers are seen by a
live audience and a remote audience at the same time. It would also be
possible to record the proceedings for later offline use or for downloading
to computers and hand-held devices.
If the economy continues to decline and live conferences lose attend-
ees, as happened during the dot-com crash and earlier recessions,
it may be that webinars will become effective substitutes for live
instruction.
Number 9: Wiki Sites
Costs = 2; Efficiency = 9; Effectiveness = 16; Currency = 3; Overall
Score = 7.50
Prognosis: Increasing rapidly in usage; increasing in effectiveness
256
Chapter Four
The word "wiki" means "fast" in Hawaiian. The term has started to be
applied to web sites that allow multiple people to participate toward
common goals.
Wiki sites are making their first appearance in this list of educational
channels. This is a new and emerging technology that allows many par-
ticipants to collaborate on a common theme or common undertaking.
The most famous example of a wiki site is Wikipedia, which has
become the largest encyclopedia in the world. Each entry or article in
Wikipedia is written by a volunteer. Readers or other volunteers can
modify the entry and input their own thoughts and ideas.
At first glance, wikis would seem to lead to chaotic and perhaps offen-
sive final products. But many wikis, including Wikipedia, are temperate
in tone and rich in content. This is partly because readers can immedi-
ately delete offensive comments.
Some wiki sites try to screen and monitor inputs and changes before
posting them; others simply allow the material to be self-corrected by
other readers. Both methods seem to be effective.
What wiki sites do best is allow people with common interests to
quickly produce documents or web sites that contain their accumulated
and shared wisdom. Thus wiki sites would be very appropriate for techni-
cal issues such as Agile development, software quality, software security,
testing, maintenance, and other topics where there are many practitio-
ners with a need to share new data and experiences.
Number 10: Simulation Web Sites
Costs = 8; Efficiency = 7; Effectiveness = 13; Currency = 8; Overall
Score = 9.00
Prognosis: Increasing rapidly in usage; increasing rapidly in
effectiveness
Simulators for teaching mechanical skills such as how to fly an air-
plane or how to assemble a machine gun have been used by commercial
and military organizations for many years.
But in recent years, new forms of broader simulation sites have
emerged, such as Second Life, which is a kind of virtual world where
avatars (symbolic surrogates for computer users) wander through a
virtual landscape and interact with other avatars and with resources
such as text documents and graphics.
This new form of virtual reality has other purposes besides training
and education, but it is starting to move in the direction of education.
For example, it would be possible to teach formal design and code inspec-
tions using avatars in a virtual room. Not only could inspections be
taught via simulation, but indeed they could be performed as well.
Many other new technologies could also be taught in the same fashion.
Currently, the costs of producing tutorial materials are fairly high and
How Software Personnel Learn New Skills
257
the process is complex, but both of these issues should be eliminated
fairly soon.
Virtual reality in simulated worlds is likely to become a fast-moving
educational method within the next five years. It is theoretically pos-
sible to create a virtual "university" in which avatars for both students
and professors will interact exclusively in online environments.
Although simulation and virtual worlds are not in the mainstream
of education as of 2009, the odds are good that they will rise to the top
of the list within ten years.
Number 11: Software Journals
Costs = 7; Efficiency = 11; Effectiveness = 14; Currency = 9; Overall
Score = 10.25
Prognosis: Declining in numbers due to recession; stable in effectiveness;
migrating rapidly from paper to online publication formats; some
migration to e-book formats
Now that journals are available for the Amazon Kindle and other e-
book platforms, it can be anticipated that e-journals will begin to replace
paper journals due to economic reasons. Electronic publishing is much
quicker and cheaper than paper publishing, and far more friendly to
the environment. Further, electronic journals are distributed within
minutes, so there is no delay due to surface mailing.
Conventional software journals tend to rank 14th in transferring
skills. The main strength of software journals is in popularizing con-
cepts and presenting the surfaces of technologies rather than the depths
of technologies.
There are scores of software-related journals. Some are commercial
journals published for profit and depending upon advertising revenues.
Many others are produced by nonprofit professional associations. For
example, IEEE Computer is produced by a nonprofit association as are
the other IEEE journals.
A literate and very broad-based software journal is published by the
U.S. Air Force Software Technology Support Center (STSC). This jour-
nal, CrossTalk, has become one of the few software journals to strive
for depth in articles, rather than shallow coverage consisting primarily
of short quotes from industry figures.
Another interesting journal is the Cutter Journal, originally founded
by software guru Ed Yourdon under the name of American Programmer.
As with the CrossTalk journal, the Cutter Journal publishes full-length
technical articles.
There are so many journals that a number of them are quite special-
ized and occupy fairly narrow niches. An example of one of these spe-
cialized niche journals is Metric Views, the journal of the International
Function Point Users Group.
258
Chapter Four
Many software journals are available to software professionals for
free, providing the potential subscribers bother to fill out a question-
naire (and have some responsibility for acquiring tools or software).
On the other hand, some journals have annual subscriptions that can
exceed $1000.
The software professional ends up with subscriptions to quite a few
journals, even though few may actually be read. SPR estimates that
software technical personnel subscribe to or have access to about four
journals per month on average.
Comparatively few software journals contain articles of lasting tech-
nical value. When journals do discuss technologies, it is seldom an in-
depth treatment. This is understandable, given that neither journalists
nor professional contributors can spare more than a minimum amount
of time to assemble information before writing articles.
The best articles in terms of technology transfer are those on spe-
cific topics, often in special issues. For example, several journals have
had special issues on topics such as quality assurance, measurement
and metrics, software maintenance, object-oriented approaches, change
management, and the like.
The least effective articles are the typical broad-brush surveys pro-
duced by journalists that consist largely of short quotes from 20 to 50
different people. This approach can seldom do more than bring a topic
into public view.
An interesting new trend is to publish online journals as well as paper
journals. Among the best and most interesting of the new online jour-
nals is the Information Technology Metrics and Productivity Institute
(ITMPI) Journal. The web site for this journal is www.ITMPI.org. This
journal is published by Computer Aid and includes interviews with
famous software personages such as Watts Humphrey and Ed Yourdon,
technical articles, and citations to hundreds of relevant web sites.
As online communication becomes the pervasive medium for informa-
tion exchange, both software journals and other print-based information
media are moving to create parallel online versions.
Number 12: Self-Study Using Books, E-Books, and Training
Material
Costs = 5; Efficiency = 13; Effectiveness = 12; Currency = 11; Overall
Score = 10.25
Prognosis: Decreasing in numbers due to recession; stable in effectiveness;
rapidly migrating away from paper documents toward DVD or online
information
The self-study market using books ranks number 11 in overall effec-
tiveness. The market for traditional self-study courses is not fast grow-
ing, but has been relatively solid and stable for 50 years. The author
How Software Personnel Learn New Skills
259
estimates that a total of about 50,000 software professionals will take
some kind of self-study course over a normal business year.
The usual format of self-study material is a loose-leaf notebook.
This form of self-study material can be effective for those who are self-
motivated, but tends to be bland and frequently boring. Some self-study
courses also include video- or audiocassettes.
The most common topics for self-study are those that have rela-
tively large market potentials. This means that basic subjects such as
"Introduction to COBOL Programming" are most likely to be found in
self-study form.
Really new technologies are seldom found as self-study courses,
because of the time required to produce the materials and the uncer-
tainty of the market. There are always exceptions to rules, and fairly
new topics such as ISO 9000-9004 standards have already arrived in
self-study form due to the obviously large market.
In theory, electronic books on hand-held devices would seem to be a
useful medium for studies of any kind. However, among the author's
clients, no formal course materials were produced for such devices as
of 2009. We did not encounter enough students using these devices to
form an opinion. Overall, usage of hand-held reading devices is still at
a very early stage of deployment, although they show great potential
for the future.
From 2006 through 2009, there has been an increase in books and
video materials available on hand-held devices such as PDAs and Apple
iPods. Some educational material is available, but the volume is too
small to form a solid opinion of effectiveness.
The new Amazon and Sony hand-held reading devices of 2008 are
more sophisticated than their predecessors. If these devices succeed,
then it is a sign that electronic reading devices are about to enter the
mainstream. The fact that one device can hold many books will certainly
prove advantageous to travelers and even to sales personnel.
Number 13: On-the-Job Training
Costs = 11; Efficiency = 10; Effectiveness = 10; Currency = 12; Overall
Score = 10.75
Prognosis: Declining in numbers due to the recession
On-the-job training has been most often utilized either for special
techniques developed and used within companies, or for basic skills
that are seldom taught at universities, such as formal design and code
inspections.
With on-the-job training, new hires are instructed in selected meth-
ods by experienced users of the method. The most effective kinds of
on-the-job training are topics where performing a task is the best way
to learn the tasks. For example, formal inspections, quality function
260
Chapter Four
deployment (QFD), learning to use proprietary specification methods,
and learning to use programming languages that are unique to specific
companies are good choices for in-house training.
The downside of on-the-job training is that the experts who are doing
the training need to take time away from their own work. This is why
the costs are fairly high. Also, it sometimes happens that what the older
employees teach the new employees may be somewhat out of date.
As the recession lengthens and deepens, on-the-job training will prob-
ably decline due to layoffs and downsizing. The remaining personnel
may no longer have time to engage in extensive on-the-job training.
Number 14: Mentoring
Costs = 10; Efficiency = 12; Effectiveness = 11; Currency = 15; Overall
Score = 11.75
Prognosis: Declining in numbers due to recession
The concept of "mentoring" involves a one-to-one relationship between
a new employee and an older and more experienced employee. Mentoring
is most often used for proprietary methods, such as teaching a new
employee about local corporate standards, or teaching a new employee
about custom tools that are only available in one location.
Mentoring is often effective at a social level, but it is somewhat expen-
sive if it requires that the mentor take too much time away from his or
her normal work.
Informal mentoring is likely to continue as a useful method for teach-
ing new personnel local methods, tools, development methods, mainte-
nance methods, and other topics that may have been customized.
Unfortunately, there are no statistics on the number of mentors or
people being mentored, so this channel of learning is ambiguous as to
usage and overall effectiveness.
Number 15: Professional Books, Monographs, and Technical
Reports
Costs = 6; Efficiency = 14; Effectiveness = 16; Currency = 13; Overall
Score = 12.00
Prognosis: Decline in paper publication; rapid migration to e-book,
online, and web publication
Software books tend to rank 15th in overall effectiveness in transfer-
ring software skills in the United States. The low ranking is not because
of the books themselves, but because the U.S. software industry does not
appear to be especially literate, which is something of a surprise given
the nature of the work.
Many of the books are excellent. For example, Dr. Barry Boehm's clas-
sic Software Engineering Economics (Prentice Hall), Watts Humphrey's
book on Team Software Processes (TSP) (Addison Wesley), and Dr. Roger
How Software Personnel Learn New Skills
261
Pressman's classic Software Engineering--A Practitioner's Approach
(McGraw-Hill) have all seen numerous editions and sold close to
1 million copies each.
Software books are a staple for reference purposes even if not for
pedagogical purposes. A typical software engineer will have a library of
between 20 and 100 volumes on topics of importance such as the pro-
gramming languages, operating systems, applications, and hardware
used in daily work.
As of 2009, there are more than 3 million software personnel in the
United States, and the numbers are growing fairly rapidly. Yet software
book publishers regard sales of more than 10,000 copies as a fairly good
volume. Sales of 25,000 copies are remarkably good for software titles,
and only a few software titles have approached 1 million copies.
The high-volume software books often aim at the end-user market
and not the professional or education markets. For example, books on
Visual Basic or primers on Windows can exceed 1 million copies in sales
because there are about 10 million users of these products who are not
professional software personnel.
It is possible to learn a variety of software-related skills from books,
but this approach is not as widely utilized as seminars or some kind of
formal training. One possible exception is that of learning personal topics,
such as Watts Humphrey's Personal Software Process (PSP) method. As
of 2009, Watts' books are the primary channel for this topic.
Another situation where books are actually used for self-learning of
new skills is the area of new programming languages. New program-
ming languages have been coming out at a rate of more than one per
month for the past 30 years, and more than 700 programming languages
have been listed in the Software Productivity Research (SPR) "table of
programming languages and levels." Not many languages reach the
mainstream, but for those that do, such as Ruby or N or E, experienced
programmers can teach themselves the new language from books faster
than from most others methods.
There are many excellent software books on the market by publish-
ers such as Addison Wesley Longman, Auerbach, Dorset House, IEEE
Computer Society Press, McGraw-Hill, Prentice Hall, Que, Microsoft
Press, and the like.
Also included under the heading of books would be monographs pub-
lished by various companies and associations. For example, software-
related monographs of 50 to more than 100 pages in size are published by
Accenture, IBM, IFPUG, ISBSG, various IEEE associations, McKinsey,
Gartner Group, Meta Group, the Software Engineering Institute (SEI),
and Software Productivity Research (SPR).
These privately published monographs are distributed primarily to
the clients of the publishing organization. The costs range from zero up
262
Chapter Four
to more than $25,000 based on whether the monograph is intended as
a marketing tool, or contains proprietary or special data of interest to
the clients.
There are many software bookstores and large software sections
within general bookstores such as Borders. And of course software books
are featured in all of the major web-based bookstores such as Amazon
and Barnes & Noble. The total volume of good books on software topics
probably exceeds 2,500 titles for technical books and 250 titles for soft-
ware management books.
Yet in spite of the plentiful availability of titles, many software man-
agers and quite a few technical software personnel don't read more than
one or two technical books a year, based on responses to assessment
interviews.
The author estimates that software professionals purchase about four
books per year on average (more than seem to be read). In any case, it
would be hard to keep current just from books since software technology
changes are so volatile.
There is a curious omission in the book domain for software and project
management topics. Among the more mature professions such as medicine
and law, a significant number of books are available in audio form such as
cassettes or CDs so they can be listened to at home or in automobiles. We
have not yet encountered any audio titles in the software engineering or
project management fields, although some may be available.
An increasing number of technical books are becoming available
online and can be viewed on personal computer screens or downloaded.
This method of gaining access to books is expanding, but has not yet
reached a critical mass. The author estimates that fewer than perhaps
100 software-related titles are available in online form, and that per-
haps fewer than 125,000 software professionals have utilized this chan-
nel of gaining access to books. However, both the number of titles and
accesses should increase rapidly over the next ten years.
New electronic devices such as the Amazon and Sony hand-held book
readers, the iPhone, and various PDA devices can be used to store books,
although this is not yet a major market for book publishers.
Of course, personal ownership of books may not be necessary if a
company or government agency maintains a good technical library. One
interesting observation from the author's assessments over the years is
that companies with large technical libraries have higher annual produc-
tivity rates than companies of the same size without such libraries.
Having a library is probably not a causative factor for high pro-
ductivity, though. The most likely reason for the correlation is that
companies with good technical libraries also tend to have better than
average salary and compensation levels, so they select top performers
for software occupations.
How Software Personnel Learn New Skills
263
Vast numbers of monographs and technical reports usually range
between 20 and 75 pages. Usually, such documents are devoted to a
single topic, such as service-oriented architecture (SOA) or perhaps
marketing issues.
Some companies such as Gartner Group in the United States and
Research and Markets in Ireland do a surprisingly large business from
marketing both paper and online versions of monographs and technical
reports.
The primary markets for these shorter documents are either cor-
porate libraries or executives interested in business trends and high
enough in company hierarchies to be authorized to spend money on
subscriptions or individual studies, many of which are far more expen-
sive than ordinary books.
As tools for informing executives about emerging business trends,
the technical report business is fairly effective. As tools for learning the
specifics of technical topics such as testing or inspections, these shorter
reports are not as effective as books.
One technical problem with books published on paper is that the
software industry changes faster than the books can be revised and
new editions brought out.
A possible new business model for book publishers as they migrate to e-
books would be to sell subscriptions to updates at the same time as the book
is originally downloaded. For example, a downloaded software textbook in
e-book format might sell for $25, and subscriptions to updates might sell
for $10 per year. Not only would e-books be cheaper than paper books, but
offering them as subscriptions would lead to recurring revenue streams.
Number 16: Undergraduate University Education
Costs = 15; Efficiency = 15; Effectiveness = 3; Currency = 16; Overall
Score = 12.25
Prognosis: May decline in numbers due to recession; stable in effec-
tiveness; curricula lag technology changes by more than five years
From the author's studies, undergraduate university education was
only number 15 in overall effectiveness for software professionals.
Universities are often not very current in the topics that they teach. In
general, university curricula lag the actual state of the art of software
by between five years and ten years. This lag is because of the way uni-
versities develop their teaching materials and their curricula.
There are a number of critical topics where software education at the
university level lags far behind what is truly needed to achieve profes-
sional status for software. The most glaring omissions include
1. Software security practices for safeguarding high-risk applications
2. Software quality control practices for minimizing delivered defects
264
Chapter Four
3. Software measures and metrics for effective economic analysis
4. Software estimating and planning for on-time delivery and costs
5. Software architecture for optimizing use of reusable components
6. Software methods for effective renovation of legacy applications
7. Software technology evaluation and technology transfer
These gaps and omissions need to be quickly filled if software is to
evolve from an art form into a true engineering discipline.
There are some exceptions to this rule that universities always lag.
Many universities have established fairly close ties with the local busi-
ness community and attempt to offer courses that match the needs
of the area's software employers. For example, Stevens Institute of
Technology in New Jersey has established close ties with AT&T and
is offering a master's program that includes topics suggested by AT&T.
Bentley College in the Boston area, Washington University in St. Louis,
Georgia State University in Atlanta, St. Thomas University in the St.
Paul area, and many other schools adjacent to large software producers
have adopted similar policies of curricula based on the needs of major
software employers.
An important strength of undergraduate education is that what gets
taught tends to be used throughout the rest of the professional lives of
the students. University education ranks number three in effectiveness,
or the volume of information transmitted.
The author estimates that perhaps 95,000 U.S. software professionals
will take university or college courses during a normal business year.
Having performed a consulting study on continuing software educa-
tion, the author noted a few practical issues. The way companies fund
tuition-refund programs is often remarkably cumbersome. Sometimes
several layers of management approval are required. The courses them-
selves must be job-related within fairly narrow boundaries. Some com-
panies reserve the option of having the students withdraw "because of
the needs of the company."
Also, the tuition-refund policies are based on achieving passing grades.
This is not an unreasonable policy, but it does raise the mathematical
probability that the student will end up with significant out-of-pocket
expenses.
On the whole, university training appears to be more expensive and
less effective than in-house training, commercial education, or vendor
education for practicing software professionals.
A former chairman of the ITT Corporation once noted in a speech
that it took an average of about three years of in-house training and
on-the-job experience before a newly graduated software engineer could
be entrusted with serious project responsibilities. This was about two
How Software Personnel Learn New Skills
265
years longer than the training period needed by electrical or mechanical
engineers. The conclusion was that software engineering and computer
science curricula lagged traditional engineering curricula in teaching
subjects of practical value.
Indeed, a quick review of several university software engineering
and computer science curricula found some serious gaps in academic
training. Among the topics that seemingly went untaught were soft-
ware cost estimating, design and code inspections, statistical quality
control, maintenance of legacy applications, metrics and measurements,
Six Sigma methods, risk and value analysis, function points, and joint
application design (JAD) for requirements analysis. While basic techni-
cal topics are fairly good at the university level, topics associated with
project management are far from state-of-the-art levels.
Universities are also being impacted by the recession, and the future
of university training in terms of numbers of software engineering and
computer science students and graduates is uncertain. Whether or not
the recession will improve or degrade curricula is uncertain as this is
written in 2009.
Number 17: Graduate University Education
Costs = 16; Efficiency = 16; Effectiveness = 2; Currency = 15; Overall
Score = 12.25
Prognosis: May decline in numbers due to recession; stable in effec-
tiveness; curricula lag technology changes by more than five years
Graduate education in software engineering or computer science
unfortunately tends to bring up the rear and is ranked number 16.
Graduate school does rank number two in effectiveness, and it does
transmit a great deal of information to graduate students.
The downside is that a lot of the information that is transmitted may
be obsolete, since university curricula often lag the business and techni-
cal worlds by five to ten years.
Graduate education could be improved by greater concentration on
special topics such as the economics of software. Software costs are so
heavily dominated by defect removal expenses, catastrophic failures,
and huge cost and schedule overruns that there is a need to teach all
MBA students as well as specialist software engineer and computer sci-
ence graduate students the state of the art for defect prevention, defect
removal, and cost of quality economics.
Also, software security problems are not only rampant in 2009, but
also are becoming more numerous and more serious at a rapid pace.
It is obvious that universities have lagged severely in this area, and
also in the area of software quality control. For that matter, other key
topics such as construction from reusable materials also lag at both the
undergraduate and graduate levels.
img
266
Chapter Four
There appears to be a significant need to improve the speed at which
universities are able to incorporate new material and new technologies into
their curricula. For fast-moving industries such as computing and software,
the technologies are changing much faster than university curricula.
For that matter, the recession has demonstrated that economic and
financial curricula are not only severely out of date, but severely in
error as well.
Software Areas Where Additional
Education Is Needed
From working as an expert witness in a number of software lawsuits
for breach of contract or for litigation involving claims of poor quality,
the author finds that some important topics need additional educa-
tion or reeducation. Table 4-6 shows 25 major technology areas where
TABLE 4-6
Gaps in Software Training Circa 2009
1.
Security vulnerability prevention
2.
Security recovery after attacks
3.
Quality control (defect prevention)
4.
Quality control (defect removal)
5.
Quality estimating
6.
Quality measurement
7.
Measurement and metrics of software
8.
Change management
9.
Tracking of software projects
11.
Cost, quality, and schedule estimating
10.
Intellectual property protection
12.
Reuse of software artifacts
13.
Risk analysis and abatement
14.
Value analysis of software applications
15.
Technology analysis and technology transfer
16.
Renovation of legacy applications
17.
Requirements collection and analysis
18.
Software project management
19.
Formal inspections
22.
Test case design
20.
Performance analysis
21.
Customer support of software applications
23.
Contract and outsource agreements
24.
User training
25.
User documentation
How Software Personnel Learn New Skills
267
performance in the software world seems to be deficient, in approximate
order of importance to the software profession.
Failures and problems associated with these topics appear to be
endemic in the software world, and especially so for large software appli-
cations. From the frequency with which large software projects fail,
and the even larger frequency that have cost and schedule overruns, it
can be concluded that training in software topics urgently needs major
improvement.
New Directions in Software Learning
The global recession is causing thousands of organizations to reduce
costs in order to stay in business. Almost all labor-intensive activities
such as training are going to be scrutinized very carefully.
At the same time the technologies of virtual reality, e-books, and dis-
tributing information over hand-held devices are increasing in sophis-
tication and numbers of users.
Within a period of perhaps ten years, the combination of recessionary
pressures and technology changes will probably make major differences
in software learning methods. Online web-based information, e-books,
and hand-held devices will no doubt replace substantial volumes of
paper-based materials.
In addition, virtual reality may introduce artificial classrooms and
simulated universities where students and teachers interact through
avatars rather than face to face in real buildings.
The increasing sophistication of intelligent agents and expert sys-
tems will probably improve the ability to scan vast quantities of online
information. The fact that companies such as Google and Microsoft are
rapidly converting paper books and documents into online text will also
change the access to information.
However, software has a long way to go before it achieves the ease of
use and sophistication of the legal and medical professions in terms of the
organization and access to vital information. For example, there is no soft-
ware equivalent to the Lexis-Nexis legal reference company as of 2009.
Over the next few years, changes in learning methods may undergo
changes as profound as those introduced by the printing press and
television. However, the quality of software information is still poor
compared with the quality of information in more mature fields such
as medicine and law. The severe shortage of quantitative data on pro-
ductivity, schedules, quality, and costs makes software appear to be more
of a craft than a true profession.
However, the technologies of mining information, consolidating
knowledge, and making knowledge accessible are rapidly improving.
The overall prognosis for learning and information transfer is positive,
268
Chapter Four
but no doubt the formats for presenting the information will be very
different in the future than in the past.
Summary and Conclusions
In any technical field, it is hard to keep up with the latest developments.
Software technologies are changing very rapidly as the 21st century
advances, and this makes it difficult to stay current.
Seventeen different channels are available to the software commu-
nity for acquiring information on new software technologies. The most
effective historical channel is in-house training within a major corpora-
tion, but that channel is only available to the corporation's employees.
Webinars and web-based research are rapidly advancing in sophistica-
tion and are already very inexpensive.
The use of virtual reality or simulation web sites is another exciting
prospect. It is technically possible for avatars of virtual students to
participate in simulated virtual classrooms.
Of the other channels, two appear to have strong potential for the
future: self-study utilizing CD-ROM or DVD technology, and online study
using the World Wide Web or an information utility. These channels are
beginning to expand rapidly in terms of information content and numbers
of users. Channels using wireless connectivity and hand-held devices may
also be added to the mix of learning methods, as already demonstrated by
the new generation of e-book readers from Amazon and Sony.
As the Internet and online services grow in usage, entirely new meth-
ods of education may be created as a byproduct of large-scale interna-
tional communication channels. In the future, some form of education
may become available via satellite radio, although none is currently
broadcast on that channel.
Unfortunately, given the large numbers of project failures in the soft-
ware domain, all 16 channels put together are probably not yet enough
to raise the level of software engineering and management competence
to fully professional status.
Curricula of Software Management
and Technical Topics
Shown next is the author's proposed full curricula of managerial and
technical topics related to the software industry. The courses range from
top-level executive seminars through detailed technical courses. The
set of curricula is aimed at corporations with large software staffs. The
instructors are assumed to be top experts in the field.
Curricula such as this are not static. As new topics and technologies
emerge, the curricula should be updated at least on an annual basis,
and perhaps even more often.
img
How Software Personnel Learn New Skills
269
Software Curricula for Executives, Management, and Technical Personnel
Capers Jones (Copyright © 2007­2009 by Capers Jones. All rights reserved)
Executive Courses
Days
Sequence
Global Finance and Economics
1.00
1
Software Development Economics
1.00
2
Software Maintenance Economics
1.00
3
Software Security Issues in 2008
1.00
4
Software Architecture Trends
1.00
5
Economics of Outsourcing
1.00
6
Pros and Cons of Offshore Outsourcing
1.00
7
Protecting Intellectual Property
0.50
8
Sarbanes-Oxley Compliance
1.00
9
Software Litigation Avoidance
0.50
10
Case Studies in Best Practices
0.50
11
Software Risk Avoidance
0.50
12
Case Studies in Software Failures
0.50
13
Overview of the Capability Maturity Model
0.25
14
Economics of Six Sigma
0.25
15
Overview of Viruses and Spyware
0.50
16
TOTAL
11.50
Project Management Courses
Days
Sequence
Software Project Planning
2.00
1
Measurement and Metrics of Software
2.00
2
Software Cost Estimating: Manual
1.00
3
Software Cost Estimating: Automated
2.00
4
Software Quality and Defect Estimating
1.00
5
Software Security Planning
1.00
6
Software Milestone Tracking
1.00
7
Software Cost Tracking
1.00
8
Software Defect Tracking
1.00
9
Software Change Control
1.00
10
Function Points for Managers
0.50
11
Inspections for Project Managers
0.50
12
Testing for Project Managers
2.00
13
Six Sigma for Managers
2.00
14
Principles of TSP/PSP for Managers
1.00
15
Principles of Balanced Scorecards
1.00
16
Principles of Software Reuse
1.00
17
Software Risk Management
1.00
18
The Capability Maturity Model (CMM)
2.00
19
Six Sigma: Green Belt
3.00
20
Six Sigma: Black Belt
3.00
21
(Continued)
img
270
Chapter Four
Project Management Courses
Days
Sequence
Earned Value Measurement
1.00
22
Appraisals and Employee Relations
1.00
23
Project Management Body of Knowledge
2.00
24
TOTAL
34.00
Software Development Courses
Days
Sequence
Software Architecture Principles
1.00
1
Structured Development
2.00
2
Error-Prone Module Avoidance
1.00
3
Software Requirements Analysis
1.00
4
Software Change Control
1.00
5
Security Issues in 2008
1.00
6
Hacking and Virus Protection
2.00
7
Joint Application Design (JAD)
1.00
8
Static Analysis of Code
1.00
9
Formal Design Inspections
2.00
10
Formal Code Inspections
2.00
11
Test Case Design and Construction
2.00
12
Test Coverage Analysis
1.00
13
Reducing Bad Fix Injections
1.00
14
Defect Reporting and Tracking
1.00
15
Iterative and Spiral Development
1.00
16
Agile Development Methods
2.00
17
Using Scrum
1.00
18
Object-Oriented Design
2.00
19
Object-Oriented Development
2.00
20
Web Application Design and Development
2.00
21
Extreme Programming (XP) Methods
2.00
22
Development Using TSP/PSP
2.00
23
Principles of Database Development
2.00
24
Function Points for Developers
1.00
25
Design of Reusable Code
2.00
26
Development of Reusable Code
2.00
27
TOTAL
41.00
Software Maintenance Courses
Days
Sequence
Principles of Legacy Renovation
1.00
1
Error-Prone Module Removal
2.00
2
Complexity Analysis and Reduction
1.00
3
Identifying and Removing Security Flaws
2.00
4
Reducing Bad-Fix Injections
1.00
5
Defect Reporting and Analysis
0.50
6
Change Control
1.00
7
Configuration Control
1.00
8
img
How Software Personnel Learn New Skills
271
Software Maintenance Courses
Days
Sequence
Software Maintenance Workflows
1.00
9
Mass Updates to Multiple Applications
1.00
10
Maintenance of COTS Packages
1.00
11
Maintenance of ERP Applications
1.00
12
Static Analysis of Code
1.00
13
Data Mining for Business Rules
1.00
14
Regression Testing
2.00
15
Test Library Control
2.00
16
Test Case Conflicts and Errors
2.00
17
Dead Code Isolation
1.00
18
Function Points for Maintenance
0.50
19
Reverse Engineering
1.00
20
Reengineering
1.00
21
Refactoring
0.50
22
Maintenance of Reusable Code
1.00
23
Object-Oriented Maintenance
1.00
24
Maintenance of Agile and Extreme Code
1.00
25
TOTAL
27.50
Software Quality Assurance Courses
Days
Sequence
Error-Prone Module Analysis
2.00
1
Software Defect Estimating
1.00
2
Software Defect Removal Efficiency
1.00
3
Software Defect Tracking
1.00
4
Software Design Inspections
2.00
5
Software Code Inspections
2.00
6
Software Test Inspections
2.00
7
Static Analysis of Code
2.00
8
Software Security and Quality in 2008
2.00
9
Defect Removal Using TSP/PSP
2.00
10
Software Static Analysis
2.00
11
Software Test Case Design
2.00
12
Software Test Library Management
1.00
13
Reducing Bad-Fix Injections
1.00
14
Test Case Conflicts and Errors
1.00
15
Function Points for Quality Measurement
1.00
16
ISO 9000-9004 Quality Standards
1.00
17
Overview of the CMM
1.00
18
Quality Assurance of Software Reuse
1.00
19
Quality Assurance of COTS and ERP
1.00
20
Six Sigma: Green Belt
3.00
21
Six Sigma: Black Belt
3.00
22
TOTAL
35.00
(Continued)
img
272
Chapter Four
Software Testing Courses
Days
Sequence
Test Case Design
2.00
1
Test Library Control
2.00
2
Security Testing Overview
2.00
3
Test Schedule Estimating
1.00
4
Software Defect Estimating
1.00
5
Defect Removal Efficiency Measurement
1.00
6
Static Analysis and Testing
1.00
7
Test Coverage Analysis
1.00
8
Reducing Bad-Fix Injections
1.00
9
Identifying Error-Prone Modules
2.00
10
Database Test Design
1.00
11
Removal of Incorrect Test Cases
1.00
12
Fundamentals of Unit Testing
1.00
13
Fundamentals of Regression Testing
1.00
14
Fundamentals of Component Testing
1.00
15
Fundamentals of Stress Testing
1.00
16
Fundamentals of Virus Testing
2.00
17
Fundamentals of Lab Testing
1.00
18
Fundamentals of System Testing
2.00
19
Fundamentals of External Beta Testing
1.00
20
Test Case Conflicts and Errors
1.00
21
Testing Web Applications
1.00
22
Testing COTS Application Packages
1.00
23
Testing ERP Applications
1.00
24
Function Points for Test Measures
1.00
25
Testing Reusable Functions
1.00
26
TOTAL
32.00
Software Project Office Courses
Days
Sequence
Software Project Planning
3.00
1
Software Cost Estimating
3.00
2
Software Defect Estimating
2.00
3
Function Point Analysis
3.00
4
Software Architecture Issues
1.00
5
Software Security Issues
1.00
6
Software Change Management
2.00
7
Software Configuration Control
2.00
8
Overview of Software Inspections
1.00
9
Overview of Software Testing
1.00
10
Software Measurement and Metrics
2.00
11
Outsource Contract Development
1.00
12
COTS Acquisition
1.00
13
ERP Acquisition and Deployment
2.00
14
img
How Software Personnel Learn New Skills
273
Software Project Office Courses
Days
Sequence
Sarbanes-Oxley Compliance
2.00
15
Multicompany Outsourced Projects
2.00
16
Software Risk Management
2.00
17
Case Studies of Software Failures
1.00
18
Case Studies of Best Practices
1.00
19
Software Milestone Tracking
2.00
20
Software Cost Tracking
2.00
21
Software Defect Tracking
2.00
22
Supply Chain Estimating
2.00
23
Balanced Scorecard Measurements
1.00
24
Earned-Value Measurements
1.00
25
Six Sigma Measurements
1.00
26
TSP/PSP Measurements
1.00
27
Software Value Analysis
1.00
28
ISO 9000-9004 Quality Standards
1.00
29
Backfiring LOC to Function Points
1.00
30
Metrics Conversion
1.00
31
TOTAL
49.00
TOTAL CURRICULA
Days
Classes
Executive Education
11.50
16
Project Management Education
34.00
24
Software Development
41.00
27
Software Maintenance
27.50
25
Software Quality Assurance
35.00
22
Software Testing
32.00
26
Software Project Office
49.00
31
TOTAL
230.00
171.00
Readings and References
Boehm, Barry, Dr. Software Engineering Economics. Englewood Cliffs, NJ: Prentice
Hall, 1981.
Curtis, Bill, Dr. Human Factors in Software Development. Washington, DC: IEEE
Computer Society, 1985.
Jones, Capers. Applied Software Measurement, Third Edition. New York: McGraw-Hill,
2008.
Jones, Capers. Estimating Software Costs, Second Edition. New York: McGraw-Hill,
2007.
Jones, Capers. Software Assessments, Benchmarks, and Best Practices. Boston: Addison
Wesley Longman, 2000.
Humphrey, Watts S. PSP--A Self-Improvement Process for Software Engineers. Upper
Saddle River, NJ: Pearson Education, 2005.
274
Chapter Four
Humphrey, Watts S. TSP--Leading a Development Team. Upper Saddle River, NJ:
Pearson Education, 2006.
Kawasaki, Guy. Selling the Dream. Collins Business, 1992.
Pressman, Roger. Software Engineering--A Practitioner's Approach, Sixth Edition.
New York: McGraw-Hill, 2005.
Weinberg, Dr. Gerald. The Psychology of Computer Programming. New York: Van
Nostrand Reinhold, 1971.
Yourdon, Ed. Decline and Fall of the American Programmer. Englewood Cliffs, NJ:
Yourdon Press, Prentice Hall, 1992.
Yourdon, Ed. Rise and Resurrection of the American Programmer. Englewood Cliffs, NJ:
Yourdon Press, Prentice Hall, 1996.