Chapter # 7 Software Development

Slides:



Advertisements
Similar presentations
Chapter 7 - Software Development1 Chapter 7 Software Development A Textbook aimed at protecting consumers Software Quality Links Ian Foster and Grid Computing.
Advertisements

Overview Lesson 10,11 - Software Quality Assurance
1 Software Development Prepared By Joseph Leung. 2Agenda 1.Discuss the need for quality software in business systems, industrial process control systems,
June 1, 2004Computer Security: Art and Science © Matt Bishop Slide #18-1 Chapter 18: Introduction to Assurance Overview Why assurance? Trust and.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 30 Slide 1 Security Engineering.
1 Introduction to Software Engineering Lecture 39 – Software Development.
Ethics in Information Technology, Second Edition
Ethics in Information Technology, Fourth Edition
Lecture 1.
© SAIC. All rights reserved. NATIONAL SECURITY ENERGY & ENVIRONMENT HEALTH CYBERSECURITY The Potential High Cost of Simple Systems Engineering Errors Jim.
ISO 9000 Introduction Imran Hussain.
 This presentation looks at: › What is risk management › How to identify risks › How to implement an effective risk management policy to increase your.
Aj. Thoranin Intarajk.  Strategies to engineer quality software.  The important of software quality.  Software development process.  Capability maturity.
Ethics in Information Technology, Second Edition 1 Computer & Society Week 8 Marwan Al-Namari.
 The software systems must do what they are supposed to do. “do the right things”  They must perform these specific tasks correctly or satisfactorily.
Project Management Methodology Project Closing. Project closing stage Must be performed for all projects, successfully completed or shut off by management.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
QUALITY ASSURANCE MANAGEMENT CONTROLS Chapter 9. Quality Assurance (QA) Management is concerned with ensuring: 1) The information system produced by the.
This class cannot be shared or copied without the written permission of PracticeWorks Systems, LLC.
Operations Management Optimising operations. The aim of an OM system is to extract maximum productivity and quality from the production process. This.
1 Fault-Tolerant Computing Systems #1 Introduction Pattara Leelaprute Computer Engineering Department Kasetsart University
Slide 1 Security Engineering. Slide 2 Objectives l To introduce issues that must be considered in the specification and design of secure software l To.
Introduction to Software Engineering Syed Salman Ali B.E, MBA ( MIS, Mktg), PMP.
Chapter 1- Introduction Lecture 1. Topics covered  Professional software development  What is meant by software engineering.  Software engineering.
Project Management Methodology Project Closing. Project closing stage Must be performed for all projects, successfully completed or shut off by management.
Slide #18-1 Introduction to Assurance CS461/ECE422 Fall 2008 Based on slides provided by Matt Bishop for use with Computer Security: Art and Science.
INTRODUCTION CSE 470 : Software Engineering. Goals of Software Engineering To produce software that is absolutely correct. To produce software with minimum.
Ethics in Information Technology Chapter 7 Software Development Ethics in Information Technology.
LESSON 12 Business Internet. Electronic business, or e-business, is the application of information and communication technologies (ICT) in support of.
HSE Interview Questions / Answers Series (Part 1)
Chapter 4 Assessment.
TOPIC : PROJECT MANAGER
«My future profession»
CS457 Introduction to Information Security Systems
CompSci 280 S Introduction to Software Development
INTRODUCTION The economies of ALL developed nations are dependent on software. More and more systems are software controlled Software engineering is concerned.
Chapter 1- Introduction
Software Development and Safety Critical Decisions
Managing suppliers, customers and quality
OH&S Plant Obligations make
Components of software quality assurance system overview
Managing the Project Lifecycle
Fundamentals of Information Systems, Sixth Edition
Software Quality Engineering
Chapter 1- Introduction
Initiating systems development
Chapter # 1 Overview of Ethics
Chapter 18: Introduction to Assurance
Security Engineering.
Quality Quality is “a characteristic or attribute of something.”
د. حنان الداقيز خريف /28/2016 Software Quality Assurance ضمان جودة البرمجيات ITSE421 5 – The components of the SQA.
IS442 Information Systems Engineering
2 Selecting a Healthcare Information System.
Frequently asked questions about software engineering
International Organization International Organization
Frequently asked questions about software engineering
The Future of Software Engineering
Chapter 13 Quality Management
Software Engineering Software Engineering is the science and art of
CS385T Software Engineering Dr.Doaa Sami
Software Engineering Software Engineering is the science and art of
INFS 452 – Computer Ethics & Society
International Organization International Organization
Global Production, Outsourcing, and Logistics
Reliability and Safety
INFS 452 – Computer Ethics & Society
International Organization International Organization
International Organization International Organization
Computer in Safety-Critical Systems
Presentation transcript:

