POSITION PAPER: An Evaluation Framework for Scientific Programming Productivity
W.K Umayanganie Munipala; Shirley V. Moore
Substantial time is spent on building, optimizing and maintaining large-scale software that is run on supercomputers. It important to utilize overall resources efficiently and special attention needs to be paid to expensive human resources. The community is beginning to acknowledge that optimizing the hardware performance such as speed and memory bottlenecks contributes to the overall productivity. But productivity during the development lifecycle of high-performance scientific applications is also important.
We propose an evaluation approach that compares recorded novice programming workflows to an expert workflow to identify productivity bottlenecks and suboptimal paths. We use these results to suggest improvements to the programming environment or tools. We give preliminary results from applying this approach to two case studies involving the use of numerical libraries.
Published in: 2016 IEEE/ACM International Workshop on Software Engineering for Science (SE4Science)
Date of Conference: 16-16 May 2016
Publisher: IEEE
Conference Location: Austin, TX
UNDERSTANDING SOFTWARE PRODUCTIVITY
WALT SCACCHI
Information and Operations Management Department
School of Business Administration
University of Southern California
Los Angeles, CA 90089-1421, USA
(Appears in Advances in Software Engineering and Knowledge Engineering, D. Hurley (ed.),
Volume 4, pp. 37-70, (1995)., December 1994
http://www.usc.edu/dept/ATRIUM/Papers/Software_Productivity.html
Measuring software process efficiency
Managing waste in knowledge work - podcast - David J. Anderson
An industrial engineering approach to software development
D.N. Card
Computer Sciences Corporation, Silver Spring, MarylandUSA
R.A. Berg
Synercom, Inc., Houston, TexasUSA
Abstract
Many different tools and techniques have been developed to increase software quality and productivity. However, periodic acquisition of improved methods and tools, by itself, does not ensure continual improvement. To be effective, new technology must be integrated into an underlying process. That process must be managed explicitly. This paper describes an industrial engineering approach that treats software development as a process distinct from its unique application to any specific project. Its essential elements include formal process definition, software measurement, process engineering, and quality control. Although already successfully embedded in many manufacturing processes, application of industrial engineering techniques to software remains a novelty. Nevertheless, this approach provides the software enterprise with a long-term plan for improving software quality and productivity.
Journal of Systems and Software
Volume 10, Issue 3, October 1989, Pages 159–168
Updated on 22 June 2021
Pub: 19 August 2013
No comments:
Post a Comment