90 likes | 112 Views
Explore the inevitability of errors in software and the factors that contribute to them. Understand the roles of computer users and professionals in preventing failures. Learn about different categories of computer errors and their potential consequences. Discover the problems individuals and organizations face due to billing errors, database inaccuracies, system failures, and safety-critical applications. Explore the importance of increasing reliability and safety through professional techniques and good practices.
E N D
What Can Go Wrong? Facts About Computer Errors • Error-free software is almost impossible. • Errors are often caused by more than one factor. • Errors can be reduced by following good procedures and professional practices.
What Can Go Wrong? The Roles of People in Computer-related Problems: Computer User • At home or work, users should understand the limitations of computers and the need for proper training and responsible use. Computer Professional • Understand the source and consequences of computer failures
What Can Go Wrong? Categories of Computer Errors and Failures Problems for Individuals: • usually in their role as consumers. System Failures: • affecting large numbers of people and/or costing large amounts of money. Safety-Critical Applications: • where people may be injured or killed.
What Can Go Wrong? Problems for Individuals Billing Errors • Lack of tests for inconsistencies and inappropriate amounts. Database Accuracy Problems • Incorrect information resulting in wrongful treatment or acts.
What Can Go Wrong? System Failures Communications: • Telephone, online, and broadcast services. Business: • Inventory and management software. Financial: • Stock exchange, brokerages, banks, etc.. Transportation: • Reservations, ticketing, and baggage handling.
What Can Go Wrong? Safety-Critical Applications Military Power Plants Aircraft Trains Automated Factories Medicine …others.
Increasing Reliability and Safety What Goes Wrong? Computer Systems Fail Because: • The job they are doing is inherently difficult, and • The job is done poorly. Compounding the Reliability Issue: • Developers and users exhibit overconfidence in the system. • Reused system software may not work in different environments.
Increasing Reliability and Safety Professional Techniques • Follow good software practices. • Exhibit professional responsibility at all levels of development and use. • Construct well-designed user interfaces. • Take human factors into account. • Incorporate self-checking where appropriate. • Follow good testing principals and techniques.