Chapter # 7 Software Development INFS 452 – Computer Ethics & Society Chapter # 7 Software Development Ethics in information technology by George W. Reynolds Prepared by: Arfan Arshad

INTRODUCTION AND OVERVIEW High-quality software systems are easy to learn and use because they perform quickly and efficiently; they meet their users’ needs; and they operate safely and reliably so that system downtime is kept to a minimum. Such software has long been required to support the fields of air traffic control, nuclear power, automobile safety, health care, military and defense, and space exploration.

Continued… Now that computers and software have become integral parts of almost every business, the demand for high-quality software is increasing. End users cannot afford system crashes, lost work, or lower productivity, nor can they tolerate security holes through which intruders can spread viruses, steal data, or shut down Web sites. Software manufacturers face economic, ethical, and organizational challenges associated with improving the quality of their software. This chapter covers many of these issues.

Continued…. A software defect is any error that, if not removed, could cause a software system to fail to meet its users’ needs. Software quality is the degree to which a software product meets the needs of its users.

Continued…. Quality management focuses on defining, measuring, and refining the quality of the development process and the products developed during its various stages. These products—including statements of requirements, flowcharts, and user documentation—are known as deliverables. The objective of quality management is to help developers deliver high-quality systems that meet the needs of their users.

The Importance of Software Quality The accurate, thorough, and timely processing of business transactions is a key requirement for safety critical systems. A software defect can be devastating, resulting in lost customers and reduced revenue.

KEY ISSUES IN SOFTWARE DEVELOPMENT Although defects in any system can cause serious problems, the consequences of software defects in certain systems can be deadly. In these kinds of systems, the stakes involved in creating quality software are raised to the highest possible level. The ethical decisions involving a trade-off—if one must be considered—between quality and such factors as cost, ease of use, and time to market require extremely serious examination.

Development of Safety-Critical Systems A safety-critical system is one whose failure may cause injury or death. The safe operation of many safety-critical systems relies on the flawless performance of software; such systems control automobiles’ antilock brakes, nuclear power plant reactors, airplane navigation, roller coasters, elevators, and numerous medical devices, to name just a few.

Continued…. The process of building software for such systems require highly trained professionals, formal and rigorous methods, and state-of-the-art tools. However, even with these precautions, the software associated with safety-critical systems is still vulnerable to errors that can lead to injury or death.

Points to consider Consider the following points while developing safety critical systems: International standards When developing safety-critical systems, a key assumption must be that safety will not automatically result from following an organization’s standard development methodology. Rigorous Software Development Process Safety-critical software must go through a much more rigorous and time-consuming development process than other kinds of software.

Continued…. Project safety engineer The key to ensuring that these additional tasks are completed is to appoint a project safety engineer, who has explicit responsibility for the system’s safety.   Sufficient testing Another key issue is deciding when the QA staff has performed sufficient testing.   Formal risk analysis When designing, building, and operating a safety-critical system, a great deal of effort must be put into considering what can go wrong

Continued…. Redundancy Another key element of safety-critical systems is redundancy, the provision of multiple interchangeable components to perform a single function in order to cope with failures and errors. Human Interface One of the most important and difficult areas of safety-critical system design is the human interface.

Quality Management Standards The International Organization for Standardization (ISO), founded in 1947, is a worldwide federation of national standards bodies from 161 countries. The ISO issued its 9000 series of business management standards in 1988. These standards require organizations to develop formal quality-management systems that focus on identifying and meeting the needs, desires, and expectations of their customers.

Continued…. The ISO 9000 standard serves as a guide to quality products, services, and management. To obtain this coveted certificate, an organization must submit to an examination by an external assessor and fulfill the following requirements: • Have written procedures for all processes • Follow those procedures • Prove to an auditor that it has fulfilled the first two requirements; this proof can require observation of actual work practices and interviews with customers, suppliers, and employees.

Continued…. The various ISO 9000 series of standards address the following software-related activities: • ISO 9001: Design, development, production, installation, servicing • ISO 9002: Production, installation, servicing • ISO 9003: Inspection and testing • ISO 9000-3: Development, supply, and maintenance of software • ISO 9004: Quality management and quality systems elements

Managers Checklist for improving software quality

Question & Answer Session