Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Prototyping a Process Monitoring Experiment

Published: 01 October 1994 Publication History

Abstract

Features are often the basic unit of development for a very large software system and represent long-term efforts, spanning up to several years from inception to actual use. Developing an experiment to monitor (by means of sampling) such lengthy processes requires a great deal of care in order to minimize casts and to maximize benefits. Just as prototyping is often a necessary auxiliary step in a large-scale, long-term development effort, so, too, is prototyping a necessary step in the development of a large-scale, long-term process monitoring experiment. Therefore, we have prototyped our experiment using a representative process and reconstructed data from a large and rich feature development. This approach has yielded three interesting sets of results. First, we reconstructed a 30-month time diary for the lead engineer of a feature composed of both hardware and software. These data represent the daily state (where the lead engineer spent the majority of his time) for a complete cycle of the development process. Second, we found that we needed to modify our experimental design. Our initial set of states did not represent the data as well as we had hoped. This is exemplified by the fact that the "Other" category is too large. Finally, the data provide evidence for both a waterfall view and an interactive, cyclic view of software development. We conclude that the prototyping effort is a necessary part of developing and installing any large-scale process monitoring experiment.

References

[1]
{1} T. J. Allen, Managing the Flow of Technology. Cambridge, MA: MIT, 1977.
[2]
{2} N. S. Barghouti and G. E. Kaiser, "Modeling concurrency in rule-based development environments," IEEE Expert, pp. 15-27, Dec. 1990.
[3]
{3} V. R. Basili and D. M. Weiss, "A methodology for collecting valid software engineering data," IEEE Trans. Software Eng., vol. SE-10, no. 6, pp. 728-738, Nov. 1984.
[4]
{4} V. R. Basili and H. D. Rombach, "The TAME project: Towards improvement-oriented software environments," IEEE Trans. Software Eng., vol. SE-14, pp. 758-773, June 1988.
[5]
{5} V. R. Basili, G. Caldiera, F. McGarry, R. Pajerski, G. Page, and S. Waligora, "The software engineering laboratory," in Proc. 14th Int. Conf. Software Eng., 1992, pp. 370-381.
[6]
{6} M. Dowson, Ed., Iteration in the Software Process: Proc. 3rd Int. Software Process Workshop, Breckenridge, CO, USA, Nov. 1986.
[7]
{7} M. Dowson, Ed., Proc. 1st Int. Conf. Software Process: Manufacturing Complex Syst., Redondo Beach, CA, USA, Oct. 1991.
[8]
{8} R. Guindon, "Designing the design process: Exploiting opportunistic thoughts," Human Comput. Interaction, vol. 5, pp. 305-344, 1990.
[9]
{9} D. Harel, H. Lachover, A. Naamad, A. Pnueli, M. Politi, R. Sherman, and A. Shtul-Trauring, "STATEMATE: A working environment for the development of complex reactive systems," Proc. 10th Int. Conf. Software Eng., 1988, pp. 396-406.
[10]
{10} W. S. Humphrey, Managing the Software Process, Reading, MA: Addison-Wesley, 1989.
[11]
{11} C. M. Judd, E. R. Smith, and L. H. Kidder, Research Methods in Social Relations, 6th ed. Orlando, FL: Harcourt Brace Jovanovich, 1991.
[12]
{12} T. Katayama, Ed., Support for the Software Process: Proc. 6th Int. Software Process Workshop, Hakodate, Japan, Oct. 1990.
[13]
{13} M. I. Kellner, "Software Process Modeling Support for Management Planning and Control," in Proc. 1st Int. Conf. Software Process: Manufacturing Complex Syst., 1991, pp. 8-28.
[14]
{14} G. A. Miller, "The magic number seven, plus or minus two: Some limits on our capacity for processing information," Psychology Rev., vol. 63, no. 2, pp. 81-97, Mar. 1956.
[15]
{15} A. Nozari and W. Whitt, "Estimating average production intervals using inventory measurements: Little's Law for partially observable processes," Operations Res., vol. 36, p. 308, Mar.-Apr. 1988.
[16]
{16} L. J. Osterweil, Ed., Proc. 1st Int. Conf. Software Process: Continuous Software Process Improvement, Berlin, Germany, Feb. 1993.
[17]
{17} D. E. Perry, Experience with Software Process Models: Proc. 5th Int. Software Process Workshop, Kennebunkport, ME, USA, Oct. 1989.
[18]
{18} D. E. Perry, "Policy-directed coordination and cooperation," in Proc. 7th Int. Software Process Workshop, Yountville, CA, USA, Oct. 1991.
[19]
{19} D. E. Perry, N. A. Staudenmayer, and L. G. Votta, "People, organizations, and process improvement," IEEE Software, vol. 11, pp. 36-45, July 1994.
[20]
{20} C. Potts, Ed., Proc. Software Process Workshop, Egham, Surrey, England, UK, Feb. 1984.
[21]
{21} Process Virtual Machine Working Group, DARPA Prototech Community, personal commun., 1991-1992.
[22]
{22} P. Mi and W. Scacchi, "Modeling articulation work in software engineering processes," in Proc. 1st Int. Conf. Software Process: Manufacturing Complex Syst., 1991, pp. 188-201.
[23]
{23} R. W. Selby, A. A. Porter, D. C. Schmidt, and J. Berney, "Metric-driven analysis and feedback systems for enabling empirically guided software development," Proc. 13th Int. Conf. Software Eng., 1991, pp. 288-298.
[24]
{24} R. N. Taylor, R. W. Selby, M. Young, F. C. Belz, L. A. Clarke, J. C. Wileden, L. Osterweil, and A. L. Wolf, "Foundations for the Arcadia environment architecture," ACM SIGSOFT '88: 3rd Symp. Software Dev. Environments, 1988, pp. 28-30.
[25]
{25} I. Thomas, Ed., Proc. 7th Int. Software Process Workshop, Yountville, CA, USA, Oct. 1991.
[26]
{26} C. Tully, Ed., Representing and Enacting the Software Process: Proc. 4th Int. Software Process Workshop, in ACM SIGSOFT Software Eng. Notes, vol. 14, June 1989.
[27]
{27} J. C. Wileden and M. Dowson, Eds., Software Process and Software Environments: Proc. 2nd Int. Software Process Workshop, Coto de Caza, CA, USA, Mar. 1985, in ACM SIGSOFT Software Eng. Notes, vol. 11, Aug. 1986.
[28]
{28} A. L. Wolf and D. S. Rosenblum, "A study in software process capture and analysis," 2nd Int. Conf. Software Process, Berlin, Germany, Feb. 1993.

