SC161-Lecture3

69
Thiti Theerathean Center for Teaching Excellence University of the Thai Chamber of Commerce E-mail : [email protected]

description

Software

Transcript of SC161-Lecture3

Page 1: SC161-Lecture3

Thiti Theerathean

Center for Teaching Excellence University of the Thai Chamber of Commerce

E-mail : [email protected]

Page 2: SC161-Lecture3

2T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 3: SC161-Lecture3

3T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

The System Software consists of the programs that control or maintain the operations of the computer and its devices. It serves as the interface between user, the application software and the computer’s device.

There are two types of system software :

Operating system.

Utilities programs.

Page 4: SC161-Lecture3

4T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Operating systemAn operating system (OS) is a set of programs containing instructions that work

together to coordinate all the activities among computer hardware resources

Start the computer Provide a user interface Manage programs

Manage memory

Schedule jobs and Configure devices

Establish an internet connectionMonitoring

Performance

File management

Control a network

Administer security

Page 5: SC161-Lecture3

5T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

The process of starting or restarting a computer is called boot

Cold boot

• Turning on a computer that has been powered off completely

Warm boot

• Using the operating system to restart a computer

Page 6: SC161-Lecture3

6T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Power ON

Page 7: SC161-Lecture3

7T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A User Interface controls How you enter data and instructions and How information is displayed on the screen.

Two types of user interfaces are

With a graphical user interface (GUI), you interact with menus and visual images

With a command-line interface, a user uses the keyboard to enter data and instructions

Page 8: SC161-Lecture3

8T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Single user and

Multiuser

Single tasking and

multitasking

Foregroundand

background

How an operating system handles programs directly affects your productivity

A computer with separate processors also can serve as a Fault-tolerant computer.

Page 9: SC161-Lecture3

9T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

The memory management is to optimizes the use of RAM.

allocates or assigns data and instructions to area of memory.

while they are being processed.

monitor contents of memory.

clears items from memory when processor no longer requires them.

Page 10: SC161-Lecture3

10T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

What is Virtual memory ?

The Virtual memory (VM) is a concept in which the OS allocates a portion of a storage medium.

Uses an area of the hard disk for virtual memory, called swap file.

Swaps data and information between memory and storage.

Swapping Technique is called Paging

Page 11: SC161-Lecture3

11T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A job is …. Receiving data from input device.

Sending information to output device.

Processing instructions.

Transferring items between storage and memory.

The Operation System determines the order in which jobs are processed.

Page 12: SC161-Lecture3

12T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Sometimes, a device already may be busy processing one job when it receives a second job. While waiting for devices to become idle, the OS places items in Buffer.

Page 13: SC161-Lecture3

13T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A driver is a small program that tells the operating system how to communicate with a specific device

Plug and Play automatically configures new devices as you install them

Today, many devices and operating system support Plug and Play.

If you attach a new device to a computer. Its driver must be installed before you can use the device.

Page 14: SC161-Lecture3

14T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

The OS provide a Connect to a network wizard that guides users through the process of setting up a connection between a computer and ISP .

Page 15: SC161-Lecture3

15T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A Performance monitor is a program that assesses and reports information about various computer resources and devices.

Page 16: SC161-Lecture3

16T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Searching for files

Viewing images

Sorting

Formatting

Copying

Renaming

Deleting

Moving files

Page 17: SC161-Lecture3

17T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Some operating systems are designed to work with a server on a network

A server operating system organizes and coordinates how multiple users access and share resources on a network

Server is computer that controls access to network and provides centralized storage area.

Other computers on network are called Clients.

Page 18: SC161-Lecture3

18T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Each user has a user account

A user name, or user ID, identifies a specific user

A password is a private combination of characters associated with the user name

The network administrator use network OS to establish permissions to resource. These permissions define who can access certain resources and when they can access those resources.

Page 19: SC161-Lecture3

19T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Types of Operating SystemsA stand-alone operating system is a complete operating system that works on a desktop computer, notebook or mobile computing device

A network operating system typically resides on the server and is designed specifically to support all sizes of networks

An embedded operating system resides on a ROM chip on a mobile device or consumer electronic device

Page 20: SC161-Lecture3

