Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Software Processes and Qualities-Software Engineering-Lecture Slides, Slides of Software Engineering

Prof. Ajeeta Vrajanadan delivered this lecture at Baddi University of Emerging Sciences and Technologies for Software Engineering course. Its main points are: Software, Processes, Qualities, Intanguble, Malleable, Intensive, Configuration, Management, Tools

Typology: Slides

2011/2012

Uploaded on 07/18/2012

paklashi
paklashi 🇮🇳

4.5

(2)

44 documents

1 / 38

Toggle sidebar

Related documents


Partial preview of the text

Download Software Processes and Qualities-Software Engineering-Lecture Slides and more Slides Software Engineering in PDF only on Docsity! Software Engineering Lecture 04 - 05 Dr. Mohammad Jaudet, DEE jaudet@pieas.edu.pk Pakistan Institute of Engineering and Applied Sciences October, 2010 Dr. Mohammad Jaudet, October, 2010 - February 2011. 1 docsity.com Outline of the Lecture 04 - 05 Software engineering (SE) is an intellectual activity and thus human-intensive Software is built to meet a certain functional goal and satisfy certain qualities Software processes also must meet certain qualities Software qualities are sometimes referred to as "ilities" Dr. Mohammad Jaudet, October, 2010 - February 2011. 2 docsity.com Classification of software qualities ... Internal vs. external External -> visible to users Internal -> concern developers Product vs. process Our goal is to develop software products The process is how we do it Internal qualities affect external qualities Reliability comes from Verifiability Dr. Mohammad Jaudet, October, 2010 - February 2011. 5 docsity.com Classification of software qualities ... Process quality affects product quality User is concerned with executable code and user manual Producer is concerned with requirement and design documents Intermediate/work products allow delivery of delivery of customized products Sale of object code for embedded design Sale of Design and source code to others, e.g., Tools for integrated environments & Antivirus Configuration management Tools Configuration management is the part of software production process that is concerned with maintaining and controlling the relationship between between all related with work products of various versions of work product Dr. Mohammad Jaudet, October, 2010 - February 2011. 6 docsity.com Representative Qualities Correctness, Reliability & Robustness Performance Usability Maintainability Reusability Portability Understandability Interoperability Productivity Timeliness Visibility Dr. Mohammad Jaudet, October, 2010 - February 2011. 7 docsity.com Robustness Reasonable behavior in circumstances not anticipated in the requirement specification incorrect input hardware failure A software generating unrecoverable runtime error during a sequence of procedures is not robust Code devoted for for robustness depends on application area Embedded systems depends on sensors but still need code for taking care of robustness Robustness also depends on correctness Dr. Mohammad Jaudet, October, 2010 - February 2011. 10 docsity.com Performance Efficient use of resources memory, processing time, communication Can be verified complexity analysis performance evaluation (on a model, via simulation) Performance can affect scalability a solution that works on a small local network may not work on a large intranet Perfomance is evaluated after first initial release of the software Dr. Mohammad Jaudet, October, 2010 - February 2011. 11 docsity.com Usability or user-friendliness Expected users find the system easy to use Rather subjective, difficult to evaluate Affected mostly by user interface e.g., visual vs. textual Consistency and Predictability of user interface Dr. Mohammad Jaudet, October, 2010 - February 2011. 12 docsity.com Categories of maintenance Corrective Removing residual errors put in during development and maintenance period (20%) Adaptive Adjusting to environment changes (20%) Change in operating system Change in data base system Perfective Quality improvements (>50%) Change the functions offered by software system Add new functions Improve the performance software system Make the software system easier to use Dr. Mohammad Jaudet, October, 2010 - February 2011. 15 docsity.com Repairability & Evolvability Maintainability can be considered as: Repairability Evolvability Dr. Mohammad Jaudet, October, 2010 - February 2011. 16 docsity.com Repairability Repairability Ability to correct defects in reasonable time Repairability is a major design goal Modular design helps easier analysis & repair Avoiding complex interfaces Repairability can be improved by using High level languages Source level debuggers Dr. Mohammad Jaudet, October, 2010 - February 2011. 17 docsity.com Reusability Existing product (or components) used (with minor modifications) to build another product (Similar to evolvability) Reusability may be applied from the whole product to a routine but more applicable to software components Unix shell is a reusable product that can be used for certain purpose with a command file Numeric Libraries are first examples of reusable components Use of Modularity enhances Reusability Use of software methodologies is considered as attempt to reuse processes to develop different products Dr. Mohammad Jaudet, October, 2010 - February 2011. 20 docsity.com Portability Software can run on different hardware platforms or software environments Modularity helps is isolation of components associated with environment Internet browsers are one example of software need to run on variety of platforms Linux operating system is other example but needed a lot of effort Dr. Mohammad Jaudet, October, 2010 - February 2011. 21 docsity.com Understandability Ease of understanding software Program modification requires program understanding Understandability depends on abstraction and modularity Understandability helps in Evolvability Verifyability Dr. Mohammad Jaudet, October, 2010 - February 2011. 22 docsity.com Productivity Productivity is a quality of software production process and denotes its efficiency and performance Depends on productivity of individual software engineers More in Chapter 8 and Chapter 9 Dr. Mohammad Jaudet, October, 2010 - February 2011. 25 docsity.com Timeliness Timeliness is ability to deliver a product on time Often the development process does not follow the evolution of user requirements A mismatch occurs between user requirements and status of the product Delayed & incremental delivery More in Chapter 4 and Chapter 7 Dr. Mohammad Jaudet, October, 2010 - February 2011. 26 docsity.com Timeliness: a visual description of the mismatch Dr. Mohammad Jaudet, October, 2010 - February 2011. 27 docsity.com Information systems Examples of Information systems Banking systems library cataloguing system Personnel system Dr. Mohammad Jaudet, October, 2010 - February 2011. 30 docsity.com Qualities of Information systems Data integrity Under what circumstances will the data be corrupted when the system malfunctions? Security To what extent the system protect the data from unauthorized access? Data availability Under what conditions will the data become unavailable and for how long Transaction performance Number of transactions carried out per unit of time Dr. Mohammad Jaudet, October, 2010 - February 2011. 31 docsity.com Real-time systems Real-time systems must respond to events within predefined and strict period of time Factory monitoring system Flight software Mouse handling software Dr. Mohammad Jaudet, October, 2010 - February 2011. 32 docsity.com Characteristics of Distributed systems Amount of distribution Data Processing Both data and processing Whether the system can tolerate the partitioning of network Whether the system can tolerate the failure of individual computers Dr. Mohammad Jaudet, October, 2010 - February 2011. 35 docsity.com Embedded systems Examples of Embedded systems Airplanes, automobiles cellular phones microwave ovens, dishwashers, refrigerators Dr. Mohammad Jaudet, October, 2010 - February 2011. 36 docsity.com Embedded systems ... Software is not used for user interface but simplify the hardware design Connecting hardware components Embedded systems are often real-time systems Dr. Mohammad Jaudet, October, 2010 - February 2011. 37 docsity.com
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved