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