20T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A Utility program, also called a Utility, is a type of system software that allows a user to perform maintenance-type tasks.

File manager Search Utility Image Viewer Uninstaller Disk Cleanup Disk Defragmenter Backup / Restore Utility Personal Firewall

Windows Utility

Antivirus Spyware Remover Internet Filters File Compression Disc Burning System Tweak

Utility Programs

Page 21: SC161-Lecture3

21T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A file manager is a utility that performs functions related to file management

Displaying a list of files Organizing files in folders Copying, renaming, deleting, moving, and

sorting files and folders Creating shortcuts

A search utility is a program that attempts to locate a file on your computer based on criteria you specify

Page 22: SC161-Lecture3

22T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

An image viewer allows users to display, copy, and print the contents of a graphics file

An uninstaller removes a program, as well as any associated entries in the system files

Page 23: SC161-Lecture3

23T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A disk cleanup utility searches for and removes unnecessary files

Downloaded program files Temporary Internet files Deleted files Unused program files

A disk defragmenter reorganizes the files and unused space on a computer’s hard disk so that the operating system accesses data more quickly and programs run faster

Page 24: SC161-Lecture3

24T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A backup utility allows users to copy files to another storage medium A restore utility reverses the process and returns backed up files to their original form

A personal firewall detects and protects a personal computer from unauthorized intrusions

Page 25: SC161-Lecture3

25T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Antivirus Spyware Remover Internet Filters

A virus describes a potentially damaging computer program that affects a computer negatively

A worm copies itself

repeatedly in memory or

over a network

A Trojan horsehides within or

looks like a legitimate program

An antivirus program

protects a computer

against viruses

Page 26: SC161-Lecture3

26T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Antivirus Spyware Remover Internet Filters

Page 27: SC161-Lecture3

27T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Antivirus Spyware Remover Internet Filters

An unusual message or image is displayed on the screen. An unusual sound or music plays randomly The available memory is less than what should be available. A program or file suddenly is missing. An unknown program or file mysteriously appears. The size of a file changes without explanation. A file becomes corrupted. A program or file dose not work properly. System properties change. The operating system runs much slower than usual.

Page 28: SC161-Lecture3

28T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Antivirus Spyware Remover Internet Filters

Spyware is a program placed on a computer without the user’s

knowledge that secretly collects information about the user

• A spyware remover detects and deletes spyware and other similar programs

Adware displays an online advertisement in a banner or

pop-up window

• An adware remover is a program that detects and deletes adware

Page 29: SC161-Lecture3

29T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Antivirus Spyware Remover Internet Filters

Filters are programs that remove or block certain items from being displayed

Web filtersAnti-spam programs

Phishing filters

Pop-up blockers

Page 30: SC161-Lecture3

30T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A file compression utility shrinks the size of a file(s)

Compressing files frees up room on the storage media

Two types of compression :

Lossy

Lossless

When Lossy data compression is applied to a file, the quality of the file will decrease slightly each time you compress the file.You will be unable to restore the file to its exact original state.

Lossless data compression is used when you must compress a file, but also must be able to return that file to its exact original state

Page 31: SC161-Lecture3

31T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Disc burning software writes text, graphics, audio, and video files on a recordable or rewritable optical disc

A computer maintenance utility identifies and fixes operating system problems, detects and repairs disk problems, and includes the capability of improving a computer’s performance

Page 32: SC161-Lecture3

32T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

An Application Software consists of programs designed to make users more productive and assist them with personal tasks. It has a variety of uses :

To make business activities more efficient.

To assist with graphics and multimedia projects.

To support home, personal, and educational tasks.

To facilitate communications.

Page 33: SC161-Lecture3

33T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 34: SC161-Lecture3

34T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Packaged software, mass-produced

Custom software, performs functions specific to a business or industry

Web-based software, hosted by a Web site

Open source software, provided for use, modification, and redistribution

Shareware, copyrighted software that is distributed free for trial period

Freeware, copyrighted software provided at no cost

Public-domain software, freeware with no copyright restrictions

Available in a variety of forms:

Page 35: SC161-Lecture3

35T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Business Software

A Business Software is application software that assists people in becoming more effective and efficient while performing their daily business activities.

Page 36: SC161-Lecture3

