Monday, 19 September 2022

Bharat College CF 3rd Unit

 

Computer Fundamentals

Unit-III

Software: - A computer can not do anything on its own .It must be instructed to do a desired job. Hence, it is necessary to specify a sequence of instructions that a computer must perform to solve a problem. Such a sequence of instructions written in a language that can be understood by a computer is called a computer program. It is the program that controls the activity of processing by the computer and the computer perform precisely what the program wants it to do. When a computer is using a particular program, we say it is running or execution that program. The term software refers to the set of computer program, procedures ,and associated documents (flowcharts, manuals ,etc) that describe the programs and how they are to be precise ,software means a collection of program whose objective is to enhance the capabilities of the hardware .

A software package is a group of programs that solve a specific type of job .For example, a word-processing package may contain program for text editing, text formatting, A graphics, spelling checking, etc. Thus a multipurpose computer system has several software packages one each for every type of job it can perform.

Relationship between Hardware and Software:-In order for a computer to produce useful output, the hardware and software must work together. Nothing useful can be done with the computer hardware on its own and software cannot be utilized without supporting hardware.

To take on analogy, a cassettes player and the cassettes purchased form market are hardware. However, the songs recorded on the cassettes are its software .To listen to a particular song, first of all that song has to be recorded on one of the cassettes, which should then be mounted on the cassette player and played. Similarly, to get a particular job done by a computer, the relevant software should be loaded in the hardware before processing starts. The following important points regarding the relationship between hardware and software are brought out by this analogy.

1. Both hardware and software are necessary for a computer to do useful job. Both are complementary to each other.

2. The same hardware can be loaded with different software to make a computer system perform different types of just as different songs can be played using the same cassette player.

3. Except for upgrades (like increasing the main memory and hard disk capacities, or adding speakers, modems, etc) hardware is normally a one-time expense whereas software is a continuing expense. Just as we buy new cassettes for the newly released songs or for songs whose cassettes we do not have, similarly one busy new software to be run on the same hardware as and when need arises or funds become available.

Types of Software:- A wide variety of computer software is available today. Although the range of software available is vast and varied, most software can be divided in to two major categories;

  1. System software, and
  2. Application software

These two types of software along with a few examples of each type are described below.

System Software: - System software is a set of one or more programs designed to control the operation and extend the processing capability of a computer system. In general, a computer’s system software perform one or more of the following functions;

1.supports the development of other application software.

2.supports the execution of other application software.

3.monitors the effective use of various hardware resources such as CPU, memory, peripherals, etc.

4.communicates with and controls the operation of peripheral devices such as printer, disk, tape etc.

Thus system software makes the operation of a computer system more effective and efficient .it helps the hardware components work together and provides support for the development and execution of application soft ware (program). The programs included in a system software package are called system programs and the programmers who prepare system software are referred to as system programmers.

System software offers several advantages and conveniences to application programmers and computer users in general. Good system software allows application packages to be run on the computer with less time and effort. Without system software, application packages could not be run on the computer system. Thus system software is an indispensable part of a total computer system. A computer without some kind of system soft ware would be very ineffective and most likely impossible to operate. The production of system software is a complex task that requires extensive knowledge and considerable specialized training in computer science. System programmers are highly trained computer professionals. Because of its technical complexity, system software are normally developed and distributed by the computer manufacturers .The customer who buys or leases a computer system would usually receive, in addition to the hardware, some software needed for the effective operation of his/her computer.

Some of the most commonly known types of system software are operation system, programming language translators, utility programs, Assemblers, Compliers , Interpreter and performance monitoring software and communication software. They are briefly described below.

Language Translators: - Language translators are system software that transform the instructions prepared by programmers using convenient programming languages into a from that can be interpreted and executed by a computer system. Along with every programming language developed, a language translator was also developed, which accepted the programs written in a programming language and executed them by transforming them into a form suitable for execution. Depending on the programming language used, language translators are divided into three major categories: Assemblers, Compilers and Interpreter.

Assemblers:-  Compared to all the types of programming languages, assembly language is closest to the machine code. The assembly language program must be translated into machine code by a separate program called an assembler. The assembler program recognizes the character strings that make up the symbolic names of the various machine operations and substitutes the required machine code for each instruction. In short, an assembler converts the assembly codes into machine codes, making the assembly program ready for execution.

