software program: series of statements or instructions to the computersoftware program: series of...
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
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
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.
• 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
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
• 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