36T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 37: SC161-Lecture3

37T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Multimedia Software

Power users often use sophisticated software that allows them

to work with graphics and multimedia.

Page 38: SC161-Lecture3

38T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 39: SC161-Lecture3

39T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Home and Personal Software

The application software is designed specifically for home, personal and education use. Most of programs in this category are relatively inexpensive.

Software Suite for personal use

Personal Finance software

Image Editing software

Clip art / Image Gallery

Video and Audio Editing software

Travel and Mapping software

Educational and Reference software

Page 40: SC161-Lecture3

40T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Communication Software

Web Browser E-Mail Instant Messaging Chat Room

Text, Picture, Video Messaging

RSS Aggregator BloggingNewsgroup/Message

Board

FTP Video Conferencing

Page 41: SC161-Lecture3

41T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Web Applications

A Web application is a Web site that allows users to access and interact with software from any computer or device that is connected to the Internet

Page 42: SC161-Lecture3

42T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Learning Tools for Application Software

Web-based training is a type of CBT that uses Internet technology and consists of application software on the Web

Distance learning (DL) is the delivery of education at one location while the learning takes place at other locations

Page 43: SC161-Lecture3

43T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 44: SC161-Lecture3

44T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

A computer program is a series of instructions that directs a computer to perform tasks.

The source of a program may be used to describe an algorithm to a human reader.

These modules are stored as a collection of files.

It is often written by computer programmers.

Source code is written in a programming language.

Page 45: SC161-Lecture3

45T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Executable file (.exe / .com) is a part of a program that actually sends commands to the processor.

Dynamic Link Library File (.dll) is a partial .exe file. It will not run on its own, its commands are accessed by another running program.

Initialization File (.ini) contains information that programs can use as they run.

Help file (.hlp / .chm) contains an indexed and cross-linked format of help information.

The common extensions for program files

Page 46: SC161-Lecture3

46T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Source code or Source program Code refers to statements that are written in any programming language.

Programming language enable the programmer to describe a program using a variation of basic English. The results are saved in a file and called Source Code.

Source codes are compiled or interpreted to Machine language or Machine code.

Source Code Translator

1 1 0 1 0 0 11 0 1 0 0 0 1 1 0 1 0

0 1 0 0 0 1 1 1 0 1 0 1 10 0 0 1 1 0 1 1 1 1 0 1 1 1 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 1 0 0 1 1 1 0 0 0 1 1 00 1 1 0 1 1 0 1 1 0 0 1 1

0 1 1 0 1 0 0 1 1 1 00 0 1 1 0 1

Machine Code

Page 47: SC161-Lecture3

47T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Programming Languages : Low-Level Languages

– The first generation of programming languages.– The only language the computer directly recognize.– Instructions use a series of binary digits.– Coding is tedious and time-consuming.

– The second generation of programming languages.– Use Symbolic instruction code.– Source code is converted to machine code by Assembler.– Used to control hardware.

Page 48: SC161-Lecture3

48T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Programming Languages : Procedural Languages

The third-generation language (3G) that uses a series of English-like words and arithmetic symbols to write instruction.

The programmer writes instructions that tell the computer what to accomplish and how to do.

Short for COmmon Business-Oriented Language

designed for business application.

Useful for processing transactions on mainframe.

COBOL

C language Originally designed for writing system software.

Used most often with the UNIX.

BASIC short for Beginner's All-purpose Symbolic Instruction Code

easy-to-understand and used to help for teaching the fundamentals of programming

Page 49: SC161-Lecture3

49T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Compiler A Compiler converts the entire source program into machine language.

The output of the compiler is called object code.

You can copy the object code onto any similar platform and run the program.

An Interpreter translates and executes each statement of source code at the time.

Programmer can correct any errors before it translates the next line of code.

It runs slower than compiled code.

Interpreter

Before executing the program, you must use either a compiler or an interpreter to convert the source program into machine language.

Page 50: SC161-Lecture3

50T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Programming Languages : OOP Languages

An Object-Oriented Programming (OOP) language allows programmers the ability to reuse and modify existing objects.

An Object is an item that can contain both data and the procedures that read or manipulate that data.

Each data element is called an Attribute or Property. The procedure in the object is called an Operation or Method.

