Cost factors were classified in 6 groups, which are as follow. Introduction to reliability engineering elearning course. 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. Maintenance tactics are an important tool for measuring maintainability in. 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. However, those in the maintenance field understand that equipment reliability does not come easy. We will investigate how the maintainability of a piece of software changes as time passes and it is being maintained by performing measurements on industrial systems. Software reliability engineering sre is the quantitative study of the operational behavior of software based systems with respect to user requirements concerning reliability ieee95. Explains what availability and reliability mean in critical sysems. Software estimation, measurement, and metrics acqnotes. In the context of software engineering, software quality refers to two related but distinct notions. Learn vocabulary, terms, and more with flashcards, games, and other study tools. A spiral model of development and evolution chapter 9 software.
Software maintenance productivity measurement amazon s3. Measuring and monitoring maintainability is a must for missioncritical. About the authors ian sommerville is a full professor of software engineering at the university of st. Maintenance kpis measure how well your operation is doing at achieving its maintenance goals, like reducing downtime or cutting costs. Addition of new functionality or the adaptation of software to meet new requirements for the customer needs. Allow the software and the software process to be quantified. May be used to predict product attributes or to control the software process. In software engineering, these activities are known as software maintenance cf. When you have read through and understood this material, you should be able to. Since software reliability is one of the most important aspects of software quality, reliability engineering approaches are practiced in software field as well. Course informationsyllabus pdf guidelines for all assignments pdf book.
Process metrics process metrics may be used to assess maintainability. 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. Solutions manual for software engineering 10th edition by. Metrics for software maintenance information technology essay. The delta maintainability model acm digital library. Software maintenance is the final stage in the software engineering process. How to effectively define and measure maintainability. Permission to reproduce or copy all or parts of this material for nonprofit use is granted on the. Predicting software complexity by means of evolutionary testing. 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. Instead, one can measure maintenance process attributes, such as the time required to make a change, which are influenced by software maintainability.
Since there is, as yet, no recognized software engineering exam, only highly experienced software engineers are eligible. These presentations are organized into either 2 or 3 lectures, depending on the amount of material. Product metrics can be used for general predictions or to identify anomalous components. Measuring software maintainability is nontrivial and there exists no single metric to measure it accurately. Sommerville 114 defines a software metric as any type of measurement that. Addisonwesley, 10th edition, 2015 software architecture in practice. 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. The need of software engineering arises because of. Ian sommerville software engineering, 9th edition 2011. The software engineering measurement topic in the software engineering management ka describes a process for implementing a software measurement program. If so, share your ppt presentation slides online with. Software engineering ppt slides download free lecture. 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. His research interest lies in complex, dependable systems.
The objective of software maintenance is to modify existing software while preserving its integrity. A data mining methodology for evaluating maintainability. Closely related concepts in the software engineering domain are evolvability, modifiability, technical debt, and code smells. Software engineering, 6th edition, ian sommerville, addisonwesley, isbn 0209815x. Know the definition of reliability and the factors associated with it. Keywords software metrics, halstead measure, maintainability. Hinchey software engineering 7th edition hardcover ian sommerville a science of software.
However, one study indicated that over 80% of maintenance effort is used for noncorrective actions. An aggregated measure of software quality can be computed through a. Metrics for software maintenance information technology essay 1 introduction. Other desirable properties of software measurements include ease of collection, analysis, and presentation plus a strong correlation between cause and effect. Fritz bauer, a german computer scientist, defines software engineering as. To explain how measurement may be used in assessing software. Software engineering roger s pressman, phd is the property of its rightful owner. An introduction to software engineering ethics markkula.
The maintainability index is calculated with certain formulae from linesofcode measures, mccabe measures and halstead complexity measures. No training in ethical theory, applied ethics, or philosophy is required for either the instructor or the students as they tackle these materials. Organizations need to set quality benchmarks to measure the current effectiveness and predict future. Effective maintenance of equipment is a critical factor in delivering quality operations that provide timely resources at a minimal cost. 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. Software engineering institute, carnegie mellon university.
Amsterdam and the team special products engineering in is one example of this when they have not. Start studying software engineering 9th ed by sommerville chapter 2. Grundlagen des software engineering ws 201516 lecture 893001. Extreme programming expresses user requirements as stories, with each story written on a card. Software metrics are valuable for many reasons, including measuring software performance, planning work items, measuring productivity, and many other uses. Software reliability the reliability of a software system is a measure of how well users think it meets their needs. Understand the concepts of reliability, availability and maintainability engineering. Now customize the name of a clipboard to store your clips. Budgen highintegrity system specification and design formal approaches to computing and information technology facit by jonathan p.
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. Foundations of software engineering 1 the webpage provides information about the lecture. Software reliability electrical and computer engineering. Sommerville, software engineering, 8th edition, addisonwesley, 2007. Andrews in scotland, where he teaches courses in advanced software engineering and critical systems engineering.
A software metric is a measure of software characteristics which are measurable or countable. Sommerville, power point slides for software engineering. Se9 presentations systems, software and technology. 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. Download powerpoint lecture slides applicationzip 12. The purpose of software maintenance is defined in the international standard for software maintenance. It is not possible to certify that a system is 100% reliable. Maintainability measures can help to tell whether the software is easy to understand, enhance. Part 1 introduction to software engineering chapter 1. These measures are collected throughout the software development life cycle with an intention to improve the software process on a continuous basis.
Maintainability is a multifaceted quality attribute each of the facets must be analyzed to objectively measure it. Which factors affect software projects maintenance cost more. Solution manual for software engineering 9th edition by. Empirical software engineering software measurement and metrics are the basis of empirical software engineering. This perception is perpetuated by users submitting. Ian somerville is the recipient of the 2011 acm sigsoft influential educator award. Chapter 11 slide 9 system structuring concerned with decomposing the system into interacting subsystems. 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.
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. The textbook and the accompanying materials posted on this website are freely available for fair use. Clipping is a handy way to collect important slides you want to go back to later. Software engineering tutorial 2 1 the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. Solution manual for software engineering 9th edition by ian sommerville. Foundations of software engineering also for lecture 893002. Within the software development process, many metrics are that are all connected. Issues relating to realtime control systems, human factors, reliability, performance, operating costs, maintainability and others are addressed and resolved in a reasonable manner. Reliability powerpoint ppt presentations powershow. Architectural design systems, software and technology. Maintenance kpis are quantifiable goals that reflect the larger. Software quality is the focus of a software project, from the perspective of the developer as much as the customer. Software engineering 9th ed by sommerville chapter 2.
The exercises will start at november 10, 2015 in 46280 at 15. The april 1988 issue of communications of the acm vol 31, no 4, pp 372375 con. To assess the quality of the engineered product or system and to better understand the models that are created, some measures are used. Ian sommerville 2004 software engineering, 7th edition. Ian sommerville is a full professor of software engineering at the university of st. We present the notion of maintainability, our hypotheses, and our approach. Maintainability means fixing, updating, servicing and to modify the system or update the software for performance improvements or for the correction of faults. Pdf software engineering 9 solutions manual fantasia. Since we are interested to evaluate maintainability during development and at delivery time, these maintenance process measures are available too late. The enormous economic impact of quality of the software makes it a major concern for all software development efforts. Ian sommerville, university of st andrews, scotland 2011 pearson. The architectural design is normally expressed as a block diagram presenting an overview of the system structure.
833 15 630 604 1253 326 1439 1129 78 285 1081 41 1358 571 1131 808 240 476 108 1399 1197 492 1242 327 1101 734 1263 186 1157 258 466 1454 178