Compliers:- A compiler is a type of language translator that translates a program code into machine language. The programs written in any programming language needs to be converted to binary form. Therefore, in order to execute the programs, a programmer needs to compile the written programs. As a system program, a compiler translates source code into object code.  For examples: Borland C++ compiler and Microsoft VC++ compiler

Interpreters:- An interpreter is another type of language translator, which analyses and executes the source code in line-by-line manner, without looking at the entire program. In other words, an interpreter translates a statement in a program and executes the statements immediately, that is, before translating the next source language statement. The advantage of interpreters is that they can execute a program suddenly. Compilers  requires some time before an executable program is made because it looks at the whole source code. However, programs produced by compilers run much faster than the same programs executed by the interpreter. For examples: GW-BASIC Interpreter and LISP Interpreter

Operating Systems;- Every computer has an operating system software that takes care of the effective and efficient utilization of all the hardware and soft ware components of the computer system . It is responsible for performing basic tasks such as recognizing input from the keyboard, sending output to the display screen, keeping tracks of files and directories on the hard disk, and controlling peripheral device such as printers and modems. In addition, the operating system ensures that different programs executing at the same time do not interfere with each other. 

Function of Operating System:- The main function provided by most operating system of today are as follows:

  1. Process Management:- A process is a program in execution. During execution, a process needs certain resources such as CPU time, memory space, files and I/O devices. At a particular instance of time, a computer system normally consists of a collection of processes. The process management module of an operating system takes care of the creation and deletion of processes, scheduling of various system resources to the different processes requesting them, and providing mechanism for synchronization and communication among processes.
  2. Memory Management:- To execute a program, it must be loaded, together with the data it accesses, in the main memory. To improve CPU utilization and to provide better response time to its users, a computer system normally keeps several programs in main memory. The memory management module of an operating system takes care of the allocation and de-allocation of memory space to the various programs in need of this resource.
  3. File Management:- All computer systems are used for storage, retrieval and sharing of information. A computer normally stores such information in units called files. Processes can read information from files and can create new files for storing newly generated information. Information stored in files is made persistent by storing them on a secondary storage media such as a magnetic disks. The file management module of an operating system takes care of file-related activities such as organization, storing, retrieval, naming, sharing and protection of files.
  4. Device Management:- A computer system normally consists of several I/O devices such as terminal, printer, disk and tape. The device management module of an operating system takes care of controlling all the computer’s I/O devices. It keeps track of I/O requests from processes, issues commands to the I/O devices, and ensures correct data transmission to/from an I.O device. It also provides an interface between the devices and the rest of the system that is simple and easy to use.
  5. Security:- Computer system often store large amounts of information, some of which is highly sensitive and valuable to their users. Users can trust the system and rely on it only if the various resources and information of a computer system are protected against destruction and unauthorized access.
  6. Command Interpretation:- A user communicates with the operating system, for using the various system resources, via a set of commands provided by the operating system. The operating system also provides a simple language, known as command language or job control language(JCL), using which a user can put several commands together from the commands set to describe the resource requirements of the job. The command interpretation module of an operating system takes care of interpreting user commands, supplied individually or in the form of command language, and directing the system resources to handle the request.

Types of Operating System:- The operating system has evolved immensely (hugely) from its primitive (ancient)  days to the present digital era.

Batch:-This type of operating system was one of the first to evolve. Batch processing operating system allowed only one program to run at a time. These kinds of operating system can still be found on some mainframe computers running batches of jobs. Batch processing operating system works on a series of programs that are held in a queue. The operating system is responsible for scheduling the jobs according to priority and the resources required. For example: this operating system would be best suited for a company wishing to automate their payrolls. List of employees will be entered, their monthly salary will be calculated, and corresponding pay slips would be printed. Batch processing is useful for this purpose since these procedures are repeated for every employee each month.

Multiprogramming:- Multiprogramming refers to the situation in which a single CPU divides its time between more than one job. It is term given to a system that may have several processes in "states of execution" at the same time. Multiprogramming increases CPU utilization by organizing jobs when CPU becomes less idle, waiting for input, output or data transfer operations to be completed.  More is the number of programs competing for resources, better will be resource utilization. In this manner multiprogramming increases the over all performance of the system.

 

