lOMoARcPSD|42619323 Lesson 1 to Lesson 4 Notes Install Computer Software computer installation, maintenance and repair (Kenya Technical Trainers College) Scan to open on Studocu Studocu is not sponsored or endorsed by any college or university Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes INSTALL COMPUTER SOFTWARE NOTES Element 1: Identify software to be installed Demonstrate knowledge in: Definition of software Classification of software: System and Application Criteria for selection Operating systems Types of operating systems: Single and multi-user, Single and multitasking, Real time, Distributed, Batch Functions of operating systems: Device management, Memory management, Storage management, Process control, Security Management Types of operating system interfaces: Menu driven and Graphical user Interface Definitions: 1. Computer: can basically be defined as an electronic device that receives (raw) data, transforms (processes) that data and produces (meaningful) output as information with the capability of storing the data/information for future retrieval. 2. Hardware: The physical and tangible parts of a computer, that is, electrical, electronic and mechanical parts e.g. monitor, keyboard, mouse, etc. 3. Software: Computer software is a collection of instructions that enable the user to interact with a computer, its hardware, or perform tasks. 4. Data: can be anything like marks obtained by you in various subjects. It can also be name, age, sex, weight, height, etc. of all the students in your class or income, savings, investments, etc 5. Information: data that is processed, organized, structured or presented in a given context so as to make them useful. 6. System software manages and controls the internal operations of a computer system. It is a group of programs, which is responsible for using computer resources efficiently and effectively. For example, an operating system is system software, which controls the hardware, manages memory and multitasking functions, and acts as an interface between application programs and the computer. System software is designed to provide platform for other software. 7. Application software is the general designation of computer programs for performing tasks. Application software may be general purpose (word processing, web browsers, etc.) 1 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes 8. Software installation is the process of making hardware and/or software ready for use. Obviously, different systems require different types of installations. While certain installations are simple and straightforward and can be performed by non-professionals, others are more complex and time-consuming and may require the involvement of specialists. 1. Software - Is a set of programs, which is designed to perform a well-defined function hence tells a computer what to do or how to perform a task as well as accomplishing the specific user’s task 2. A program - Is a sequence of instructions written to solve a particular problem. 3. Installation - Refers to setting up of a computer program into the hardware (memory) hence making the program ready for execution. 4. Program execution - Execution is the process by which a computer interprets our program or performs the instructions of our program. 5. Software Acquisition – Includes processes that fund, manage, integrate, deploy and support software before, during and after their software engineering life cycle. 6. Operating Systems - This is a set of complex programs that work together to control execution of user programs called applications and acts as a go between (interfaces) between the applications of the computer hardware. 7. Human Computer Interface - Refers to the method of interaction between the computer and the user and determines how easily the user can operate the computer. 8. Security - Refers to providing a protection system to computer system resources such as CPU, memory, disk, software programs and most importantly data/information stored in the computer system. CLASSIFICATION OF COMPUTER SOFTWARE Computer software are classified using three approaches: a) Classification according to purpose/functionality b) Classification according to method of acquisition c) Classification according to end-user license A. CLASSIFICATION ACCORDING TO PURPOSE/ FUNCTIONALITY Computer software is classified according to the task they perform/functionality/purpose. i.e. software that tells the computer hardware what to do and also the software that enables the user accomplish their specific tasks. These software include: 2 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes SYSTEM SOFTWARE System software performs a variety of fundamental operations that avails computer resources to the user. These functions include: a) Booting the computer and making sure that all the hardware elements are working properly. b) Performing operations such as retrieving, loading, executing and storing application programs. c) Storing and retrieving files. d) Performing a variety of system utility functions. System software is further divided into: 1. Operating system. 2. Firmware. 3. Utility software. 4. Networking software. 1. The Operating System This is a set of complex programs that work together to control execution of user programs called applications and acts as a go between (interfaces) between the applications of the computer hardware. It manages input/output and storage operations in a computer. Examples of common operating systems are Microsoft Windows 7/8/8.1/10, UNIX, Linux, Macintosh (Mac OS) and OS/2. Therefore the operating system is the main program on the computer system. 2. Firmware Firmware, also referred to as stored logic is a combination of both the software and hardware recorded permanently on electronic chips. Usually, a firmware is a read-only memory chip that is mounted or plugged into the motherboard. Firmware may hold an operating system, utility programs, language processors etc. 3. Utility software Utility software is a special program that performs commonly used services that make certain aspects of computing to go on more smoothly. Such services include sorting, copying, file handling, disk management etc. The two basic types of utility software are: i. System-level utility software: These help the user to work with the operating system and its functions. For example, a utility software tells the user when he/she enters a wrong command and gives suggestions how the error can be corrected. 3 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes ii. Application utility software: These make the use of an application program smoother and efficient. These utility programs are commonly purchased separately or may be part of an operating system. 4. Networking software This type of software is mostly used to establish communication between two or more computers by linking them using a communication channel like cables to create a computer network. Networking software enables the exchange of data in a network as well as providing data security. Network software may come as independent software or integrated in an operating system. An example of networking software is Cisco’s iOS, Microsoft Windows Server 2003/2008/2012/2016, UNIX, Linux, Mac OS X and Novell NetWare. APPLICATION SOFTWARE Application software, also called application packages, are programs that are designed to help the user accomplish specific tasks. Examples and uses of common application packages are listed in the table below: No 1 Software Word processors Desktop publishing/Graphics Designing Computer aided design Databases Statistical Data Analysis Uses Typing documents like letters Designing publications like newspapers, books Technical drawing Examples Ms Word, Lotus, WordPro, WordStar Adobe PageMaker, Ms publisher, Corel Draw, Adobe Photoshop/Illustrator/ AutoCAD, ArchiCAD, MAYA 3D,Atlantis Keeping records and files Analyzing statistical data Ms Access, dBase Ms Excel, SPSS, Stata, Epi info 4 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes PROGRAMMING LANGUAGES/COMPUTER PROGRAMMING TOOLS Computer programming tools, such as compilers and linker, are used to translate and combine computer program source code and libraries into executable files. Examples of programming languages include Assembler language, Fortran, BASIC, COBOL, Pascal, C, C++, Visual Basic, Java, Python, C#, etc. Definition of Terms Source Code: Any program written in a high-level language is known as source code. However, computers cannot understand source code. Before it can be run, source code must first be translated into a form which a computer understands. Object Code: generally refers to the output, a compiled file, which is produced when the Source Code is compiled by a translator e.g. compiler, assembler or interpreter A translator is a program that converts source code into machine code. Generally, there are three types of translator: i) A Compiler: A compiler takes the source code as a whole and translates it into machine code all in one go. Once converted, the object code can be run unassisted at any time. Compilation: The process of translating source code into object code all in one go. The program can then be executed as a whole. ii) Interpreters: a program that translates source code into machine code one instruction at a time. It is similar to a human translator translating what a person says into another language, sentence by sentence, as they speak. The resulting machine code is then executed immediately. The process is called interpretation. iii) An Assembler: Assemblers are a type of a translator. The purpose of an assembler is to translate assembly language into machine code. CRITERIA FOR SELECTION OF COMPUTER SOFTWARE Although one may have a good computer with the best hardware, the actual real determinant of a computer’s value to the user is the software in that it can run to solve the data and information processing needs. The following factors/criteria should be considered when selecting software: a. Authenticity The term authenticity refers to genuineness, validity and or legitimacy of an item. When you acquire software from the vendor, make sure it is an original copy that is accompanied by the 5 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes developer s license and certificate of authenticity. This is because some people illegally produce pirated copies which is an offence. b. Documentation It refers to the manuals prepared by the developer having details on how to install, use and maintain the software. These include installation guides, maintenance guides and user guides. These documentations enable the user to work with the software with minimum guidance. c. User needs The needs of the user determine the type of operating system and application programs that should be considered for acquisition. For example, if the user needs to type documents most often, he/she would go for a word-processor. People with special disability will require software that recognizes other forms of input like voice and natural sound. A good example is software used in mobile phones to store voice and allow the user to make a call by just calling a name instead of keying in the number. d. Reliability and security People are more comfortable with software that offers good security to confidential and private information. Reliability refers to the guarantee that a software will perform with the same consistency over the period which the owner will be using it with minimal or completely no errors. e. User friendliness This is a measure of how easily the users can be able to operate the computer. Some programs are more user- friendlier than others. f. Cost The cost of software is perhaps one of the most controversial issues that must be considered carefully. One cannot just go for software because it is cheap. Many other factors may force a person to buy far much more expensive software even with cheaper alternatives available. However, it is illogical to buy expensive software if there is a reliable cheaper alternative that will meet one’s needs. g. Compatibility and System Configuration Software compatibility refers to the ability of the computer to run the software depending on the system setup. For example, some software may only run on a computer that has 4GB of RAM and above so that they will be held temporarily as they are being executed. h. Portability Portability in this aspect refers to whether a program can be copied or installed in more than one computer. 6 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes B. CLASSIFICATION BY METHOD OF ACQUISTION They include: a. Off-the-Shelf/Standard Software b. In-House Developed Programs c. Open Source/ Freeware a. OFF-THE-SHELF/STANDARD SOFTWARE These programs are developed by software engineers, packaged and then made available for purchase through a vendor, a distributor or directly from the developer. Examples of suites are Lotus Suite, Microsoft-Office, Adobe Suite, Corel WordPerfect etc. while those of single purpose are QuickBooks and Sage Line 50. The word package is sometimes used to refer to these types of software that are packaged and sold by vendors. The Advantages of Off the Shelf Software i. The initial cost of acquisition is cheaper compared to in-house developed software. They are readily available in the market. They are more reliable since they have tested and reviewed intensively. They offer a wide variety of functionality. They receive automatic and regular updates. They offer after-sales service support. They are time and cost-saving in comparison to in-house developed software. ii. iii. iv. v. vi. vii. . The Disadvantages of Off the Shelf Software i. Can be more expensive in the long-run due to licensing and subscription fees. ii. They cannot easily be customised to the owner’s needs. iii. They have limited functionality and cannot easily be modified. iv. Some have an end-of-life support. v. May attract extra costs for the upgrades. vi. May offer unnecessary features and functionalities. vii. May have integration issues. 7 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes b. IN-HOUSE DEVELOPED PROGRAMS These are programs that are uniquely designed and tailored to meet a particular user’s needs. For example, a bank may decide to manage its banking operations using a unique program developed by hired programmers. These programs are not available in the shops and once developed for one company or user may not address the needs of other users. Advantages of In-House Developed Programs i. They are easily customisable to the customer’s needs. ii. They offer services and functionalities that precisely fit the owner’s needs. iii. Disadvantages of In-House Developed Programs iv. They are costly to develop and implement. v. They are prone to bugs and errors. vi. They require special training for their proper use. vii. They may not be compatible with other off-the-shelf software. FACTORS TO CONSIDER WHEN PURCHASING SOFTWARE When purchasing computer software, there are several factors to consider to ensure you make the right choice. Here are some key factors to keep in mind: 1. Compatibility: Check if the software is compatible with your operating system and hardware specifications. Ensure that your computer meets the minimum requirements for the software to run smoothly. 2. Purpose: Determine the specific purpose or task you need the software for. Consider whether the software provides the features and functionalities required to fulfill your needs. 3. User Interface: Evaluate the software's user interface. It should be intuitive and userfriendly, allowing you to navigate and use the software efficiently. 4. Support and Updates: Look for software that offers reliable customer support and regular updates. This ensures that you can seek assistance if you encounter any issues and that the software remains up-to-date with the latest features and security patches. 5. Cost: Consider the software's cost and your budget. Compare prices from different vendors and assess whether the software provides value for money based on its features and benefits. 6. Reviews and Ratings: Read reviews and ratings from other users to get an idea of their experiences with the software. This can help you gauge the software's reliability, performance, and user satisfaction. 7. Trial or Demo Version: Whenever possible, try out a trial or demo version of the software before making a purchase. This allows you to test its functionality and determine if it meets your requirements. 8. Security: Ensure that the software has robust security measures in place to protect your data and privacy. Look for features such as encryption, authentication, and regular security updates. By considering these factors, you can make an informed decision when purchasing computer software that best suits your needs and requirements. 8 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes c. OPEN SOURCE/FREEWARE A software for which the original source code is made freely available and may be redistributed and modified according to the requirement of the user. It is free to download. Read more on open-source software by following this link: https://en.wikipedia.org/wiki/Software_categories Advantages of Open Source/Freeware i. Cheaper than commercially marketed products. ii. Created by skillful and talented people. iii. Highly reliable. iv. Help you become more flexible. Disadvantage of Open Source/Freeware i. Vulnerable to malicious users. ii. Might not be as user-friendly as commercial versions. iii. Don’t come with extensive support. FACTORS TO CONSIDER WHEN SELECTING THE RIGHT OPEN SOURCE SOFTWARE As much as Open Source Software can be better for you in many ways, you should land up with the Open Source Software (OSS) that is right for you. There are several OSS available out there, and in order to choose the right OSS for your needs, you should first know the main factors that help to decide which OSS is best suited for your business and purposes. Of course, cost plays an important role in the decision, and there are quite a few frameworks that can help with the comparison between different Open Source Software. In this article, I have listed a few of such factors, which I consider out of my experience, as the main factors that will help you with the decision. They are: 1. Reliability: This is obviously an important factor to consider. Being an OSS, the primary attribute that it should have is reliability. If the product is built on a reliable OSS, half the river is crossed, and other issues that will arise can be managed or solved with relative ease. 2. Reputation: With several Open Source Software in the market, reputation of the software is important to be considered. Word of mouth reputation goes a long way with respect to OSS, and some of the 9 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes examples of well-reputed OSS include Linux, Apache Web Server, GNU, etc. Another factor is to compare the top reputed OSS as chosen by you, with their proprietary counterparts. 3. Support (both Community-wise and commercially): Support for OSS is vital. All OSS thrives on a talented and active support community. The community decides the progress and sustenance of the OSS. If the OSS has a strong community support, there is better chance of receiving help for all issues that you might face in the future, with regards to the OSS. Check out the OSS’ support community’s mailing lists, forums, and so on, in order to determine if they are active, prompt and helpful. This will help in deciding if you want to opt for the particular OSS or not. Similarly, the commercial support for many OSS is available, and the support is diverse, originating from a diverse range of companies. From big organisations such as RedHat, IBM, etc., to local and independent companies extend commercial support to the OSS. 4. Documentation: Next, of course, to check, is the documentation available on the OSS. Usually, Open Source Software do not contain detailed documentation for the end user. However, it is a given that a good OSS has detailed documentation on its development, which includes the history of bugs, fixing of bugs, versions, upgrades, extensions, and so on. It is important that you read the documentation of the OSS thoroughly before taking a decision, so as to understand the history of it, and also the level of activity that has gone into the development of the OSS. It also gives an idea of the current state of the software, the latest updates, and how active the development process has been, and will be. 5. Versions: Check out the version of the OSS, and see how frequent and active the updates are. If bugs are fixed actively, upgrades are done periodically, etc., be sure to check out the latest and current version of the OSS. With OSS, there is also the flexibility of fixing any bugs or patches by ourselves, since the code is publicly available. Also, we need to keep in mind that version numbers do not contain much meaning when it comes to OSS. A version 1.0 of the OSS need not necessarily mean to be a production-use software. But then again, it can be a production-use software. There are no norms attached to the version numbers, and therefore checking out the proper version by reading and research alone helps determine the latest and current version. 6. Compatibility and interoperability: The more compatible the OSS is with other software, the better it is for you. Interoperability pays off in the long run, when your product needs to be extended and therefore needs to interact and work with other pieces of different software. 7. Technical resources: Of course, with the OSS you choose, you need technical resources to work with it. You/your team needs to possess the skill set required to work with the technology chosen, and if not available, you should have a plan to deploy people accordingly for the purpose. Therefore, the cost of these subfactors needs to be taken into account when deciding the right OSS. 10 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes 8. The development model: You should check out the development model adopted by the OSS development team. In some cases, there are specifications for the significant contributors to the OSS to become part of the product/project management, and so on. Such points have to be taken into consideration and assessed whether the model suits your idea of project development and management, and whether it suits your business environment as a whole. You should be able to clearly understand how contributors are placed within the model, how contributions are made, and how the development team will be inclusive with your use of the OSS. 9. License: OSS License forms an integral part of the software, and has to be thoroughly read before any use of the OSS. This is a significant step that should not be avoided or skipped, since many details given in the license of the OSS can determine and influence your decision for the use of the OSS. A good OSS contains a well-defined and detailed license, which will describe the terms and conditions for your contribution to the ongoing development of the software, your use of the software, as well as your incorporation of the software into other packages. Take help from others who are experienced with these points, in case you are not familiar with these issues. 10. Ongoing development: You should check the OSS’ ongoing development, the activities that are happening on the software, the upgrades that are proposed and going on, and the bug fixing activities that are taking place. These will help you determine if the software is being worked upon, will be kept alive and thriving or whether the software will fade out in the near future. These are the head-checking factors that I would suggest you consider before choosing the right Open Source Software for you business needs. Once this is done, much is done… and the next step towards your product development can commence. 11 Downloaded by Keitric Mendes (keitricmendes@gmail.com) lOMoARcPSD|42619323 Level 5 Install Computer Software Notes C. CLASSIFICATION BY END USER LICENSE Two common categories for software under copyright law, and therefore with licenses which grant the licensee specific rights, are proprietary software and free and open-source software (FOSS) Software licensing is a process through which a software developer offers their product to an individual or business for a fee. Licensing your software can be an effective way to access valuable tools that make a business more productive. Learning about common software licenses a company may use to release a product can help you understand your options when using licensed software. A software license is an agreement that grants a user access to software and its functions. Although daily interactions with software may be similar regardless of whether you purchase or license, there are benefits to each option of accessing software. Understanding both can help you determine whether licensing is ideal for you. Software licenses often place restrictions on how a user may work with the software, and licenses may be conditional, such as a piece of software offering basic functions for free and more advanced functions or opportunities for a licensing fee. Why are software licenses important? Software licenses are important because they protect the intellectual property of developers. Licenses also can provide developers with a clear pathway of legal recourse when users don't comply with the stipulations in licensing agreements. Software licenses aim to ensure all parties that create and use the software can benefit from it. These licenses also help define the extent to which a user can operate the software, access it and modify its source code with EULAs that establish a legal outline of a user's rights to install and use the software after purchasing it. Further Reading: Read about types of Software licenses 12 Downloaded by Keitric Mendes (keitricmendes@gmail.com)