PERFORMANCE MANAGEMENT FRAMEWORKS AND THE ISBSG REPOSITORY
What is a prototype?
In Webster’s Dictionary (Merriam-Webster, 2005) a prototype is defined as ‘an original model on which something is patterned.’ According to McGraw-Hill’s Encyclopedia of Science & Technology, a prototype is defined as ‘a first or original model of hardware or software.’ (McGraw-Hill’s, 2008).
Experimental prototyping “is used for the investigation of alternative approaches to a solution”, and exploratory prototyping “is used to assist in the formulation of a problem or issue” (McGraw-Hill’s, 2008). The prototype developed in this thesis belongs much more in the exploratory category than in the experimental category.
One advantage of using prototyping is “the ability to rapidly construct a product that is representative of the final product at relatively low cost and effort” (McGraw-Hill’s, 2008).
But, “a prototype is generally a functionally immature model of a proposed product that is built to explore requirements, investigate alternative approaches, or demonstrate model feasibility. The model may or may not evolve into a mature, functionally useful product”(McGraw-Hill’s, 2008).
What is software?
One definition of software is “the programs, routines, and symbolic languages that control the functioning of the hardware and direct its operation” (HMC, 2000).
Software is defined by the IEEE as “computer programs, procedures and possibly associated documentation and data pertaining to the operation of a computer system” (IEEE Computer Society, 1990).
The problem of loosely deliverables, notably in the IEEE definition, is why Pressman explicitly includes data structures and documentation within the scope of software:
“Software is (1) instructions (computer programs) that when executed provide desired function and performance, (2) data structures that enable the programs to adequately manipulate information, and (3) documents that describe the operations and use of the programs.” (Pressman, 2001, p. 6)
What is engineering?
According to Vincenti, “engineers spend their time dealing mostly with practical problems” (Vincenti, 1990, p. 200), and, in his book on the development of aeronautical engineering, he argues strongly that, from the point of view of the practitioner, « technology, though it may apply science, is not the same as or [sic] entirely applied science » (Vincenti, 1990, p. 4).
The McGraw-Hill Encyclopedia of Science and Technology defines engineering as “the science by which the properties of matter and the sources of power in nature are made useful to humans in structures, machines, and products” (McGraw-Hill’s, 2008).
The IEEE definition of engineering is the “application of a systematic, disciplined, quantifiable approach to structures, machines, products, systems or processes” (IEEE Computer Society, 1990).
What is software engineering?
The IEEE definition of software engineering is an adaptation of their definition of engineering to the specifics of software (IEEE Computer Society, 1990): “(1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software” and “(2) The study of approaches as in (1).”.
According to Pressman, “Software engineering encompasses a process, the management of activities, technical methods, and tools” (Pressman, 2001, p. 21), and software is developed by applying three distinct phases (Pressman, 2001, p. 22):
• the definition phase, focusing on “what information is to be processed, what function and performance are desired, what system…, what interfaces…, what design…, and what validation criteria are required to define a successful system” (Pressman, 2001, p. 22)
• the development phase, focusing on “how data are to be structured, how function is to be implemented…, how procedural details…, how interfaces…, how the design will be translated into a programming language…, and how testing…” (Pressman, 2001, p. 22)
• the support phase, focusing on changes “associated with error correction, adaptations required…, and changes due to enhancements brought about by changing customer requirements…reapplies the steps of the definition and development phases, but does so in the context of existing software” (Pressman, 2001, p. 22).
ISO 9126 quality model
The International Organization for Standardization introduced a standard, Software Product Evaluation Quality Characteristics and Guidelines for Their Use, to interpret and measure software quality (ISO/IEC, 2001). In 1987, only 8% of IT representatives knew about AQAP-13 (NATO Software Quality Control System Requirements), which was perhaps the most important software quality standard at that time, unlike the 70% of interviewees who had at least heard of ISO 9126 in
1993 (Bazzana et al., 1993).
As shown in Table 2.5, the quality model defined in ISO/IEC 9126-1 (ISO/IEC, 2001) recognizes three viewpoints of software quality, and defines them as follows :
• Quality in use is the user’s view of the software product in a specific context of use, (a low level of quality of use means that the system is not used at all or is used only partially).
• External quality is the external view of the software product. It is applicable to software that is running: the software product is evaluated during its execution by the user.
• Internal quality is the internal view for all the characteristics measured and evaluated against requirements . It can be measured by the developer during the software life cycle.
An Integrative Framework for IS quality management
According to Stylianou and Kumar (Stylianou and Kumar 2000), it is difficult to manage quality, because every product and service has many stakeholders with varying perceptions of quality.
This framework regards quality as multidimensional and as judged differently by diverse groups of stakeholders. It is addressed from the viewpoint of an IS manager and considers issues relating to multiple stakeholder groups, products, services, and process qualities.
According to the authors, there is a “synergistic relationship” (Stylianou and Kumar 2000) between IS and non-IS business processes, and a clear link between measures to strategic goals.
Important issues to address in implementing IS quality are: customer focus (keeping customers satisfied with quality solutions and attending to their needs), a process approach (systematic management of resources, activities, and outcomes), leadership (be an example and display visionary leadership), culture, broad participation and teamwork, motivation, resources, training, measurement and constructive feedback, accountability for results, and rewarding achievements.
IS should identify all the quality concerns from various stakeholders, integrate their measurements, and, finally, assign weights to the indicators according to their relative importance.
The QEST & Lime Models
The QEST (Quality factor + Economic, Social, and Technical dimensions) model developed by Abran and Buglione is a performance management model specific to software engineering (Abran and Buglione, 2003; Buglione and Abran, 1999). It has the ability to handle independent sets of dimensions without predefined ratios or weights.
The initial QEST-3D model takes into consideration the following dimensions:
• Economic viewpoint: the viewpoint of managers, who are particularly interested in financial and scheduling measures taken with regard to the organizational objectives;
• Social viewpoint: the viewpoint of users, who are interested in using the software efficiently and correctly;
• Technical viewpoint: the viewpoint of developers, who are interested in the product being developed as required by the customer.
|
Table des matières
INTRODUCTION
CHAPTER 1 PRESENTATION OF KEY CONCEPTS
1.1 What is a prototype?
1.2 What is software?
1.3 What is engineering?
1.4 What is software engineering?
1.5 What is multidimensional?
1.6 What are management and project management?
1.7 What is software engineering management?
1.8 What is performance?
1.9 What is measurement?
1.10 What is performance measurement?
1.11 What is performance management?
1.12 What are the key measures of performance management?
1.13 Summary
CHAPTER 2 PERFORMANCE MANAGEMENT FRAMEWORKS AND THE ISBSG REPOSITORY
2.1 Performance Management Frameworks in software engineering
2.1.1 McCall model
2.1.2 Boehm model
2.1.3 ISO 9126 quality model
2.1.4 Donaldson and Siegel model
2.1.5 Dromey model
2.1.6 An Integrative Framework for IS quality management
2.1.7 The QEST & Lime Models
2.2 Generic Performance Management Frameworks
2.2.1 Balanced Scorecard (BSC)
2.2.2 The Performance Prism
2.2.3 EFQM Excellence Model
2.2.4 Intangible Assets Monitor (IAM)
2.2.5 The Baldrige Framework
2.2.6 Skandia Navigator
2.2.7 Integrated Performance Measurement System
2.2.8 Sink and Tuttle model
2.3 Comparison of models
2.4 International Software Benchmarking Standards Group data repository
2.5 The QEST prototype
2.6 Discussion
CHAPTER 3 BUILDING A CONCEPTUAL PERFORMANCE MANAGEMENT FRAMEWORK
3.1 Designing a conceptual framework to manage multidimensional performance in software engineering
3.1.1 The design of a PMF
3.1.1.1 Preparation
3.1.1.2 Guiding elements
3.1.1.3 Definition of the objectives
3.1.1.4 Selection and weighting of viewpoints and indicators
3.1.1.5 Assignment of threshold values
3.1.2 Implementation of measures
3.1.3 Use of the framework
3.1.4 Performance improvement
3.1.5 Conclusion
CHAPTER 4 THE MULTIPERF PROTOTYPE
4.1 Technology selection
4.2 The design of MultiPERF
4.2.1 Setting up a performance management team and determination of guiding elements
4.2.2 Definition of the objectives
4.2.3 Selection and weighting of measures and viewpoints
4.2.4 Assignment of threshold values
4.3 Implementation of measures
4.3.1 Internal data
4.3.2 External data
4.3.3 Calculate performance data
4.4 Analysis and use of performance data
4.4.1 Performance tree and use of color
4.4.2 Basic reports and graphical representations
4.4.2.1 Other available features
4.4.3 Building the pyramid
4.4.3.1 Using a sphere to represent the APV% for a viewpoint
4.4.3.2 Using a cube to represent the OP_APV and OP_TPV of a viewpoint
4.4.3.3 Using a line to represent TPV%
4.4.3.4 OP_APV and OP_TPV are indicated by a cone
4.4.3.5 Using a line to represent APV% and TPV%
4.4.3.6 Volume concept to represent organizational performance
4.5 Using the ISBSG repository to set up performance targets
4.5.1 Setting performance targets
4.5.2 Setting the organizational performance level
4.5.3 Selecting the dataset
4.5.4 Statistical analysis
4.5.5 Building a model to set performance targets graphically
4.6 Conclusion
CONCLUSION
Télécharger le rapport complet