Multiprocessing:- Multiprocessing refers to simultaneous execution of two or more processes by a multiple, processor computer system. Additional processors are added to the system to enhance
the throughput. The additional processor can be an Input-Output Processor (IOP) or
a CPU. Generally, multiprocessing system is defined by a system having more than one CPU.

Programming Languages:- A computer, being an electronic device, cannot understand instructions if provided in a general language. Therefore, a special language is used to provide instructions to a computer system. This language is known as computer programming language. It consists of a set of symbols and characters, words and grammar rules that permit the user to construct instructions in the format that can be understood and acted upon by the computer system. A major goal of computer scientists is to develop computer system which can accept instructions in normal human language – known as Natural Language Processor.

Generations of Programming Languages:-

The term 'generation' of computer languages is used to categorize the generic enhancements in various computer languages. It shows the step-by-step evolution of programming languages. Each generation indicates significant progress towards making computers easier to use. Computer languages by generation are classified as follows:

     First Generation (late 1940s)

        e.g. machine language

     Second Generation (early 1950s)

        e.g. assembly language

     Third Generation (late 1950s through 1970s)

        e.g. high level language

     Fourth Generation (late 1970 onwords)

        includes a whole range of query languages and other tools.

Classification of Programming Languages

Computer programming languages can be classified into two major categories:

     Low Level

     High Level

Low Level Languages

The languages which use only primitive operations of the computer are known as low level languages. In these languages, programs are written by means of the memory and registers available on the computer. As we all know that the architecture of computer differs from one machine to another, so for each type of computer there is a separate low level programming language. In the other words, Programs written in one low level language of one machine can't be ported on any other machine due to architectural changes. Because of this, low level languages are known as machine dependent languages. Examples are Machine Language and Assembly Language.

Machine Language:- In machine language programs, the computation is based on binary numbers. All the instructions including operations, registers, data and memory locations are given in there binary equivalent.

The machine directly understands this language by virtue of its circuitry design so these programs are directly executable on the computer without any translations This makes the program execution very fast. Machine languages are also known as first generation languages. A typical low level instruction consists essentially of two parts:

u      An Operation Part        :              Specifies operation to be performed by the
                                                       computer, also known as Opcode.

u      An Address Part            :              Specifies location of the data on which operation
                                                       is to be performed.

Writing programs in machine language is a tedious task since it is very difficult
for humans to remember binary codes of all the operations. The number of bits in
the operation part determines the number of possible unique instructions that can
be framed for a computer to execute. The number of bits in the address part determines the number of directly addressable, unique storage locations in internal memory of the computer.

Advantages

Machine language makes most efficient use of computer system resources like storage, registers, etc. The instructions of a machine language program are directly executable so there is no need of translators. Machine language instructions can be used to manipulate the individual bits in a computer system with a very high execution speed due to direct manipulation of memory and registers.

Drawbacks

Machine languages are machine dependent and, therefore, programs are not portable from one computer to the other. Programming in machine language usually results in poor programmer productivity. Machine languages require programmers to control the use of each register in the computer's Arithmetic Logic Unit and computer storage locations must be addressed directly, not symbolically. Machine language requires a high level of programming skill which increases programmer training costs. Programs written in machine language are more error prone and difficult to debug because it is very difficult to remember all binary equivalent of register, opcode, memory locations, etc. Program size is comparatively very big due to non-use of reusable codes and use of very basic operations to do a complex computation.

Assembly Language:- Assembly languages are also known as second generation languages. These languages substitute alphabetic or numeric symbols for the binary codes of machine language. That is, we can use mnemonics for all opcodes, registers and for the memory locations which provide us the more readable form of the program. These languages also provide us with a facility to write reusable code in the form of macros. Macros has two parts, one is macro name and the other is macro body which contains the line of instructions. A macro can be called at any point of the program by its name to use the instructions given in the macro repetitively.

These languages require a translator known as 'Assembler' for translating the program code written in assembly language to machine language. Because computer can interpret only the machine code instructions, once the translation is completed the program can be executed. A typical assembly language instruction consists of four components:

u      A name or label field

u      An operation code (Opcode)

