What Is Computer Software? Core Definitions and Everyday Uses

UPI Study › Courses › Software Engineering › Free lessons › Lesson 1.1 Free with a free account

What Is Computer Software? Core Definitions and Everyday Uses

Software Engineering · Chapter 1: Foundations of Software Engineering and Process ModelsSection 1.1 · lesson 1 of 1038 min · free with a free account

Next lesson: The Software Engineering Process: From Requirements Through Deployment →

Earn 3 college credits for Software EngineeringRecommended for credit by NCCRS · Computer Science 301 · self-paced · one payment, lifetime access

In this lesson

Core definitions, 2 kinds of software, what makes it different, and where it shows up.

  • Define software, and distinguish it from hardware
  • Differentiate system software from application software
  • Explain what makes software behave unlike physical products
  • Recognize how software supports tasks across industries

Transcript

Everything said in the video, section by section (1,061 words). Read along, or search it.

Foundations of Software Engineering and Process Models

What Is Computer Software?

Open a laptop, a phone, or a car dashboard, and you are looking at two very different kinds of engineering working together. One kind you can hold in your hand. The other you can never touch, yet it is the part that tells the machine what to do. That second kind is software. This section builds the vocabulary you will rely on for the rest of the course. What software is, the two families of software, what makes it unlike any physical product, and where it shows up in everyday life.

2 Halves of Every Computer

Software and Hardware

Computer software is a set of instructions, written in a programming language, that tells a computer's physical components what to do, and how. It has no mass, no shape, and no physical location you can point to. It exists as logically organized data, stored on a physical device, but never itself a physical object. Computer hardware is every physical, touchable component of a computing system. The processor that carries out instructions, the memory and storage that hold data, the screen, the keyboard, and the circuitry connecting them. Hardware has weight, takes up space, and can be damaged by a drop, a spill, or ordinary wear. Neither half is useful without the other. Hardware with no software has no instructions to follow. Software with no hardware is just a file, with nowhere to run.

Table 1.1

Hardware and Software Compared

Here the two are side by side. Hardware is physical and tangible. Software is logical and intangible. Hardware wears down through friction and heat. Software runs identically every time it executes. To modify hardware, you replace or repair parts. To modify software, you edit the code and reinstall it. Hardware typically fails from physical damage, or aging components. Software fails from logic errors, or incompatible updates. A processor, a keyboard, and a hard drive are hardware. An operating system, a browser, and a mobile app are software.

2 Types of Program

System Software vs. Application Software

Not all software plays the same role. It falls into two broad categories. System software manages the computer's own resources, and provides the foundation everything else runs on. It starts running the moment the machine powers on, and usually works quietly in the background. The operating system is the most familiar example. It manages memory, schedules the processor, and controls input and output devices. Device drivers, firmware, and utilities belong here too. Application software helps a person accomplish a specific task. A word processor, a web browser, a spreadsheet, or a mobile banking app. An application does not manage the computer itself. It relies on system software for memory, storage, and the screen. Here is a simple test. If removing a piece of software would stop the whole computer working, it is system software. If removing it only takes away one specific task, while the computer keeps running, it is application software.

What Makes Software Different (1)

Developed, Not Manufactured

Software behaves in ways that have no real equivalent among physical products. These traits shape almost every later engineering decision. First, software is developed, not manufactured. A physical product is built from raw materials that are shaped, assembled, and consumed in the process. Software is written, and logically designed. And once written, a program can be copied an unlimited number of times, at effectively no material cost. Each copy is simply a pattern of data, not a separately manufactured object.

Figure 1.2

Why Software Doesn't Wear Out

Second, software does not wear out. The solid line falling across the chart is hardware. Friction, heat, and repeated use gradually wear it down, year after year. The flat line at the top is software's logic. A copy of a program runs exactly as written, a thousand times or a million times. The dashed line is software's real-world usefulness. It can drift downward over time. Not because the code aged, but because the world around it moved on.

What Makes Software Different (2)

Obsolete, Not Worn Out

A mechanical part degrades with each use. Software has no moving parts to wear down. A program executes its instructions exactly the same way on run number one, and run number one million. When software seems to break down over time, the cause is almost never the code itself. It is usually a change in the surrounding environment. An operating system update, a new device, or requirements that shifted, that the original code was never written to handle. This is described as software becoming obsolete, rather than worn out. So when a colleague says a laptop's operating system feels worn out after five years, the code has not degraded. Newer software, and newer needs, have moved on around it.

What Makes Software Different (3)

Custom-Built or Assembled

Third, software can be custom-built, or assembled from ready-made parts. Custom-built software is written from the ground up, to satisfy one organization's specific requirements. The way a tailor builds a suit to one customer's measurements. Assembled software is combined from existing, reusable components. Pre-written libraries, frameworks, and off-the-shelf modules, configured rather than written from scratch. Most real projects sit somewhere between the two. They reuse proven components for common problems, and write custom code for whatever makes the project unique.

Table 1.2

Software Across Everyday Industries

Software becomes concrete once you notice how many industries depend on it. In healthcare, electronic health record systems store patient histories, prescriptions, and test results. In retail, point-of-sale and inventory systems process purchases, and track stock in real time. In banking, mobile apps let customers check balances, transfer funds, and deposit checks remotely. In transportation, navigation and ride-hailing apps calculate routes, and connect riders with drivers. In education, learning management systems deliver course content, assignments, and grades. And in entertainment, streaming platforms deliver on-demand media over the internet.

