CHAPTER ONE
Introduction to Computing and the History of Computing
CHAPTER ONE
Introduction to Computing and the History of Computing
1.1 Meaning of Computing
Computing is the systematic use of computational processes, computer systems, algorithms, data and digital technologies to represent information, solve problems, automate tasks, support communication and create useful products or services. It is broader than merely operating a computer because it includes the principles, methods and technologies involved in designing, building, programming and using computing systems.
Computing is the study and practice of using computational systems and processes to acquire, represent, process, store, communicate and apply information.
When a student prepares a spreadsheet, a programmer develops a mobile application, a bank processes electronic transactions, a hospital manages digital patient records, or a research laboratory analyses scientific data, each activity involves computing.
Computing therefore includes both theoretical and practical concerns. It deals with questions such as how information can be represented, how instructions can be expressed as algorithms, how hardware executes those instructions, how software is designed, and how digital systems interact with people and society.
Consider a university result-processing system. Student scores are entered as data, stored in a database, processed according to grading rules, converted into meaningful information such as grades and grade-point averages, and presented to students and administrators. The complete process is an example of computing.
1.2 Meaning of a Computer
A computer is an electronic programmable device that accepts data as input, processes the data according to stored instructions, produces information as output, and can store data and results for future use.
The word programmable is important. A computer can perform many different tasks because the instructions it follows can be changed. The same laptop may be used for writing documents, performing calculations, browsing the Internet, analysing data, editing photographs or running simulations simply by using different software.
A modern computer normally performs four fundamental activities: input, processing, output and storage. Communication is also an important function in modern connected systems.
When a student types a sentence into a word processor, the keyboard supplies input. The processor interprets the keystrokes and the software instructions. The text appears on the screen as output. When the document is saved, it is stored on a storage device.
1.3 Computing Science and Related Concepts
The expression computing sciences refers broadly to academic and professional disciplines concerned with computation and digital systems. These disciplines overlap in important ways but differ in emphasis.
Computer science focuses strongly on computation, algorithms, programming, data structures, software systems, artificial intelligence and theoretical foundations. Information technology focuses more on deploying and supporting computing infrastructure and services. Software engineering emphasizes systematic methods for developing reliable software. Information systems focuses on the use of computing and information within organizations.
Other closely related areas include cybersecurity, data science, computer engineering, artificial intelligence, networking and human-computer interaction.
| Area | Typical Focus |
|---|---|
| Computer Science | Algorithms, programming, computation, software, data and theoretical foundations. |
| Software Engineering | Systematic design, development, testing and maintenance of software systems. |
| Information Technology | Deployment, administration and support of computing infrastructure and services. |
| Information Systems | Use of information and technology to support organizations and decision-making. |
| Cybersecurity | Protection of systems, networks, applications and information. |
| Data Science | Extraction of knowledge and insight from data using computational and statistical methods. |
1.4 Characteristics of Computers
Computers are useful because they possess several important operational characteristics. These characteristics do not mean that computers are intelligent in the same way humans are; rather, they describe the strengths of computer systems when executing well-defined instructions.
Speed: Computers can perform enormous numbers of operations within very short periods. Activities that would take a person hours or days may be completed by a computer in seconds or less.
Accuracy: A computer can produce highly accurate results when it is supplied with correct data, correct instructions and properly functioning hardware. Errors in computer output often originate from incorrect input, poor programming, faulty assumptions or system failure rather than from spontaneous arithmetic mistakes by the computer.
Storage Capacity: Modern computer systems can store large quantities of text, images, video, audio, databases and software. Stored information can usually be retrieved quickly when needed.
Consistency: A computer can repeat the same operation many times with the same level of precision, provided the conditions and instructions remain the same.
Automation: Once properly programmed, computers can perform sequences of tasks automatically with limited human intervention.
Versatility: The same computer can perform many different classes of work depending on the software and data supplied to it.
Connectivity: Modern computers can communicate with other devices through local networks, mobile networks and the Internet. This enables information sharing, online collaboration, cloud services and distributed computing.
Computers do not independently guarantee correct results. Correctness depends on appropriate data, correct software, reliable hardware and sound procedures.
1.5 Basic Functions of a Computer
Most computer operations can be understood through a basic information-processing cycle.
| Function | Meaning | Example |
|---|---|---|
| Input | Entering data and instructions into the computer. | Typing with a keyboard or scanning a document. |
| Processing | Manipulating data according to instructions. | Calculating a student's average score. |
| Output | Presenting processed information. | Displaying a result on a monitor. |
| Storage | Keeping data, instructions and results for later use. | Saving a document on an SSD. |
| Communication | Exchanging data with other systems or devices. | Sending a file through the Internet. |
These functions are closely linked. A computer may receive input, process it, produce output, store the result and transmit that result to another system as part of one continuous operation.
1.6 Classification of Computers
Computers may be classified in several ways depending on size, processing capability, purpose and operating principle.
Classification by Purpose: A general-purpose computer is designed to perform many different tasks. Desktop computers, laptops and smartphones are examples. A special-purpose computer is designed mainly for a specific task, such as controlling an industrial machine, traffic light or household appliance.
Classification by Scale and Capability
| Type | Description |
|---|---|
| Personal Computer | Designed primarily for individual use; includes desktops and laptops. |
| Workstation | A high-performance single-user computer commonly used for technical or professional workloads. |
| Server | A computer that provides services or resources to other computers over a network. |
| Mainframe | A powerful system designed to handle very large transaction volumes and many simultaneous users. |
| Supercomputer | An extremely high-performance system used for intensive scientific, engineering and research calculations. |
| Embedded Computer | A computing system built into another device to perform dedicated control or monitoring functions. |
Mobile and Smart Computing Devices: The modern computing environment also includes smartphones, tablets, smart watches, smart televisions, vehicle control systems, smart boards and Internet-connected household devices. Many of these systems perform sophisticated computational tasks even though they do not resemble traditional desktop computers.
1.7 Early Development of Computing
The history of computing developed from humanity's need to count, record quantities, perform calculations and automate complex procedures. Long before electronic computers, people developed manual and mechanical devices to assist calculation.
Abacus: The abacus is one of the earliest known calculating aids. It uses movable beads arranged on rods or wires to represent numerical quantities. It does not perform calculations automatically; rather, it supports the user in performing arithmetic operations.
Napier's Bones: John Napier developed numbered rods in the seventeenth century to simplify multiplication and division. These devices helped reduce some calculations to more manageable operations.
Slide Rule: The slide rule used logarithmic scales to perform multiplication, division and other calculations. It became an important engineering and scientific tool before the widespread availability of electronic calculators.
1.8 Mechanical and Electromechanical Computing Devices
The development of mechanical calculating machines introduced the idea that calculation could be performed automatically through a sequence of physical operations.
Pascal's Calculator: Blaise Pascal developed a mechanical calculator in the seventeenth century capable of performing addition and subtraction using gears and wheels.
Leibniz's Stepped Reckoner: Gottfried Wilhelm Leibniz developed a mechanical calculator that extended earlier designs and could perform multiplication and division in addition to basic arithmetic.
Jacquard Loom: The Jacquard loom used punched cards to control weaving patterns. Although it was not a computer, its use of encoded instructions influenced later ideas about programmable machinery.
Charles Babbage: Charles Babbage proposed two important mechanical computing machines: the Difference Engine and the Analytical Engine. The Analytical Engine was particularly significant because its design included concepts analogous to a processor, memory, input and output.
Ada Lovelace studied Babbage's Analytical Engine and described procedures that could be carried out by the machine. Her work is frequently discussed in the history of programming because it demonstrated an early understanding that a programmable machine could manipulate symbols according to defined procedures.
Herman Hollerith: Herman Hollerith developed punched-card tabulating equipment for large-scale data processing. His systems demonstrated how information could be encoded, sorted and processed mechanically and electromechanically.
1.9 Electronic Generations of Computers
The electronic era of computing is often described in generations according to major technological developments. These generation boundaries are historical teaching conventions rather than perfectly exact divisions.
First Generation: Vacuum Tubes: Early electronic computers used vacuum tubes for switching and amplification. These machines were large, consumed substantial electrical power, generated considerable heat and required extensive maintenance.
Programming was difficult and often involved machine-level instructions or physical configuration.
Second Generation: Transistors: The transistor replaced vacuum tubes in many computer designs. Transistors were smaller, more reliable, more energy-efficient and generated less heat.
This development made computers more practical and contributed to the wider use of assembly languages and higher-level programming languages.
Third Generation: Integrated Circuits: Integrated circuits allowed many electronic components to be fabricated on a small semiconductor chip. This reduced size and cost while increasing reliability and processing capability.
Operating systems became more sophisticated, and computer use expanded in business, science and education.
Fourth Generation: Microprocessors: The microprocessor placed the major processing functions of a computer's central processing unit onto one or a small number of integrated circuits. This development enabled the rapid growth of personal computers and embedded systems.
As semiconductor technology advanced, computers became smaller, faster and less expensive while offering increasingly greater memory and storage capacity.
Contemporary Computing: Modern systems combine highly integrated processors, large memories, high-speed networks, cloud infrastructure, mobile computing and specialized processors for graphics and artificial intelligence.
Rather than being defined by one single component, current computing is characterized by interconnected systems, parallel processing, global networks, large-scale data processing and increasing integration of computation into everyday objects.
| Generation | Major Technology | General Development |
|---|---|---|
| First | Vacuum tubes | Large electronic systems with high power consumption. |
| Second | Transistors | Smaller, more reliable and more efficient systems. |
| Third | Integrated circuits | Greater integration, improved reliability and broader use. |
| Fourth | Microprocessors | Personal computing, embedded systems and widespread digital technology. |
| Contemporary Era | Highly integrated, networked and specialized computing | Mobile, cloud, intelligent and globally connected systems. |
1.10 Important Milestones in Modern Computing
The development of modern computing cannot be reduced to a single invention. It resulted from advances in electronics, programming, data storage, networking and human-computer interaction.
Stored-Program Computing: One major development was the stored-program concept, in which program instructions and data are stored in memory so that the computer can execute different programs without being physically rewired for each task.
Programming Languages: Programming languages enabled humans to express computational procedures in forms more understandable than raw machine instructions. Higher-level languages made software development more accessible and productive.
Graphical User Interfaces: Graphical user interfaces introduced windows, icons, menus, pointers and visual interaction, making computers easier for non-specialists to use.
Personal Computing: The personal computer transformed computing from a resource available mainly to governments, universities and large organizations into a widely accessible individual tool.
Computer Networking: Networking allowed computers to exchange information and share resources. Local networks later connected with larger networks, contributing to the development of today's Internet.
Mobile Computing: Portable devices such as smartphones and tablets combined computing, communication, sensing, multimedia and Internet access in compact systems.
Cloud Computing: Cloud computing allows users and organizations to access computing resources such as storage, applications and processing capacity over networks rather than relying entirely on local machines.
1.11 Evolution from Standalone Computers to Connected Digital Systems
Early computers were largely isolated systems. Users interacted directly with one machine and stored information locally. Modern computing is very different because devices increasingly operate as parts of larger interconnected environments.
A smartphone may communicate with cloud servers, location systems, wireless networks, online databases and other devices. A banking application may access remote servers that process transactions in real time. A university portal may connect students, lecturers, administrators, databases and payment systems through the Internet.
This transition has changed the meaning of a computer system. Computing is no longer limited to a single machine. Modern systems may be distributed across many devices and locations while appearing to users as one service.
When a student submits an online assignment, the student's device sends data through a network to a remote server. The server verifies the user's account, stores the file, records the submission time and later presents the work to the lecturer. Several separate computing systems cooperate to provide one service.
1.12 Computing in Contemporary Society
Computing has become embedded in education, commerce, healthcare, transportation, government, entertainment, agriculture, banking, communication and scientific research.
In education, digital learning environments provide access to course materials, online assessments and collaboration tools. In banking, computers process transactions and support electronic payments. In healthcare, computing systems help manage records, medical images and laboratory information.
In transportation, computing supports navigation, traffic management and vehicle control. In agriculture, digital systems can assist with weather information, farm management and monitoring. In communication, computers support email, messaging, video conferencing and social platforms.
These applications demonstrate that computing is both a technical discipline and an important social infrastructure. As computing becomes more influential, issues of privacy, security, accessibility, reliability and responsible use become increasingly important.
1.13 Key Terminologies
Algorithm: A finite, ordered sequence of well-defined steps for solving a problem or completing a task.
Computer: A programmable electronic device that accepts input, processes data, produces output and stores information.
Computing: The study and use of computational processes, computer systems, data and digital technologies.
Data: Raw facts, symbols or observations that can be processed to produce information.
Hardware: The physical components of a computer system.
Information: Data that has been processed or organized so that it has meaning or value to a user.
Input: Data or instructions supplied to a computing system.
Output: Information or results produced by a computing system.
Processing: The manipulation or transformation of data according to instructions.
Program: A set of instructions written so that a computer can perform a specified task.
Software: Programs, procedures and related data that direct computer hardware to perform tasks.
Storage: The retention of data, programs and information for later use.
CHAPTER TWO
Basic Components of Computers and Computing Devices
2.1 Understanding a Computer System
A computer is not a single component. It is a system made up of several interconnected parts that cooperate to accept data, process instructions, store information and communicate results.
When students first encounter a computer, they often identify only the visible parts such as the monitor, keyboard and system case. These are important, but many essential components are located inside the device.
A computer system is an organized combination of hardware, software, data and users that work together to perform computational tasks.
This chapter focuses mainly on the physical components found in computers and other computing devices. Software and humanware will be treated more fully in later chapters.
2.2 Functional Organization of a Computer
A computer can be understood functionally as a collection of units responsible for input, processing, storage, output and communication.
| Functional Unit | Main Responsibility |
|---|---|
| Input Unit | Receives data and instructions. |
| Processing Unit | Executes instructions and performs operations on data. |
| Memory Unit | Holds instructions and data required during processing. |
| Storage Unit | Retains programs and data for longer periods. |
| Output Unit | Presents processed information to users or other systems. |
| Communication Unit | Transfers data between the computer and other devices or networks. |
When a user opens a saved photograph, the storage device supplies the file, main memory temporarily holds the required data, the processor interprets instructions from the image-viewing software, and the graphics system sends the result to the display.
2.3 The System Unit
In a desktop computer, the system unit is the enclosure that contains the major internal electronic components of the computer.
Typical components inside the system unit include:
- motherboard;
- central processing unit;
- main memory;
- storage devices;
- power supply;
- cooling components;
- expansion cards;
- internal cables and connectors.
The system unit should not be confused with the central processing unit. The CPU is one component inside the computer, while the system unit is the physical enclosure containing several components.
The terms CPU and system unit are not interchangeable. The CPU is the processor; the system unit is the case containing the processor and other internal components.
2.4 The Motherboard
The motherboard is the main printed circuit board of a computer, providing physical and electrical connections through which major components communicate.
The processor, memory modules, firmware storage, expansion slots, storage interfaces and many communication controllers are connected directly or indirectly to the motherboard.
Modern motherboards also contain pathways called buses, which carry data, addresses and control signals between components.
Major Motherboard Functions
- providing sockets and connectors for components;
- allowing data transfer among processor, memory and peripherals;
- distributing electrical power to connected components;
- supporting communication with storage and expansion devices;
- holding firmware used during system startup.
2.5 Central Processing Unit
The central processing unit, or CPU, is the principal processing component that interprets and executes program instructions and coordinates many activities of the computer.
The CPU is often called the processor. It repeatedly performs a sequence commonly described as the fetch-decode-execute cycle.
Fetch: The processor retrieves the next instruction from memory.
Decode: The control circuitry interprets the instruction and determines the required operation.
Execute: The processor carries out the operation, which may involve arithmetic, comparison, data movement or communication with another component.
Store: The result may be retained temporarily in a register, written to memory or transferred elsewhere.
If a program requests the addition of two numbers, the CPU retrieves the relevant instruction and data, determines that an addition operation is required, performs the calculation and places the result in an appropriate storage location.
2.6 Arithmetic and Logic Unit
The arithmetic and logic unit, or ALU, is the part of the processor that performs arithmetic operations and logical comparisons.
Typical arithmetic operations include addition and subtraction, while logical operations include comparisons such as equal to, greater than and less than, together with Boolean operations such as AND, OR and NOT.
The ALU works closely with processor registers, which provide fast temporary storage for values being processed.
2.7 Control Unit
The control unit is the part of the processor that directs and coordinates the execution of instructions by generating control signals for other components.
The control unit does not normally perform arithmetic calculations itself. Instead, it determines what operation should occur, when data should be moved, and which components should respond.
For example, when an instruction requires data to be read from memory and processed by the ALU, the control unit coordinates the required sequence.
2.8 Registers and Cache Memory
Registers: Registers are very small, very fast storage locations within the processor. They hold instructions, addresses, operands and intermediate results currently being used by the CPU.
Different processors provide different sets of registers, but common roles include holding the current instruction, keeping track of the address of the next instruction and storing data for immediate operations.
Cache Memory
Cache memory is a small, high-speed memory located in or close to the processor that stores frequently or recently used instructions and data.
Cache reduces the time the CPU spends waiting for data from slower main memory. Modern processors commonly contain several cache levels, often referred to as L1, L2 and L3 cache.
| Storage Type | Typical Location | Relative Speed | Typical Capacity |
|---|---|---|---|
| Registers | Inside CPU | Fastest | Very small |
| Cache | Inside or very close to CPU | Very fast | Small |
| RAM | Main system memory | Fast | Much larger |
| Secondary Storage | SSD, HDD or other device | Slower | Very large |
2.9 Primary Memory
Primary memory refers to memory that can be accessed directly or very rapidly by the processor and is used during system operation.
The most important forms introduced at this level are RAM and ROM-related memory.
Primary memory is different from long-term storage. A computer may have several gigabytes of RAM but hundreds of gigabytes or several terabytes of secondary storage.
2.10 Random Access Memory
Random access memory, or RAM, is volatile main memory used to hold programs and data that are currently being used by the processor.
The word volatile means that the contents are generally lost when electrical power is removed.
When a user opens a word-processing application, part of the program is loaded from secondary storage into RAM. When a document is edited, its active contents are also held in memory until saved.
Increasing RAM can improve system responsiveness when the computer needs to run multiple applications or work with large datasets, provided other components are not the main performance limitation.
A computer with insufficient RAM may become slow when many applications are opened because the operating system must repeatedly move data between RAM and slower storage.
2.11 Read-Only Memory and Firmware
Read-only memory refers generally to non-volatile memory used to retain information even when power is removed. In modern computers, startup firmware is usually stored in rewritable non-volatile memory rather than in permanently fixed ROM.
Firmware is software stored in non-volatile memory that provides low-level control and startup instructions for hardware.
A computer's firmware performs important startup functions such as initializing hardware and beginning the process of loading the operating system.
Modern personal computers commonly use firmware based on UEFI technology, while older systems traditionally used BIOS.
2.12 Secondary Storage
Secondary storage is non-volatile storage used to retain programs, files and data for long-term use.
Unlike RAM, secondary storage normally retains information after power is removed.
Examples include:
- solid-state drives;
- hard disk drives;
- USB flash drives;
- memory cards;
- optical discs;
- external storage devices.
Secondary storage capacity is commonly measured in gigabytes and terabytes.
2.13 Hard Disk Drives and Solid-State Drives
Hard Disk Drive: A hard disk drive, or HDD, stores data magnetically on rotating platters. Read/write heads move across the platters to access stored information.
Hard disk drives can provide large capacities at relatively low cost, but their moving mechanical parts make them slower and more vulnerable to mechanical shock than solid-state drives.
Solid-State Drive: A solid-state drive, or SSD, stores data electronically using non-volatile flash memory and has no moving mechanical parts.
SSDs typically provide faster startup, application loading and file access. They are also quieter and generally more resistant to mechanical shock.
| Feature | HDD | SSD |
|---|---|---|
| Storage method | Magnetic rotating platters | Electronic flash memory |
| Moving parts | Yes | No |
| Typical access speed | Slower | Faster |
| Resistance to shock | Lower | Higher |
| Cost per unit storage | Often lower | Often higher |
2.14 Power Supply and Electrical Components
Computer components require electrical energy. In a desktop computer, the power supply unit converts incoming electrical power into regulated voltages required by internal components.
The power supply unit is the component that converts and distributes electrical power to the internal components of a computer.
Laptops, tablets and smartphones also use power-management circuitry and rechargeable batteries. Their power systems regulate charging, battery use and distribution of appropriate voltages to internal components.
Cooling Components: Processors and other electronic components generate heat during operation. Excessive heat can reduce performance, shorten component life or cause system instability.
Cooling systems may use heat sinks, fans, heat pipes or liquid-cooling arrangements depending on the device.
2.15 Ports, Interfaces and Expansion
Ports and interfaces allow computers to communicate with external devices and additional internal hardware.
Common external interfaces include USB, HDMI, audio connectors and network interfaces. The exact interfaces vary among devices and generations of hardware.
Desktop computers may also provide expansion slots on the motherboard. These allow specialized cards to be installed, such as dedicated graphics adapters, network adapters or other expansion devices.
An interface provides a defined means through which two devices, components or systems can communicate.
2.16 Communication Components
Modern computers depend heavily on communication hardware.
Network Interface: A network interface enables a computer to communicate over a wired or wireless network. Ethernet is widely used for wired networking, while Wi-Fi provides wireless local-network connectivity.
Bluetooth: Bluetooth provides short-range wireless communication and is commonly used for accessories such as keyboards, mice, headphones and mobile devices.
Cellular Communication: Smartphones and some tablets include cellular communication hardware that enables connection to mobile telecommunications networks.
Near-Field Communication: Some devices include near-field communication technology for very short-range interactions such as contactless payments and device pairing.
2.17 Components of Desktop and Laptop Computers
Desktop and laptop computers share many underlying components but differ in physical design and level of integration.
Desktop Computer: A desktop computer typically has a separate system unit, display, keyboard and pointing device. Its internal components are often easier to replace or upgrade.
A typical desktop may include:
- motherboard;
- CPU;
- RAM;
- SSD or HDD;
- power supply;
- graphics hardware;
- cooling system;
- network interfaces.
Laptop Computer: A laptop integrates most components into one portable enclosure. The display, keyboard, pointing device, battery, processor, memory, storage and communication hardware are built into the same unit.
Laptop components are usually designed to consume less power and produce less heat than comparable high-performance desktop components.
| Feature | Desktop | Laptop |
|---|---|---|
| Portability | Low | High |
| Battery operation | Normally no | Yes |
| Component integration | Lower | Higher |
| Upgrade flexibility | Generally higher | Generally lower |
| Built-in display and keyboard | Usually separate | Integrated |
2.18 Components of Tablets and Smartphones
Tablets and smartphones are full computing systems in highly integrated mobile forms. Their internal organization differs physically from a desktop computer but performs many of the same fundamental functions.
A modern smartphone commonly includes:
- processor cores;
- graphics-processing components;
- RAM;
- flash storage;
- touchscreen display;
- wireless communication components;
- camera systems;
- microphones and speakers;
- battery and power-management circuitry;
- motion, location and environmental sensors.
System on a Chip
A system on a chip, or SoC, is an integrated circuit that combines several major computing functions, such as processing, graphics, memory control and communication interfaces, onto a single chip.
SoCs are widely used in smartphones, tablets, embedded devices and many compact computing systems because they reduce size and power consumption.
When a smartphone user takes a photograph, the camera sensor captures light, the processor and image-processing hardware process the image, RAM temporarily holds data, flash storage saves the final file, and the display presents the photograph. Several hardware components cooperate within seconds.
2.19 Embedded and Smart Computing Devices
An embedded system is a computing system built into a larger device to perform one or more dedicated control, monitoring or processing functions.
Embedded systems are found in vehicles, washing machines, televisions, industrial equipment, medical devices, routers and many other products.
Some embedded devices are also connected to networks. When physical devices include computing, sensing and network communication, they may form part of the Internet of Things.
Smart Boards: A smart board combines a large interactive display with computing and communication functions. Depending on the model, it may operate as a touch-sensitive display connected to another computer or as an independent computing system.
Smart Televisions: Smart televisions contain processors, memory, storage and network interfaces that allow them to run applications and access Internet-based content.
Wearable Devices: Smart watches and fitness trackers contain compact processors, sensors, wireless communication systems and displays. They illustrate how computing increasingly operates within specialized everyday objects.
2.20 How Computer Components Work Together
The usefulness of a computer depends not on one component but on coordinated interaction among many components.
Consider the process of opening a document:
- the user selects the file using an input device;
- the operating system receives the request;
- the storage device retrieves the file;
- the file and required program data are loaded into RAM;
- the CPU executes the relevant program instructions;
- graphics hardware prepares the visual output;
- the monitor displays the document.
If the user then edits and saves the document, the updated information moves from active memory to secondary storage.
When a computer is switched on, the power system supplies electrical energy to the motherboard and connected components. Firmware initializes essential hardware and identifies storage devices. The system then loads the operating system from secondary storage into RAM. The CPU executes operating-system instructions, and the graphics system presents the user interface on the display. Network hardware may then establish communication with available networks.
This sequence demonstrates that the computer operates as a coordinated system rather than as a collection of independent parts.
A student should be able to identify the major visible parts of desktops, laptops, tablets and smartphones and understand that each device contains equivalent functional units for processing, memory, storage, input, output, power and communication even when the physical arrangement differs.
CHAPTER THREE
Input, Output and Peripheral Devices
3.1 Introduction to Input and Output
A computer becomes useful only when it can receive data from its environment and communicate processed results to users or other systems. The hardware responsible for these activities is broadly classified into input devices and output devices.
Input is the data, instructions or signals supplied to a computer for processing.
Output is the information, signal or result produced by a computer after processing.
A computer user may provide input by typing, touching a screen, speaking into a microphone, scanning a document or taking a photograph. Output may appear as text on a screen, sound through speakers, printed material on paper, projected images or control signals sent to another device.
Some devices perform both input and output functions. A touchscreen, for example, displays information while also detecting the user's touch.
3.2 Input Devices
An input device is a hardware component used to enter data, instructions or control signals into a computer system.
Input devices differ according to the type of data being entered. Textual input may be supplied through a keyboard, image data through a scanner or camera, sound through a microphone, and positional information through a mouse or touchscreen.
Input devices may be classified according to the kind of data they capture:
- text and numeric input;
- pointing and position input;
- image and document input;
- audio input;
- biometric input;
- sensor and environmental input.
3.3 Keyboard
The keyboard is one of the most widely used computer input devices. It allows users to enter letters, numbers, symbols and commands by pressing keys.
A standard keyboard normally contains several groups of keys.
Alphanumeric Keys: These include letters, numbers and punctuation symbols and are used mainly for entering text and numeric information.
Function Keys: Function keys, commonly labelled F1 through F12 on many keyboards, perform functions determined by the operating system or application software.
Modifier Keys: Keys such as Shift, Ctrl, Alt and similar modifier keys are used together with other keys to alter their functions or invoke commands.
Navigation Keys: Arrow keys, Home, End, Page Up and Page Down assist with movement within documents, menus and other interfaces.
Numeric Keypad: Many full-size keyboards include a separate numeric keypad for rapid entry of numerical data.
In a spreadsheet application, the user may type numbers using the keyboard, use arrow keys to move between cells and use combinations such as Ctrl + C and Ctrl + V to copy and paste data.
3.4 Pointing Devices
Pointing devices allow users to control a pointer or select graphical objects on a display.
Mouse: A mouse detects movement across a surface and translates that movement into pointer movement on the screen. Most modern mice use optical sensors.
Typical mouse operations include:
- pointing;
- clicking;
- double-clicking;
- dragging;
- scrolling.
Touchpad: A touchpad is a flat touch-sensitive pointing surface commonly built into laptop computers. Finger movement across the surface controls the pointer.
Trackball: A trackball contains a rotating ball manipulated directly by the user. It performs functions similar to a mouse but does not require the entire device to move.
Stylus: A stylus is a pen-like input device used with compatible touchscreens and graphics tablets. It may provide greater precision than finger input and, on some devices, can detect pressure or tilt.
3.5 Touchscreens and Touch Input
A touchscreen is a display that also detects touch input, allowing users to interact directly with visible objects on the screen.
Touchscreens are common in smartphones, tablets, automated teller machines, information kiosks, point-of-sale systems and interactive displays.
Common gestures include tapping, swiping, dragging, pinching and rotating. Multi-touch screens can detect more than one point of contact at the same time.
Touchscreens illustrate an important concept in computing: one device can perform both input and output functions.
3.6 Scanners and Optical Input Devices
Scanner
A scanner is an input device that converts printed text, photographs or other physical documents into digital image data.
Scanners may be flatbed, sheet-fed, handheld or integrated into multifunction printers.
Optical Character Recognition: A scanned page normally begins as an image. Optical character recognition, or OCR, is software-based processing that attempts to identify printed or handwritten characters in the image and convert them into editable text.
Optical Mark Recognition: Optical mark recognition, or OMR, detects the presence or absence of marks in predefined positions on a form. It is commonly used for objective examination sheets, surveys and questionnaires.
Barcode and QR Code Readers: Barcode readers capture encoded patterns representing numbers or other identifiers. QR codes can contain larger amounts of encoded information such as website addresses, contact information or transaction data.
| Technology | Main Purpose |
|---|---|
| Scanner | Converts physical documents or images into digital form. |
| OCR | Converts recognized characters in images into editable text. |
| OMR | Detects marks placed in predetermined positions. |
| Barcode Reader | Reads encoded product or identification patterns. |
| QR Code Reader | Reads two-dimensional encoded information. |
3.7 Cameras and Image-Capture Devices
Digital cameras convert light into digital image data using electronic image sensors. Cameras may exist as separate devices or be integrated into laptops, tablets, smartphones and security systems.
Cameras are used for:
- photography;
- video recording;
- video conferencing;
- document capture;
- facial recognition;
- machine vision;
- remote monitoring.
Webcam: A webcam is a digital camera designed mainly for capturing video and still images for direct use by a computer, especially in video communication and online meetings.
3.8 Audio Input Devices
Microphone
A microphone is an input device that converts sound waves into electrical signals that can be digitized and processed by a computer.
Microphones are used in voice calls, online meetings, audio recording, speech recognition, voice assistants and multimedia production.
Speech Recognition: Speech-recognition systems analyse digitized speech and attempt to identify spoken words or commands. This allows users to dictate text or control software by voice.
During an online lecture, a laptop camera captures video, the microphone captures speech, and the network interface transmits both to other participants. Several input and communication components operate together.
3.9 Biometric and Sensor-Based Input
Biometric input involves the capture of measurable biological or behavioural characteristics for identification, authentication or analysis.
Common biometric input technologies include:
- fingerprint recognition;
- facial recognition;
- iris recognition;
- voice recognition.
Biometric systems do not normally store a simple human-readable copy of the characteristic. Instead, they often extract measurable features and compare them with previously enrolled templates.
Sensors: Sensors capture information about physical conditions and convert it into data that a computing system can process.
Examples include:
- temperature sensors;
- light sensors;
- proximity sensors;
- accelerometers;
- gyroscopes;
- GPS receivers;
- pressure sensors.
Smartphones depend heavily on sensor input. For example, an accelerometer can detect device movement, while a proximity sensor can determine whether an object is near the screen.
3.10 Specialized Input Devices
Some input devices are designed for specialized tasks.
Graphics Tablet: A graphics tablet allows a user to draw or write with a stylus while the computer captures position, movement and, on many devices, pressure.
Joystick and Game Controller: Joysticks and game controllers provide directional and command input for games, simulations, robotics and specialized control systems.
Card Reader: Card readers capture information stored on magnetic-stripe, smart or memory cards.
RFID Reader: Radio-frequency identification readers communicate with electronic tags using radio signals. RFID systems are used in inventory management, identification and access-control applications.
3.11 Output Devices
An output device is a hardware component that presents, reproduces or communicates information produced by a computer system.
Output may take several forms:
- visual output;
- printed output;
- audio output;
- projected output;
- physical control or actuation.
The appropriate output device depends on the intended user and the purpose of the information.
3.12 Visual Display Devices
A display device presents visual information such as text, images, video and graphical interfaces.
Monitor: A monitor is a display device used mainly with desktop computers and workstations. Modern monitors commonly use flat-panel technologies such as liquid-crystal displays and related display technologies.
Screen Resolution: Screen resolution refers to the number of addressable picture elements, or pixels, used to form an image. A display described as 1920 × 1080 contains 1920 pixels horizontally and 1080 pixels vertically.
Resolution influences the amount of visual detail that can be represented, but display quality also depends on screen size, pixel density, colour reproduction and other factors.
Refresh Rate: Refresh rate describes how many times per second a display updates its image and is commonly expressed in hertz.
Mobile Displays: Smartphones and tablets integrate high-resolution displays with touch input. Their screens therefore perform both output and input functions.
3.13 Printers
A printer is an output device that produces a physical copy of digital information on paper or another printable medium.
Impact and Non-Impact Printers: Printers may be broadly classified as impact or non-impact devices. Impact printers physically strike a ribbon or printing mechanism against paper, while non-impact printers produce output without this type of mechanical striking action.
Inkjet Printer: Inkjet printers produce output by placing very small droplets of ink on paper. They are widely used for general-purpose colour and photographic printing.
Laser Printer: Laser printers use an electro-photographic process involving toner and electrostatic charge. They are widely used where fast, high-volume document printing is required.
Dot-Matrix Printer: Dot-matrix printers are impact printers that form characters and images using patterns of dots produced by striking pins against an inked ribbon.
Thermal Printer: Thermal printers use heat-sensitive printing processes and are commonly used for receipts, labels and transaction records.
| Printer Type | Typical Strength | Common Use |
|---|---|---|
| Inkjet | Good colour and image output | Home, office and photo printing |
| Laser | Fast and efficient document printing | Offices and institutional printing |
| Dot-Matrix | Can print through multi-part forms | Specialized transaction and legacy systems |
| Thermal | Fast receipt and label production | Retail and point-of-sale systems |
3.14 Plotters
A plotter is an output device designed to produce large, precise drawings, diagrams or graphics, particularly for technical and engineering applications.
Plotters have traditionally been used for architectural drawings, maps, engineering designs and computer-aided design output. Modern large-format printers now perform many functions historically associated with plotters.
3.15 Audio Output Devices
Speakers: Speakers convert electrical audio signals into audible sound. They are used for music, video, alerts, voice communication and multimedia applications.
Headphones and Earphones: Headphones provide personal audio output and are useful where sound should not disturb other people or where greater privacy is required.
Accessibility Uses: Audio output can improve accessibility. Screen-reading software, for example, can convert displayed text and interface information into synthesized speech for users who require non-visual access.
3.16 Projectors and Smartboards
Projector
A projector is an output device that displays computer-generated images or video on a large external surface such as a screen or wall.
Projectors are widely used in classrooms, conference rooms, laboratories and public presentations.
Smartboard: A smartboard is an interactive display system designed for presentation and direct user interaction. Depending on the model, it may function as an interactive display connected to a computer or contain its own integrated computing hardware.
Users may write, draw, select objects, display multimedia and interact with educational or presentation software directly on the board.
A lecturer may connect a laptop to a projector to display lecture slides. With an interactive smartboard, the lecturer may also write directly on the display, move objects, open files and save annotations.
3.17 Peripheral Devices
A peripheral device is a hardware component connected to a computer to provide input, output, storage, communication or other additional functionality.
Examples of peripherals include keyboards, mice, printers, scanners, external storage devices, webcams and projectors.
The distinction between a peripheral and an essential internal component can vary with device design. For example, a keyboard is external on a desktop computer but integrated into a laptop.
3.18 Input/Output Devices
Some devices perform both input and output functions and are therefore described as input/output devices.
Touchscreen: The screen displays visual output while detecting touch as input.
Network Interface: A network interface both sends and receives digital data.
Storage Device: A storage device receives data when information is written to it and provides data when information is read from it.
Multifunction Printer: A multifunction device may combine printing, scanning, copying and sometimes fax or network functions in one unit.
| Device | Input Function | Output Function |
|---|---|---|
| Touchscreen | Detects touch | Displays visual information |
| Network Adapter | Receives network data | Sends network data |
| Storage Drive | Provides stored data to the system | Receives data for storage |
| Multifunction Printer | Scanning | Printing |
3.19 Device Interfaces and Connectivity
Input and output devices require a means of communicating with the computer. This is achieved through physical or wireless interfaces.
USB: Universal Serial Bus, commonly known as USB, is widely used for keyboards, mice, storage devices, printers, smartphones and many other peripherals.
HDMI: HDMI is commonly used to transmit digital video and audio between computers, displays, televisions and projectors.
Bluetooth: Bluetooth provides short-range wireless communication for peripherals such as headphones, keyboards, mice and mobile devices.
Wi-Fi: Wi-Fi provides wireless network communication and is primarily used for network and Internet connectivity rather than direct peripheral control alone.
Compatibility depends on both hardware and software. A physically connected device may still require appropriate device drivers or operating-system support before it functions correctly.
3.20 Selecting Appropriate Input and Output Devices
The best input or output device depends on the task to be performed. A device should not be selected simply because it is more expensive or more modern.
Important considerations include:
- type of data;
- required speed;
- accuracy;
- volume of work;
- portability;
- accessibility;
- compatibility;
- cost;
- reliability.
A bank processing thousands of standardized marked forms may prefer an OMR-based system. A photographer requires a high-quality image-capture device. A supermarket may use barcode readers for rapid product identification, while a university classroom may require a projector or smartboard for shared visual output.
3.21 Practical Identification of Input, Output and Peripheral Devices
A student studying computing should be able to identify common devices physically and explain their functions rather than merely memorize their names.
During practical observation of a computer laboratory or office environment, a student should be able to recognize:
- keyboard and mouse;
- touchpad and touchscreen;
- scanner;
- webcam;
- microphone;
- monitor;
- printer;
- speakers;
- projector;
- smartboard;
- external storage devices;
- common wired and wireless connections.
The student should also be able to determine whether each device functions mainly as input, output, storage, communication or a combination of these.
A device should be classified according to what it actually does in the system. A touchscreen is not simply an output device because it also accepts user input. Similarly, a network interface both receives and transmits data.
CHAPTER FOUR
Computer Hardware, Software and Humanware
4.1 Components of a Complete Computer System
A useful computer environment consists of more than physical equipment. A complete computer system depends on the coordinated interaction of hardware, software, data and people.
The physical components provide the machinery. Software provides instructions. Data supplies the material to be processed, while people define goals, enter information, interpret results, maintain systems and make decisions.
A computer system is an organized combination of hardware, software, data, procedures and users that cooperate to perform information-processing tasks.
The three concepts emphasized in this chapter are hardware, software and humanware.
4.2 Computer Hardware
Computer hardware refers to the physical and electronic components of a computer system that can be seen, touched or physically installed.
Examples include the processor, motherboard, memory modules, storage devices, keyboard, monitor, printer and network interface.
Hardware by itself cannot perform useful general-purpose work without instructions. A processor may be capable of billions of operations, but it requires software to determine which operations should be performed and in what sequence.
4.3 Classification of Hardware
Hardware can be classified according to function.
| Hardware Category | Function | Examples |
|---|---|---|
| Input Hardware | Enters data and commands. | Keyboard, mouse, scanner, microphone |
| Processing Hardware | Executes instructions and manipulates data. | CPU, GPU |
| Memory Hardware | Provides high-speed working storage. | RAM, cache |
| Storage Hardware | Retains data and programs. | SSD, HDD, memory card |
| Output Hardware | Presents processed information. | Monitor, printer, speaker |
| Communication Hardware | Supports data exchange between systems. | Network interface, wireless adapter |
Some components belong to more than one functional category. A touchscreen performs both input and output functions, while a storage device both receives and supplies data.
4.4 Computer Software
Computer software is the collection of programs, instructions and related data that direct computer hardware to perform specified tasks.
Unlike hardware, software is intangible. A user cannot physically touch a word-processing program, operating system or web browser, even though these programs are stored physically as digital data on hardware.
Software is commonly classified into:
- system software;
- application software.
Other useful categories include utilities, device drivers, firmware and programming tools.
4.5 System Software
System software is software designed to operate, control and support the computer hardware and to provide a platform on which application software can run.
Important forms of system software include:
- operating systems;
- device drivers;
- utility programs;
- language translators;
- system-management software.
System software normally works closer to the hardware than application software.
4.6 Operating Systems
An operating system is system software that manages computer hardware and software resources and provides services and interfaces for users and application programs.
Examples of operating systems include Microsoft Windows, macOS, Linux distributions, Android and iOS.
Important operating-system responsibilities include:
- processor management;
- memory management;
- file management;
- device management;
- user-interface provision;
- security and access control;
- application execution;
- networking support.
When a user prints a document, the application sends a print request to the operating system. The operating system communicates with the printer through the appropriate device driver and manages the transfer of data to the printer.
4.7 Device Drivers
A device driver is software that enables an operating system to communicate correctly with a particular hardware device or class of devices.
Hardware devices may have different control mechanisms. Device drivers provide the software layer needed to translate operating-system requests into commands understood by the hardware.
Examples include drivers for:
- printers;
- graphics adapters;
- sound devices;
- network interfaces;
- scanners;
- specialized controllers.
Modern operating systems include drivers for many common devices and can often install additional drivers automatically.
4.8 Utility Software
Utility software consists of programs designed to maintain, protect, analyse or optimize a computer system.
Common utility functions include:
- file compression;
- backup;
- disk management;
- malware detection;
- system monitoring;
- file recovery;
- storage cleanup.
Utilities may be built into an operating system or supplied separately.
4.9 Language Translators
Computer processors execute machine instructions represented in low-level binary form. Human programmers usually write programs using more understandable programming languages. Translation software converts program source code into forms that can ultimately be executed by the computer.
Compiler
A compiler is a translator that converts source code written in a programming language into another form, commonly machine code or an intermediate representation, before execution.
Interpreter
An interpreter executes or translates program instructions through an execution environment rather than relying solely on a separately produced native executable file.
Assembler
An assembler translates assembly-language instructions into machine-code instructions.
Modern programming-language implementations are diverse. Some systems compile directly to machine code, some use intermediate representations, and others combine compilation and interpretation. The essential idea is that source instructions must ultimately be transformed into operations the computing platform can execute.
4.10 Application Software
Application software consists of programs designed to help users perform specific tasks or solve particular problems.
Examples include:
- word processors;
- spreadsheet programs;
- presentation software;
- web browsers;
- graphics software;
- database applications;
- accounting systems;
- educational software;
- communication applications.
Application software normally depends on the operating system and underlying hardware resources in order to run.
4.11 General-Purpose Application Software
General-purpose applications are designed to perform tasks useful across many occupations and disciplines.
Word Processing Software: Word processors are used to create, edit, format, save and print text-based documents. Common functions include paragraph formatting, spell checking, tables, images, headers and document layout.
Spreadsheet Software: Spreadsheet software organizes data into rows and columns and supports calculations, formulas, functions, charts and data analysis.
Presentation Software: Presentation software is used to create sequences of visual slides containing text, images, diagrams, charts, audio or video.
Graphics Software: Graphics applications are used to create, edit or manipulate images, illustrations and designs.
Database Software: Database applications help users store, organize, retrieve and manage structured collections of data.
| Application Type | Typical Purpose |
|---|---|
| Word Processor | Creating and formatting documents |
| Spreadsheet | Calculation, tabular data and analysis |
| Presentation Software | Creating visual slide presentations |
| Graphics Software | Creating or editing visual content |
| Database Software | Organizing and retrieving structured data |
4.12 Special-Purpose and Customized Software
Special-purpose software is designed mainly to perform a particular function or a narrow group of related tasks.
Examples include:
- payroll systems;
- hospital-management systems;
- school-management systems;
- airline-reservation systems;
- banking applications;
- laboratory-control software.
Customized Software: Customized or bespoke software is developed specifically for the requirements of a particular organization or user.
For example, a university may commission a portal that supports its own admission procedures, course registration, result processing and student records.
Packaged Software: Packaged software is developed for a broad market rather than one particular organization. Word processors and standard accounting packages are examples.
| Feature | Packaged Software | Customized Software |
|---|---|---|
| Target Users | Many users or organizations | Specific user or organization |
| Development Cost per User | Usually lower | Usually higher |
| Fit to Special Requirements | May require compromise | Can be designed to match requirements closely |
| Availability | Usually immediate | Requires development time |
4.13 Firmware
Firmware is software stored in non-volatile memory that provides low-level control or startup functions for hardware.
Firmware exists in computers, routers, printers, smartphones, storage devices, televisions and many embedded systems.
It occupies an important position between hardware and higher-level software. Firmware directly controls hardware behaviour while often providing services used by the operating system or other software.
Firmware may sometimes be updated to correct defects, improve compatibility or add capabilities.
4.14 Humanware
Humanware refers to the people who develop, operate, manage, maintain or use computer systems.
Although the term is less standardized than hardware and software, it is useful in introductory computing because it emphasizes that computer systems depend on human knowledge, decisions and actions.
Humanware includes:
- end users;
- programmers;
- system administrators;
- database administrators;
- network engineers;
- computer technicians;
- systems analysts;
- cybersecurity professionals;
- IT managers.
4.15 Categories of Computer Users
Computer users differ according to their technical knowledge, responsibilities and interaction with computing systems.
End Users: End users operate applications to perform tasks such as preparing documents, communicating, entering records or analysing information.
Power Users: Power users possess advanced knowledge of particular applications or computing environments and may perform complex configurations, analysis or specialized operations.
Technical Users: Technical users install, configure, maintain or troubleshoot systems. Examples include support technicians and administrators.
Developers: Developers design and create software systems. Their work may involve programming, testing, debugging and maintaining applications.
4.16 Computing Professionals
The computing profession contains many specialized roles. Their responsibilities may overlap, especially in small organizations, but each role has a different emphasis.
| Professional Role | Typical Responsibility |
|---|---|
| Software Developer | Designs, writes, tests and maintains software applications. |
| Systems Analyst | Studies organizational needs and designs or recommends information-system solutions. |
| Database Administrator | Manages database availability, security, integrity and performance. |
| Network Administrator | Configures and maintains computer networks and related services. |
| Cybersecurity Analyst | Protects systems, networks and data from security threats. |
| IT Support Specialist | Assists users and resolves hardware, software and connectivity problems. |
| Data Analyst | Examines data to identify patterns, trends and useful information. |
| Systems Administrator | Maintains servers, operating systems, user accounts and computing services. |
4.17 Relationship Among Hardware, Software and Humanware
Hardware, software and humanware are interdependent. None of them alone constitutes a useful general-purpose computing environment.
Hardware provides the physical resources. Software defines the operations to be performed. Humanware defines objectives, provides data, interprets results and manages the system.
Consider a university registration portal. Servers and networking devices are hardware. The portal application, operating system and database software are software. Students, administrators, developers and support staff represent humanware. Registration data provides the information being processed. The service works only when these elements operate together.
| Component | Main Contribution |
|---|---|
| Hardware | Provides physical processing, storage, input, output and communication resources. |
| Software | Provides instructions and logical procedures. |
| Humanware | Provides goals, decisions, expertise, operation and interpretation. |
| Data | Provides the facts and values to be processed. |
4.18 Data as a Computer-System Resource
Data is not hardware, software or humanware, but it is a major resource within every information-processing system.
Data consists of raw facts, values, measurements, symbols or observations that can be stored and processed by a computer.
When data is processed and placed in a meaningful context, it becomes information.
The values 67, 82, 74 and 91 may be raw scores. When they are associated with student names and subjects, averaged and converted into grades, they become meaningful academic information.
Because software operates on data, the quality of computer output depends strongly on the quality of the data supplied.
4.19 Software Licensing and Distribution
Software is distributed under legal conditions that determine how it may be installed, used, copied, modified or shared. These conditions are expressed through software licences.
A software licence is a legal agreement or permission that defines the conditions under which software may be used, distributed or modified.
Software distribution models include:
- commercial software;
- subscription software;
- freeware;
- open-source software;
- trial or evaluation software.
The fact that software can be downloaded without payment does not automatically mean that users are free to modify or redistribute it.
4.20 Open-Source and Proprietary Software
Open-source software is software whose source code is made available under a licence that permits specified forms of inspection, modification and redistribution.
Proprietary software is software whose owner retains substantial control over its source code, modification, distribution and conditions of use.
| Feature | Open-Source Software | Proprietary Software |
|---|---|---|
| Source Code | Available under the terms of the applicable open-source licence | Usually not publicly available |
| Modification | Permitted according to licence terms | Usually restricted |
| Distribution | Permitted according to licence terms | Controlled by owner or licence |
| Cost | May be free or commercially supported | May be purchased, subscribed to or licensed under other commercial arrangements |
Open-source does not necessarily mean zero cost, and proprietary does not necessarily mean that payment is always required. The defining difference concerns licensing rights and access to source code, not simply price.
4.21 Software Installation, Updating and Maintenance
Software often requires installation before it can be used. Installation places required program files, settings and supporting components on the device.
Software updates may:
- correct defects;
- improve security;
- add features;
- improve compatibility;
- enhance performance.
Operating systems and major applications should normally be maintained according to supported update procedures. Untrusted software sources may introduce malware, instability or unauthorized modifications.
Uninstallation: When software is no longer required, it should generally be removed using the operating system's proper uninstall mechanism rather than simply deleting random program files.
Compatibility: Before software is installed, users should consider whether it is compatible with the operating system, processor architecture, memory, storage and other required hardware or software components.
4.22 Choosing Hardware and Software for a Task
A well-designed computing solution matches hardware and software to the requirements of the task. The most powerful hardware is not always necessary, and the most feature-rich software is not always the best choice.
Important factors include:
- purpose of the system;
- expected number of users;
- performance requirements;
- storage requirements;
- mobility;
- network requirements;
- security;
- software compatibility;
- cost;
- maintenance and support.
A student who mainly writes assignments, attends online classes and browses academic resources may not require the same hardware as a professional video editor. The video editor may need a more powerful processor, greater memory, faster storage, dedicated graphics hardware and specialized editing software.
A school computer laboratory may require reliable desktop computers, networking equipment, office-productivity software, web browsers, security software and user-management tools. A field researcher may instead require lightweight laptops or tablets, mobile connectivity, long battery life and specialized data-collection software.
Hardware provides the physical capability, software provides the instructions, and humanware provides purpose, control and interpretation. A successful computer system depends on the effective interaction of all three.
CHAPTER FIVE
Operating Systems and Computing Platforms
5.1 Introduction to Operating Systems
When a computer is switched on, the user does not normally communicate directly with the processor, memory, storage drive or other hardware components. Instead, a major layer of software coordinates these resources and provides an environment in which applications can operate. This software is the operating system.
An operating system is system software that manages the hardware and software resources of a computing device and provides services and interfaces through which users and application programs interact with the system.
The operating system occupies a central position in a computer system. It manages hardware resources below it while supporting application programs and user interaction above it.
When a student opens a word processor, types a document and saves it, the word processor does not independently control the keyboard, memory and storage device. It relies on services provided by the operating system to receive keyboard input, allocate memory, display information and store the document.
5.2 Why a Computer Needs an Operating System
A modern computer contains many hardware resources that may be required by several programs at the same time. Without an operating system, every application would need to know how to control each hardware component directly and how to coordinate its activities with other applications.
The operating system solves this problem by providing a controlled environment between applications and hardware.
It performs several essential roles:
- allocating processor time;
- managing main memory;
- organizing files and storage;
- controlling input and output devices;
- providing a user interface;
- managing user accounts and permissions;
- supporting application execution;
- providing networking services;
- monitoring and responding to system errors.
The operating system therefore acts both as a resource manager and as a service provider.
5.3 Major Functions of an Operating System
| Function | Explanation |
|---|---|
| Processor Management | Coordinates the use of processor time among programs and processes. |
| Memory Management | Allocates and protects main memory used by running programs. |
| File Management | Organizes, stores, retrieves and protects files and folders. |
| Device Management | Coordinates communication with input, output and storage devices. |
| User Interface | Provides mechanisms through which users interact with the computer. |
| Security | Controls authentication, permissions and access to resources. |
| Networking | Provides services for communication with other devices and networks. |
| Application Support | Provides services required by application programs. |
5.4 Process and Processor Management
A program stored on a disk is essentially a collection of instructions and associated data. When that program is loaded and begins execution, it becomes a process.
A process is an instance of a program that is currently being executed, together with the resources and execution information associated with it.
A user may apparently run a browser, music player, word processor and file manager simultaneously. The operating system coordinates these activities and allocates processor time to the processes that require it.
Multitasking: Multitasking is the ability of an operating system to manage the execution of multiple processes during the same period. The processor may switch rapidly among tasks, while multi-core processors may also execute multiple instruction streams concurrently.
A student may download a file while typing an assignment and listening to recorded audio. The operating system coordinates the processes involved and allocates processor, memory, storage and network resources appropriately.
5.5 Memory Management
Programs require main memory while they are running. Since RAM has limited capacity, the operating system must determine how memory is allocated and protected.
Memory management includes:
- keeping track of memory use;
- allocating memory to processes;
- reclaiming memory when processes finish;
- protecting one process from improperly accessing another process's memory;
- supporting virtual-memory mechanisms.
Virtual Memory
Virtual memory is a memory-management technique that gives processes a logical address space and allows the operating system to use secondary storage as part of its strategy for managing data that cannot all remain in physical RAM.
Virtual memory enables systems to run workloads whose combined memory requirements may exceed immediately available physical RAM. However, excessive movement of data between RAM and storage can reduce performance because secondary storage is slower than RAM.
5.6 File and Storage Management
Users need an orderly method for storing and retrieving documents, images, programs and other digital information. The operating system provides this through a file system.
A file system is the method and data structure used by an operating system to organize, name, store, locate and manage files on a storage device.
The operating system typically provides operations for:
- creating files;
- opening and closing files;
- reading and writing data;
- copying and moving files;
- renaming files;
- deleting files;
- creating and organizing folders;
- controlling file permissions.
5.7 Device Management
Computers interact with many devices, including keyboards, printers, storage drives, cameras and network adapters. The operating system manages communication with these devices.
Device drivers provide the software interface through which the operating system controls particular hardware.
When a user chooses the Print command, the application passes the print request to the operating system. The operating system uses the printer driver and its printing services to prepare and send the information to the printer.
5.8 User Interfaces
A user interface is the means through which a user communicates with and controls a computing system.
Two important interface styles are graphical user interfaces and command-line interfaces.
Graphical User Interface: A graphical user interface, or GUI, allows interaction through visual elements such as windows, icons, menus, buttons and pointers.
Desktop and mobile operating systems use graphical interfaces extensively because they allow many tasks to be performed through direct visual interaction.
Command-Line Interface: A command-line interface, or CLI, allows users to enter textual commands. It is especially useful for system administration, software development, automation and tasks that can be expressed efficiently as commands.
| Feature | GUI | CLI |
|---|---|---|
| Primary Interaction | Windows, icons, menus and graphical controls | Typed commands |
| Ease for Beginners | Generally easier to discover visually | Requires knowledge of commands |
| Automation | Possible but often less direct | Well suited to scripts and repeated commands |
| Typical Use | General desktop and mobile interaction | Administration, development and automation |
5.9 User and Security Management
Modern operating systems allow different users to have separate accounts, files, preferences and permissions.
Authentication: Authentication is the process of verifying the identity of a user or system. Passwords, PINs, security keys and biometric methods may be used for authentication.
Authorization: Authorization determines what an authenticated user is permitted to access or perform.
Authentication answers the question, "Who are you?" Authorization answers, "What are you allowed to do?" The two concepts are related but not identical.
Operating systems also provide mechanisms such as file permissions, application privileges, encryption support, firewalls and security updates.
5.10 Types of Operating Systems
Operating systems can be classified according to the environment and functions they support. These categories may overlap.
Single-User Operating Systems: These systems are designed primarily for use by one person at a time, although they may support multiple user accounts.
Multiuser Operating Systems: Multiuser systems allow multiple users to access computing resources while the operating system manages their processes, permissions and data.
Network and Server Operating Systems: Server operating systems are designed to provide services such as file sharing, websites, databases, authentication and application hosting to other computers.
Real-Time Operating Systems
A real-time operating system is designed to provide predictable responses within required timing constraints.
Real-time systems are important where delayed responses could cause failure, such as in some industrial controllers, medical systems and embedded applications.
Mobile Operating Systems: Mobile operating systems are optimized for smartphones, tablets and related portable devices, with emphasis on touch interaction, wireless communication, sensors and power management.
5.11 Desktop and Laptop Operating Systems
Desktop and laptop computers commonly run operating systems such as Microsoft Windows, macOS and Linux distributions.
Microsoft Windows: Microsoft Windows is widely used on personal computers. It provides graphical desktop interaction, file management, application support, networking and administrative tools.
macOS: macOS is the desktop operating system used on Apple's Mac computers. It provides graphical desktop services, file management, networking and integration with Apple's computing ecosystem.
Linux: Linux is the kernel used by numerous operating-system distributions. Linux distributions combine the kernel with system utilities, libraries, interfaces and applications to create complete operating environments.
Examples of Linux distributions include Ubuntu, Fedora and Debian.
5.12 Mobile Operating Systems
Smartphones and tablets require operating systems adapted to portable, touch-based and battery-powered devices.
Android: Android is a mobile operating-system platform used on many smartphones, tablets and other devices. It supports touch interaction, mobile applications, wireless networking, sensors and multimedia.
iOS: iOS is Apple's mobile operating system for the iPhone. It provides application management, touch-based interaction, security, communication and integration with Apple's services and devices.
| Desktop/Laptop Environment | Mobile Environment |
|---|---|
| Often designed around keyboard and pointer interaction | Primarily designed around touch interaction |
| Usually larger displays | Usually smaller portable displays |
| Often provides broad access to local files and peripherals | Applications commonly operate within stronger permission and sandbox restrictions |
| Power consumption is less restrictive on many desktops | Battery efficiency is a major design concern |
5.13 Embedded and Specialized Operating Systems
Not every operating system is intended for a conventional desktop or smartphone. Embedded systems may use specialized operating systems designed for particular hardware and tasks.
Examples occur in:
- industrial controllers;
- network routers;
- automotive systems;
- medical devices;
- smart televisions;
- Internet of Things devices.
Such systems may prioritize reliability, low power consumption, limited memory use or real-time response rather than general-purpose desktop features.
5.14 Booting and System Startup
Booting is the sequence through which a computing device initializes its hardware and loads the operating system into an operational state.
A simplified startup sequence is as follows:
- The device receives power or is restarted.
- Firmware begins execution.
- Essential hardware is initialized and checked.
- A suitable boot device or boot loader is located.
- The operating-system kernel is loaded.
- System services and drivers are initialized.
- The user interface or login environment becomes available.
Cold Boot and Restart: A cold boot begins from a powered-off state. A restart, sometimes called a warm boot, restarts the operating environment without requiring a prolonged power-off state.
5.15 Files, Folders and Paths
A file is a named collection of digital data stored as a unit on a storage system.
A folder, also called a directory, is a file-system structure used to organize files and other directories.
A file name may contain a name and an extension. The extension often indicates the file format or its association with particular applications. Examples include .txt, .pdf, .jpg, .docx and .xlsx.
File Path: A file path describes the location of a file or directory within a file system.
A document stored inside a folder named "Assignments" within a student's Documents directory has a path identifying that sequence of locations. The exact path notation differs among operating systems.
5.16 Basic File-Management Operations
Effective use of a computer requires practical file-management skills.
Creating Folders: Folders allow related files to be grouped logically. A student might create separate folders for courses, semesters or projects.
Copying: Copying creates another instance of a file or folder while leaving the original in its existing location.
Moving: Moving changes the location of a file or folder rather than intentionally creating an independent additional copy.
Renaming: Renaming changes the name used to identify a file or folder without changing its content.
Deleting: Deleting removes a file from its normal location. Depending on the operating system and storage method, it may first be moved to a temporary recovery location such as a recycle bin or trash.
Create a folder named COS101. Inside it, create folders named Notes, Assignments and Practical. Create or save a document in the Notes folder, copy it to Practical, rename the copied file and observe the difference between copying and moving.
5.17 Application and Resource Management
The operating system provides mechanisms for installing, starting, stopping and managing applications.
When an application is started, the operating system allocates resources such as memory and processor time. When the application closes, many of those resources are released.
Operating systems also provide tools for observing running applications and processes. Such tools can help identify an application that has stopped responding or is consuming excessive resources.
Application Permissions: Modern operating systems may require applications to obtain permission before accessing sensitive resources such as the camera, microphone, location, files or contacts.
This permission model helps users control access to personal and system resources.
5.18 Operating-System Updates and Maintenance
Operating systems are updated during their supported life to correct software defects, address security vulnerabilities, improve compatibility and introduce features.
Regular system maintenance may include:
- installing trusted security updates;
- removing unnecessary applications;
- monitoring available storage space;
- maintaining backups;
- checking device-driver compatibility;
- using built-in security features;
- reviewing application permissions.
Operating-system updates are not merely cosmetic. Many updates correct security weaknesses that could otherwise be exploited.
5.19 Computing Platforms
A computing platform is the hardware and software environment within which applications are developed or executed.
A platform may include processor architecture, operating system, runtime environment, application interfaces and related services.
Examples include:
- Windows-based personal computers;
- macOS-based computers;
- Linux-based servers and desktops;
- Android mobile devices;
- iOS mobile devices;
- web-based application environments;
- cloud-computing environments.
Applications may be platform-specific or cross-platform. Platform-specific software is designed for a particular environment, while cross-platform software is designed to operate across multiple environments.
5.20 Practical Use of Different Operating Systems
A student of computing should recognize that operating systems may differ visually while providing many of the same fundamental services.
Compare a desktop or laptop computer with a smartphone or tablet. Identify how each device allows you to launch applications, switch between applications, connect to Wi-Fi, change system settings, manage files, adjust sound, install applications and shut down or restart the device.
On a desktop computer, applications may appear in movable windows. On a smartphone, applications normally occupy most or all of the display. A laptop may use a mouse or touchpad, whereas a smartphone relies mainly on touch. These differences reflect the design requirements of each computing platform.
Suppose a student creates a presentation on a laptop, saves it to cloud storage and later opens it on a smartphone. Different operating systems and hardware platforms are involved, but standardized file formats, network services and compatible applications allow the information to move between them.
CHAPTER SIX
Computer Applications and Digital Productivity Tools
6.1 Introduction to Computer Applications
Computers are general-purpose machines. Their usefulness comes largely from the software applications that enable users to perform specific tasks. The same computer can become a writing tool, calculator, design workstation, communication device, accounting system or scientific instrument depending on the applications being used.
Application software is software designed to help users perform particular tasks, solve problems, create content, process information or communicate.
Computer applications are used in nearly every area of modern society. Universities use them for teaching, research and administration; businesses use them for accounting and communication; engineers use them for design and simulation; and individuals use them for writing, learning, entertainment and communication.
6.2 Categories of Computer Applications
Applications can be grouped according to the tasks they perform.
| Category | Typical Purpose |
|---|---|
| Word Processing | Creating and formatting text documents |
| Spreadsheet | Calculation, data organization and analysis |
| Presentation | Preparing visual presentations |
| Graphics | Creating and editing visual content |
| Database | Storing, organizing and retrieving structured data |
| Communication | Email, messaging, conferencing and collaboration |
| Educational | Learning, assessment and instructional activities |
| Business | Accounting, inventory, payroll and enterprise operations |
| Scientific and Engineering | Analysis, modelling, simulation and technical design |
| Multimedia | Audio, video, animation and media production |
6.3 Word Processing
A word processor is an application used to create, edit, format, store and produce text-based documents.
Word processors are used for letters, reports, assignments, research papers, books, memoranda, proposals and many other documents.
Examples of word-processing applications include Microsoft Word, LibreOffice Writer and web-based document editors.
Common word-processing functions include:
- entering and editing text;
- changing fonts and paragraph formatting;
- creating lists;
- inserting tables and images;
- adding page numbers;
- creating headers and footers;
- checking spelling;
- finding and replacing text;
- printing and exporting documents.
6.4 Creating and Editing Documents
Creating a document involves more than typing. The user must be able to insert, remove, rearrange and correct information efficiently.
Insertion: Insertion places new text or objects at a selected location within a document.
Deletion: Deletion removes unwanted text or objects.
Selection: Before formatting or moving existing content, the user usually selects the relevant text or object.
Copy, Cut and Paste: The Copy operation places a duplicate of selected content on the clipboard without removing the original. Cut places selected content on the clipboard while removing it from its original position. Paste inserts clipboard content at a selected location.
If a paragraph belongs in two sections of a document, copying and pasting can duplicate it. If the paragraph is simply in the wrong location, cutting and pasting moves it without intentionally leaving the original behind.
Undo and Redo: Undo reverses a recent editing action, while redo restores an action that has just been undone. These functions are useful when correcting accidental changes.
6.5 Document Formatting and Page Layout
Formatting changes the visual presentation and organization of a document without necessarily changing its meaning.
Character Formatting: Character formatting includes font family, size, emphasis and other properties applied to individual characters or selected text.
Paragraph Formatting: Paragraph formatting includes alignment, indentation, line spacing and spacing before or after paragraphs.
Page Layout: Page-layout settings control properties such as:
- page size;
- orientation;
- margins;
- columns;
- page breaks;
- headers and footers.
Styles: Styles provide consistent combinations of formatting properties. Using heading styles rather than manually formatting every heading makes long documents more consistent and easier to manage.
Formatting should improve readability and organization. Excessive colours, fonts, decorative effects and inconsistent spacing can make a document harder rather than easier to read.
6.6 Tables, Images and Other Document Elements
Modern word processors allow documents to contain more than plain text.
Tables: Tables arrange information into rows and columns. They are useful for structured comparisons, schedules, records and numerical information.
Images: Photographs, illustrations and diagrams can clarify ideas that are difficult to communicate through text alone. Images should be relevant, appropriately sized and positioned.
Headers and Footers: Headers and footers contain information repeated near the top or bottom of pages, such as document titles, chapter names or page numbers.
Hyperlinks: Hyperlinks allow users to connect document content to websites, email addresses, files or other locations within a document.
Create a one-page document containing a title, two paragraphs, a short table and an image. Format the title using an appropriate heading style, justify or appropriately align the body text, insert a page number, save the editable document and export a copy as PDF. Observe the difference between the editable source file and the exported PDF.
6.7 Spreadsheets
A spreadsheet is an application that organizes data in a grid of rows and columns and provides tools for calculation, analysis and graphical presentation.
Spreadsheets are widely used for:
- budgets;
- student results;
- financial analysis;
- inventory records;
- statistical summaries;
- data visualization;
- scientific calculations.
Examples include Microsoft Excel, LibreOffice Calc and web-based spreadsheet applications.
6.8 Spreadsheet Structure and Data Entry
A spreadsheet document is commonly called a workbook, and it may contain one or more worksheets.
Rows: Rows extend horizontally and are normally identified by numbers.
Columns: Columns extend vertically and are normally identified by letters.
Cells: A cell is formed where a row and column intersect. A cell is identified by its cell reference.
The cell reference B4 identifies the cell located in column B and row 4.
Cells may contain:
- text;
- numbers;
- dates;
- formulas;
- logical values.
6.9 Formulas and Functions
A spreadsheet formula is an expression used to calculate a result from values, cell references, operators or functions.
In many spreadsheet programs, a formula begins with an equals sign.
If cell B2 contains 20 and C2 contains 30, the formula =B2+C2 returns 50.
Functions: A function is a predefined operation that performs a particular calculation.
Common functions include:
| Function | Purpose | Illustration |
|---|---|---|
| SUM | Adds values | =SUM(B2:B6) |
| AVERAGE | Calculates arithmetic mean | =AVERAGE(B2:B6) |
| MAX | Returns the largest value | =MAX(B2:B6) |
| MIN | Returns the smallest value | =MIN(B2:B6) |
| COUNT | Counts cells containing numbers in a specified range | =COUNT(B2:B6) |
Suppose five test scores are entered in cells B2 to B6 as 70, 64, 81, 75 and 90. The formula =SUM(B2:B6) gives 380. The formula =AVERAGE(B2:B6) gives 76. The functions =MAX(B2:B6) and =MIN(B2:B6) return 90 and 64 respectively.
Cell References: A major advantage of spreadsheets is that formulas can refer to cells instead of repeatedly typing fixed values. When the contents of referenced cells change, dependent formulas can automatically recalculate.
If quantity is stored in B2 and unit price in C2, the formula =B2*C2 can calculate the total cost in D2. If the quantity or price changes, the calculated total is updated automatically.
6.10 Spreadsheet Data Analysis and Charts
Spreadsheets can organize, sort, filter, summarize and visualize data.
Sorting: Sorting rearranges records according to selected values, such as arranging students alphabetically or scores from highest to lowest.
Filtering: Filtering temporarily displays records that satisfy specified conditions while hiding those that do not.
Charts: Charts transform numerical data into visual representations. Common chart types include:
- column charts;
- bar charts;
- line charts;
- pie charts;
- scatter plots.
The chart type should match the purpose of the data. A line chart is useful for showing change over an ordered sequence such as time, while a bar or column chart is often appropriate for comparing categories.
Create a worksheet containing five students and their scores in three subjects. Use formulas to calculate each student's total and average. Use appropriate functions to determine the highest and lowest scores. Then create a suitable chart comparing the students' results.
6.11 Presentation Software
Presentation software is an application used to create and display a sequence of visual pages, commonly called slides, for communicating information to an audience.
Presentations may contain:
- text;
- images;
- tables;
- charts;
- diagrams;
- audio;
- video;
- animations.
Presentation software is commonly used in lectures, seminars, project defence sessions, business meetings and training programmes.
6.12 Designing Effective Presentations
An effective presentation is not simply a document divided into slides. Slides should support communication rather than overwhelm the audience with text.
Clarity: Each slide should communicate a clear idea. Important information should be easy to identify.
Readability: Text should be large enough to read from the expected viewing distance. Strong contrast between text and background improves visibility.
Consistency: Fonts, headings, colours and layouts should follow a consistent visual system.
Appropriate Use of Visuals: Charts, photographs and diagrams should be included when they clarify the subject. Decorative images that contribute nothing to understanding should be avoided.
Moderate Use of Animation: Transitions and animations can direct attention, but excessive movement can distract from the content.
A presentation explaining computer components is more effective when a labelled diagram is used to identify the motherboard, processor, memory and storage than when an entire page of descriptive prose is copied onto a slide.
Prepare five slides on the basic components of a computer. Include a title slide, concise explanatory text, at least one relevant image or diagram, and a summary slide. Run the presentation in slideshow mode and observe how the content appears when displayed full-screen.
6.13 Graphics and Image-Editing Applications
Graphics software enables users to create, modify and manipulate visual information.
Two important forms of digital graphics are raster graphics and vector graphics.
Raster Graphics: Raster images are composed of a grid of pixels. Digital photographs are common examples. Enlarging a low-resolution raster image significantly may reveal visible pixelation.
Vector Graphics: Vector graphics represent shapes mathematically using points, lines and curves. They can generally be scaled to different sizes without the same type of resolution loss experienced by raster images.
| Feature | Raster Graphics | Vector Graphics |
|---|---|---|
| Representation | Pixels | Mathematical shapes and paths |
| Suitable For | Photographs and detailed pixel-based images | Logos, diagrams and illustrations |
| Scaling | Large enlargement may reveal pixelation | Can generally be scaled without pixelation |
Image-editing applications may provide tools for cropping, resizing, adjusting colour, combining images and applying corrections or effects.
6.14 Database Applications
A database is an organized collection of related data designed to support efficient storage, retrieval and management.
Database systems are used where large quantities of structured information must be managed systematically.
Examples include:
- student records;
- library catalogues;
- bank accounts;
- hospital records;
- employee information;
- inventory records.
Tables, Records and Fields: In a relational database, information is commonly organized into tables. A row represents a record, while a column represents a field or attribute.
A student table might contain fields such as Student ID, Name, Programme and Level. Each student's complete row forms a record.
Database-management systems provide tools for adding, updating, querying, protecting and organizing stored data.
6.15 Communication and Collaboration Applications
Computing applications allow individuals and groups to communicate regardless of physical distance.
Common categories include:
- email applications;
- instant-messaging applications;
- video-conferencing software;
- team collaboration platforms;
- shared-document systems;
- discussion platforms.
Modern collaboration applications may allow several users to edit a document, exchange messages, hold video meetings and share files through the same service.
Students working on a group project may prepare a shared document online while discussing the work through messaging or video conferencing. Each member can contribute without being physically present in the same location.
6.16 Educational Applications
Computer applications have become important tools for teaching and learning.
Educational applications include:
- learning-management systems;
- computer-based testing systems;
- digital libraries;
- educational simulations;
- virtual laboratories;
- tutorial applications;
- online classroom systems.
A learning-management system may distribute course materials, receive assignments, conduct assessments and record student progress.
Simulation software can also allow students to investigate situations that may be expensive, dangerous or difficult to reproduce physically.
6.17 Business and Financial Applications
Organizations depend on software for processing transactions, maintaining records and supporting decisions.
Examples include:
- accounting software;
- payroll systems;
- inventory-management applications;
- point-of-sale systems;
- customer relationship management systems;
- enterprise resource planning systems;
- electronic banking applications.
In a supermarket, a barcode reader identifies an item, point-of-sale software retrieves the price, the transaction is recorded, inventory may be updated, and a receipt is produced. Several hardware and software components cooperate in one business process.
6.18 Scientific and Engineering Applications
Scientists and engineers use computers to perform calculations, analyse measurements, simulate physical systems and create technical designs.
Applications include:
- statistical analysis;
- computer-aided design;
- numerical computation;
- simulation and modelling;
- geographical information systems;
- laboratory data acquisition;
- engineering analysis.
Computer-Aided Design: Computer-aided design, commonly abbreviated as CAD, uses computing systems to create, modify and analyse technical designs.
Simulation: A simulation uses a computational model to imitate aspects of the behaviour of a real or proposed system. Simulations are useful for studying systems under controlled conditions without necessarily constructing or disturbing the physical system.
Engineers may use simulation software to study airflow around a proposed structure, while scientists may use statistical software to analyse experimental measurements.
6.19 Multimedia and Creative Applications
Multimedia refers to the integrated use of multiple forms of digital content such as text, graphics, audio, video and animation.
Multimedia applications include:
- audio recording and editing software;
- video-editing applications;
- animation software;
- digital illustration tools;
- music-production software;
- three-dimensional modelling applications.
These applications can require significant processing power, memory and storage, particularly when working with high-resolution video, complex animations or three-dimensional models.
6.20 Cloud-Based Productivity Applications
A cloud-based application is an application that relies substantially on computing resources or services delivered through a network, often allowing users to access data or functionality from multiple devices.
Cloud-based productivity tools may provide:
- online document editing;
- remote file storage;
- automatic synchronization;
- shared editing;
- version history;
- access from multiple devices.
Some cloud applications run mainly through a web browser, while others use installed applications that synchronize with remote services.
Advantages
- access from multiple locations and devices;
- simplified collaboration;
- centralized storage;
- automatic synchronization;
- reduced dependence on one local device.
Limitations
- dependence on network availability for many functions;
- possible privacy and security concerns;
- service-provider dependence;
- subscription or storage limitations;
- possible synchronization conflicts.
6.21 File Formats and Application Compatibility
A file format is a defined structure used to encode and organize data within a digital file so that compatible software can interpret it.
Different applications create and use different file formats.
| File Extension | Common Content Type |
|---|---|
| .txt | Plain text |
| .docx | Word-processing document |
| .xlsx | Spreadsheet workbook |
| .pptx | Presentation |
| Portable document representation | |
| .jpg / .jpeg | Raster image |
| .png | Raster image |
| .mp3 | Compressed audio |
| .mp4 | Multimedia container commonly used for video and audio |
Compatibility: Compatibility describes the ability of software, hardware or data formats to work together as required.
A file created by one application may sometimes be opened by another application if both support the same format. However, complex formatting or advanced features may not always transfer perfectly.
Saving and Exporting: Saving normally preserves a document in a format intended for continued editing. Exporting creates a representation in another format for a particular purpose.
A student may prepare an assignment in an editable word-processing format and export the final copy as PDF for submission. The editable file remains useful for future correction, while the PDF helps preserve the intended page layout across many devices.
6.22 Integrated Practical Use of Productivity Software
Productivity applications are most useful when students understand how to combine them rather than treating each program as an isolated tool.
Consider a simple class-result project. Enter student names and scores into a spreadsheet. Calculate totals and averages using formulas and functions. Create a chart showing the results. Copy or export the chart into a word-processing document and write a short explanation of the findings. Finally, prepare a short presentation containing the major results and the chart.
This activity demonstrates an important principle of practical computing: information produced in one application can often be transferred, linked or reused in another.
Practical Workflow
- Identify the task to be completed.
- Select an application appropriate to the task.
- Create or obtain the required data.
- Process and organize the information.
- Check the work for accuracy.
- Save the editable version in an appropriate format.
- Export or share the result in a suitable final format where necessary.
- Maintain a backup of important work.
A student conducting a small research project might enter questionnaire responses into a spreadsheet, calculate summary statistics, generate charts, write the report in a word processor and present the findings using presentation software. The applications perform different tasks but contribute to one complete academic workflow.
Digital competence is not merely knowing the names of applications. It involves selecting the correct tool, using its functions accurately, managing the resulting files and combining different tools to solve practical problems.
CHAPTER SEVEN
Information Processing and Its Role in Society
7.1 Meaning of Data and Information
The words data and information are closely related, but they do not mean exactly the same thing. Understanding the distinction is essential because computers fundamentally operate on data in order to produce useful information.
Data consists of raw facts, observations, measurements, symbols or values that can be recorded, stored and processed.
Data may consist of numbers, names, dates, images, sounds, measurements, text or sensor readings.
The values 76, 64, 81, 59 and 92 are data. By themselves they have limited meaning unless we know what they represent.
Information is data that has been processed, organized, interpreted or placed in context so that it becomes meaningful and useful.
If the values 76, 64, 81, 59 and 92 are identified as students' examination scores and are used to determine class performance, the data has acquired context and can now contribute to useful information.
7.2 Relationship Between Data and Information
Data is the raw material from which information is produced. Information processing transforms data into forms that support understanding, communication and decision-making.
A list of student names and raw examination scores is data. After the scores are totalled, averaged, converted into grades and arranged according to performance, the processed result becomes information that can be used by students, lecturers and administrators.
The relationship may be expressed simply as:
Data → Processing → Information
However, information produced by one process may later become data for another process.
A student's final grade is information produced from test and examination scores. When the grades from many courses are later used to calculate a grade-point average, those grades become input data for another information-processing task.
7.3 Characteristics of Useful Information
Not every piece of processed data is useful. Information must possess certain qualities if it is to support effective decisions.
Accuracy: Information should correctly represent the facts or events it describes. Incorrect information can produce poor decisions even when the computer processing itself is technically successful.
Relevance: Information should relate directly to the question or decision being considered.
Timeliness: Information should be available when it is needed. Accurate information may lose much of its value if it arrives too late.
Completeness: Important details required for the intended purpose should not be missing.
Consistency: Information should not contradict other valid records without an identifiable reason.
Clarity: Information should be presented in a form that its intended users can understand.
Accessibility: Authorized users should be able to obtain necessary information through appropriate means while unauthorized access is prevented.
| Quality | Why It Matters |
|---|---|
| Accurate | Prevents decisions based on wrong facts |
| Relevant | Focuses attention on the actual problem |
| Timely | Makes information available when action is required |
| Complete | Reduces decisions based on missing facts |
| Clear | Makes interpretation easier |
| Secure | Protects sensitive information from unauthorized access |
7.4 Meaning of Information Processing
Information processing is the systematic collection, manipulation, storage, retrieval, presentation and communication of data in order to produce useful information.
Information processing is not limited to computers. Human beings have processed information throughout history. What computers provide is the ability to perform many information-processing activities automatically, rapidly and on very large quantities of data.
7.5 The Information-Processing Cycle
A useful model for understanding information processing consists of the following activities:
- collection or acquisition;
- input;
- processing;
- storage;
- output;
- distribution or communication;
- feedback where necessary.
The stages are not always performed only once. Many information systems operate continuously, with outputs from one stage influencing future input.
A student enters personal and course-registration data into an online portal. The system validates the details, checks course requirements, stores the registration record and displays confirmation. Administrators may later retrieve the stored information to prepare class lists or academic reports.
7.6 Data Collection and Input
Information processing begins with obtaining data from suitable sources. Poorly collected data can undermine the entire information system.
Data may be collected through:
- questionnaires;
- interviews;
- observation;
- transaction records;
- computer forms;
- scanners;
- sensors;
- existing databases;
- online systems.
Data Entry: Data entry is the process of placing collected data into a system in a form suitable for processing.
Errors may occur during data entry. Good systems therefore use techniques such as validation and verification to reduce mistakes.
Validation
Validation is the use of rules or checks to determine whether entered data satisfies specified conditions.
If a student's examination score must lie between 0 and 100, the system can reject the value 145 because it falls outside the permitted range.
Verification: Verification is concerned with checking whether data has been entered or transferred correctly from its original source.
Validation checks whether data is reasonable according to defined rules. Verification checks whether the data matches the original source. Data may pass validation and still be factually wrong.
7.7 Processing Operations
Processing transforms data into a more useful form. The exact operations depend on the purpose of the system.
Common processing operations include:
Calculation: Numerical values may be added, averaged, multiplied, compared or transformed using mathematical formulas.
Sorting: Sorting arranges data into a specified order, such as alphabetical order, date order or highest-to-lowest score.
Classification: Classification places data into categories according to defined rules.
Filtering: Filtering selects records that satisfy specified conditions.
Summarization: Large amounts of data may be reduced into totals, averages, percentages or other summaries.
Comparison: Values may be compared in order to identify differences, similarities or conditions requiring action.
In a class result system, raw scores may be validated, added, converted into percentages, mapped to grades and sorted to produce a performance report.
7.8 Storage and Retrieval
Processed and unprocessed data often needs to be retained for future use. Storage provides continuity between different stages of information processing.
Information may be stored in:
- files;
- databases;
- local storage devices;
- network servers;
- cloud storage systems;
- archival systems.
Data retrieval is the process of locating and obtaining stored data for viewing, processing or use.
Good storage systems must support accurate retrieval while protecting information against loss, damage and unauthorized access.
7.9 Output and Distribution
After processing, information must be presented in a form suitable for its intended users.
Output may appear as:
- screen displays;
- printed reports;
- charts and graphs;
- audio messages;
- electronic notifications;
- files;
- dashboard indicators.
Distribution: Distribution involves delivering information to the appropriate users or systems. Information may be distributed through email, websites, portals, messaging applications, printed documents or networked information systems.
After university results are processed, individual results may be displayed to students through a portal while departmental summary reports are sent to authorized academic staff.
7.10 Manual, Mechanical and Electronic Information Processing
Information processing has evolved through different methods.
Manual Processing: Manual processing is performed primarily by human effort using tools such as paper, pens and physical records.
Mechanical Processing: Mechanical devices may assist with calculation or record handling without depending entirely on modern electronic computing.
Electronic Processing: Electronic data processing uses computers and digital systems to perform information-processing tasks.
| Method | Typical Characteristics |
|---|---|
| Manual | Human-centred, slower for large volumes, limited automation |
| Mechanical | Some automated physical operations, limited flexibility |
| Electronic | Fast, programmable, scalable and suitable for large data volumes |
Electronic processing is not automatically superior in every situation. Very small tasks may still be handled efficiently without complex digital systems. The appropriate method depends on scale, cost, accuracy and operational requirements.
7.11 Information Systems
An information system is an organized combination of people, procedures, data, hardware, software and communication resources used to collect, process, store and distribute information.
An information system is broader than a computer application. It includes the people who use the system, organizational procedures, data resources and technology.
A university admission system includes application software, servers, databases, network connections, admission officers, applicants, admission rules and operating procedures. Together, these constitute an information system.
7.12 Components of an Information System
A typical information system consists of:
- hardware — physical computing and communication devices;
- software — programs and instructions;
- data — facts and records to be processed;
- people — users, managers and technical specialists;
- procedures — rules and methods governing system use;
- communication networks — facilities connecting system components.
The effectiveness of an information system depends on the quality of all these components, not simply on the computer hardware.
7.13 Transaction Processing Systems
A transaction processing system records, validates and processes routine operational transactions.
Examples include:
- bank deposits and withdrawals;
- sales at supermarket checkout points;
- school-fee payments;
- airline reservations;
- salary payments;
- online orders.
Transaction systems usually require high accuracy, reliability and consistency because errors may directly affect money, inventory, academic records or other important resources.
7.14 Management and Decision-Support Information
Information systems can also help managers and professionals make decisions.
Management Information: Managers may receive summarized reports describing activities such as sales, expenses, attendance or performance.
Decision Support: Decision-support systems provide data, models or analytical tools that help users examine alternatives and make informed decisions.
A university administrator may review student-enrolment trends across several years before deciding whether additional lecture halls or teaching staff are required.
7.15 Information Processing in Education
Educational institutions process large quantities of information relating to students, staff, courses, assessments and learning resources.
Applications include:
- student registration;
- admission processing;
- result computation;
- attendance records;
- learning-management systems;
- digital libraries;
- computer-based examinations;
- research-data analysis.
Digital processing can reduce repetitive administrative work and provide faster access to academic records.
7.16 Information Processing in Business and Banking
Business activities depend heavily on accurate and timely information.
Computers process:
- sales records;
- payroll;
- inventory;
- customer information;
- financial accounts;
- electronic payments;
- orders and deliveries.
Banks use information systems to maintain account records, authorize transactions, process transfers and provide electronic banking services.
When a customer transfers money electronically, the banking system receives transaction details, verifies relevant conditions, updates account records, stores the transaction and provides confirmation. Several information-processing stages occur within seconds.
7.17 Information Processing in Healthcare
Healthcare systems process sensitive information relating to patients, appointments, laboratory tests, diagnoses, prescriptions and medical images.
Applications include:
- electronic health records;
- appointment scheduling;
- laboratory information systems;
- medical imaging;
- pharmacy systems;
- hospital billing;
- public-health analysis.
Because medical information may affect treatment and patient safety, accuracy, confidentiality and availability are especially important.
7.18 Information Processing in Government and Public Administration
Governments process large volumes of information concerning citizens, revenue, public services, infrastructure and administration.
Examples include:
- tax administration;
- identity management;
- electoral records;
- public-service payroll;
- licensing;
- statistical information;
- digital public-service portals.
Digital systems can improve access to services, but poorly designed systems may also introduce exclusion, privacy concerns or security risks.
7.19 Information Processing in Science and Research
Scientific research frequently produces quantities of data that would be difficult to analyse manually.
Computing is used for:
- collecting experimental measurements;
- statistical analysis;
- simulation;
- visualization;
- database searches;
- scientific modelling;
- sharing research findings.
Modern research in areas such as astronomy, genetics, climate science and physics may involve very large datasets and substantial computational resources.
7.20 Information Processing in Communication and Media
Communication systems depend on digital information processing to create, transmit, store and reproduce text, audio, images and video.
Examples include:
- email;
- instant messaging;
- social-media platforms;
- video streaming;
- digital publishing;
- online broadcasting;
- video conferencing.
Digital media can be copied and distributed rapidly, creating enormous opportunities for communication but also making misinformation and unauthorized distribution easier.
7.21 Social Benefits of Digital Information Processing
Digital information processing has transformed society in several positive ways.
Speed: Large quantities of information can be processed and transmitted rapidly.
Automation: Routine tasks can be performed with reduced manual effort.
Accessibility: Information can be accessed from different locations where appropriate networks and permissions exist.
Improved Decision-Making: Well-organized information can help individuals and organizations make better-informed decisions.
Communication: Digital systems enable real-time and asynchronous communication across large distances.
Scalability: Well-designed systems can process large numbers of records or users beyond what manual methods can practically manage.
7.22 Risks and Challenges of Information Processing
The widespread use of digital information also creates serious challenges.
Privacy: Organizations may collect sensitive personal information. Improper collection, sharing or disclosure can harm individuals.
Security Threats: Information systems may face unauthorized access, malware, fraud, data theft and disruption.
Data Loss: Hardware failure, software defects, human error or attacks may damage or destroy information.
Dependence on Technology: Organizations that rely heavily on information systems may be seriously affected when those systems become unavailable.
Digital Exclusion: People without suitable devices, connectivity, skills or accessibility support may be disadvantaged when essential services become primarily digital.
Misinformation: Digital systems allow information to spread rapidly, including false or misleading information.
7.23 Data Quality, Privacy and Security
Effective information processing requires attention to three major concerns: quality, privacy and security.
Data Quality: Data should be accurate, complete, consistent and suitable for the purpose for which it is collected.
Privacy: Privacy concerns the appropriate collection, use and disclosure of information about individuals.
Information Security
Information security involves protecting information and information systems against unauthorized access, disclosure, alteration, destruction or disruption.
Three fundamental security objectives are:
- confidentiality — information is accessible only to authorized parties;
- integrity — information remains accurate and is not improperly altered;
- availability — authorized users can obtain information when required.
A system that processes information quickly but produces inaccurate results, exposes private data or frequently becomes unavailable is not an effective information system.
7.24 Information Processing in Everyday Life
Students encounter information processing repeatedly, sometimes without noticing it.
When a customer uses an automated teller machine, the system receives card and transaction input, validates credentials, communicates with banking systems, processes the requested operation, updates account information and produces output such as cash, a receipt or an on-screen message.
An online store collects product selections, delivery information and payment details, calculates totals, processes payment, stores the order and sends confirmation to the customer.
When a user enters a search query into a search engine, the query becomes input. The search system processes it against an index of web resources and returns ranked results as output.
Select one everyday digital system such as an ATM, university portal, online store or mobile banking application. Identify the data entered, the processing performed, the information stored and the outputs produced. This exercise helps reveal the information-processing cycle within familiar systems.
CHAPTER EIGHT
The Internet and the World Wide Web
8.1 Introduction to the Internet
The Internet is one of the most influential developments in modern computing. It enables billions of devices to exchange information, access services and communicate across local, national and international boundaries.
The Internet is a global system of interconnected computer networks that communicate using standardized networking protocols.
The Internet is not a single computer, company or website. It is a large network of networks operated by many independent organizations, service providers, educational institutions, governments, businesses and individuals.
Services available through the Internet include:
- the World Wide Web;
- email;
- instant messaging;
- voice and video communication;
- cloud storage;
- online banking;
- streaming;
- remote learning;
- file transfer;
- online gaming.
8.2 Meaning of a Computer Network
A computer network is a group of connected computing devices that can exchange data and share resources.
A small network may connect computers within one laboratory, office or home. Larger networks may connect entire campuses, organizations or regions.
Networks enable:
- file sharing;
- printer sharing;
- Internet access;
- communication;
- centralized storage;
- access to remote applications and services.
Local Area Network: A local area network, or LAN, connects devices within a relatively limited area such as a building, office, school or campus section.
Wide Area Network: A wide area network, or WAN, spans larger geographical areas and may connect multiple local networks.
8.3 From Networks to the Internet
The Internet can be understood as an enormous interconnection of networks. A university network may connect to an Internet service provider, which in turn connects to other networks and major Internet infrastructure.
Communication across these different networks is possible because devices follow standardized rules known as protocols.
A protocol is an agreed set of rules and conventions that governs communication between devices or systems.
The Internet relies on a family of protocols commonly referred to as the TCP/IP protocol suite.
8.4 Brief Development of the Internet
The modern Internet developed gradually from research into packet-switched networking and the interconnection of independent computer networks.
Early experimental networks demonstrated that information could be divided into units called packets and transmitted across shared communication networks. Subsequent development of standardized internetworking protocols allowed different networks to communicate.
Over time, academic, governmental and commercial networks became increasingly interconnected. The expansion of personal computing, telecommunications infrastructure and the World Wide Web transformed the Internet into a global public and commercial communication environment.
The Internet and the World Wide Web are not the same invention. The Internet infrastructure developed before the Web. The Web later provided a convenient system for publishing and accessing linked documents and resources over the Internet.
8.5 How the Internet Works
Internet communication depends on the cooperation of many technologies. At introductory level, the process can be understood through a few basic ideas.
Packet Switching
A packet is a formatted unit of digital data transmitted across a network.
Large messages are typically divided into smaller packets. These packets may travel across network links and are processed by networking equipment before being delivered to their destination.
Routers: Routers are network devices that forward packets between different networks according to addressing and routing information.
Internet Service Providers: An Internet service provider, or ISP, provides connectivity that allows customers or organizations to access the wider Internet.
Clients and Servers: Many Internet services follow a client-server model.
A client is a device or software application that requests a service or resource from another system.
A server is a computer system or program that provides resources or services to other systems over a network.
When a student opens a university website, the browser acts as a client and sends a request to a web server. The server processes the request and returns the required web content.
8.6 Internet Protocol Addresses
An Internet Protocol address is a numerical identifier assigned to a network interface for communication using Internet Protocol.
Two major versions of Internet Protocol addressing are IPv4 and IPv6.
IPv4: IPv4 addresses are 32-bit values commonly written as four decimal numbers separated by dots, such as:
192.0.2.25
IPv6: IPv6 uses 128-bit addresses and was developed in part to provide a vastly larger addressing space. IPv6 addresses are commonly written using groups of hexadecimal values separated by colons.
An IP address identifies a network interface for communication, but users normally prefer human-readable names rather than memorizing numerical addresses.
8.7 Domain Names and the Domain Name System
A domain name is a human-readable name used to identify an Internet resource within the domain-name system.
Examples of domain names include names such as example.com or a university's official domain.
The Domain Name System, or DNS, is a distributed naming system that translates domain names into information needed to locate Internet resources, including IP addresses.
When a user enters a website's domain name into a browser, DNS services help determine the network address associated with that name so the browser can contact the appropriate server.
8.8 Uniform Resource Locators
A Uniform Resource Locator, or URL, is an address that identifies the location of a resource and the method used to access it.
A web URL may contain several components.
Consider https://www.example.com/course/page.html. The https portion indicates the scheme or protocol, www.example.com identifies the host, and /course/page.html indicates a path to a resource.
URLs may also include query parameters, port numbers or fragment identifiers depending on the resource and application.
8.9 The World Wide Web
The World Wide Web is a system of interlinked documents and other resources that are identified by URLs and accessed over the Internet using web technologies.
The Web allows users to navigate between related resources through hyperlinks.
Web resources may include:
- text;
- images;
- video;
- audio;
- interactive forms;
- applications;
- downloadable files.
8.10 Internet versus World Wide Web
The Internet and the Web are closely related but should not be treated as synonyms.
| Internet | World Wide Web |
|---|---|
| Global network infrastructure connecting networks and devices | A service operating over the Internet |
| Supports many different services | Primarily provides access to linked web resources |
| Uses many protocols | Commonly uses HTTP or HTTPS |
| Can exist without the Web | Depends on Internet or comparable network connectivity |
Email is an Internet service but is not itself the World Wide Web. Similarly, a video call may use the Internet without being a conventional web page.
8.11 Websites and Web Pages
A web page is a document or application resource designed for access through a web browser.
A website is a collection of related web pages and resources typically associated with a common domain or organizational purpose.
A website may contain hundreds or millions of pages. The first or main page is often called the home page.
Web pages are commonly built using technologies such as HTML for structure, CSS for presentation and JavaScript for programmable behaviour.
8.12 Web Browsers
A web browser is software used to request, retrieve, interpret and display resources available through the World Wide Web.
Examples include Chrome, Firefox, Edge and Safari.
Common browser features include:
- address bar;
- tabs;
- back and forward navigation;
- bookmarks or favourites;
- download management;
- history;
- private-browsing modes;
- security indicators.
Open a web browser. Identify the address bar, tab controls, back button, forward button, refresh control, history and download area. Open two different websites in separate tabs and move between them without closing either page.
8.13 Web Servers and Web Communication
When a browser requests a web resource, the request travels across the network to a web server.
A simplified sequence is:
- The user enters a URL or follows a hyperlink.
- The browser determines how to locate the destination, often using DNS.
- A connection is established with the relevant server.
- The browser sends a request.
- The server returns a response.
- The browser processes and displays the returned content.
Modern websites may also make additional requests for images, stylesheets, scripts, fonts and data after the main page begins loading.
8.14 HTTP and HTTPS
Hypertext Transfer Protocol, or HTTP, is an application-layer protocol used for communication between web clients and servers.
HTTPS is HTTP communication protected using transport encryption and authentication mechanisms, commonly through TLS.
HTTPS helps protect data in transit between the browser and the server against unauthorized reading or modification. It also allows the browser to authenticate the server based on digital certificates.
HTTPS protects communication between the browser and server, but it does not automatically prove that every website is trustworthy. Users must still consider the legitimacy of the website, its domain and the information it requests.
8.15 Search Engines
A search engine is an online system that helps users locate web resources by searching an index created from discovered content.
A search engine is different from a browser. The browser is the application used to access web resources, while the search engine is an Internet service used to find those resources.
| Browser | Search Engine |
|---|---|
| Software used to access the Web | Service used to find information on the Web |
| Displays web pages | Indexes and ranks search results |
| Examples include Chrome, Firefox, Edge and Safari | Examples include Google, Bing and other search services |
A student may use Firefox as the browser and use a search engine inside that browser to locate academic resources.
8.16 Electronic Mail
Electronic mail, or email, is an Internet service for exchanging digital messages between users.
An email may contain:
- sender and recipient addresses;
- subject;
- message body;
- attachments;
- carbon-copy recipients;
- blind-carbon-copy recipients.
Email Address: An email address generally contains a local identifier, the @ symbol and a domain name.
In the address student@example.edu, student identifies the mailbox within the relevant service and example.edu identifies the domain.
8.17 File Transfer, Downloads and Uploads
Downloading is the transfer of data from a remote system to the user's local device or selected storage environment.
Uploading is the transfer of data from a user's device or local environment to a remote system.
Downloading a lecture note transfers the file from a server to the student's device. Submitting an assignment through an online portal uploads the student's file to the remote system.
Before downloading files, users should consider the reliability of the source and the possibility of malicious or unwanted software.
8.18 Cloud Services
Cloud computing is the delivery of computing resources and services through networks, allowing users to access capabilities such as storage, applications or processing without relying entirely on local hardware.
Common cloud services include:
- cloud storage;
- online document editing;
- web-based email;
- remote application hosting;
- online backups;
- shared collaboration environments.
Cloud Storage: Cloud storage allows users to store files on remote servers and access them from authorized devices connected to the service.
Potential benefits include synchronization, remote access and collaboration. Risks include account compromise, service dependence, privacy concerns and accidental deletion if synchronization is misunderstood.
8.19 Social Media and Online Communities
Social-media platforms allow users to create profiles, publish content, communicate, form communities and interact with other users.
Online communities may support:
- professional networking;
- education;
- entertainment;
- public discussion;
- content sharing;
- business promotion.
However, users should understand the risks associated with oversharing personal information, misinformation, harassment, fraud and loss of privacy.
8.20 Streaming and Online Multimedia
Streaming is the delivery of audio, video or other media over a network in a manner that allows playback to begin while data continues to arrive.
Streaming differs from traditional downloading because the user does not normally need to wait for the entire media file to be transferred before playback begins.
Streaming services are used for:
- online lectures;
- music;
- films;
- live broadcasts;
- webinars;
- video conferencing.
Streaming quality depends on factors such as available network bandwidth, latency, service capacity and media quality.
8.21 Electronic Commerce and Online Banking
Electronic commerce, or e-commerce, is the buying and selling of goods or services through electronic networks, especially the Internet.
E-commerce systems may support:
- product catalogues;
- shopping carts;
- electronic payments;
- order processing;
- delivery tracking;
- customer support.
Online Banking: Online banking allows customers to access financial services electronically. Common functions include viewing balances, transferring funds, paying bills and reviewing transactions.
Sensitive financial services should be accessed carefully. Users should verify the correct service, protect authentication credentials and avoid responding to suspicious messages requesting passwords, PINs or one-time security codes.
8.22 Internet Communication and Collaboration
The Internet supports many forms of communication.
Instant Messaging: Instant-messaging systems allow users to exchange near-real-time text, files, voice messages and multimedia.
Voice and Video Calls: Internet-based calling systems carry voice and video data through network connections rather than relying solely on traditional telephone systems.
Video Conferencing: Video-conferencing platforms combine audio, video, screen sharing, chat and sometimes collaborative tools to support meetings, lectures and remote teamwork.
Shared Workspaces: Cloud collaboration systems allow multiple users to edit files, comment on work and coordinate projects.
8.23 Internet Connectivity
A device requires some form of network connection to access the Internet.
Common access methods include:
- fibre-optic broadband;
- cable or fixed broadband;
- mobile cellular networks;
- Wi-Fi connected to an Internet service;
- satellite Internet;
- other fixed wireless systems.
Wi-Fi and the Internet Are Not the Same: Wi-Fi is a wireless networking technology. A device can be connected to a Wi-Fi network that has no Internet access, and Internet access can also be provided through technologies other than Wi-Fi.
A smartphone may access the Internet directly through a mobile network even when Wi-Fi is disabled. Conversely, two laptops may communicate through the same local Wi-Fi network even if the Internet connection is unavailable.
8.24 Internet Safety and Security
Internet users must understand that online activity carries risks. Security requires both technical protections and responsible user behaviour.
Strong Authentication: Passwords should be difficult to guess and should not be casually shared. Where available, multi-factor authentication adds another layer of protection.
Phishing
Phishing is a deceptive attempt to persuade users to reveal sensitive information, visit fraudulent websites, send money or install malicious software.
Phishing messages may imitate banks, universities, employers, delivery services or other trusted organizations.
Malware: Malware is malicious software designed to damage systems, steal information, disrupt operations or gain unauthorized access.
Software Updates: Keeping operating systems, browsers and applications updated can reduce exposure to known security vulnerabilities.
Secure Connections: Users should check that sensitive web communication uses HTTPS and should avoid entering confidential information into suspicious or untrusted websites.
Privacy: Users should consider what personal information they publish online because digital information may be copied, stored or redistributed beyond its intended audience.
8.25 Benefits of the Internet
The Internet provides major benefits to individuals and society.
Communication: People can communicate rapidly across geographical boundaries.
Access to Information: Students and researchers can access educational materials, journals, databases, digital libraries and public information.
Education: Online courses, virtual classrooms and digital resources extend learning opportunities beyond traditional classrooms.
Commerce: Businesses can reach customers, process transactions and coordinate activities electronically.
Remote Work and Collaboration: Teams can work together from different locations using shared documents, messaging and conferencing tools.
Public Services: Governments and organizations can provide forms, information and services online.
8.26 Challenges and Social Impact of the Internet
The Internet has created substantial social and economic benefits, but it has also introduced significant challenges.
Digital Divide: Access to reliable devices, electricity, connectivity and digital skills is not evenly distributed. This inequality is often described as the digital divide.
Misinformation and Disinformation: False or misleading information can spread rapidly online. Users must therefore evaluate the credibility of sources rather than assuming that widely shared material is accurate.
Cybercrime: Fraud, identity theft, account compromise, malware and other criminal activities may be conducted through Internet services.
Privacy and Surveillance: Online systems can collect extensive information about users' activities and preferences, raising questions about consent, privacy and responsible data use.
Online Harassment: Digital platforms may be used for harassment, threats or abusive communication, creating social and psychological harm.
Dependence and Distraction: Excessive or poorly managed use of online services may interfere with productivity, concentration and other activities.
Economic Transformation: The Internet has transformed advertising, banking, retail, media, education and employment. It has created new industries while also changing or reducing some traditional forms of work.
8.27 Practical Use of Browsers and Internet Services
A student should be able to use a browser confidently and safely to access Internet resources.
- Open a web browser and identify the address bar.
- Enter the address of a known educational website.
- Open a link in a new tab.
- Use the back and forward controls.
- Refresh a web page.
- Bookmark or save a useful page.
- Use a search engine to locate information on a specified topic.
- Download a safe sample file from a trusted source.
- Locate the downloaded file on the computer.
- Observe the difference between the website address and a search query.
If a student wants to visit a university's official portal and already knows its correct address, entering the URL directly is different from typing the university name into a search engine. The first method requests a known destination; the second asks a search service to suggest possible destinations.
Effective Internet use requires more than knowing how to open websites. A competent user should understand browsers, URLs, search services, online communication, file transfer, cloud services and basic security practices.
CHAPTER NINE
Computing Disciplines and Areas of Specialization
9.1 Introduction to the Computing Discipline
Computing is much broader than the ability to operate a computer or use common application software. It is a family of academic and professional fields concerned with the representation and processing of information, the design of computational systems, the development of software, the management of information technologies, and the application of computing to problems in society.
Computing is the study and practice of designing, developing, implementing, managing and applying computational processes and systems for the representation, processing, storage, communication and use of information.
Computing involves both theoretical and practical questions. A computer scientist may study the efficiency of an algorithm. A software engineer may develop a large software system. An information technology specialist may deploy and maintain organizational infrastructure. A cybersecurity specialist may protect systems and information against threats.
Although these activities are different, they share a common foundation in computational thinking, data, algorithms, software, hardware and information systems.
9.2 Computing as an Academic and Professional Field
Computing can be considered from two complementary perspectives. As an academic discipline, it develops theories, principles, methods and technologies relating to computation and information. As a professional field, it applies this knowledge to the design, construction, operation and improvement of real systems.
University computing programmes therefore combine conceptual knowledge with practical competence. Students are expected not only to understand what computing systems do but also to develop the ability to analyse problems, design solutions and evaluate the consequences of those solutions.
Core Ideas Shared Across Computing: Important ideas appearing across computing disciplines include:
- algorithms and problem solving;
- programming and software;
- computer architecture;
- operating systems;
- data and databases;
- networks and communication;
- information security;
- human-computer interaction;
- professional and ethical responsibility.
9.3 Computer Science
Computer science is the systematic study of computation, algorithms, information representation, computational systems and the principles underlying the design and use of computer software and hardware.
Computer science asks fundamental questions such as:
- What problems can be solved computationally?
- How can a problem be represented as an algorithm?
- How efficiently can an algorithm solve a problem?
- How should programming languages and operating systems be designed?
- How can machines perform tasks involving perception, reasoning or learning?
Major areas within computer science include algorithms, programming languages, operating systems, artificial intelligence, computer graphics, databases, networks, computational theory and human-computer interaction.
Suppose a navigation application must find a suitable route between two locations. Computer science contributes the algorithms and data structures used to represent the road network and search efficiently for routes.
9.4 Software Engineering
Software engineering is the systematic application of engineering principles, methods and practices to the specification, design, development, testing, deployment, operation and maintenance of software systems.
Programming is an important part of software engineering, but software engineering is not merely programming. Large software systems may be developed by teams over many years and may contain millions of lines of code. Such projects require careful planning and management.
Software engineering commonly involves:
- requirements analysis;
- software architecture and design;
- programming;
- software testing;
- configuration and version management;
- deployment;
- maintenance;
- quality assurance;
- project management.
Developing a complete university management platform requires more than writing code. Developers must understand requirements, design the system architecture, structure databases, implement security controls, test individual modules, integrate components, deploy the system and maintain it after release.
9.5 Information Technology
Information technology is concerned with the selection, deployment, integration, operation, support and management of computing technologies to meet the information-processing needs of individuals and organizations.
Information technology professionals commonly work with:
- computer hardware;
- operating systems;
- networks;
- servers;
- cloud services;
- user support;
- system administration;
- security;
- enterprise applications.
An IT professional may configure an organization's network, administer user accounts, deploy software, maintain servers and provide technical support.
9.6 Information Systems
Information systems is a field concerned with the effective integration of information technology, data, people and organizational processes to support operations, management and decision-making.
The field pays particular attention to how technology supports organizations rather than treating technology in isolation.
When a university introduces a digital student-registration system, information-systems specialists consider not only the software but also registration procedures, user requirements, data flows, administrative rules and the effect of the new system on staff and students.
9.7 Computer Engineering
Computer engineering is an engineering discipline concerned with the design and integration of computer hardware and software systems, particularly where computation interacts closely with electronic devices.
Computer engineering draws substantially from electrical and electronic engineering as well as computing.
Areas may include:
- digital logic;
- computer architecture;
- microprocessors;
- embedded systems;
- digital hardware design;
- hardware-software integration;
- communication systems.
Designing the electronic control system for an intelligent household appliance may require selecting a microcontroller, designing electronic interfaces and developing embedded software that controls the device.
9.8 Cybersecurity
Cybersecurity is the field concerned with protecting computer systems, networks, software, devices and digital information against unauthorized access, attack, disruption, misuse or damage.
Cybersecurity includes both technical and organizational measures.
Important areas include:
- network security;
- application security;
- identity and access management;
- cryptography;
- security monitoring;
- incident response;
- digital forensics;
- security governance and risk management.
Confidentiality, Integrity and Availability: A foundational security model identifies three major objectives:
- Confidentiality: preventing unauthorized disclosure of information.
- Integrity: preventing unauthorized or improper modification of information.
- Availability: ensuring that authorized users can access systems and information when required.
A student-results system must prevent unauthorized users from viewing confidential records, prevent unauthorized alteration of grades and remain available to authorized students and staff when required.
9.9 Data Science and Data Analytics
Data science is an interdisciplinary field that uses computational, statistical and mathematical methods together with domain knowledge to obtain useful understanding from data.
Data science commonly involves:
- data collection;
- data cleaning;
- data transformation;
- exploratory analysis;
- statistical modelling;
- machine learning;
- visualization;
- interpretation and communication of findings.
Data Analytics: Data analytics focuses on examining data to identify patterns, relationships, trends and information useful for answering questions or supporting decisions.
A university may analyse several years of student-performance data to identify courses with unusually high failure rates, examine relationships among relevant factors and determine where academic support may be needed.
9.10 Artificial Intelligence
Artificial intelligence is an area of computing concerned with developing systems capable of performing tasks associated with intelligent behaviour, such as reasoning, learning, perception, language processing, planning and decision-making.
Artificial intelligence includes several areas, such as:
- machine learning;
- natural language processing;
- computer vision;
- knowledge representation and reasoning;
- planning;
- robotics.
AI systems are used in applications such as speech recognition, recommendation systems, fraud detection, medical-image analysis and intelligent assistants.
Artificial intelligence does not imply that a computer possesses human consciousness. The term refers to computational methods and systems capable of performing particular tasks that require forms of perception, reasoning, learning or decision-making.
9.11 Machine Learning
Machine learning is an area of artificial intelligence concerned with computational methods that improve performance on a task through experience represented by data rather than relying entirely on explicitly programmed rules for every case.
For example, instead of writing a separate rule describing every possible unwanted email message, a machine-learning system can be trained using examples and features to estimate whether new messages are likely to be spam.
Major Learning Approaches
| Approach | General Idea |
|---|---|
| Supervised Learning | Learns patterns from examples associated with desired outputs or labels. |
| Unsupervised Learning | Examines data without predefined target labels to identify useful structure or patterns. |
| Reinforcement Learning | Learns behaviour through interaction with an environment and feedback based on actions. |
9.12 Computer Networks and Communications
Computer networking is concerned with connecting computing devices so that they can exchange data and share resources.
Specialists in this area study and work with:
- network architectures;
- communication protocols;
- routing and switching;
- wireless networks;
- Internet technologies;
- network performance;
- network security.
Network specialists may design campus networks, configure routers, investigate connectivity problems and manage communication infrastructure.
9.13 Database Systems
Database computing is concerned with the structured storage, organization, retrieval, protection and management of data.
A database management system, or DBMS, is software that enables users and applications to define, create, store, retrieve, update and administer databases.
Database specialists deal with areas such as:
- data modelling;
- database design;
- query languages;
- transactions;
- database security;
- backup and recovery;
- performance optimization.
A university database may contain related records for students, courses, departments, registrations and results. Database design determines how these records are represented and related so that information can be retrieved accurately.
9.14 Web and Internet Computing
Web computing focuses on applications and services delivered through web technologies and Internet infrastructure.
Web development commonly involves:
- HTML for document structure;
- CSS for visual presentation;
- JavaScript and related technologies for browser-side behaviour;
- server-side programming;
- databases;
- web security;
- application programming interfaces.
Front-End and Back-End Development: Front-end development focuses mainly on the parts of a web application with which users directly interact in the browser. Back-end development focuses mainly on server-side logic, databases, authentication and services that support the application.
A developer who works substantially across both areas is commonly described as a full-stack developer.
9.15 Mobile Computing
Mobile computing concerns computing performed through portable devices and the systems that support them.
The field includes:
- smartphone applications;
- tablet applications;
- mobile operating systems;
- wireless communication;
- location-aware services;
- mobile user-interface design;
- mobile security.
Mobile developers must consider factors such as small screens, touch input, battery consumption, varying network conditions and device permissions.
9.16 Cloud and Distributed Computing
Distributed computing involves multiple networked computing components cooperating to perform tasks or provide services.
Cloud computing builds on networking, virtualization, distributed systems and large-scale infrastructure to provide computing resources as services.
Examples of cloud resources include:
- virtual servers;
- storage;
- databases;
- application hosting;
- analytics services;
- machine-learning services.
A web application does not necessarily run on a physical server owned by its developer. Its application code, database and files may be hosted using remote cloud infrastructure.
9.17 Human-Computer Interaction
Human-computer interaction, or HCI, is the field concerned with the design, evaluation and study of interactive computing systems for human use.
HCI considers questions such as:
- Is the interface easy to understand?
- Can users complete tasks efficiently?
- Does the design prevent or help users recover from errors?
- Can people with different abilities use the system?
- Does the interface provide appropriate feedback?
Usability: Usability concerns the extent to which intended users can use a system effectively, efficiently and satisfactorily in its intended context.
Accessibility: Accessibility concerns designing systems so that people with disabilities can perceive, understand, navigate and interact with them.
9.18 Computer Graphics and Multimedia
Computer graphics is concerned with the computational creation, representation and manipulation of visual information.
Applications include:
- digital illustration;
- animation;
- computer games;
- scientific visualization;
- computer-aided design;
- virtual environments;
- film effects.
Multimedia computing combines multiple forms of digital media, including text, graphics, sound, animation and video.
9.19 Embedded Systems and Internet of Things
An embedded system is a computing system incorporated into a larger device or product to perform one or more dedicated functions.
Embedded computing is found in automobiles, appliances, medical devices, industrial machines and consumer electronics.
Internet of Things
The Internet of Things, or IoT, refers to networks of physical objects equipped with computing, sensing, communication or control capabilities that allow them to collect, exchange or act on data.
A networked environmental sensor may measure temperature and humidity, transmit readings to a remote system and allow users to examine the measurements through an application.
9.20 Scientific and High-Performance Computing
Some scientific and engineering problems require extremely large numbers of calculations or the processing of enormous datasets. High-performance computing uses powerful computing systems, often involving many processors working together, to address such problems.
Applications include:
- weather and climate modelling;
- molecular simulation;
- astronomy;
- engineering simulation;
- large-scale scientific data analysis.
This area illustrates the close relationship between computing and other scientific disciplines.
9.21 Relationship Among Computing Disciplines
The boundaries between computing disciplines are not absolute. A real project may require knowledge from several areas.
| Discipline | Primary Emphasis | Illustrative Concern |
|---|---|---|
| Computer Science | Computation and computational principles | Algorithms, programming, AI and computational theory |
| Software Engineering | Engineering reliable software systems | Requirements, design, testing and maintenance |
| Information Technology | Deployment and management of technology | Networks, systems, support and infrastructure |
| Information Systems | Technology within organizations | Business processes, information and organizational needs |
| Computer Engineering | Hardware-software integration | Processors, digital systems and embedded devices |
| Cybersecurity | Protection of computing resources | Threats, controls, secure systems and risk |
| Data Science | Extracting knowledge and insight from data | Analysis, statistics, modelling and machine learning |
Consider an online banking platform. Software engineers develop the application; database specialists design data storage; network specialists support communication; cybersecurity professionals protect accounts and transactions; HCI specialists improve usability; data specialists analyse transaction patterns; and information-systems professionals examine how the technology supports banking operations.
Computing specializations should not be viewed as isolated compartments. Modern computing systems are interdisciplinary, and professionals frequently collaborate across several areas.
CHAPTER TEN
Computing Professions and Career Specializations
10.1 Introduction to Computing Professions
Computing has developed into a large professional field containing numerous career specializations. The diversity of these careers reflects the fact that modern organizations depend on computing for communication, administration, finance, research, manufacturing, education, healthcare, entertainment and many other activities.
A computing professional may design software, manage networks, analyse data, protect information, administer databases, develop intelligent systems, support users or conduct research. Consequently, the phrase computer professional does not describe one single occupation.
A computing professional is a person who applies specialized knowledge, methods and skills in computing to design, develop, operate, manage, evaluate or secure computational systems and information resources.
10.2 From Computing Knowledge to Professional Practice
University study provides foundational concepts, but professional computing requires the ability to apply those concepts to real problems.
For example, learning programming syntax is different from developing dependable software for thousands of users. Knowing the definition of a database is different from designing a database that preserves data integrity under continuous use. Similarly, knowing what a network is does not by itself provide the competence required to design and maintain a large organizational network.
Professional competence therefore combines:
- theoretical understanding;
- technical skills;
- problem-solving ability;
- communication;
- teamwork;
- ethical judgement;
- continuous learning.
10.3 Software Developer and Software Engineer
A software developer designs, implements, tests and maintains software applications or components using programming languages, development tools and software-development methods.
Software developers may work on desktop applications, web systems, mobile applications, games, business systems, scientific software or embedded applications.
Software Engineer: Software engineering roles generally place strong emphasis on systematic software development, including requirements, architecture, design, implementation, testing, deployment and maintenance.
Typical responsibilities may include:
- analysing software requirements;
- designing software components;
- writing and reviewing code;
- testing software;
- correcting defects;
- maintaining existing systems;
- documenting technical decisions;
- collaborating with other professionals.
A software-development team creating a school management system may implement student registration, attendance, results, payment records and user authentication. The work requires database design, programming, testing, security and user-interface development.
10.4 Web Developer
A web developer develops applications and services that operate through web technologies.
Front-End Developer: A front-end developer works mainly on the browser-facing portion of a web application. Responsibilities may involve page structure, styling, interaction, responsive design and accessibility.
Back-End Developer: A back-end developer works mainly with server-side application logic, databases, authentication, APIs and other services that support the visible application.
Full-Stack Developer: A full-stack developer works across substantial parts of both front-end and back-end development.
| Role | Primary Focus | Typical Technologies or Concerns |
|---|---|---|
| Front-End Developer | User-facing web interface | HTML, CSS, JavaScript, accessibility, responsive interfaces |
| Back-End Developer | Server-side systems | Application logic, databases, APIs, authentication |
| Full-Stack Developer | Both client and server development | Integration across front-end and back-end components |
10.5 Mobile Application Developer
A mobile application developer designs, develops, tests and maintains software for smartphones, tablets and other mobile computing devices.
Mobile developers must consider:
- touch-based interfaces;
- different screen sizes;
- battery consumption;
- device sensors;
- network variability;
- application permissions;
- mobile security.
Some developers specialize in one mobile operating-system ecosystem, while others use technologies designed to support applications across multiple platforms.
10.6 Systems Analyst
A systems analyst examines organizational problems and requirements and helps determine how information systems and computing technologies can be designed or improved to meet those needs.
Systems analysts frequently act as a bridge between organizational users and technical teams.
Their work may include:
- investigating existing processes;
- identifying user requirements;
- analysing information flows;
- documenting system requirements;
- evaluating proposed solutions;
- supporting system implementation.
Before developing an electronic hospital appointment system, a systems analyst may study how patients currently book appointments, how staff allocate time slots, what information doctors require and where delays occur. The findings help determine the requirements of the new system.
10.7 Database Administrator and Database Developer
Database Administrator
A database administrator, commonly called a DBA, manages database environments to support security, availability, integrity, performance, backup and recovery.
Typical responsibilities may include:
- installing and configuring database systems;
- managing users and permissions;
- monitoring database performance;
- planning backups;
- performing or supporting recovery;
- maintaining availability;
- supporting data security.
Database Developer: A database developer focuses more directly on designing database structures, queries, procedures and data-access components used by applications.
The exact boundary between database administration and database development varies among organizations. In smaller organizations, one professional may perform responsibilities from both areas.
10.8 Network Engineer and Network Administrator
Network Engineer: A network engineer designs, implements and improves network infrastructure that enables devices and systems to communicate.
Network Administrator: A network administrator operates and maintains network infrastructure, monitors connectivity and resolves network-related problems.
Responsibilities may include:
- configuring network devices;
- managing IP addressing;
- maintaining wired and wireless networks;
- monitoring network availability;
- troubleshooting connectivity;
- supporting network security.
A university campus network may connect lecture halls, laboratories, offices, libraries, servers and wireless access points. Network professionals ensure that these components communicate reliably and securely.
10.9 Systems Administrator
A systems administrator manages and maintains computer systems, servers, operating systems, user accounts and related infrastructure within an organization.
Typical tasks include:
- installing and configuring servers;
- creating and managing user accounts;
- managing permissions;
- monitoring system performance;
- installing updates;
- maintaining backups;
- troubleshooting system problems.
Systems administrators require a strong understanding of operating systems, networking, security and automation.
10.10 Cybersecurity Professional
Cybersecurity contains several specialized roles rather than a single occupation.
Professionals may work in:
- security operations;
- security engineering;
- incident response;
- digital forensics;
- application security;
- cloud security;
- security auditing;
- governance, risk and compliance;
- authorized security testing.
Security Analyst: A security analyst may monitor systems, investigate suspicious activities, evaluate vulnerabilities and support responses to security incidents.
Security Engineer: A security engineer designs, implements and maintains technical controls intended to protect systems and information.
Digital Forensics Specialist: A digital forensics specialist applies systematic methods to identify, preserve, examine and interpret digital evidence for authorized investigations.
Security testing must be performed only with appropriate authorization and within an agreed scope. Technical ability does not provide permission to access or test another person's system.
10.11 Data Analyst
A data analyst collects, prepares, examines and presents data in order to answer questions, identify patterns and support decision-making.
A data analyst may work with:
- spreadsheets;
- databases and query languages;
- statistical tools;
- data-visualization software;
- programming languages used for data analysis.
A retail company may ask a data analyst to determine which products sell most strongly during different periods. The analyst cleans the sales data, calculates relevant measures, identifies patterns and presents the findings using tables, charts and explanatory reports.
10.12 Data Scientist
A data scientist applies computational, statistical and mathematical methods to complex datasets in order to extract insight, develop models and support predictions or decisions.
Data-science work may involve:
- data preparation;
- statistical analysis;
- programming;
- machine learning;
- model evaluation;
- data visualization;
- communication of findings.
Data Analyst versus Data Scientist
| Data Analyst | Data Scientist |
|---|---|
| Often focuses on analysing existing data to answer defined questions | May build statistical or machine-learning models for more complex analytical or predictive tasks |
| Frequently emphasizes reporting, trends and visualization | Frequently combines programming, statistics and modelling |
| May work extensively with business intelligence tools and SQL | May work extensively with programming, statistical and machine-learning environments |
In practice, job titles and responsibilities vary considerably between organizations, so these categories may overlap.
10.13 Artificial Intelligence and Machine-Learning Specialist
AI and machine-learning professionals design, train, evaluate, integrate and maintain computational models for tasks involving prediction, classification, language, images, recommendation or decision support.
They may work with:
- machine-learning algorithms;
- neural networks;
- natural language processing;
- computer vision;
- data pipelines;
- model evaluation;
- model deployment.
An organization may develop a system that classifies incoming customer messages according to subject. Machine-learning specialists prepare suitable training data, develop and evaluate models, and work with software engineers to integrate the model into the operational application.
10.14 Cloud Computing Professional
Cloud professionals design, deploy, manage and secure computing infrastructure and applications hosted through cloud platforms.
Their responsibilities may involve:
- virtual computing resources;
- cloud storage;
- managed databases;
- network configuration;
- identity and access management;
- monitoring;
- automation;
- backup and disaster recovery;
- cloud security.
Cloud computing requires knowledge of networking, operating systems, security and distributed systems in addition to knowledge of particular cloud platforms.
10.15 DevOps and Site Reliability Roles
DevOps: DevOps refers to practices and organizational approaches intended to improve collaboration between software development and operations while increasing the reliability and speed of software delivery.
Work associated with DevOps commonly includes:
- automated software building and testing;
- continuous integration;
- deployment automation;
- infrastructure automation;
- monitoring;
- configuration management.
Site Reliability Engineering: Site reliability engineering applies software-engineering approaches to operational problems, with strong attention to system reliability, availability, scalability and automation.
Instead of manually uploading a new application version to a production server each time developers make changes, an automated delivery process can build, test and deploy approved versions consistently.
10.16 User Experience and User Interface Professionals
User Experience: User experience, often abbreviated UX, concerns the overall quality of a person's interaction with a product or system.
UX professionals may conduct user research, examine workflows, create prototypes and evaluate usability.
User Interface Design: User interface, or UI, design focuses more specifically on the visual and interactive elements through which users interact with a digital product.
UI concerns may include:
- layout;
- typography;
- navigation;
- controls;
- visual hierarchy;
- interaction states;
- responsive presentation.
UX and UI are related but not identical. UX considers the broader experience of using the product, whereas UI focuses more directly on the interface through which interaction occurs.
10.17 Computer Hardware and Embedded-Systems Professionals
Some computing careers focus on the physical components of computer systems and on devices in which computing is embedded.
Professionals may work with:
- microprocessors and microcontrollers;
- digital circuits;
- embedded software;
- sensors;
- robotics;
- control systems;
- Internet of Things devices.
An embedded-systems engineer working on an automatic irrigation system may integrate moisture sensors, a microcontroller, communication hardware and software that determines when irrigation equipment should be activated.
10.18 Technical Support and IT Support Professionals
Technical support involves assisting users in diagnosing, resolving and preventing problems involving computer hardware, software, networks and digital services.
Support professionals may:
- install applications;
- configure devices;
- diagnose hardware problems;
- resolve connectivity issues;
- support user accounts;
- document incidents and solutions;
- educate users about appropriate system use.
Effective support requires both technical competence and the ability to communicate clearly with users who may not have technical backgrounds.
10.19 Computing in Research and Academia
Computing professionals may also work in universities, research institutes and industrial research laboratories.
Academic and research careers may involve:
- teaching;
- conducting original research;
- publishing scholarly work;
- developing new algorithms or systems;
- supervising student research;
- collaborating with researchers in other disciplines.
Computing research may be theoretical, experimental or applied. It may address topics ranging from algorithm design to artificial intelligence, cybersecurity, human-computer interaction and computational science.
10.20 Computing Entrepreneurship and Technology Innovation
Computing knowledge can also be used to create new products, services and businesses.
Technology entrepreneurship involves identifying problems or opportunities and developing technology-based products, services or enterprises that provide useful value.
A technology entrepreneur may create:
- software-as-a-service platforms;
- educational technology systems;
- financial technology applications;
- digital marketplaces;
- business automation tools;
- mobile applications;
- data-driven services.
Technical ability alone does not guarantee successful entrepreneurship. Product development also requires understanding users, costs, markets, security, regulations, operations and sustainability.
10.21 Technical and Professional Skills
Different computing careers require different technical skills, but several capabilities are broadly valuable.
Problem Solving: Computing professionals must be able to analyse problems, identify relevant information, divide complex problems into manageable components and develop appropriate solutions.
Programming: Programming is especially important in software development, data science, AI, automation and many areas of cybersecurity and systems administration.
Database Knowledge: Many applications depend on persistent data, making database concepts valuable across numerous computing careers.
Networking: Understanding networks is important because modern systems increasingly communicate with remote services and other devices.
Security Awareness: Security is not solely the responsibility of cybersecurity specialists. Software developers, administrators, database professionals and ordinary users all make decisions that can affect system security.
Documentation: Technical work must often be documented so that others can understand, maintain, evaluate or reproduce it.
10.22 Communication and Teamwork in Computing
Modern computing projects are frequently developed by teams rather than isolated individuals. A software project may involve developers, designers, testers, database specialists, security professionals, project managers and users.
Computing professionals therefore need the ability to:
- explain technical ideas clearly;
- write accurate documentation;
- listen to user requirements;
- participate constructively in technical discussions;
- give and receive feedback;
- coordinate work with other specialists.
A programmer may develop technically correct software that fails to satisfy its users because the requirements were misunderstood. Communication is therefore part of technical competence rather than an optional addition to it.
10.23 Ethics and Professional Responsibility
Computing professionals often have access to powerful systems and sensitive information. Their decisions can affect privacy, finances, education, health, employment and public safety.
Professional ethics in computing concerns the principles and standards that guide responsible conduct in the design, development, use and management of computing systems and information.
Privacy: Professionals should treat personal and confidential information responsibly and should not access or disclose information without legitimate authorization.
Security: Systems should be designed and operated with reasonable protection against foreseeable threats.
Intellectual Property: Software, publications, images, datasets and other digital works may be protected by intellectual-property rights and licensing conditions. Professionals should respect those rights.
Accuracy and Honesty: Professionals should not deliberately misrepresent system capabilities, test results, qualifications or data.
Public Impact: Computing decisions can affect individuals and communities. Professionals should consider foreseeable consequences such as discrimination, exclusion, privacy loss, security risks and system failure.
The ability to perform a technical action does not automatically make the action appropriate, lawful or ethical. Professional computing requires judgement about authorization, consequences and responsibility.
10.24 Continuous Professional Development
Computing changes rapidly. Programming languages evolve, security threats change, hardware improves, standards are revised and new platforms appear. Knowledge acquired at university therefore provides a foundation rather than the final stage of professional learning.
Continuous professional development is the ongoing improvement of a professional's knowledge, skills and competence throughout a career.
Professional development may involve:
- reading technical documentation;
- studying new technologies;
- building practical projects;
- attending professional training;
- participating in professional communities;
- undertaking advanced academic study;
- obtaining relevant professional certifications where appropriate.
The important principle is not simply to accumulate credentials but to maintain genuine competence as technologies and professional requirements change.
10.25 Choosing a Computing Specialization
Students entering computing sometimes assume that they must immediately select one specialization. At an introductory stage, however, it is more important to build strong foundations and understand how the different areas relate.
A student's eventual specialization may depend on interests, abilities and the types of problems the student finds engaging.
| If You Are Particularly Interested In... | Related Areas May Include... |
|---|---|
| Building software applications | Software engineering, web development, mobile development |
| Algorithms and computational problems | Computer science, algorithms, research |
| Protecting systems | Cybersecurity, security engineering |
| Working with data | Data analytics, data science, database systems |
| Intelligent systems | Artificial intelligence, machine learning, robotics |
| Networks and infrastructure | Networking, systems administration, cloud computing |
| Hardware and electronic devices | Computer engineering, embedded systems, IoT |
| Improving user interaction | Human-computer interaction, UX and UI |
| Technology in organizations | Information systems, IT management, systems analysis |
These relationships are guides rather than rigid boundaries. Many professionals eventually develop expertise across several related areas.
10.26 Understanding Computing Career Pathways
A computing career should be understood as a developing pathway rather than a single permanent job title. A person may begin in one role, gain experience and later move into another specialization.
A graduate may begin as a junior software developer, gain experience in web applications and databases, become a senior developer, and later specialize in software architecture, engineering management, cloud systems or technology entrepreneurship.
Similarly, a technical-support professional may develop deeper knowledge of networks and move into network administration. A data analyst may develop stronger statistical and programming skills and later work in data science. Career development therefore involves accumulated knowledge, practical experience and continuing specialization.
Select three computing professions discussed in this chapter. For each profession, identify its main responsibilities, the computing knowledge it requires, the types of problems it solves and the other computing professionals with whom it is likely to collaborate. The purpose is to understand professional relationships rather than merely memorize job titles.
A strong computing professional is defined not merely by knowledge of a particular programming language or software package, but by the ability to understand problems, apply sound computing principles, learn new technologies, communicate effectively and act responsibly.
CHAPTER ELEVEN
The Future of Computing
11.1 Understanding the Future of Computing
Computing has never been a static discipline. From early mechanical calculating devices to electronic computers, personal computers, mobile devices, the Internet, cloud computing and intelligent systems, each major stage of development has changed both the capabilities of computers and the ways in which people interact with information.
The future of computing refers to the continuing development of computational technologies, methods and applications and to the ways these developments may influence individuals, organizations and society. Studying the future of computing does not mean predicting with certainty which particular device, company or technology will dominate in years to come. Rather, it involves examining established technological directions, emerging research areas, persistent computing problems and the social consequences of increasing digitalization.
The future of computing is the continuing evolution of computational hardware, software, networks, data systems and intelligent technologies, together with the new applications, opportunities, limitations and societal consequences produced by that evolution.
Several developments are especially important. Computing systems are becoming increasingly interconnected, data-intensive, automated and embedded in ordinary physical environments. At the same time, questions concerning security, privacy, sustainability, fairness and human control are becoming more significant.
11.2 Factors Driving the Evolution of Computing
Technological change in computing results from several interacting factors rather than from one single development.
Increasing Computational Capability: Advances in processor design, specialized computing hardware and parallel processing continue to increase the types and scale of computations that can be performed. Improvements in computational capability make previously impractical applications more feasible.
Growth of Digital Data: Individuals, businesses, scientific instruments, sensors, communication systems and online services continuously generate digital data. This growth creates demand for better methods of storage, processing, analysis and protection.
Improved Connectivity: Modern communication networks allow devices and services in different locations to exchange information. Increasing connectivity has encouraged distributed applications, remote collaboration, cloud services and interconnected devices.
Automation: Organizations continually seek methods of performing repetitive, dangerous, large-scale or time-sensitive tasks more efficiently. Computing enables many processes to be partly or fully automated.
Human and Social Needs: Computing technology develops partly in response to human problems. Requirements in healthcare, education, agriculture, transportation, scientific research, finance and communication create demand for new computational solutions.
Technological development is not determined by hardware capability alone. Economics, regulation, security, human behaviour, ethics, infrastructure and social acceptance can determine whether a technology becomes widely useful.
11.3 Artificial Intelligence and Intelligent Systems
Artificial intelligence is one of the major areas influencing contemporary and future computing. AI systems are designed to perform tasks associated with abilities such as perception, reasoning, learning, language processing and decision-making.
AI applications already occur in areas such as:
- speech recognition;
- language translation;
- recommendation systems;
- fraud detection;
- computer vision;
- medical-image analysis;
- industrial automation;
- decision-support systems.
Future developments are likely to involve greater integration of AI into ordinary software systems rather than AI existing only as a separate category of application. Word-processing systems, search systems, educational platforms, design applications and business software can incorporate intelligent capabilities directly into their normal functions.
AI as Decision Support: One important application of AI is assisting humans in making decisions. A system may examine a large amount of information, identify patterns and provide recommendations. However, a recommendation generated by a computational system should not automatically be assumed to be correct.
An educational system may analyse student performance and identify learners who appear to require additional academic support. The system can assist teachers by identifying patterns, but educators must still interpret the information carefully because performance can be affected by circumstances that may not be represented in the available data.
11.4 Generative Artificial Intelligence
Generative artificial intelligence refers to AI systems designed to produce new content, such as text, images, audio, video or computer code, in response to instructions or other input.
Generative systems can assist with drafting, summarization, translation, software development, design and other knowledge-based activities. Their increasing capability may significantly influence education and professional work.
Nevertheless, generated output requires evaluation. Such systems can produce inaccurate statements, inappropriate conclusions or material that appears convincing despite being incorrect. Responsible use therefore requires human judgement, verification and awareness of issues involving privacy, intellectual property, bias and accountability.
A system that can generate an answer is not necessarily capable of determining whether that answer is appropriate in every real-world context. Computational capability and responsible judgement are related but different matters.
11.5 Robotics and Autonomous Systems
A robot is a programmable physical system capable of sensing aspects of its environment and performing actions within that environment.
Robotics combines computing with areas such as electronics, control systems, mechanical engineering, sensing and artificial intelligence.
Robots may be used in:
- manufacturing;
- warehouses;
- agriculture;
- medical procedures;
- hazardous environments;
- scientific exploration;
- transportation.
Autonomous Systems: An autonomous system can perform some tasks with limited direct human intervention by using information from sensors, programmed rules or intelligent decision-making methods.
An autonomous warehouse vehicle may use sensors to estimate its position, software to determine a route and control mechanisms to move goods between storage locations while detecting obstacles.
The greater the autonomy of a system, the more important questions of reliability, safety, accountability and human oversight become.
11.6 Internet of Things and Connected Environments
The Internet of Things extends computing beyond traditional desktop and mobile devices by incorporating sensing, communication and computational capabilities into physical objects.
IoT systems commonly contain:
- sensors that collect data;
- processors or controllers;
- communication interfaces;
- software for processing information;
- remote platforms for storage, analysis or control.
Sensors distributed across farmland can measure environmental conditions. Measurements can be transmitted to a digital platform where farmers examine conditions and use the information to support irrigation or crop-management decisions.
As more physical objects become connected, security becomes particularly important. A poorly secured connected device can expose information or provide an entry point into a larger network.
11.7 Cloud Computing and the Changing Computing Infrastructure
Cloud computing has changed the way organizations obtain and use computing resources. Instead of owning every server and application locally, organizations can obtain computing infrastructure, platforms and software through remote services.
Cloud computing can provide:
- computing capacity;
- data storage;
- managed databases;
- application hosting;
- backup facilities;
- analytics platforms;
- AI services.
An important feature of cloud computing is the ability to adjust resources according to changing demand. A service experiencing increased usage can potentially obtain additional computational capacity without immediately purchasing and installing new physical machines.
An online registration platform may receive relatively little traffic during most of the semester but experience heavy demand during registration periods. Flexible infrastructure can allow computing resources to be adjusted to accommodate these changes.
11.8 Edge Computing
Edge computing is an approach in which some data processing is performed close to the devices or locations where data are generated rather than sending all data to a distant centralized computing facility.
Edge computing can be useful where rapid response is required, network connectivity is limited, or transmitting every piece of raw data would be inefficient.
An industrial machine may generate sensor readings many times each second. A local computing device can immediately analyse the readings for dangerous conditions while only selected information is transmitted to a remote server for long-term storage.
11.9 Big Data and Data-Driven Computing
Modern organizations increasingly use large and complex datasets to support research, planning and decision-making. The expression big data is commonly used for datasets or data-processing situations whose scale, speed or complexity creates difficulties for conventional methods.
Data-driven computing may be used to:
- identify patterns;
- forecast demand;
- detect unusual events;
- personalize services;
- support scientific discovery;
- evaluate organizational performance.
Large quantities of data do not automatically produce good conclusions. Data quality, representativeness, analytical methods and interpretation remain essential.
More data are not necessarily better data. Incorrect, incomplete or biased data can produce misleading results regardless of the sophistication of the computing system used to analyse them.
11.10 Cybersecurity in the Future of Computing
As society becomes more dependent on interconnected computing systems, cybersecurity becomes increasingly important. Future computing systems may control not only information but also physical infrastructure and automated processes.
Major concerns include:
- unauthorized access;
- identity theft;
- malware;
- data breaches;
- service disruption;
- fraud;
- attacks on connected devices;
- security weaknesses in software supply chains.
Future cybersecurity will require both stronger defensive technologies and better security practices throughout system design and operation.
Security by Design: Security by design means considering security requirements from the beginning of system development rather than attempting to add protection only after the system has been completed.
When designing a student portal, authentication, authorization, password protection, secure communication, input validation, audit records and data privacy should be considered during system design rather than after deployment.
11.11 Virtual, Augmented and Mixed Reality
Virtual Reality: Virtual reality uses computer-generated environments designed to provide users with an immersive experience.
Augmented Reality: Augmented reality adds computer-generated information or objects to a user's view of the physical environment.
Mixed Reality: Mixed reality combines physical and digital elements in ways that permit more integrated interaction between them.
| Technology | Main Idea | Illustrative Application |
|---|---|---|
| Virtual Reality | Places the user within a substantially computer-generated environment | Simulation and immersive training |
| Augmented Reality | Adds digital information to the physical-world view | Displaying maintenance instructions over equipment |
| Mixed Reality | Integrates physical and digital elements for interactive use | Interactive three-dimensional design environments |
These technologies have potential applications in education, engineering, medicine, entertainment, architecture and professional training.
11.12 Quantum Computing
Most computers encountered in everyday use are based on classical computing principles. Quantum computing explores computation using phenomena described by quantum mechanics.
Quantum computing is a model of computation that processes information using quantum-mechanical systems and quantum information units known as qubits.
Bits and Qubits: A classical bit is represented as one of two logical states, conventionally written as 0 or 1. A qubit is a quantum system whose state can involve a superposition of basis states until measurement.
Quantum computing should not be interpreted simply as an ordinary computer operating at a much higher speed. Quantum algorithms use computational principles that differ fundamentally from those of classical computing, and their advantages apply to particular classes of problems.
Research areas include quantum algorithms, simulation, optimization and cryptography-related problems. Significant engineering challenges remain in constructing reliable, large-scale quantum computers.
Quantum computers are not expected to make classical computers unnecessary. Classical computing remains more appropriate for many ordinary computational tasks, while quantum methods are being investigated for problems where their distinctive properties may provide useful advantages.
11.13 Green and Sustainable Computing
Green computing refers to approaches intended to reduce the environmental impact associated with the design, production, operation and disposal of computing technologies.
Environmental concerns include:
- electricity consumption;
- cooling requirements of computing facilities;
- electronic waste;
- resource consumption during manufacturing;
- replacement cycles of electronic devices.
Sustainable computing may involve energy-efficient hardware, efficient software, responsible equipment management, improved cooling systems, renewable energy sources and proper recycling of electronic equipment.
11.14 Computing in Education
Computing is transforming the delivery, administration and accessibility of education.
Applications include:
- digital libraries;
- learning-management systems;
- computer-based assessment;
- virtual laboratories;
- educational simulations;
- online learning;
- academic analytics;
- assistive educational technologies.
A student can use an online learning platform to access course material, complete assessments and receive feedback without being physically present in a conventional classroom. Such systems can extend access, although their effectiveness still depends on instructional quality, infrastructure and accessibility.
11.15 Computing in Healthcare
Healthcare increasingly relies on computational systems for information management, diagnosis support, research and medical technology.
Examples include:
- electronic health records;
- medical imaging;
- telemedicine;
- laboratory information systems;
- clinical decision support;
- wearable monitoring devices;
- computer-assisted research.
Because health information is sensitive and errors can have serious consequences, healthcare computing requires particularly strong attention to privacy, security, reliability and professional oversight.
11.16 Computing in Agriculture
Modern agriculture can use computing for data collection, planning, monitoring and automation.
Applications include:
- soil and environmental sensing;
- weather-data analysis;
- farm-management information systems;
- satellite and drone imagery;
- automated irrigation;
- livestock monitoring;
- crop-disease detection.
A farm may combine soil-moisture sensors, weather information and an automated irrigation controller. Instead of watering solely according to a fixed timetable, the system can use measured conditions to support more efficient irrigation decisions.
11.17 Computing in Transportation and Smart Cities
Transportation systems increasingly depend on computing for navigation, traffic management, ticketing, logistics, vehicle monitoring and safety.
A smart city uses digital technologies and data to support the management and delivery of urban services.
Possible applications include:
- traffic monitoring;
- public transport management;
- energy monitoring;
- waste-management systems;
- environmental sensing;
- emergency-response coordination;
- digital public services.
Smart-city systems can improve efficiency, but they also raise important questions about surveillance, privacy, security and unequal access to digital services.
11.18 Computing and the Future of Work
Computing has repeatedly changed the nature of work. Some tasks that once required substantial manual effort can now be automated, while entirely new professions have emerged around software, networks, cybersecurity, data and digital services.
Future automation is likely to affect tasks differently rather than affecting all occupations in the same manner. Routine and highly structured activities are often easier to automate than work requiring complex physical interaction, contextual judgement, responsibility or human relationships.
Job Transformation: Technology can transform an occupation without eliminating it. For example, accounting software automates many calculations but does not eliminate the need for professional interpretation, auditing, planning and judgement.
New Professional Roles: Technological development also produces new areas of specialization. Roles associated with cloud computing, data science, AI engineering, cybersecurity and digital-product design have expanded as new systems have developed.
The effect of computing on employment should not be reduced to the claim that computers simply replace people. Technology can automate tasks, change occupations, create new roles and alter the skills required for existing work.
11.19 Ethical and Social Issues in Future Computing
Technological capability must be considered together with ethical and social responsibility. A system may be technically possible without necessarily being desirable or appropriate in every context.
Privacy: Digital systems can collect extensive information about individuals. Responsible computing requires careful consideration of what information is collected, why it is required, how long it is retained and who may access it.
Algorithmic Bias and Fairness: Automated systems may produce unfair outcomes when training data, assumptions, measurements or design decisions introduce inappropriate bias. Systems used for consequential decisions therefore require careful evaluation.
Accountability: When automated systems influence important decisions, responsibility for those decisions must not become unclear merely because software was involved.
Misinformation and Synthetic Content: Technologies capable of generating realistic text, audio, images and video can be used constructively but may also be used to create misleading or deceptive content. This increases the importance of verification and digital literacy.
11.20 Digital Inclusion and the Digital Divide
The digital divide refers to inequalities in access to digital technologies, connectivity, skills and opportunities to benefit meaningfully from computing resources.
The digital divide is not simply a question of whether a person owns a computer. Meaningful digital participation may depend on:
- reliable electricity;
- affordable Internet connectivity;
- appropriate computing devices;
- digital literacy;
- accessible software;
- relevant digital content.
As education, employment, commerce and public services become more digital, lack of effective access can deepen existing social inequalities.
11.21 Human Skills in an Increasingly Automated World
The increasing capability of computers does not remove the importance of human knowledge. Instead, it changes the combination of skills that people require.
Important abilities include:
- critical thinking;
- problem solving;
- communication;
- creativity;
- ethical reasoning;
- domain knowledge;
- ability to evaluate computational output;
- ability to learn new technologies.
A professional who uses an intelligent system must still understand the problem being addressed. Without sufficient subject knowledge, it may be difficult to recognize when a computer-generated result is unreasonable.
11.22 Responsible Development of Future Technologies
The future of computing should not be evaluated solely by asking what technology can do. Responsible development also asks whether a system is secure, fair, reliable, accessible, sustainable and beneficial in its intended context.
Important considerations include:
- Who benefits from the system?
- Who may be harmed by its failure or misuse?
- What information does it collect?
- How is that information protected?
- Can important decisions be reviewed?
- Is the system accessible to its intended users?
- What environmental resources does it consume?
- Who remains accountable for its operation?
Consider an AI system used to support university admissions. High predictive accuracy alone would not be sufficient to establish that the system is appropriate. Developers and administrators would also need to examine the quality and relevance of the data, fairness of the criteria, protection of applicants' information, possibility of errors, transparency of the process and mechanisms for human review.
The central lesson is that technological progress and responsible computing must develop together. Future computing professionals will therefore require both technical competence and the ability to understand the human consequences of the systems they create.
CHAPTER TWELVE
Practical Computer and Internet Skills
12.1 Introduction to Practical Computing
Knowledge of computing is incomplete without the ability to use computing devices effectively. A student may understand the meaning of hardware, software, operating systems and the Internet but still experience difficulty performing ordinary academic tasks if that knowledge has not been converted into practical competence.
Practical computing skills are the abilities required to operate computing devices, manage digital information, use common applications, communicate through networks and perform routine digital tasks effectively and responsibly.
This chapter brings together the practical aspects of the course. The emphasis is not merely on identifying commands but on understanding what is being done and why.
12.2 Identifying the Physical Components of a Computer
Before operating a computer, a student should be able to recognize its principal physical components.
A typical desktop computer installation may contain:
- system unit;
- monitor;
- keyboard;
- mouse;
- speakers or headphones;
- printer or other peripheral devices.
The system unit contains important internal components such as the processor, main memory, storage devices, motherboard and power supply. The monitor displays visual output, while the keyboard and mouse provide common methods of user input.
Examine an available desktop computer. Identify the monitor, system unit, keyboard and mouse. Locate available USB ports, audio connections, network connections and display connectors without disconnecting equipment unnecessarily. Compare these external components with those of a laptop computer.
12.3 Starting and Shutting Down a Computer Correctly
A computer should be started and shut down using appropriate procedures. Modern operating systems perform several processes when starting or terminating a session.
Starting a Computer: A general procedure is:
- Ensure that required power connections are secure.
- Switch on necessary power equipment.
- Press the computer's power button.
- Allow the operating system to load.
- Sign in using an authorized account where required.
Shutting Down: Before shutting down:
- Save open work.
- Close applications where appropriate.
- Use the operating system's shutdown command.
- Allow the shutdown process to complete.
Abruptly removing power while the operating system or an application is writing data can cause loss of unsaved work and, in some circumstances, corruption of files or system information.
12.4 Understanding the Operating-System Environment
An operating system provides the environment through which users interact with the computer and applications. Common computing devices use different operating systems, but many share similar concepts.
A graphical operating-system interface commonly provides:
- windows;
- icons;
- menus;
- buttons;
- application launchers;
- file-management tools;
- system settings;
- notifications.
Desktop and Laptop Operating Systems: Desktop and laptop computers may use operating systems such as Windows, macOS or Linux distributions. Although their interfaces differ, each provides mechanisms for running applications, managing files, controlling hardware and configuring the system.
Mobile Operating Systems: Smartphones and tablets commonly use mobile operating systems such as Android and iOS. These environments emphasize touch input, application permissions, wireless connectivity and mobile application management.
Compare a desktop or laptop computer with a smartphone or tablet. Identify how each device launches applications, displays notifications, manages settings, connects to a wireless network and stores user files.
12.5 Working with Files and Folders
File management is one of the most fundamental practical computing skills. Poor file organization can cause students to lose work even when the files still exist somewhere on the storage device.
A file is a named collection of digital data stored as a unit on a storage system.
A folder, also called a directory, is a logical container used to organize files and other folders.
Creating a Folder Structure: A student may organize academic files as follows:
University Work → 100 Level → First Semester → COS 101 → Assignments
A meaningful folder structure makes information easier to locate than storing every document in one location.
Common File Operations: Students should be able to:
- create files and folders;
- open files;
- rename files;
- copy and move files;
- delete files;
- restore files where recovery facilities are available;
- search for files;
- inspect file properties.
Copying versus Moving
| Copying | Moving |
|---|---|
| Creates another instance of the selected data at the destination. | Changes the location of the selected data. |
| The original normally remains at its previous location. | The item no longer remains at the original location after a successful move. |
12.6 File Extensions and File Types
A filename extension is a suffix, commonly appearing after a full stop in a filename, that helps identify a file's format or type.
| Extension | Common Type | Example Use |
|---|---|---|
| .docx | Word-processing document | Reports and assignments |
| .xlsx | Spreadsheet workbook | Tables and calculations |
| .pptx | Presentation | Lecture or seminar slides |
| Portable document | Published or fixed-layout documents | |
| .txt | Plain-text file | Unformatted textual information |
| .jpg or .jpeg | Image file | Photographs |
| .png | Image file | Graphics and screenshots |
| .mp3 | Audio file | Compressed digital audio |
| .mp4 | Multimedia container | Commonly used for digital video |
Simply changing a filename extension does not properly convert a file from one format to another. Conversion requires software capable of interpreting the original format and producing the required output format.
12.7 Basic Keyboard and Mouse Skills
Efficient use of input devices improves practical computer operation. The keyboard provides letters, numbers, punctuation marks, function keys, navigation keys and modifier keys.
Common keyboard combinations include:
| Combination | Common Function in Many Desktop Applications |
|---|---|
| Ctrl + C | Copy selected content |
| Ctrl + X | Cut selected content |
| Ctrl + V | Paste |
| Ctrl + Z | Undo the previous action |
| Ctrl + S | Save |
| Ctrl + A | Select all within the active context |
| Ctrl + F | Find text or content |
Keyboard shortcuts can vary among operating systems and applications. The combinations above are common in many Windows and Linux desktop applications.
12.8 Using Word-Processing Applications
A word processor is an application used to create, edit, format, save and produce text-based documents.
Word-processing applications are used for:
- assignments;
- reports;
- letters;
- research projects;
- curricula vitae;
- meeting documents.
Common capabilities include text entry, editing, paragraph formatting, page layout, tables, images, headers and footers, spelling assistance and document printing.
12.9 Creating and Formatting a Document
Suppose a student is required to prepare a short academic report. A sensible procedure is:
- Open the word-processing application.
- Create a new document.
- Enter the required text.
- Organize the document using appropriate headings and paragraphs.
- Apply consistent fonts, sizes and spacing.
- Insert tables or illustrations only where relevant.
- Review spelling and content.
- Save the editable document.
- Export or print to another format if required.
Formatting and Structure: Good document formatting should support meaning. A heading should look like a heading because it represents a structural level in the document, not merely because the writer wants some text to appear larger.
Create a one-page document containing a title, two headings, several paragraphs and a small table. Format the title and headings consistently, save the editable document and produce a PDF version. Compare the editable document with the fixed-layout PDF.
12.10 Using Spreadsheet Applications
A spreadsheet is an application that organizes data in cells arranged in rows and columns and provides facilities for calculation, analysis and presentation.
A spreadsheet file is commonly called a workbook, while individual working pages within the workbook are called worksheets.
Cells and Cell References: A cell occurs at the intersection of a row and a column. Columns are commonly identified by letters and rows by numbers. Therefore, B4 identifies the cell in column B and row 4.
If the value 500 is stored in cell B2 and 300 is stored in B3, a formula can be entered in another cell to calculate their total.
12.11 Spreadsheet Formulae and Functions
A spreadsheet formula commonly begins with the equals sign.
=B2+B3
If B2 contains 500 and B3 contains 300, the formula returns 800.
Using SUM: Suppose five scores are stored in cells B2 to B6. Their total can be obtained using:
=SUM(B2:B6)
Using AVERAGE: The arithmetic mean of the same values can be obtained using:
=AVERAGE(B2:B6)
Worked Spreadsheet Example
| Course | Score |
|---|---|
| COS 101 | 74 |
| MTH 101 | 68 |
| PHY 101 | 71 |
| GST 101 | 80 |
| CHM 101 | 67 |
If these scores occupy cells B2:B6, then:
Total: =SUM(B2:B6)
74 + 68 + 71 + 80 + 67 = 360
Average: =AVERAGE(B2:B6)
Average = 360 ÷ 5 = 72
The important advantage of using formulas is that the calculated result can be updated automatically when referenced data change.
12.12 Using Presentation Software
Presentation software is an application used to organize and display information as a sequence of visual pages commonly called slides.
Presentation software can combine:
- text;
- images;
- charts;
- tables;
- diagrams;
- audio;
- video;
- animations and transitions.
A good presentation should not simply reproduce a long written report on slides. Slides are visual communication aids and should emphasize the main ideas being presented.
Create a short presentation containing a title slide, a content slide, a slide containing an image or diagram, and a concluding slide. Run the presentation in slide-show mode and confirm that all text remains readable from a reasonable viewing distance.
12.13 Working with Printers, Scanners and Projectors
Printer: A printer converts digital information into physical printed output. Before printing, the user should confirm the correct printer, page range, number of copies, paper size and orientation.
Scanner: A scanner captures information from a physical document or image and converts it into digital form.
Projector: A projector displays computer-generated visual output on a larger surface. Projectors are widely used for lectures, meetings and presentations.
Smart Board: An interactive smart board combines large-format visual display with interactive input capabilities. Depending on the system, users may interact with displayed material through touch or a special input device.
Connect a computer to an available projector or external display. Identify the available display modes and demonstrate how the computer's output can be duplicated or extended to the second display.
12.14 Using Smartphones, Tablets and Smart Boards
Computing is no longer restricted to conventional desktop computers. Smartphones and tablets provide substantial computing capabilities through mobile operating systems and applications.
Students should understand how to:
- install and remove authorized applications;
- manage wireless connections;
- adjust basic device settings;
- manage application permissions;
- capture and share files appropriately;
- use cloud synchronization where required;
- apply device-security features.
Although smartphones can perform many tasks associated with personal computers, differences in screen size, input methods, storage, operating systems and application capabilities may make a desktop or laptop more suitable for some academic tasks.
12.15 Connecting to and Using the Internet
To access Internet services, a computing device normally requires a network connection through an Internet service provider or another connected network.
Connection methods may include:
- Wi-Fi;
- mobile cellular data;
- Ethernet;
- other fixed or wireless broadband technologies.
Once connected, the user can access services such as the Web, electronic mail, cloud applications, messaging and online learning platforms.
12.16 Web Browsers and Search Engines
Students sometimes use the terms browser and search engine as though they mean the same thing. They do not.
A web browser is an application that retrieves, interprets and displays web resources and enables users to interact with websites and web applications.
A search engine is an online information-retrieval service that indexes web resources and allows users to search for information using queries.
| Web Browser | Search Engine |
|---|---|
| Software used to access and interact with web resources. | A service used to locate indexed information on the Web. |
| Examples include Chrome, Firefox, Edge and Safari. | Examples include Google Search, Bing and DuckDuckGo. |
| Can directly open a known web address. | Accepts search queries and returns relevant indexed results. |
A student may open a browser and then visit a search engine through that browser. The browser is the application being used to access the Web; the search engine is one of the services being accessed.
12.17 Effective Web Searching
Effective searching involves expressing an information need clearly enough for a search system to identify relevant resources.
A vague query such as:
computer
may produce an extremely broad range of results. A more specific query such as:
functions of operating system undergraduate computing
provides clearer information about what is required.
Using Exact Phrases: Many search engines allow quotation marks to request an exact phrase. For example:
"human computer interaction"
asks the search engine to consider that particular phrase rather than treating the words entirely independently.
Refining Search Terms: If a search produces irrelevant results, add terms that identify:
- the specific topic;
- the required context;
- the type of resource;
- the relevant academic field.
Search for information about computer networks using a broad query. Examine the results. Repeat the search using a more specific query concerning a particular aspect of computer networks. Compare how the relevance of the results changes.
12.18 Accessing Online Academic Resources
The Internet provides access to textbooks, journal articles, institutional repositories, digital libraries, research databases and educational resources. However, academic searching requires more judgement than simply accepting the first result produced by a general web search.
Useful academic resources may be found through:
- university digital libraries;
- institutional repositories;
- academic databases;
- scholarly search services;
- government and professional websites;
- publisher platforms.
Students should examine the author, publisher, publication context, date, evidence and relevance of a source before relying on it for academic work.
12.19 Downloading and Uploading Files
Downloading is the transfer of data from a remote computer or service to the user's device or local environment.
Uploading is the transfer of data from the user's device or local environment to a remote computer or online service.
Saving a lecture PDF from an online course portal onto a laptop is downloading. Submitting an assignment file from the laptop to the course portal is uploading.
Before uploading a file, verify:
- that the correct file has been selected;
- that the required file format is being used;
- that the file is within permitted size limits;
- that the upload has completed successfully.
12.20 Using Electronic Mail
Electronic mail, or email, is a network-based system for exchanging digital messages between users identified by electronic mail addresses.
A typical email message may contain:
- recipient address;
- subject;
- message body;
- attachments;
- carbon-copy recipients where required.
Writing an Academic Email: Academic email should normally contain a meaningful subject and a clear message explaining the purpose of the communication.
Subject: COS 101 Assignment Submission Enquiry
The message should briefly identify the relevant issue, provide the necessary information and close respectfully. A subject such as “Hello” provides less useful information than one that identifies the purpose of the message.
Email Attachments: Before sending an attachment, confirm that:
- the intended file is attached;
- the filename is meaningful;
- the file opens correctly;
- the format is appropriate for the recipient.
12.21 Online Communication and Collaboration
Modern computing enables people in different locations to work on shared activities.
Digital collaboration may involve:
- video conferencing;
- instant messaging;
- shared documents;
- cloud storage;
- project-management platforms;
- learning-management systems.
Effective online collaboration requires clear communication and appropriate management of access permissions. A shared file should not automatically be made publicly accessible when only members of a particular group require access.
12.22 Basic Digital Security Practices
Practical computing includes the ability to protect devices, accounts and information.
Passwords: Passwords should be difficult for unauthorized persons to guess. Reusing the same password across many important services increases the consequences if one service is compromised.
Multi-Factor Authentication: Where available, multi-factor authentication provides an additional layer of account protection by requiring more than one type of authentication evidence.
Software Updates: Software updates may correct security weaknesses as well as add features and fix errors. Delaying important security updates can leave known vulnerabilities uncorrected.
Suspicious Messages and Links: Users should be cautious when messages unexpectedly request passwords, financial information, authentication codes or urgent action through unfamiliar links.
Backups: Important information should have suitable backups so that failure, theft, accidental deletion or other incidents do not destroy the only available copy.
A student receives a message claiming that a university account will be disabled immediately unless the student signs in through an unfamiliar link. Rather than entering credentials through the message, the student should independently access the institution's official service and verify the claim through an appropriate channel.
12.23 Evaluating Information Found Online
Access to information is not the same as access to reliable information. Anyone may publish material online, and search-engine ranking does not by itself establish academic accuracy.
When evaluating online information, consider the following.
Authority: Who produced the information? Does the author or organization possess relevant expertise or responsibility for the subject?
Evidence: Are important claims supported by appropriate evidence, data or references?
Currency: Is the information sufficiently current for the subject? Some foundational concepts remain stable, while information about software, policies, security and technology may become outdated quickly.
Purpose: Determine whether the material is intended to educate, report, advertise, persuade, entertain or deceive.
Corroboration: Important claims should be compared with reliable independent sources, especially when the information is surprising, consequential or controversial.
Suppose an anonymous webpage makes a technical claim that contradicts established documentation. The student should not accept the claim merely because it appears near the top of search results. The claim should be checked against authoritative technical documentation, textbooks or other reliable sources.
12.24 Integrating Practical Computing Skills
Practical computing skills are most useful when they are combined. Real academic and professional tasks rarely require only one isolated application.
Suppose a student is required to investigate the use of computing in Nigerian agriculture and present the findings to a class.
The task may require the student to:
- use a web browser and search tools to locate relevant information;
- evaluate the reliability of the sources;
- download appropriate academic materials;
- organize downloaded files into suitable folders;
- use a word processor to prepare a written report;
- use a spreadsheet to organize numerical data where necessary;
- create charts from relevant data;
- prepare presentation slides;
- save and back up the work;
- submit the required files electronically;
- connect the computer to a projector or display for presentation.
This illustrates why practical computing should be understood as an integrated set of abilities rather than a collection of unrelated commands.
A student who understands these skills can transfer them between different applications and operating systems. Menus and icons may change, but fundamental concepts such as files, folders, saving, searching, copying, uploading, formatting and authentication remain widely applicable.
Digital competence is not the memorization of where particular buttons are located. It is the ability to understand a computing task, select appropriate tools, perform the task accurately, protect information and adapt when the software or device changes.
References
The following authoritative texts provide further reading and academic support for the concepts covered in COS 101: Introduction to Computing Sciences.
- Brookshear, J. G., & Brylow, D. (2020). Computer Science: An Overview (13th ed.). Pearson.
- Dale, N., & Lewis, J. (2016). Computer Science Illuminated (6th ed.). Jones & Bartlett Learning.
- Evans, A., Martin, K., & Poatsy, M. A. (2018). Technology in Action Complete (14th ed.). Pearson.
- Forouzan, B. A. (2013). Foundations of Computer Science (3rd ed.). Cengage Learning.
- Kurose, J. F., & Ross, K. W. (2021). Computer Networking: A Top-Down Approach (8th ed.). Pearson.
- Laudon, K. C., & Laudon, J. P. (2020). Management Information Systems: Managing the Digital Firm (16th ed.). Pearson.
- Morley, D., & Parker, C. S. (2017). Understanding Computers: Today and Tomorrow, Comprehensive (16th ed.). Cengage Learning.
- National Universities Commission. (2022). Core Curriculum and Minimum Academic Standards for the Nigerian University System: Computing. National Universities Commission, Abuja.
- Norton, P. (2006). Introduction to Computers (6th ed.). McGraw-Hill.
- Stair, R., & Reynolds, G. (2018). Principles of Information Systems (13th ed.). Cengage Learning.
- Tanenbaum, A. S., & Bos, H. (2015). Modern Operating Systems (4th ed.). Pearson.
- Vermaat, M. E., Sebok, S. L., Freund, S. M., Campbell, J. T., & Frydenberg, M. (2018). Discovering Computers 2018: Digital Technology, Data, and Devices. Cengage Learning.