u      An operand

u      A comment field (separated by ; (semicolon) from the executable part of the instruction).

A name or label field is optional. It is used to mark a place in a program to which computer control can be transferred. An operation code specifies to the control unit what processing tasks to perform and the operand field identifies the location of data item in primary memory. The comment field enables a programmer to write relevant notes and thereby improve the program documentation. This field is optional. In assembly language, symbols are used rather than absolute addresses, to represent memory locations, e.g. hexadecimal value can be used to represent the memory location of the data in a statement. For example, 2AH for hexadecimal where 2A represents some memory location. Similarly BX and CX can be used to represent B register and C register of the computer's ALU respectively. Mnemonics are used for operation code, i.e. short abbreviations that help programmers remember what the codes represent.

Advantages

Assembly languages provide optimal use of computer resources like registers and memory because of direct use of these resources within the programs. Assembly language is easier to use than machine language because there is no need to remember or calculate the binary equivalents for opcode and registers. An assembler is useful for detecting programming errors. Assembly language encourages modular programming which provides the facility of reusable code, using macro.

Drawbacks

Assembly language programs are not directly executable due to the need of translation. Also, these languages are machine dependent and, therefore, not portable from one machine to another. Programming in assembly language requires a high level of programming skills and knowledge of computer architecture of the particular machine.

High Level Language:- All high level languages are procedure-oriented languages and are intended to be machine independent. Programs are written in statements akin to English language, a great advancement over mnemonics of assembly language. That is, the high level languages use natural language like structures. These languages require translators (compilers and interpreters) for translating high level language programs into machine language programs for execution. The programs written in a high level  language can be ported on any computer, that is why known they are known as machine independent. The early high level languages come in third generation of languages, e.g. COBOL, FORTRAN, PASCAL, BASIC, APL, etc.

These languages enable the programmer to write instructions using English words and familiar mathematical symbols which makes it easier for programmers to concentrate on the logic of problem-solving rather than technical details of the computer. It makes the programs more readable too. Once coded, programs are easier to understand and modify. However, procedure-oriented languages still have some disadvantages compared to machine and assembly languages. (1) Programs execute more slowly. (2) The languages use computer resources efficiently.

4GL:- Fourth generation languages (4GLs) are a class of software designed to simplify the task of developing a new application by making the user interface similar to natural languages. These are very easy to use languages. Some 4GLs are designed to improve the productivity of programming professionals while others are designed to be used directly by the end user.

4GLs are designed more for specification of what tasks to be accomplished as  compared to third generation procedural languages which focus on how to solve a problem. These languages are developed for the purpose of making database management more efficient and is also known as database management systems. Database Management System (DBMS) is a concept to construct, organize and manipulate a large set of data in a best possible way.

Example:

u      Suppose personal details of  all employees are stored in a file called Employee Master File. It is required to display all the information about a particular employee, say, David.

u      To accomplish the task using procedural (third generation) language, the programmer would have to write a series of instructions as follows:

          Step 1  Get a record from the employee master file.

          Step 2  Check if the record belongs to employee name "David".

          Step 3  If the answer for step 2 is "Yes", display details.

          Step 4  Otherwise, go to step 1.

u      In 4GLs the task could be accomplished by giving a single instruction as follows:

          Display all for  employee name = "David" from employee master file.       

Many fourth generation languages either incorporate a query language or support a standard query language like SQL, which can be used to interact with the database.

e.g.:  SQL statement for the above illustration will be:

          [Select * from employee_master where emp_name = "David".]

Note       * means all the fields of record.

Advantages

u      Easy to use; little or no computer knowledge is required.

u      Machine independent.

u      Enhanced programming productivity.

u      Ease of modification and maintenance of data.

u      Good documentation.

Disadvantages

u      4GL programs are less efficient from the computer resource utilization point of view.

u      Programmers become less skilled over a period of time.

u  Security standards are difficult to enforce in 4GL environment.

Object Oriented Languages:-

Object-orientation can refer to a set of design principles, a programming style, or features of programming languages that support that style. Continuing from an earlier post on the history of programming languages, let’s next concentrate on the purpose and history of the languages that support OOP.

