Skip to content
Ameen Abozaid
BEG-002

Understanding software

  • 5 Lessons
  • 78 min of reading
  • 1 h practice (estimate)
On this page 8 topics

Overview

Topics

  • What software is
  • desktop, mobile, web, backend, embedded
  • programs vs services
  • software lifecycle

Learn first

78 min of reading · 1 h of practice (estimate)

Learning outcomes

  1. Classify a given piece of software as desktop, mobile, web frontend, backend, or embedded.
  2. Explain the difference between a program that runs and exits and a service that runs continuously.
  3. Describe the stages of the software lifecycle (requirements, design, build, test, release, operate, retire).

Lessons

  1. 01What software is: instructions, data, and behavior15 min read
  2. 02Kinds of software, with everyday examples16 min read
  3. 03Programs vs services: why a backend never "finishes"15 min read
  4. 04The software lifecycle16 min read
  5. 05Demo: one app, many pieces: mobile app, website, and backend16 min read

Lab and exercises

Lab

BEG-002-LAB1 · Software around you

Outcomes: 1, 2 · Time: ~1 h List ten pieces of software you used today. Classify each as desktop, mobile, web frontend, backend, or embedded. Mark which ones depend on a backend service. Acceptance: at least eight classified correctly, and the backend-dependent ones marked.

Exercises

IDOutcomeTask
BEG-002-EX011Classify: a calculator app on a PC; a ride-hailing app; the firmware in a microwave; a news website; the server that stores orders.
BEG-002-EX021Name one piece of software on your phone and say what hardware it uses (camera, GPS, screen).
BEG-002-EX032Name one program that exits when done and one service that keeps running.
BEG-002-EX042Explain in two sentences why a backend "never finishes".
BEG-002-EX053Put in order: Test, Requirements, Release, Build, Design, Operate, Retire.
BEG-002-EX063A user reports a bug after release. Which stage found it and which stage starts again?
Show solutions
  • EX01 Desktop; mobile (with a backend); embedded; web frontend; backend.
  • EX02 Any valid answer, for example a map app using GPS.
  • EX03 For example a calculator closing; a web server running continuously.
  • EX04 It waits for requests from users all day, so it must keep running to answer them.
  • EX05 Requirements, Design, Build, Test, Release, Operate, Retire.
  • EX06 Operate found it; the cycle returns to Requirements/Build to fix it.

Quiz

Outcomes: O1 classify software · O2 program vs service · O3 lifecycle.

A self-check for you: nothing is graded, saved or sent anywhere. Choose an answer, then check it. You can try again as often as you like.

  1. 1The code that runs inside a washing machine is:O1
  2. 2The part of a web app that runs in your browser is the:O1
  3. 3A server that stores orders and applies business rules is:O1
  4. 4Software is best described as:O1
  5. 5A program that runs and then exits is different from a service because a service:O2
  6. 6Why does a backend "never finish"?O2
  7. 7Which stage comes right after Build?O3
  8. 8Keeping released software running is the stage called:O3
  9. 9Which describes the lifecycle best?O3
  10. 10A website and its backend are:O1

Practical part

Classification exercise (BEG-002-EX01 style, 8 items, 6 correct to pass) plus a one-paragraph description of what happens behind one app you use.

Common mistakes

Believing a website and its backend are the same thing; thinking software is "done" once released.

Assessment

Classification exercise and a one-paragraph description of what happens behind one app you use.

Career relevance

Frames why backend engineering exists; the lifecycle returns in JNR-053 and SRC-011.

Type to search levels, phases, modules and lessons.