Key Terms

The Vocabulary of This Section

Let's lock in the key terms. Software is a set of logically organized instructions. Hardware is the physical components those instructions direct. System software manages a computer's own resources, and provides the foundation other software runs on. Application software helps a user perform a specific task. Obsolescence is software losing usefulness because its environment or requirements changed, not because the code degraded. And custom-built software is written from scratch, to meet one organization's requirements.

Key Takeaways

What to Carry Forward

To pull this together. Software is the logical set of instructions that directs hardware, and each is useless without the other. System software manages the computer itself. Application software helps a user perform a specific task. Software is developed, not manufactured, so copies cost almost nothing. Software does not physically wear out. It becomes obsolete when the environment around it changes. And software ranges from fully custom-built to assembled from reusable parts, supporting everyday tasks in virtually every industry.

About Software Engineering at UPI Study

Software Engineering (Computer Science 301) is a self-paced online course of 103 video lessons in 15 chapters, from process models and agile to requirements, design, user interfaces, reliability, security and project management. It carries a NCCRS credit recommendation for 3 semester credits.

Every lesson transcript is free on pages like this one, and the videos are free with a free UPI Study account. Enrolling adds a practice quiz after each lesson, the graded work and final exam that earn the credit, lifetime access, and an official transcript on completion. UPI Study has helped over 130,000 students with college credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.

Compare: Software Engineering vs Systems Analysis

Why take it here

Why students take Software Engineering with UPI Study

How professional software gets builtSoftware Engineering covers how teams turn requirements into working, maintainable software: process models, agile, requirements, design, testing, reliability and project management. It is a core course in computer science and software degrees.
Credit at a fraction of the priceThe same 3 credits can cost $750 or more at a US college. Here it is one payment, self-paced, with lifetime access.
Finish your degree soonerTransfer credits reduce the courses you still owe, so you can graduate earlier or lighten a heavy semester.
Strengthen an applicationA completed college-level course on an official transcript shows admissions and scholarship committees you can do the work.
Study on your own scheduleNo start dates, no deadlines. Watch the lessons, practice, and take the final when you are ready.
130,000+students helped with college creditsACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.

Where the credit goes

Universities that work with NCCRS

Software Engineering carries a NCCRS credit recommendation. These universities work with NCCRS; some are UPI Study's signed partners. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.

Find my college → Not listed? Ask Athena in the corner of this page, or book a 15-minute call.

FAQ

Questions students ask us

About What Is Computer Software? Core Definitions and Everyday Uses

What is the difference between computer software and hardware?
Hardware is every physical, touchable part of a computer, such as the processor, memory, keyboard and screen, while software is the set of instructions that tells that hardware what to do. Software has no mass or shape; it exists as logically organized data stored on a physical device. Neither is useful alone: hardware without software has nothing to follow, and software without hardware has nowhere to run.
What is the difference between system software and application software?
System software manages the computer's own resources and provides the foundation other programs run on, while application software helps a person complete a specific task. Operating systems, device drivers, firmware and utilities are system software; word processors, browsers and banking apps are applications. A simple test: if removing a program would stop the whole computer working, it is system software.
Why doesn't software wear out like hardware?
Software does not wear out because it has no moving parts; a program executes its instructions the same way on its first run and its millionth. Hardware degrades from friction, heat and repeated use. When software seems to decline over time, the usual cause is a changed environment, such as an operating system update, a new device or shifted requirements. This is called obsolescence, not wear.
What does it mean that software is developed, not manufactured?
It means software is written and logically designed rather than built from raw materials that are shaped, assembled and consumed. Once a program exists, it can be copied an unlimited number of times at effectively no material cost, because each copy is just a pattern of data. Software can also be custom-built for one organization or assembled from reusable libraries and frameworks, and most projects mix both.

About the Software Engineering course

How many college credits is Software Engineering?
Software Engineering (Computer Science 301) carries a NCCRS credit recommendation for 3 semester credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
How much does Software Engineering cost and what is included?
$250, paid once, with lifetime access: all 103 video lessons, a practice quiz after each, the graded work and final exam, and an official transcript when you finish. Students who want several courses choose UPI Study PRO instead.
Which universities accept UPI Study credits?
UPI Study has signed partner agreements with universities such as Thomas Edison State University, University of the People and Charter Oak State College, and works with universities such as Penn State, SNHU and SUNY. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities. Use "Find my college" on this page to check yours.
How long does Software Engineering take?
It is self-paced with no deadlines. The 103 lessons total about 11 hours of video; most students add reading and practice time and finish in a few weeks to a few months, on their own schedule.
How are the exams done?
Quizzes and assignments are online in the course. The final exam is taken online with proctoring; a person on the UPI Study team checks assignments, usually within two days.
How do my credits reach my college?
When the course shows 100% complete, request the official transcript from your dashboard. It is sent to the college you name, and you can send it to more than one. Check your college first with "Find my college" on this page, or ask Athena.

Ready for the full course? Earn 3 credits in Software Engineering.

103 video lessons, a quiz after each one, and the graded work that earns the credit. Recommended for credit by NCCRS.

Software Engineering
3 credits · NCCRS
Enroll →