The purpose of object orientation is to model, in code, the objects that make up the application you’re writing and the interactions between them. As in human language, it’s impossible to describe any process without referring to the nouns that are involved. All programming languages provide some nouns, but until object-oriented languages arrived on the scene, the programmer couldn’t create his/her own nouns very easily. Programming was limited to talking about the set of nouns provided by a language: numbers, characters, channels, etc. Of course, programmers built more abstract structures around this limited set of nouns, but the code that described those abstractions was much more complex than talking about them in English. Object-oriented languages allow you to define types of objects (called classes) that are derived from, or composed of, other types. In addition to this data component, the functions (also called methods) that “belong” to the data are also grouped in the class. This has at least three benefits:

  1. Encapsulation. Functions that are internal to a class can be marked as “private”. This means that they’re hidden from any code outside the class, so their implementation can be changed without bothering any code that uses the class. Conversely, the methods that are marked “public” form a well-defined interface that should not be changed without due consideration, because client code relies on it.
  2. Inheritance. You can derive one class from another, and the new class automatically contains all of the methods and data of the original class. This is useful when some subset of your objects needs an additional capability, but you don’t want to give that capability to all of the other objects.
  3. Polymorphism. Polly who? It’s a Greek-derived term that means “many forms”. In OOP, it means that sending the same message (in most OO languages, this means calling a method by name) may evoke different responses depending on type. Polymorphism itself has more than one form. The first form is when a derived class overrides an inherited method with its own implementation, so that sending the same message (calling the same function) on two different objects yields a different behavior depending on their types. A second type of polymorphism is called “parametric polymorphism”, which means that a class provides different implementations for a method depending on the types of parameters passed to it.

Application Software: - Application software is a set of one or more programs designed to solve a specific problem or do a specific task. For example an application software for payroll processing produces pay slips as the major output and an application software for processing examination results produces mark sheets as the major output along with some other statistical reports. Similarly a program written by a scientist to solve his/her particular research problem is also an application software .the programs included in an application software package are called application programs and the programmers who prepare application software are referred to as application programmers.

There are literally millions of application software available for a wide range of applications ranging from simple applications such as word processing inventory management preparation of tax returns ,banking hospital administration ,insurance, publishing, to complex scientific and engineering applications such as weather forecasting ,space shuttle launching oil and natural gas exploration ,design of complex structures like aircrafts, ships bridges, sky rise buildings, etc. With so many applications available, it is not possible to categorize them all and to cover them here. Hence just to have a feel of what application soft ware dose, some of the most        only known application software are briefly described below.

Word Processing Software:-Word processing is a term that describes the use of computers to create ,edit ,view ,format, store, retrieve and print documents (written material such as letters, reports, books, etc).A word-processing software is an application software that enables the user to do all these on a computer system. We need to create documents is so common is every walk of life ,whether it is at work ,at school, or at home ,that word-processing soft ware is the most commonly used application software. Today’s word-processing packages normally support the following features:

Entering Text--- This feature allows you to enter text with computer’s keyboard. Every character typed on keyboard is displayed immediately on computer’s screen. Word wrap features of word-processing software determines when current line is full, and text that follows is moved automatically to next line. Hence, only time you have to press enter key is at the end of a paragraph.

Editing Text--- This feature allows you to make changes in an already entered document. While editing, you can use either insert mode or type-over mode. In insert- mode, new characters typed are inserted in the text at cursor’s position. In type-over mode, new characters typed, replace the existing characters at cursor’s position. While editing, you can also delete unwanted text. Few characters or words at cursor position are deleted normally with use of Delete key(to delete characters to the right of cursor) or Backspace key(to delete characters to the left of cursor).

Formatting Page Style---- This feature allows you to define page layout format for a document. Definition of a page layout format may include things such as:

  1. Space to be left for left, right, top, and bottom page margins.
  2. Default spacing between two lines(such as single space, double space, 1.5 space, etc.).
  3. Automatic numbering of pages with page number style and page number position.
  4. Automatic placement of header and footer labels on each page.
  5. Setting text in multiple columns on a single page. Multi-column option is used frequently in newsletter and newspaper printing.