Other advantages include:Objects can be

reusedProgrammers create applications faster

Work well in a RADenvironment

Most program development tools

are IDEs

Page 51: SC161-Lecture3

51T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Java Developed by Sun Microsystems.

Object code is called Bytecode which is machine independence.

Uses a Just-In-Time (JIT) compiler to convert bytecode into machine dependence code.

C++ An extension of the C programming language.

Additional features for working with objects, classes, events and other object-oriented concepts.

C# based on C++ and was developed by Microsoft.

Like JAVA , it uses a JIT compiler but it resulting code is called Microsoft Intermediate Language (MSIL)

Page 52: SC161-Lecture3

52T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Programming Languages : Markup Languages

Tags

Designed for the definition and presentation of text.

Used to specify the formatting are called tags.

Page 53: SC161-Lecture3

53T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

HTML Short for Hyper Text Markup Language.

Uses to format documents for display on the Web.

User for display data.

xHTML Short for eXtensible HTML.

Includes features of HTML and XML.

Short for eXtensible Markup Language.

Allows to create customized tags and use predefined tags to display content appropriately on various devices

Used for sharing data.

XML

WML Short for Wireless Markup Language.

subset of XML and is used to design pages for micro-browsers.

Page 54: SC161-Lecture3

54T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Programming Languages : Script Languages

An interpreted language is used to develop a small program

that run inside of another program.

"Scripts" are distinct from the core code of the application that

written in a different language.

Designed for gluing software components together.

Referred to as glue languages or system integration languages.

Popular script languages include PHP , JavaScript , VBScript

Page 55: SC161-Lecture3

55T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Programming Development

The Program development consists of a series of steps programmers use to build computer programs

Page 56: SC161-Lecture3

Step 1 – Analyze Requirements

• To initiate program development, programmer:

– Reviews the requirements

– Meets with the systems analyst and users

– Identifies input, processing, and output

56T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 57: SC161-Lecture3

Step 2 – Design Solution (con.)• In structured design, the programmer typically begins with a

general design and moves toward a more detailed design• Programmers use a hierarchy chart to show program modules.

57T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 58: SC161-Lecture3

Step 2 – Design Solution (con.)

• A program flowchart graphically shows the logic in a solution algorithm 58

T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 59: SC161-Lecture3

Step 2 – Design Solution (con.)

• The sequence control structure shows one or more actions following each other in order

59T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 60: SC161-Lecture3

• The selection control structure tells the program which action to take, based on a certain condition

Step 2 – Design Solution (con.)

60T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 61: SC161-Lecture3

• The repetition control structure enables a program to perform one or more actions repeatedly as long as a certain condition is met

Step 2 – Design Solution (con.)

61T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 62: SC161-Lecture3

• Flowcharting software makes it easy to modify and update flowcharts

– SmartDraw

– Visio

Step 2 – Design Solution (con.)

62T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 63: SC161-Lecture3

• Pseudocode uses a condensed form of English to convey program logic

Step 2 – Design Solution (con.)

63T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 64: SC161-Lecture3

Step 3 – Validate Design

• Check for logic errors using test data

Develop various

sets of test data

Determine the

expected result

Step through

the algorithm

Compare the results

Repeat steps for

each set of test data

64T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 65: SC161-Lecture3

Step 4 – Implement Design

• Implementation of the design includes using a program development tool that assists the programmer by:

• Generating or providing some or all code

• Writing the code that translates the design into a computer program

• Creating the user interface

• Extreme programming is a strategy where programmers immediately begin coding and testing solutions as soon as requirements are defined

65T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 66: SC161-Lecture3

Step 4 – Implement Design• Program development tools

66T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 67: SC161-Lecture3

Step 5 – Test Solution

The goal of program testing is to ensure the program runs correctly and is error free

• Errors include syntax errors and logic errors

• Debugging the program involves removing the bugs

• A beta is a program that has most or all of its features and functionality implemented

67T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 68: SC161-Lecture3

Step 6 – Document Solution

• In documenting the solution, the programmer performs two activities:

Review the program code

Review all the documentation

68T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .

Page 69: SC161-Lecture3

69T h e P r i n c i p l e s o f I n f o r m a t i o n T e c h n o l o g y .