Cited By

View all
  • (2019)Using blog‐like documents to investigate software practiceJournal of Software: Evolution and Process10.1002/smr.219731:11Online publication date: 15-Nov-2019
  • (2016)Remedying knowledge loss in free/libre open source softwareProceedings of the 20th International Conference on Evaluation and Assessment in Software Engineering10.1145/2915970.2915976(1-4)Online publication date: 1-Jun-2016
  • (2014)1st international workshop on conducting empirical studies in industry (CESI 2013)ACM SIGSOFT Software Engineering Notes10.1145/2557833.255785639:1(24-27)Online publication date: 11-Feb-2014
  • Show More Cited By

Recommendations

Reviews

Richard John Botting

Although this paper is hard to read, it has important information for managers, researchers, and programmers. The authors want to find out “what people actually do when they add features to a large software system.” They are planning to automatically collect daily data on a particular software process. Before doing this, they carried out the pilot study described in this paper. Section 1 describes the authors' theory that enhancement can be modeled as a queueing system. Section 2 discusses how to do such experiments. Section 3 shows three advantages of doing a pilot study. First, prototypes improve the tools, and so save money developing them. Second, the results are interesting: programmer time is wasted waiting for data, especially at the beginning and end of an enhancement. An initially orderly “waterfall” becomes chaotic. Redoing work takes a significant amount of time. Third, the prototype data may give a better picture of normal processes than the full experiment. The authors will modify a change management system so that it asks programmers of selected enhancements to record data on their last major task. The programmers will be trained to use a menu-driven tool to do this. The training is “focused on clarifying the process tasks and states.” This means training programmers to think more clearly about the programming process, which should improve it. This desirable outcome makes the data less relevant to other processes.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering  Volume 20, Issue 10
October 1994
75 pages
ISSN:0098-5589
Issue’s Table of Contents

Publisher

IEEE Press

Publication History

Published: 01 October 1994

Author Tags

  1. computerised monitoring
  2. experimental design
  3. hardware
  4. interactive cyclic view
  5. large-scale long-term development
  6. large-scale process monitoring experiment
  7. long-term process monitoring
  8. process computer control
  9. process monitoring experiment
  10. prototyping
  11. software
  12. software development
  13. software prototyping
  14. very large software system
  15. waterfall view

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 21 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2019)Using blog‐like documents to investigate software practiceJournal of Software: Evolution and Process10.1002/smr.219731:11Online publication date: 15-Nov-2019
  • (2016)Remedying knowledge loss in free/libre open source softwareProceedings of the 20th International Conference on Evaluation and Assessment in Software Engineering10.1145/2915970.2915976(1-4)Online publication date: 1-Jun-2016
  • (2014)1st international workshop on conducting empirical studies in industry (CESI 2013)ACM SIGSOFT Software Engineering Notes10.1145/2557833.255785639:1(24-27)Online publication date: 11-Feb-2014
  • (2011)The longitudinal, chronological case study research strategyInformation and Software Technology10.1016/j.infsof.2011.01.00353:7(730-746)Online publication date: 1-Jul-2011
  • (2005)A design for evidence - based soft researchProceedings of the 2005 workshop on Realising evidence-based software engineering10.1145/1083174.1083180(1-7)Online publication date: 17-May-2005
  • (2005)A design for evidence - based soft researchACM SIGSOFT Software Engineering Notes10.1145/1082983.108318030:4(1-7)Online publication date: 17-May-2005
  • (2004)Agile management of uncertain requirements via generalizationsProceedings of the 2004 workshop on Quantitative techniques for software agile process10.1145/1151433.1151439(40-45)Online publication date: 5-Nov-2004
  • (2002)On the discovery of process models from their instancesDecision Support Systems10.1016/S0167-9236(02)00008-834:1(41-57)Online publication date: 1-Dec-2002
  • (2000)OMEGAACM SIGSOFT Software Engineering Notes10.1145/352342.35235025:4(62-68)Online publication date: 1-Jul-2000
  • (2000)An Empirical Investigation Of Software Project ScheduleBehaviourEmpirical Software Engineering10.1023/A:10098185051025:1(75-77)Online publication date: 1-Mar-2000
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media