software program: series of statements or instructions to the computersoftware program: series of...

30
Software program: Software program: Series of Series of statements or instructions to the statements or instructions to the computer computer System software: System software: Generalized Generalized programs, manages computer’s programs, manages computer’s resources resources Application software Application software : Programs : Programs written to perform functions written to perform functions specified by end users specified by end users TYPES OF SOFTWARE

Upload: debra-phillips

Post on 02-Jan-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

• Software program:Software program: Series of statements Series of statements or instructions to the computeror instructions to the computer

• System software:System software: Generalized Generalized programs, manages computer’s resourcesprograms, manages computer’s resources

• Application softwareApplication software: Programs written : Programs written to perform functions specified by end to perform functions specified by end usersusers

TYPES OF SOFTWARE

The Major Types of Software

TYPES OF SOFTWARE

Operating systemOperating system

• System software System software

• Manages and controls computerManages and controls computer

System Software and PC Operating Systems

TYPES OF SOFTWARE

Functions of the operating systemFunctions of the operating system• Allocates and assigns system resourcesAllocates and assigns system resources

• Schedules use of computer resources Schedules use of computer resources

• Monitors computer system activitiesMonitors computer system activities

• Provides locations in primary memory for Provides locations in primary memory for data and programsdata and programs

• Controls the input and output devicesControls the input and output devices

System Software and PC Operating Systems

TYPES OF SOFTWARE

The simplest form is multi-tasking. What this really means is that the programs are taking turns with the processor. It allows a single user to have the spreadsheet and the word processor open at the same time, and even more. Now the user can see to copy data from one to the other. Much better!!

The computer must decide on how many time slices each program gets. The active program gets the most. Next is programs that are doing things but which aren't the foreground program. Last is programs that are open but aren't doing anything. They need a little bit of time every now and then to see if they are supposed to do something yet.

Single program and Multitasking

Time-Sharing and Multi-processing

The next step up in complexity is multiple users. On a network several users can be using the same computer or even the same program on that computer. This is called time-sharing.

If a computer has multiple CPUs, it can do multiprocessing. Rather than a single CPU giving out turns to various programs, the different CPUs can work simultaneously. Speed increases immensely. Of course cost does, too!

It is possible for a computer to use more than one operating system through the use of virtual machines."Virtual" means it's not really there. But programs written for different operating systems are fooled into thinking their required operating system is present.

           

MultitaskingMultitasking

• Multiprogramming capability of single-Multiprogramming capability of single-user operating systemsuser operating systems

Virtual StorageVirtual Storage

• Handles programs more efficiently by Handles programs more efficiently by dividing the programs into small fixed or dividing the programs into small fixed or variable length variable length

System Software and PC Operating Systems

TYPES OF SOFTWARE

Virtual Storage

TYPES OF SOFTWARE

Time SharingTime Sharing

• Sharing of computer resources by many Sharing of computer resources by many users simultaneously users simultaneously

MultiprocessingMultiprocessing

• Executing two or more instructions Executing two or more instructions simultaneously in a single computer using simultaneously in a single computer using multiple central processing unitsmultiple central processing units

System Software and PC Operating Systems

TYPES OF SOFTWARE

Language translation and utility Language translation and utility

softwaresoftware

• Translates high-level language programs Translates high-level language programs into machine language into machine language

System Software and PC Operating Systems

TYPES OF SOFTWARE

• GUIGUI

• Microsoft’s Windows 98Microsoft’s Windows 98

• Windows Millennium Edition (Windows Windows Millennium Edition (Windows Me) Me)

• Windows 2000Windows 2000

PC Operating Systems and Graphical User Interfaces

TYPES OF SOFTWARE

• Windows XPWindows XP

• UNIXUNIX

• LinuxLinux

PC Operating Systems and Graphical User Interfaces

TYPES OF SOFTWARE

Programming Languages

Machine Language. The lowest level programming language, composed of binary digits.

First-generation language. Machine language; the level of programming languages actually understood by CPU.

Assembly language. A lower-level programming language that is slightly more user-friendly than machine language.

Second- generation language. Assembly language; requires that each statement be translated into machine language through use of on assembler.

Assembler. A system software program that translates an assembly language program into machine language.

Procedural languages. User-oriented programming languages, which require programmers to specify step by step how the computer must accomplish a task.

Third-generation languages. The first level of higher-level programming languages, which are closer to natural language and therefore easier for programmers to use.

Compiler. Software program that translates an entire high-level language program into object code at once.

Interpreter. A compiler that translates and executes one source program statement at a time.Nonprocedural languages. A type of high-level language that enables user to specify the desired result without having to specify the detailed procedures needed for achieving the result.Fourth–generation language (4GLs). A type of high-level programming languages, which can be used by nontechnical users to carry out specific functional tasks.

Assembly language

TYPES OF SOFTWARE

FORTRAN

TYPES OF SOFTWARE

COBOL

TYPES OF SOFTWARE

• Fourth-generation language:Fourth-generation language: Employed directly by end users Employed directly by end users

• Natural languages:Natural languages: Close to human Close to human languagelanguage

Fourth-Generation Languages and PC Software Tools

TYPES OF SOFTWARE

• Query languages:Query languages: Provides immediate Provides immediate on-line answers to requests on-line answers to requests

• Application software packages and Application software packages and PC software tools:PC software tools: Word Processing Word Processing Software, Spreadsheets, Data Software, Spreadsheets, Data Management SoftwareManagement Software

Fourth-Generation Languages and PC Software Tools

TYPES OF SOFTWARE

Spreadsheet Software

TYPES OF SOFTWARE

Data Management Software

TYPES OF SOFTWARE

Object-oriented programmingObject-oriented programming

• Approach to software development that Approach to software development that combines data and procedures into a combines data and procedures into a single objectsingle object

Visual programmingVisual programming

• Construction of software programs by Construction of software programs by selecting and arranging programming selecting and arranging programming objectsobjects

CONTEMPORARY TOOLS FOR SOFTWARE DEVELOPMENT

Object-Oriented Programming

Class, subclasses, and overriding

CONTEMPORARY TOOLS FOR SOFTWARE DEVELOPMENT

• Programming language Programming language

• Delivers the software functionality needed Delivers the software functionality needed for a particular taskfor a particular task

• Runs on any computer and operating Runs on any computer and operating systemsystem

Java

CONTEMPORARY TOOLS FOR SOFTWARE DEVELOPMENT

• Hypertext Markup Language (HTML):Hypertext Markup Language (HTML): Page description language, creates Web Page description language, creates Web pages and other hypermedia documentspages and other hypermedia documents

• XML (eXtensible Markup Language):XML (eXtensible Markup Language): General-purpose language, supports links General-purpose language, supports links to multiple documents, used for both Web to multiple documents, used for both Web and non-Web applications and and non-Web applications and provides provides more flexible and adaptable data more flexible and adaptable data identificationidentification

Hypertext Markup Language (HTML) and XML

CONTEMPORARY TOOLS FOR SOFTWARE DEVELOPMENT

• Capacity planning:Capacity planning: Process of Process of predicting the computing power predicting the computing power

• Scalability:Scalability: Ability of a computer, Ability of a computer, product, or system to expand and to serve product, or system to expand and to serve without breaking downwithout breaking down

Hardware Technology Requirements for Electronic Commerce and Digital Firm

• Designates the total cost of owning Designates the total cost of owning technology resourcestechnology resources

• Includes initial purchase costs, cost of Includes initial purchase costs, cost of hardware and software upgrades, hardware and software upgrades, maintenance, technical support, and maintenance, technical support, and trainingtraining

Total Cost of Ownership (TCO) of Technology Assets