Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

A mechanical engineering contractor has been using a large and complex C softwar

ID: 3672940 • Letter: A

Question

A mechanical engineering contractor has been using a large and complex C software system for over 12 years. There is no documentation for the system and the maintenance programmers have moved to a different company. In order to take advantage of state-of-the-art parallel machines, the contractor wants the software to be re-implemented on a parallel platform.

Briefly describe the techniques that will be needed to accomplish the task.

How would you go about performing the job, bearing in mind the merits of software reuse?

Explanation / Answer

Three basic approaches are available: (1) behaviorally-based, (2) outcome-based, and (3) socializationbased.
The behavioral approach monitors and rewards specific behaviors viewed as desirable. For
example, a salesperson would be rewarded for showing up on time, being friendly to customers, and
so forth. In the context of reuse, this approach suggests rewarding individuals and/or teams based
on their levels of reuse produced and consumed. This approach is often advocated in the literature
and has been employed at the data site in the past.

The outcome-based approach measures and rewards the final outcomes desired by management.
Returning to the sales example above, an outcome-based approach would pay salespeople on
commission. The outcome-based approach to encouraging reuse would measure the aggregate, long
term productivity, quality, and cycle time benefits resulting from reuse and reward teams based on
those outcomes. Outcome-based rewards have advantages, but often are not feasible either because
outcomes are too difficult to measure or lie too much outside the control of the workers. It appears
that both problems apply in the case of reuse, which may explain the lack of examples of this
approach in the literature.

Under the socialization approach, management goes to the source of the problem and seeks to
change the values of workers to be consistent with those of management. This
approach to encouraging reuse suggests actions such as indoctrinating developers on the
organizational-level benefits of reuse, and emphasizing that reuse is "just part of the job" like good
design or thorough testing. This approach is frequently mentioned in the reuse literature as a
precondition to establishing reuse.

All three of these approaches—behaviorally-based, outcome-based, and socialization-based—
assume that some particular structure of work is given and necessarily leads to severe goal misalignments.
This is indeed the case with the idealized view of reuse, and may serve to explain the amount
of attention in the reuse literature devoted to countering incentive problems.
However, we believe that attempting to introduce a radical new process and at the same time
attempting to manage severe incentive conflicts is a high risk undertaking for most organizations.
Furthermore, little is known about the efficacy in practice of the various control systems that have
been proposed for software reuse. For example, there seems to be a growing awareness that the
practice of paying individual developers cash bonuses for reusable parts may be counter productive,
as, for example, it may encourage a mercenary attitude on the part of developers (Goldberg &
Rubin, 1995a). This is consistent with observations from our own research site. One manager said
the incentive program put in place at his site seemed to work well at first, but ended up a "disaster."
Developers eventually started trying to game the system, and managers felt that it was sending the
"wrong message" to teams, i.e., that reuse was something outside the normal course of a developer's
responsibilities. It also created resentments because the highest reusing teams were those using new
technology, so teams using old technology felt they were at a disadvantage. At another site, a
manager noted that developers found the incentive program's implicit assumption that reuse was not
just an ordinary part of the development process somewhat "insulting," because "of course they
reuse whatever it makes sense to reuse." At a third a manager explained that while the program
succeeded in generating a large number of components for inclusion in the reuse library, there were
complaints about the quality of the resulting components, and the difficulty of reusing them

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote