Software Theory Presentation

Preview:

DESCRIPTION

 

Citation preview

Software Theory

2 Diploma 5

14 August 2007

Alex Murch

Marangu TC

2

What is software?

• Software is a set of instructions that works with computer hardware to perform tasks. These tasks are also called “operations.”

HardwareSoftwareYou (the user)

3

Software is like a cassette…

Software

4

Types of software

1. System software– Operating system (O.S.)– Basic input/output system (BIOS)

2. Application software– Word processing– Spreadsheet– Database

5

System Software

CPU

Hard Disk

Memory

MonitorMouse

Keyboard

Scanner

CameraApplication Software

Software working with hardware

6

Basic input/output system

• The software that tests hardware on startup, starts the operating system and supports the transfer of data among hardware devices– Stored in read-only memory– Almost invisible to regular users

7

Operating System

• The software that controls the allocation and usage of hardware resources such as memory, central processing unit (CPU) time, disk space and peripheral devices

8

O.S. Examples

• Microsoft Windows (95, 98, ME, 2000, XP)

• Linux

• UNIX

• Solaris*

9

Functions of the O.S.

• Coordinate processing

• Manage system memory

• Control peripheral devices– (monitor, mouse, keyboard, etc)

• Looks for problems (malfunctions)

• Manages files on the hard disk drive

10

O.S. Classification (1/4)

• Real-time operating system (R.T.O.S.)– Exact timing of operations

11

O.S. Classification (2/4)

• Single user, single task– Simple devices like cell phones

12

O.S. Classification (3/4)

• Single user, multi-tasking– Allows user to do many things at one time– Used with most desktop and laptop computers– Example: Windows XP

Single user, multi-tasking O.S.

1 user 1 computer

Word processor

Spreadsheet

Picture editor

Internet browser

Many tasks

13

O.S. Classification (4/4)

• Multi-user operating system– Many users share system resources– Example: Solaris thin client

Multi-user O.S.

14

Discussion

What is the BEST kind of operating system?

15

Application Software

• Where does it fit in?

Computer Hardware

BIOS

Operating System

Application Software

You (the user)

16

Types of Application Software

• Word processor• Spreadsheet• Presentation• Database• Email client• Web browser

• Desktop publishing• Accounting• Web development• Graphics and imaging• Programming• Etc…

17

Word Processor Software

• Microsoft Word

• OpenOffice.org Writer*

• StarWriter

• Lotus Ami Pro

• Corel WordPerfect

18

Spreadsheet Software

• Microsoft Excel

• OpenOffice.org Calc*

• StarCalc

• Quattro Pro

• Lotus 1-2-3

19

Presentation Software

• Microsoft PowerPoint

• OpenOffice.org Impress*

• StarImpress

• KPresenter

20

Database Software

• Microsoft Access

• OpenOffice.org Base*

• MySQL

• Sybase

• Oracle

• FileMaker

21

Web Browser Software

• Mozilla Firefox

• Opera

• Netscape Navigator

• Safari

• Microsoft Internet Explorer

22

Graphical User Interface (G.U.I.)

• Most application software uses a G.U.I.

• Definition:– A graphical user interface is a visual

environment that represents programs, files and options with graphical images on the screen

23

G.U.I. Example

24

Advantages of G.U.I.

• Less work for the user– User can simply point and click with the mouse

• Easier/faster to learn

• Hides program complexity from the user

• Simplifies multi-tasking– Easy to perform multiple tasks at once

25

Disadvantages of G.U.I.

• Not all software functions are available

• Slower performance– Text-based systems work faster

26

Free / Open Source Software

• What is it?– Software that is freely available for use– Design engineering is transparent

• Not patented and not for profit

• Example– OpenOffice.org

• Discussion: Why use open source software?

27

Software Development Cycle

Analysis

Design

Programming

Testing

Implementation

Further Development

28

Software Analysis

• Software project outline

• Discussions with software users

• Work is performed by systems analysts

29

Software Design

• Project is broken down into smaller sections– And even smaller sub-sections

• Detailed specifications are created

• Programming language is selected

• Work is performed by systems analysts

30

Programming

• Software design is programmed

• Specific programming language is used

• Work is performed by programmers

31

Testing

• Complete testing of all program functions

• Errors (bugs) are noted and reported back to– Systems analysts who check program logic– Programmers who check syntax

32

Implementation

• Software is installed for use

• Usually starts with group of advanced users– Small group size– Called a “pilot group”

• Errors are reported back to analysts and programmers

33

Further Development

• After software is released to a large group of users

• More error/bug fixing

• Design/efficiency improvements

34

Discussion

1. How is the software development cycle like lesson planning?

2. Compare open source software to lesson plans – are there advantages to sharing your work?