Software Prepared By Sir Mazhar Chapter No 5

Software Prepared By: Sir Mazhar Chapter No 5 mazharjaved 2001@yahoo. com(0333 -4461420)

Software ► Logical Component of a Computer ► We can not touch ► These are in form of instructions that tell the computer that what to do ► It can not executed without hardware. ► If any problem in software then it will reinstall. mazharjaved 2001@yahoo. com(0333 -4461420)

Software Kinds ► Software may be in the form of ► System Software ► Application Software mazharjaved 2001@yahoo. com(0333 -4461420)

System Software ► ► ► It controls a computer’s internal function System software manages the fundamental operations of your computer § Operating system § Utilities § Library § Programming Languages It also control mouse , printer, Monitors Examples Operating System Language Software mazharjaved 2001@yahoo. com(0333 -4461420)

Operating System (OS) ► ► ► Is collection of System software An interface between applications and hardware Hardware needs a manager to tell it § § § what to do when to do it how to do it ► The (OS) controls all ► ► ► It manages the data and the memory and appearance Make the computer system convenient to use Execute user programs and make solving user problems mazharjaved 2001@yahoo. com(0333 -4461420) easier. § input § output § Processing Uses

Goals or Task ► Efficiency ► Ability to evolve ► Communication with hardware ► Transfer data ► System Security § Allows computer system resources to be used in an efficient manner § Permit effective development, testing, and introduction of new system functions without interfering with service § They provide the way for application software to communicate with hardware § They manage the transfer of data to and from the various peripherals § They manage system security. Many operating systems allocate certain rights to user mazharjaved 2001@yahoo. com(0333 -4461420)

User Interaction with OS Hardware User Operating System Software mazharjaved 2001@yahoo. com(0333 -4461420) Computer

Examples ► Window 98 ► Window 2000 ► Window XP ► Window Vista ► Linux ► Unix mazharjaved 2001@yahoo. com(0333 -4461420)

User interfaces User interface is what you see when you turn on the computer ► It consists of the cursors, prompts, icons and menus etc ► Which allow you to get something done using your computer ► Ideally the user interface should be as easy to use as possible User interface may be ► Command driven interface ► Menu driven interface ► Graphical user interface ► mazharjaved 2001@yahoo. com(0333 -4461420)

Command driven interface ► With a command driven interface, you type in an instruction, which is usually abbreviated, in order to get something done. ► Are not easy to use ► A set of commands used to interact with computer is called command language ► It requires exact spelling and punctuation ► Advantage: ► Commands for different software application are rarely the same so user can be faster to use and have learnt all the commands mazharjaved 2001@yahoo. com(0333 -4461420)

Menu driven interface The user enter data and instruction by using menus ► Easy to use because the user has not remember the syntax of commands ► User can make a selection by using either a mouse or a keyboard ► ► Drop down list ► Present options ► Both Microsoft Windows and Apple Macintosh programs are menu driven mazharjaved 2001@yahoo. com(0333 -4461420)

Graphical User Interface (GUI) ► ► ► Is a visual environment that is used by the user to communicate with computer It uses windows , icons, menus and other graphical objects to issue commands. Easy to use Easy to learn Attractive WIMP: stands for windows, and pointing devices which describes the features of GUI mazharjaved 2001@yahoo. com(0333 -4461420)

Disadvantages ► ► More immediate access store and secondary store More powerful processor and graphical card Slower then executing Greater no of operations is required mazharjaved 2001@yahoo. com(0333 -4461420)

Designing a user interface ► Consistency ► Positioning of items on the screen ► Use of colour ► Use of sound ► Availability of help mazharjaved 2001@yahoo. com(0333 -4461420)

Utility programs A type of system software that is used to solve particular problem. ► Designed to make life easier for computer users. ► Utility programs perform thousands of task ► Renaming files ► Listing file on a disk ► Deleting files ► Copying files ► Sending files to a printer ► Storing data ► Backing up files mazharjaved 2001@yahoo. com(0333 -4461420)

Examples File Viewer ► Is used to view and manage files in computer system. ► Window Explorer File Compressor: ► Is used to shrink the size of files ► Winzip and Win. RAR Diagnostic Utilities: ► is used to detect problem in hardware and software ► Anti. Virus ► Disk Defragmenter ► Backup utility ► Data Recovery Utility ► Task Manager utility ► Disk Cleanup ► Personal Firewall ► Spyware Remover mazharjaved 2001@yahoo. com(0333 -4461420)

Application Software Application software enables you to perform specific computer tasks, such as document production, spreadsheet calculations, and database management ► Any program that processes data for a user Users prepare these ► Packaged software ► Custom Software ► Integrated software ► Bespoke Software ► Shareware ► Free Ware ► Public Domain Software ► mazharjaved 2001@yahoo. com(0333 -4461420)

Integrated Software ► ► ► ► Single program Kind of a Jack-of-all-trades Shares a common set of commands Commands are common throughout Moving data from one program to another is easy Which combine features from all below products Multiple functionality § Word processor, spreadsheet, DBMS, Presentation graphics and communication software ► Advantages § Lower cost § Simpler § Capabilities not as extensive ► Disadvantages: ► Tend to be strong in one area and weak in others mazharjaved 2001@yahoo. com(0333 -4461420)

Application Packages ► It is particular user or organization. ► The program are well tested ► Is available for different types of users ► Documentation are very good ► Examples: ► Word processing software such as word and word perfect ► Spread sheet software such as Lotus 1 -2 -3 and Excel ► Data base software such as Access mazharjaved 2001@yahoo. com(0333 -4461420)