Formatting Text---- This feature allows you to format portions of text in a document to improve its general appearance and readability. It normally includes things such as:

  1. Selection of an appropriate font----- A font is a complete set of characters with same style and size. A word-processing package comes with several standard fonts, such as Times, Helvetica, Palatino, etc. Different fonts may be applied to different portions of the same document.
  2. Selection of an appropriate font size----- Font size is measured in points. A point is 1/72 of an inch, and size refers to the distance from the top of the tallest character to the bottom of the character that extends the lowest.
  3. Selecting an appropriate font style------ Commonly used font styles are italic, bold, and underline. They are normally used to highlight individual words, phrases, or portions of text in a document.
  4. Selecting an appropriate justification----- Justification is alignment of text on left or right margins or on both margins. In case of left-justification, beginnings of lines are aligned with left margin of the page. This style is also known as ragged right because ends of lines at the right edge end wherever the last word ends. In case of right-justification, ends of lines are aligned with right margin of the page. In case of full-justification, all lines are aligned properly with both left and right margins of the page. In case of center-justification of a particular line, it is placed at the center of a line with equal spacing on both its left and right ends.
  5. Indenting text appropriately wherever desired---- Indentation is used often at the beginning of a paragraph, or to set aside some portion of text from the main text in a document, or to enter text in tabular form. Tab stops are used normally for indentation. Tab stops are pre-defined typically at every fourth or fifth character, or at every ½ inch from the left margin of a page layout.
  6. Creating numbered or bulleted list of items----- This feature allows descriptive items to be presented as a numbered or bulleted list for better comprehension and readability. Each item in the list has a separate number, or bullet or some other symbol attached to its beginning. Numbers or symbols are inserted automatically by word-processing software as soon as you press enter key.

Entering Mathematical Symbols:--- Several scientific and engineering documents often use mathematical symbols. This feature allows you to enter complex mathematical equations using mathematical symbols.

Spreadsheet Software:-A Spreadsheet software is a numeric data analysis tool that allows you to create a kind of computerized ledger .A manual ledger is a book having rows and columns that accountants use for keeping a record of financial transactions and for preparing financial statements. Accountants use the manual ledger with pencil, erasure and hand calculator to prepare financial statements. This is a tedious task and often takes a long time due to several iteration of formula calculations to come out with an acceptable and satisfactory financial statement. A spreadsheet software offers considerable ease of performing such tasks by automating all arithmetic calculations and making it much easier to change certain numeric values and immediately seeing the effect of these changes across the worksheet (ledger). With spreadsheet software in place, we are no longer confined to using pencils, erasers , and hand calculator for dealing with any task that requires numeric data analysis. Some of key features of spreadsheet packages are:

Rows and Columns----- A spreadsheet is organized in a tabular form with rows and columns. Numbers are used to identify rows, whereas letters are used to identify columns. Single letters are used to identify the first 26 columns and double letters are used for subsequent columns( A, B,….,Z; AA, AB,…..,AZ; BA, BB,……,BZ;…..). A large spreadsheet may have hundreds of rows and columns.

Cells------ The intersection of a row and a column  is called a cell. A cell is identified by its address, which is a combination of its column letter and row number(such as F4, C18). Data are stored in cells.  

Range of Cells----- Many spreadsheet operations involve a range of cells instead of a single cell. A range of cells may involve many cells and entering every individual cell address for an operation to be performed on them may be cumbersome and time taking. To take care of this problem, all spreadsheet packages allow use of following types of cell ranges:

  1. Row Range-> It is used to include a set of adjacent cells in the same row. For example, the range B5..D5 refers to the cells B5,C5 and D5.
  2. Column Range-> It is used to include a set of adjacent cells in the same column. For example, the range C5..C9 refers to the cells C5, C6, C7, C8 and C9.
  3. Block Range-> It is used to include a set of adjacent cells in a rectangular group of cells. For example, the range B5..D9 refers to the cells B5, B6, B7, B8, B9, C5, C6, C7, C8, C9, D5, D6, D7, D8 and D9.

Presentation Graphics:- A graphics software enables us to use a computer system for creating , editing , viewing , storing, retrieving and printing designs, drawings, pictures , graphs and anything else that can be drawn in the traditional manner.

A type of business software that enables users to create highly stylized images for slide shows and reports. The software includes functions for creating various types of charts and graphs and for inserting text in a variety of fonts. Most systems enable you to import data from a spreadsheet application to create the charts and graphs.

