A software program can be very small with only one purpose, to a very large program with many sub-programs, or sub-routines. A sub-routine is a small program with one specific purpose. When a program executes, it follows its program line by line until it meets up with a new command to go to a different sub-routine, then it returns to the line it branched off from and then completes the initial instructions.
Software can be grouped by several broad purposes:
- Adware – free software supported by advertisers
- Freeware – free for personal use
- OEM – free for personal and business
- Public Domain – free but does not have a specific copyright license restrictions or owners
- Retail – any software that can be purchased
- Shareware – free for a short period of time then a purchase fee must be paid
- Spyware – software that sends information about the user back to the creator
Categories:- Audio/Video – records sounds and movies
- Browsers – surfing the internet
- Drivers – runs a peripheral device
- Graphics – clipart, draw and photos
- Publishing – create newsletters, flyers, and marketing materials
- Internet – web pages, web directories
- Network – connects computer peripherals together (hardware and software)
- Operating – connects the hardware and software
- Productivity/Business – office suites and business specific (membership, inventory, construction)
- Programming/Development – programming languages – C+, Java, Basic
- Server – coordinates the usage of different users, programs and peripherals
Each category has many different sub-categories:
- Operating – Windows, Linux
- Productivity/Business – Office Suites, Educational software
Each sub-category program has many others. An office suite has a word processor, spreadsheet, data base, presentation and graphics software.
Word Processing software includes sub-routines:
- Spelling and grammar checker
- Templates
- Formatting
- Inserting Graphics, text boxes, special characters and more
- Saving
Getting to know a software program and all of its sub-routines can be a daunting task. Think about each type, then category and finally the sub-routines.