Introduction
The increasing reliance on the internet and technology by the people to do virtually everything has prompted the need to protect the users. This fact implies that society continues to depend on software to effectively do functions that can only be accomplished by the use of machines. It is logical to assert that the use of software has to be monitored by the right parties to ensure that they give the best services and to avoid exploiting them, hence the motive for software assurance. A general definition of software assurance is the confidence that software is free from vulnerabilities, which could be intentionally tailored into it or accidentally inserted into it during its functionality, and that the software does the intended function. This study intends to unravel the history and the importance of software assurance. According to study, software assurance emanated from Saltzer and Schroeder's paper named "The protection of Information in Computer System" (O'Hanley & Tiller, 2014). Software assurance ensures that the processes and products used in the production and sustainability of the software conform to all the requirements governing software.
The History of Software Assurance
Protection of information is hugely based on the tenets provided in the work of Saltzer and Schroeder. In their work, the authors defined security as the techniques of control used to modify the computer or the information therein (Ahad, 2017). Also, the authors mentioned three areas of concern with information: confidentiality, integrity, and availability. To understand software assurance thoroughly, one has to understand the history of software. Also, it is of paramount importance to keep in mind that programmers must meet some threshold marks to make the user happy. Such threshold marks include debugging, configuration and user-friendliness (Ahad, 2017). Software devoid of these three main characteristics will be deemed unfit for the user to adopt and it may cause a bone of contention. Also, it is worth noting that programmers used to operate in small teams early on, and there was a proposition advocated by Fred Brooks that programming is easiest in small, finite projects when enough testing can be done before they are released for consumption by the public.
During the initial periods of computing when programming languages such as C did not exist and when there were no thorough quality checks of the software, the designed software could only run in specific environments (O'Hanley & Tiller, 2014). As such, configuration testing was less important at the time and there was no need for quality assurance. However, the recent era of programming and a massive improvement of hardware have enabled programmers to write in different languages and enhance the need for software assurance. By 1990s, there were different PCs and the hardware varied widely (O'Hanley & Tiller, 2014). However, there was increasing pressure on the part of programmers to release software that could work well in any type of computer. Also, there was increased pressure for frequent software releases, updating of the previous versions and the continued prominence of the internet meant that programmers had to up their game (Yu, 2017). These changes in the technology sector raised the stakes for software assurance.
Reasons for Software Assurance
The main reason for software assurance is to make sure that the products, procedures, and processes that are used in the production and the sustainability of software are in line with all the requirements and standards put forth to govern them (Rinsaka & Dohi, 2014). As already pointed out in the study, the continued advancement in technology implies that there is greater use of software in the society, which in turn increases its susceptibility as well. Such vulnerability to attacks and other cybersecurity concerns increases the need for software assurance by programmers (Rinsaka & Dohi, 2014). Also, software assurance is meant to ensure that the security of the software-intensive systems produced. Ideally, software assurance was meant to ensure the safety of information on the part of users, and takes care of concerns such as confidentiality, integrity, and availability.
Importance of Software Assurance
Many businesses across the globe today rely heavily on technology for their operations. Apart from businesses, national defense systems, national banks, healthcare, and even telecommunications and aviation depend on software (Talib, 2015). As such, it would be disastrous if any of these sectors and many others experienced a failure or depended on a faulty software-intensive system. Software assurance helps a business protect its investment by future-proofing the system and provision of the latest technology (Talib, 2015). Software assurance helps a company keep their systems up-to-date and stay competitive in the market. Also, software assurance helps a business stay safe, through accessing the latest security patches available. A business would encounter massive loses if they lost their most valuable information on even relied on a system that malfunctions. Software assurance also helps to foster business continuity, as well as enhancing communication across various departments within the organization (Wong & Ma, 2013). Business continuity is bolstered by software assurance through continuous innovations which provide a variety of business enhancements like increased productivity, time and cost-saving, among others.
Software Assurance also enables a user to migrate from an earlier edition to a higher-level one, which brings better performance and user-friendliness at a lower price. Also, software assurance provides innovation and latest technologies available such as virtualization, policy control recovery tools and diagnostics (Wong & Ma, 2013). Further, software assurance helps to save money and time. For instance, if bugs are detected early on during development, then fixing them would be cheaper than when found when the software has been put into the public domain. The presence of software assurance implies that the products are reliable, secure and user-friendly (Yu, 2017). These virtues make such software stable and competitive in the market as well.
Conclusion
Software assurance ensures that software is free from vulnerabilities, which could be intentionally tailored into it or accidentally inserted into it during its functionality, and that the software does the intended function. The increasing reliance of the internet and technology-related functions continues to rise in the society, especially in the corporate and academic fronts. Businesses have turned to software for their operations to increase efficiency and quality of products. These and many more reasons have increased the need for software, also implying that users are more susceptible to sub-standard and faulty software products and exploitation. The main reason for software assurance is to ensure that users are well protected from such malicious practices by the developers and ensure that such products are of the highest quality possible. Software assurance ensures the safety of information on the part of users and takes care of concerns such as confidentiality, integrity, and availability. Therefore, software assurance mainly ensures that the processes and products used in the production and sustainability of the software conform to all the requirements governing software.
References
Ahad, A. (2017). Software inspections and their role in software quality assurance. American Journal Of Software Engineering And Applications, 6(4), 105. doi: 10.11648/j.ajsea.20170604.11
O'Hanley, R., & Tiller, J. (2014). Information security management handbook. Boca Raton [Fla.]: CRC Press.
Rinsaka, K., & Dohi, T. (2014). Toward high assurance software systems with adaptive fault management. Software Quality Journal, 24(1), 65-85. doi: 10.1007/s11219-014-9264-0
Talib, A. (2015). Ensuring security, confidentiality and fine-grained data access control of cloud data storage implementation environment. Journal Of Information Security, 06(02), 118-130. doi: 10.4236/jis.2015.62013
Wong, W., & Ma, T. (2013). Emerging technologies for information systems, computing, and management. New York, NY: Springer New York.
Yu, Y. (2017). Introduction: Special issue on computational intelligence methods for big data and information analytics. Big Data & Information Analytics, 2(1), i-ii. doi: 10.3934/bdia.201701i
Cite this page
Software Assurance: Protecting Users From Exploitation - Research Paper. (2023, Feb 16). Retrieved from https://proessays.net/essays/software-assurance-protecting-users-from-exploitation-research-paper
If you are the original author of this essay and no longer wish to have it published on the ProEssays website, please click below to request its removal:
- Internet and Its Effect on Privacy Essay
- Electronic Health System Records Paper Example
- The Loss of Privacy in the Internet Era: Is the Government Sleeping On Their Duty Paper Example
- Research Paper on Ethics and Cybersecurity Awareness
- Essay on Rising Energy Demand in 2030: Asia & Latin America Lead the Way
- Get Acquainted with Data Set: 5 Visualization Tips
- Essay Example on Rising Cost of Healthcare: The Need for Innovative Solutions