Presentation graphics is often called business graphics.

Features: A presentation program is supposed to help both: the speaker with an easier access to his ideas and the participants with visual information which complements the talk. There are many different types of presentations including professional (work-related), education, entertainment, and for general communication. Presentation programs can either supplement or replace the use of older visualaid technology, such as Pamphlets, handouts, chalkboards, flip charts, posters, slides and overhead transparencies. Text, graphics, movies, and other objects are positioned on individual pages or "slides" or "foils". The "slide" analogy is a reference to the slide projector, a device that has become somewhat obsolete due to the use of presentation software. Slides can be printed, or (more usually) displayed on-screen and navigated through at the command of the presenter. Transitions between slides can be animated in a variety of ways, as can the emergence of elements on a slide itself. Typically a presentation has many constraints and the most important being the limited time to present consistent information.

Recently a new presentation paradigm has emerged: zooming presentation programs such as Presentista and Prezi. Instead of individual slides these ZUIs (zoom user interface) are based on one infinite canvas on which all content is presented. This allows for non-linear presentations, the option to present richer detail of content, and to give a better overview and understanding of complex visual messages and relations.

Another recent development which internet based software such as Presentista, Prezi, SlideRocket, Office Web Apps or Google Docs has enabled is collaborative development of the presentation. Several people can work on the presentation at the same time revising content or reviewing the changes as they are made by others.

Many presentation programs come with pre-designed images (clip art) and/or have the ability to import graphic images. Some tools also have the ability to search and import images from Flickr or Google directly from the tool. Custom graphics can also be created in other programs such as Adobe Photoshop or Adobe Illustrator and then exported. The concept of clip art originated with the image library that came as a complement with VCN ExecuVision, beginning in 1983.

With the growth of digital photography and video, many programs that handle these types of media also include presentation functions for displaying them in a similar "slide show" format. For example, Apple's iPhoto allows groups of digital photos to be displayed in a slide show with options such as selecting transitions, choosing whether or not the show stops at the end or continues to loop, and including music to accompany the photos.

Similar to programming extensions for an operating system or web browser, "add ons" or plugins for presentation programs can be used to enhance their capabilities. For example, it would be useful to export a PowerPoint presentation as a Flash animation or PDF document. This would make delivery through removable media or sharing over the Internet easier. Since PDF files are designed to be shared regardless of platform and most web browsers already have the plugin to view Flash files, these formats would allow presentations to be more widely accessible.

Certain presentation programs also offer an interactive integrated hardware element designed to engage an audience (e.g. audience response systems) or facilitate presentations across different geographical locations (e.g. web conferencing). Other integrated hardware devices ease the job of a live presenter such as laser pointers and interactive whiteboards.

Database Managements Software:-This application software is designed to take advantage of the tremendous capability of computer system in storing organizing and selectively retrieving large volumes of data efficiently A database is a collection of related data stored and treated as a unit for information retrieval purposes.

It is important here to note the difference between data and information. Data is stored in a database whereas information is retrieved from a database. That is data is input to any data processing system and information is its output .in other, data is the raw material for a data processing system and information is the processed data.

A database concept can be best illustrated with an example. For example , a school’s student database might contain the name, sex, date of birth, current address, permanent address, parent’s occupation , marks scored in various subjects in each class already passed , and current occupation for all the students who are either currently enrolled or have already graduated from the school similarly ,an individual’s address database might contain the names , addresses, and telephone numbers of all his/her friends and business contacts. The data of one student in the student database or one person in the address database is known as a record.

A database software is a set of one or more programs that enables users to create a database , maintain it (add, delete and update its records ), organize its data in desired fashion (for example, sort its records alphabetically name-wise),and to selectively retrieve  useful information from it (for example , get the telephone number of the person named kashyap rana from the address database , or get the names of all currently enrolled students from the student database whose birthday fall today ).

Database software is widely used today by both large and small organizations to maintain employee data, customer data, assets data , accounting data, etc. Even individuals find the database software very useful for maintaining data such as list of addresses and telephone numbers of their friends and relatives, list of household goods and other valuables, list of various types of savings in different banks ,etc . 

 

 

 

No comments:

Post a Comment