0% found this document useful (0 votes)
18 views

Ethcpp07 GROUP C

The document discusses strategies for engineering quality software, including why companies require high-quality software, especially for systems controlling important functions. It notes ethical issues around tradeoffs between schedule, cost and quality. Software defects could cause failures and legal liability. Effective development processes and continuous improvement are needed to deliver reliable software meeting user needs.
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

Ethcpp07 GROUP C

The document discusses strategies for engineering quality software, including why companies require high-quality software, especially for systems controlling important functions. It notes ethical issues around tradeoffs between schedule, cost and quality. Software defects could cause failures and legal liability. Effective development processes and continuous improvement are needed to deliver reliable software meeting user needs.
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 15

Ethics in Information

Technology, Second Edition

Chapter 7
Software Development
Objectives
• Why do companies require high-quality software in
business systems, industrial process control
systems, and consumer products?

• What ethical issues do software manufacturers face


in making tradeoffs between project schedules,
project costs, and software quality?

Ethics in Information Technology, Second Edition 2


Objectives (continued)
• What are the four most common types of software
product liability claims, and what actions must
plaintiffs and defendants take to be successful?

• What are the essential components of a software


development methodology, and what are its
benefits?

Ethics in Information Technology, Second Edition 3


Objectives (continued)
• How can Capability Maturity Model Integration
improve an organization’s software development
process?

• What is a safety-critical system, and what actions


are required during its development?

Ethics in Information Technology, Second Edition 4


Strategies to Engineer Quality
Software
• High-quality software systems
– Operate safely and dependably
– Have a high degree of availability
– Required to support the fields of
• Air traffic control
• Nuclear power
• Automobile safety
• Health care
• Military and defense
• Space exploration

Ethics in Information Technology, Second Edition 5


Strategies to Engineer Quality
Software (continued)
• More and more users are demanding high quality
software
• Software defect
– Could cause a system to fail to meet users’ needs
– Impact may be trivial or very serious
– Patches may contain defects
• Software quality
– Degree to which software meets the needs of users

Ethics in Information Technology, Second Edition 6


Strategies to Engineer Quality
Software (continued)
• Quality management
– How to define, measure, and refine the quality of the
development process and products
– Objective
• Help developers deliver high-quality systems that
meet the needs of users
• Deliverables
– Products such as:
• Statements of requirements
• Flowcharts
• User documentation

Ethics in Information Technology, Second Edition 7


Strategies to Engineer Quality
Software (continued)
• Primary cause for poor software quality
– Developers do not know how to design quality into
software
– Or do not take the time to do so
• Developers must
– Define and follow a set of rigorous engineering
principles
– Learn from past mistakes
– Understand the environment in which systems
operate
– Design systems relatively immune to human error

Ethics in Information Technology, Second Edition 8


Strategies to Engineer Quality
Software (continued)
• Programmers make mistakes in turning design
specifications into code
– About one defect for every 10 lines of code
• Pressure to reduce time-to-market
• First release
– Organizations avoid buying the first release
– Or prohibit its use in critical systems
– Usually has many defects

Ethics in Information Technology, Second Edition 9


The Importance of Software Quality
• Business information systems are a set of
interrelated components
– Including
• Hardware
• Software
• Databases
• Networks
• People
• Procedures

Ethics in Information Technology, Second Edition 10


The Importance of Software Quality
(continued)
• Business information system examples
– Order-processing system
– Electronic-funds transfer system
– Airline’s online ticket reservation system
• Decision support system (DSS)
– Used to improve decision making
• Software for industrial use
• Software controls the operation of many industrial
and consumer products

Ethics in Information Technology, Second Edition 11


The Importance of Software Quality
(continued)
• Mismanaged software can be fatal to a business
• Ethical questions
– How much effort and money to invest to ensure
high-quality software
– Whether products could cause damage
• Legal exposure if they did

Ethics in Information Technology, Second Edition 12


Legal Overview: Software Product
Liability
• Product liability
– Liability of manufacturers, sellers, lessors, and
others for injuries caused by defective products
– There is no federal product liability law
• Mainly state law
• Article 2 of the Uniform Commercial Code
• Strict liability
– Defendant held responsible for the injury
– Regardless of negligence or intent

Ethics in Information Technology, Second Edition 13


Legal Overview: Software Product
Liability (continued)
• Strict liability
– Plaintiff must prove only that the software product is
defective or unreasonably dangerous and that the
defect caused the injury
– No requirement to prove that the manufacturer was
careless or negligent
• Or to prove who caused the defect
– All parties in the chain of distribution are liable

Ethics in Information Technology, Second Edition 14


Legal Overview: Software Product
Liability (continued)
• Legal defenses used against strict liability
– Doctrine of supervening event
– Government contractor defense
– Expired statute of limitations
• Negligence
– A supplier is not held responsible for every product
defect that causes a customer or third-party loss
– Responsibility is limited to defects that could have
been detected and corrected through “reasonable”
software development practices

Ethics in Information Technology, Second Edition 15

You might also like