James S. Collofello
Arizona State University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by James S. Collofello.
IEEE Transactions on Software Engineering | 1980
Stephen S. Yau; James S. Collofello
Software maintenance is the dominant factor contributing to the high cost of software. In this paper, the software maintenance process and the important software quality attributes that affect the maintenance effort are discussed. One of the most important quality attributes of software maintainability is the stability of a program, which indicates the resistance to the potential ripple effect that the program would have when it is modified. Measures for estimating the stability of a program and the modules of which the program is composed are presented, and an algorithm for computing these stability measures is given. An algorithm for normalizing these measures is also given. Applications of these measures during the maintenance phase are discussed along with an example. An indirect validation of these stability measures is also given. Future research efforts involving application of these measures during the design phase, program restructuring based on these measures, and the development of an overall maintainability measure are also discussed.
IEEE Transactions on Software Engineering | 1985
Stephen S. Yau; James S. Collofello
The high cost of software during its life cycle can be attributer largely to software maintenance activities, and a major portion of these activities is to deal with the modifications of the software. In this paper, design stability measures which indicate the potential ripple effect characteristics due to modifications of the program at the design level are presented. These measures can be generated at any point in the design phase of the software life cycle which enables early maintainability feedback to the software developers. The validation of these measures and future research efforts involving the development of a user-oriented maintainability measure, which incorporates the design stability measures as well as other design measures, are discussed.
Journal of Systems and Software | 1989
James S. Collofello; Scott N. Woodfield
Abstract In the software-development life cycle, various reliability assurance techniques are routinely performed in an attempt to reduce the number of errors in a software product. These reliability-assurance techniques commonly consist of a variety of technical reviews and several levels of testing. Although the utilization of these techniques is growing, there is a lack of quantitative data on their effectiveness. This paper describes two metrics, error-detection efficiency and cost effectiveness, which were used to evaluate the reliability-assurance techniques employed in a large software project. The results of the study are also presented.
computer software and applications conference | 2003
Myra B. Cohen; Peter B. Gibbons; Warwick B. Mugridge; Charles J. Colbourn; James S. Collofello
Complete interaction testing of components is too costly in all but the smallest systems. Yet component interactions are likely to cause unexpected faults. Recently, design of experiment techniques have been applied to software testing to guarantee a minimum coverage of all t-way interactions across components. However, t is always fixed. This paper examines the need to vary the size of t in an individual test suite and defines a new object, the variable strength covering array that has this property. We present some computational methods to find variable strength arrays and provide initial bounds for a group of these objects.
Journal of Systems and Software | 2001
Dan X. Houston; Gerald T. Mackulak; James S. Collofello
Abstract One of the proposed purposes for software process simulation is the management of software development risks, usually discussed within the category of project planning/management. However, modeling and simulation primarily for the purpose of software development risk management has been quite limited. This paper describes an approach to modeling risk factors and simulating their effects as a means of supporting certain software development risk management activities. The effects of six common and significant software development risk factors were studied. A base model was then produced for stochastically simulating the effects of the selected factors. This simulator is a tool designed specifically for the risk management activities of assessment, mitigation, contingency planning, and intervention.
Journal of Systems and Software | 2009
Susan Ferreira; James S. Collofello; Dan L. Shunk; Gerald T. Mackulak
This paper introduces an executable system dynamics simulation model developed to help project managers comprehend the complex impacts related to requirements volatility on a software development project. The simulator extends previous research and adds research results from an empirical survey, including over 50 new parameters derived from the associated survey data, to a base model. The paper discusses detailed results from two cases that show significant cost, schedule, and quality impacts as a result of requirements volatility. The simulator can be used as an effective tool to demonstrate the complex set of factor relationships and effects related to requirements volatility.
Journal of Systems and Software | 1999
Ioana Rus; James S. Collofello; Peter Lakey
This paper describes the use of a process simulator to support software project planning and management. The modeling approach here focuses on software reliability, but is just as applicable to other software quality factors, as well as to cost and schedule factors. The process simulator was developed as a part of a decision support system for assisting project managers in planning or tailoring the software development process, in a quality driven manner. The original simulator was developed using the system dynamics approach. As the model evolved by applying it to a real software development project, a need arose to incorporate the concepts of discrete event modeling. The system dynamics model and discrete event models each have unique characteristics that make them more applicable in specific situations. The continuous model can be used for project planning and for predicting the eAect of management and reliability engineering decisions. It can also be used as a training tool for project managers. The discrete event implementation is more detailed and therefore more applicable to project tracking and control. In this paper the structure of the system dynamics model is presented. The use of the discrete event model to construct a software reliability prediction model for
conference on software engineering education and training | 2000
James S. Collofello
A significant factor in the success of a software project is the management skill of the project leader. The ability to effectively plan and track a software project utilizing appropriate techniques and tools requires training, mentoring, and experience. This paper describes a collaborative effort between Arizona State University and Motorola University to develop a software project management training course. Although many such courses exist in academia and industry, this course incorporates a system dynamics simulator of the software development process. The use of this simulator to train future software project managers is analogous to the use of a flight simulator to train pilots. This paper describes the software project simulator and how it is utilized in the software project management training course. Feedback from the training course participants is also shared and discussed.
technical symposium on computer science education | 1983
Scott N. Woodfield; James S. Collofello; Patricia M. Collofello
A large amount of software development is performed by teams of individuals. To prepare students for these team efforts, many universities are beginning to offer computer science courses in which a software development team project is undertaken. The performance of these teams may be affected by many complex factors. This paper will describe some of our experiences from teaching several different types of project team courses. Factors which affect project team effectiveness will also be discussed.
IEEE Software | 1987
James S. Collofello; Jeffrey J. Buck
Maintenance plays a vital role in protecting quality as a system evolves. The results of this study pinpoit this study pinpoint how to make maintenance a part of SQA.