Process metrics process metrics may be used to assess maintainability. A spiral model of development and evolution chapter 9 software. However, one study indicated that over 80% of maintenance effort is used for noncorrective actions. His research interest lies in complex, dependable systems. A quality in use model composed of five characteristics some of which are further subdivided into subcharacteristics that relate to the outcome of interaction when a product is used in a particular context of use. We present the notion of maintainability, our hypotheses, and our approach. When you have read through and understood this material, you should be able to. Ian somerville is the recipient of the 2011 acm sigsoft influential educator award. Metrics for software maintenance information technology essay 1 introduction. Cost factors were classified in 6 groups, which are as follow. A data mining methodology for evaluating maintainability. Software engineering tutorial 2 1 the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software.
An aggregated measure of software quality can be computed through a. Part 1 introduction to software engineering chapter 1. Since there is, as yet, no recognized software engineering exam, only highly experienced software engineers are eligible. Architectural design systems, software and technology. Addition of new functionality or the adaptation of software to meet new requirements for the customer needs. Software engineering 9th ed by sommerville chapter 2. Software documentation guidelines for maintainability. Software reliability the reliability of a software system is a measure of how well users think it meets their needs. Product metrics can be used for general predictions or to identify anomalous components. Effective maintenance of equipment is a critical factor in delivering quality operations that provide timely resources at a minimal cost. Introduction to reliability engineering elearning course. Which factors affect software projects maintenance cost more.
This is a research area in which experiments on software systems and the collection of data about real projects has been used to form and validate hypotheses about software engineering methods and. Since we are interested to evaluate maintainability during development and at delivery time, these maintenance process measures are available too late. Software quality management sqm is a management process that aims to develop and manage the quality of software in such a way so as to best ensure that the product meets the quality standards expected by the customer while also meeting any necessary regulatory and developer requirements, if. Start studying software engineering 9th ed by sommerville chapter 2. The delta maintainability model acm digital library. Chapter 1 slide 2 objectives to introduce software engineering and to explain its importance to set out the answers to key questions about software engineering to introduce ethical and professional issues and to explain why they are of concern to software engineers. The enormous economic impact of quality of the software makes it a major concern for all software development efforts. Software engineering institute, carnegie mellon university. It is not possible to certify that a system is 100% reliable. Measuring software maintainability is nontrivial and there exists no single metric to measure it accurately. Maintenance kpis measure how well your operation is doing at achieving its maintenance goals, like reducing downtime or cutting costs. Empirical software engineering software measurement and metrics are the basis of empirical software engineering. Software reliability electrical and computer engineering.
Software engineering, 6th edition, ian sommerville, addisonwesley, isbn 0209815x. Ian sommerville software engineering, 9th edition 2011. Sommerville, software engineering, 8th edition, addisonwesley, 2007. The objective of software maintenance is to modify existing software while preserving its integrity. Fritz bauer, a german computer scientist, defines software engineering as. A data mining methodology for evaluating maintainability according to isoiec9126 software engineering product quality standard. The exercises will start at november 10, 2015 in 46280 at 15. Keywords software metrics, halstead measure, maintainability.
Extreme programming expresses user requirements as stories, with each story written on a card. Explains what availability and reliability mean in critical sysems. Other desirable properties of software measurements include ease of collection, analysis, and presentation plus a strong correlation between cause and effect. Software maintenance productivity measurement amazon s3. Sommerville 114 defines a software metric as any type of measurement that. Reliability powerpoint ppt presentations powershow. The april 1988 issue of communications of the acm vol 31, no 4, pp 372375 con. Software maintenance is the final stage in the software engineering process. This ethics module for software engineering courses includes a reading, homework assignments, case studies, and classroom exercises, all designed to spark a conversation about ethical issues that students will face in their lives as software engineers. Software estimation, measurement, and metrics acqnotes. Software maintenance in software engineering is the modification of a software product after delivery to correct faults, to improve performance or other attributes a common perception of maintenance is that it merely involves fixing defects. Course informationsyllabus pdf guidelines for all assignments pdf book. Software engineering ppt slides download free lecture.
Since software reliability is one of the most important aspects of software quality, reliability engineering approaches are practiced in software field as well. Ian sommerville, university of st andrews, scotland 2011 pearson. Maintenance tactics are an important tool for measuring maintainability in. Measuring and monitoring maintainability is a must for missioncritical. Know the definition of reliability and the factors associated with it. Budgen highintegrity system specification and design formal approaches to computing and information technology facit by jonathan p. Maintainability is a multifaceted quality attribute each of the facets must be analyzed to objectively measure it. However, those in the maintenance field understand that equipment reliability does not come easy. Permission to reproduce or copy all or parts of this material for nonprofit use is granted on the. Maintainability means fixing, updating, servicing and to modify the system or update the software for performance improvements or for the correction of faults. Issues relating to realtime control systems, human factors, reliability, performance, operating costs, maintainability and others are addressed and resolved in a reasonable manner. Sommerville, power point slides for software engineering. Learn vocabulary, terms, and more with flashcards, games, and other study tools.
Pdf software engineering 9 solutions manual fantasia. Ian sommerville 2004 software engineering, 7th edition. The software engineering measurement topic in the software engineering management ka describes a process for implementing a software measurement program. Metrics for software maintenance information technology essay. Based on studies from reputable books and literature in the field of software engineering, wellknown sites and interviews with informatics experts, 32 effective factors were obtained and examined in the software maintenance cost estimations. Predicting software complexity by means of evolutionary testing. Software engineering methods rely on a set of basic principles that govern each area of the technology and include modeling activities and other descriptive techniques. Allow the software and the software process to be quantified. Software reliability engineering sre is the quantitative study of the operational behavior of software based systems with respect to user requirements concerning reliability ieee95. Presentations i have prepared presentations for all of the chapters in the book in pptx format, the format used by office 2007 and later versions of office. Solution manual for software engineering 9th edition by.
To assess the quality of the engineered product or system and to better understand the models that are created, some measures are used. They are benchmarks for your facility and highlight where you team is now, how far you still need to go, and what you need to do to get there. Software quality is the focus of a software project, from the perspective of the developer as much as the customer. These measures are collected throughout the software development life cycle with an intention to improve the software process on a continuous basis. Andrews in scotland, where he teaches courses in advanced software engineering and critical systems engineering. Maintenance kpis are quantifiable goals that reflect the larger. Amsterdam and the team special products engineering in is one example of this when they have not. Addisonwesley, 10th edition, 2015 software architecture in practice. Software engineering roger s pressman, phd is the property of its rightful owner. Within the software development process, many metrics are that are all connected. Organizations need to set quality benchmarks to measure the current effectiveness and predict future.
Se9 presentations systems, software and technology. A software metric is a measure of software characteristics which are measurable or countable. Maintainability measures can help to tell whether the software is easy to understand, enhance. Software engineering tools provide automated or semiautomated support for the. This perception is perpetuated by users submitting. The textbook and the accompanying materials posted on this website are freely available for fair use. In the context of software engineering, software quality refers to two related but distinct notions. To explain how measurement may be used in assessing software. How to effectively define and measure maintainability. Closely related concepts in the software engineering domain are evolvability, modifiability, technical debt, and code smells. Solutions manual for software engineering 10th edition by. No training in ethical theory, applied ethics, or philosophy is required for either the instructor or the students as they tackle these materials.
In software engineering, these activities are known as software maintenance cf. May be used to predict product attributes or to control the software process. Software metrics are valuable for many reasons, including measuring software performance, planning work items, measuring productivity, and many other uses. Instead, one can measure maintenance process attributes, such as the time required to make a change, which are influenced by software maintainability. The maintainability index is calculated with certain formulae from linesofcode measures, mccabe measures and halstead complexity measures. Ian sommerville is a full professor of software engineering at the university of st. An introduction to software engineering ethics markkula. The need of software engineering arises because of. The architectural design is normally expressed as a block diagram presenting an overview of the system structure. Download powerpoint lecture slides applicationzip 12. Clipping is a handy way to collect important slides you want to go back to later. About the authors ian sommerville is a full professor of software engineering at the university of st.
Chapter 11 slide 9 system structuring concerned with decomposing the system into interacting subsystems. Software metric any type of measurement which relates to a software system, process or related documentation lines of code in a program, the fog index, number of persondays required to develop a component. Hinchey software engineering 7th edition hardcover ian sommerville a science of software. The purpose of software maintenance is defined in the international standard for software maintenance.
827 1654 239 1289 768 1278 617 41 820 218 1017 926 509 1676 1562 1034 1548 85 698 155 1477 1514 665 1127 589 91 837 833 1196 96 1052 713 27 53