Tailor Made Software or Custom Software ► Is developed to meet the requirement of particular company or industry. ► If packaged software does not fulfill the requirement of an organization, it has to develop a custom software by hiring a programmer. ► The cost of custom software is higher. mazharjaved 2001@yahoo. com(0333 -4461420)

Program ► The instructions that tell the computer what to do is called program ► Programmer: ► Who writes or design the program in any language. ► Computer can understand only the binary code mazharjaved 2001@yahoo. com(0333 -4461420)

Programming Languages ► Humans can use different languages to communicate ► The instructions are written in a languages which are easy to understand ► Programming languages may be in the form of ► High level Languages ► Low Level Languages mazharjaved 2001@yahoo. com(0333 -4461420)

Low level languages ► Are languages that are easy for the computer to understand but more difficult for the programmer ► Each instruction usually translates into one machine code instruction mazharjaved 2001@yahoo. com(0333 -4461420)

Kinds of Low Level ► Machine Language ► Assembly Language mazharjaved 2001@yahoo. com(0333 -4461420)

Machine Language ► Is the language that directly understood by the machine ► It consists of series of a 0 s and 1 s ► It is a machine specific it mean that one computer’s machine code will not be understand by other computer type ► It needs no translation so that way it is very fast ► A lot of games or simulation programs are written in machine code for this reason mazharjaved 2001@yahoo. com(0333 -4461420)

Assembly language ► ► ► It is easier for the programmer to use and to debug Once a program has been written in assembly language it needs translating into machine code by software called assembler Is a low level language which allows the programmer to use Mnemonics and symbolic address Mnemonics: Is a word or set of letters which can be used to represent a function code and which is easy to remember Example: LDA use for Load Accumulation JMP for jump instruction and ADD are mnemonics Symbolic Address: Is a name inverted by the programmer to identify a location Loop , value and prnt are symbolic addresses mazharjaved 2001@yahoo. com(0333 -4461420)

High level language ► Is developed with the programmer in mind rather than the computer ► High level language instructions are similar to English which mean programming is more easier. ► Once a program has been written it can be used on different computers with little alteration ► It can be translated into machine code by a compiler and then run mazharjaved 2001@yahoo. com(0333 -4461420)

Advantages ► Simple instruction similar to English make high level language easy to understand ► It is easy to correct errors and test programs ► Programs written in high level language can be used on different makes of computer mazharjaved 2001@yahoo. com(0333 -4461420)

Different High Level Languages COBOL: ► common business oriented language Purpose: ► easily understand language for commercial data processing application Features: ► look like English Statement ► Good facilities for file handling mazharjaved 2001@yahoo. com(0333 -4461420)

BASIC ► Beginners all purpose symbolic instruction code Purpose: ► Teaching language for interactive work Features: ► Every line has to be numbered ► Easy for beginners to learn ► Many different versions mazharjaved 2001@yahoo. com(0333 -4461420)

FORTON ► Formula translation Purpose : ► For scientific use. Usually batch work Features: ► Lacks of statements which makes program structure clear ► Designed to be used with cards as input and a line printer as a output mazharjaved 2001@yahoo. com(0333 -4461420)

Logo Purpose : ► An educational language that encourage logical thinking Features : ► New instructions can be added and can be defined ► Facilities to process lists mazharjaved 2001@yahoo. com(0333 -4461420)

Pascal Purpose : ► To allow clear structuring of data and program Features: ► All variables are declared before they can be used. ► Encourages clear structure and stepwise refinement ► New procedures , functions and data types can be defined and added in mazharjaved 2001@yahoo. com(0333 -4461420)

JAVA ►A language especially suited for writing software used to search for things on the internet. HTML ► Hypertext markup language ► A language used for the development of websites mazharjaved 2001@yahoo. com(0333 -4461420)

Types of codes ► Source code ► Is written in high language or assembly language ► Easy to understand ► Easy to modify ► Contain fewer statements ► It contain. exe extension ► Object code ► Is written in machine language through compiler ► difficult to understand ► Difficult to modify ► More statement than source code ► It contain. obj extension mazharjaved 2001@yahoo. com(0333 -4461420)

Translation programs ► Are part of the system software and are used to convert the programs commands into machine code ► There are three types of translation program ► Compiler ► Interpreters ► Assemblers mazharjaved 2001@yahoo. com(0333 -4461420)

Compiler ► Is software that converts the whole of a program written in a high level language into machine code in one go. ► There are no mistakes in the program the complete program is converted to machine code ► If a program needs to be altered at a later date the original source code is altered and program recompiled mazharjaved 2001@yahoo. com(0333 -4461420)

Interpreter ► Each instructions in turn, converts it to machine code and then caries it out ► It run one line at a time ► The computer recognizes each instruction mazharjaved 2001@yahoo. com(0333 -4461420)

Differences Compiler ► Converts a program into a machine code as a whole ► Creates object code file ► Converts high level programs that can be executed in many times ► Execution is fast ► Displays syntax errors after compiling the whole program ► Interpreter ► Converts a program into machine code statement by statement ► Object file is not created ► Converts high level programs each time it is executed ► Program execution is slow ► Displays the syntax error on each statement of program ► mazharjaved 2001@yahoo. com(0333 -4461420)

Assembler Is a program which translates a program written in as assembly language into are in machine code ► The main functions of an assembler are to : ► Translate an assembly language source program into a machine code object program ► Work out where to store the object program and its data ► Detects errors in the source program and say what they are ► Link the program to any other programs or routines it uses ► Print a listing of the source and object programs ► mazharjaved 2001@yahoo. com(0333 -4461420)

Relationship Assembly Language Code High Level Language Code Assembler Compiler Machine mazharjaved 2001@yahoo. com(0333 -4461420) Code High Level Language Code Interpreter
- Slides: 41