How can software be unsafe? I suppose if you had a truckload of CDs it could crush somebody, but seriously - unsafe software?
This talk explains why software is a significant factor in product safety and how safety considerations may result in modifying the way we develop software. Software safety becomes a matter of concern when the software can cause unsafe conditions, regardless of whether or not the software itself does direct harm. For example, an air traffic controller receiving wrong information due to defective software might easily direct airplanes into unsafe positions.
Software errors are the most obvious culprits in software safety but what about intentional sabotage such as with viruses, trojan horses, and other "malware"? The situation is more difficult when software incorporates "free and open source" or "commercial, off-the-shelf" components. As modern methods of software development focus on productivity and speed, factors that would improve safety tend to be swept aside.
Regulation is another consideration when safety is concerned. Unsafe products tend to result in bureaucracies designed to protect the public They also tend to result in lawsuits. Will the day come when software developers are held legally liable for unsafe conditions created by their software?
Dr. Dennis J Frailey is one of the founding members of ASEE, a former President of ASEE, and a frequent speaker at ASEE events over the years. He’s a Principal Fellow at Raytheon Company in Plano, Texas and an Adjunct Professor of Computer Science at Southern Methodist University, where he teaches courses in software engineering management, cycle time reduction, quality engineering and computer science. He has also taught courses for UCLA Extension and the University of Texas Software Quality Institute. At Raytheon, his primary duties are to provide technical and management expertise to product development projects and to assist with strategic technical planning. He is also the master instructor for Raytheon's Software Project Management course, and an instructor and module lead in Raytheon’s Principles of Program Leadership course. In previous assignments he has worked as a computer architect, software project manager, cycle time reduction expert, head of the software engineering process group, real-time operating system developer, compiler designer, and speechwriter for company executives.
Dennis was one of the original faculty members and developers of the SMU software engineering masters degree program. He’s a former vice president of the Association for Computing Machinery (ACM) and he’s currently vice-chair of the IEEE-Computer Society educational activities board. He has over 150 technical publications including articles in three encyclopedias, and has been a keynote speaker for almost a dozen events.
Dr. Frailey is an ACM Fellow, IEEE Senior Member, Chair of the industrial advisory committee of the Texas Board of Professional Engineers and an accreditation visitor and team chair for ABET – the Accreditation Board for Engineering and Technology. He holds an MS and PhD in computer science (Purdue) and a BS in mathematics (Notre Dame). In 2007 he received the ACM lifetime achievement award in computer science education.