14
A group project submitted for Summative Assessment-I A presentation using IT for the partial fulfillment of Summative Assessment-1. Presented by- Sara Sitara Sipa Sutapa Anup Kumar Patra Mansha Bairiganjan Computer Software

Computer software

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Computer software

A group project submitted for Summative Assessment-I

A presentation using IT for the partial fulfi llment of Summative Assessment-1.

Presented by-Sara Sitara

Sipa SutapaAnup Kumar Patra

Mansha Bairiganjan

Computer Software

Page 2: Computer software

Computer software, or just software, is a collection of computer programs and related data that provide the instructions for telling a computer what to do and how to do it. In other words, software is a conceptual entity which is a set of computer programs, procedures, and associated documentation concerned with the operation of a data processing system.

The term was coined to contrast to the old term hardware (meaning physical devices). In contrast to hardware, software is intangible, meaning it "cannot be touched".

Introduction

Software

System Software

Operating Software

Language Processor

Utilities

Application Software

General Purpose Customized

Page 3: Computer software

System software provides the basic functions for computer usage and helps run the computer hardware and system. It is designed to operate the computer hardware and to provide a platform for running application software.

It includes a combination of the following:

System software is responsible for managing a variety of independent hardware components, so that they can work together harmoniously.

Its purpose is to unburden the application software programmer from the often complex details of the particular computer being used, including such accessories as communications devices, printers, device readers, displays and keyboards, and also to partition the computer's resources such as memory and processor time in a safe and stable manner.

System Software

Device drivers

Operating systems

Servers

Utilities

Window systems

Page 4: Computer software

Operating System An operating system (OS) is a set of programs that manages computer

hardware resources, and provides common services for application software. The operating system is the most important type of system software in a computer system. Without an operating system, a user cannot run an application program on their computer, unless the application program is self booting.

Time-sharing operating systems schedule tasks for efficient use of the system and may also include accounting for cost allocation of processor time, mass storage, printing, and other resources.

Examples of popular modern operating systems include Android, iOS, Linux, Mac OS X and Microsoft Windows.

Common features:Memory management

Process management

File system

Security (Process/Memory protection)

Networking (TCP/IP, UDP)

Device drivers

Page 5: Computer software

A Computer understands only in the terms of 0s and 1s.Writing programs in machine language is vey difficult.

Programmers, being humans, can work better and faster with meaningful words and figures. They prefer writing programs in languages using regular English words. Such languages are called high level languages.

To make the computer understand the program written in such a language, software is needed to translate it to machine language. Such software is called language processor.

Language Processor

Page 6: Computer software

Utility software is a kind of system software designed to help analyze, configure, optimize and maintain the computer. A single piece of utility software is usually called a utility or tool.

Utility software should be contrasted with application software, which allows users to do things like creating text documents, playing games, listening to music or surfing the web. Rather than providing these kinds of user-oriented or output-oriented functionality, utility software usually focuses on how the computer infrastructure (including the computer hardware, operating system, application software and data storage) operates. Due to this focus, utilities are often rather technical and targeted at people with an advanced level of computer knowledge.

They perform many standard chores like:

Utilities

Compressing file(s)

Creating backup of file(s)

Scanning disk for computer virus

Repairing

Defragmenting a disk

Cleaning a disk

Page 7: Computer software

Application software is developed to aid in any task that benefits from computation. It is a broad category, and encompasses software of many kinds, including the PowerPoint Viewer being used to display this page.

This category includes:

Application Software

Computer-aided design

Databases

Educational software

Mathematical software

Quantum chemistry and solid state physics software

Simulation software

Spreadsheets

Telecommunications (i.e., the Internet and everything that flows on it)

Video editing software

Word processing

Page 8: Computer software

A general purpose software would be anything that aids in allowing you to accomplish simple computer related tasks. It normally refers to the types of software used by computer operators to perform simple tasks, including writing, data recording and presentations. This software is some of the most commonly used software as it performs a variety of tasks, making it very beneficial to the user.

There are 5 main types of general purpose software :

General Purpose Software

Word processing software

Database Software

Spreadsheet software

Illustration/Presentation graphics software

Desktop publishing

Education/Entertainment software

Page 9: Computer software

Custom software is software that is specially developed for some specific organization or other user. As such, it can be contrasted with the use of software packages developed for the mass market, such as commercial off-the-shelf (COTS) software, or existing free software.

Custom software can be developed by an in-house software development group, or be commissioned from a software house or independent software developer.

Large companies commonly use custom software for critical functions, including content management, inventory management, customer management, human resource management, or otherwise to fill needs that existing software packages cannot. Often such software is legacy software, developed before COTS software packages offering the required functionality became available.

Custom software development is often considered expensive compared to off-the-shelf solutions or products. This can be true if one is speaking of typical challenges and typical solutions. However, this is not always true. Custom software development by a renowned vendor is often a matter of building a house upon a solid foundation. This can be done quickly and with top-notch quality designed to meet every client's needs.

Customised Software

Page 10: Computer software

A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely.

The earliest programming languages predate the invention of the computer, and were used to direct the behavior of machines such as Jacquard looms and player pianos. Thousands of different programming languages have been created, mainly in the computer field, with many more being created every year. Most programming languages describe computation in an imperative style, i.e., as a sequence of commands, although some languages, such as those that support functional programming or logic programming, use alternative forms of description.

A programming language is usually split into the two components of syntax (form) and semantics (meaning). Some languages are defined by a specification document (for example, the C programming language is specified by an ISO Standard), while other languages, such as Perl, have a dominant implementation that is used as a reference.

Programming Languages

Page 11: Computer software

First Generation language: Machine code is the only language a microprocessor can process directly without a previous transformation. Currently, programmers almost never write programs directly in machine code, because it requires attention to numerous details which a high-level language would handle automatically, and also requires memorizing or looking up numerical codes for every instruction that is used. For this reason, second generation programming languages provide one abstraction level on top of the machine code.

Second Generation Language: Assembly language. It is considered a low-level language because while it is not a microprocessor's native language, an assembly language programmer must still understand the microprocessor's unique architecture (such as its registers and instructions). These simple instructions are then assembled directly into machine code. The assembly code can also be abstracted to another layer in a similar manner as machine code is abstracted into assembly code.

Third Generation language:A high-level programming language is a programming language with strong abstraction from the details of the computer. In comparison to low-level programming languages, it may use natural language elements, be easier to use, or be from the specification of the program, making the process of developing a program simpler and more understandable with respect to a low-level language. The amount of abstraction provided defines how "high-level" a programming language is.

Levels of Programming Language

Page 12: Computer software

Fourth Generation Language: Fourth- generation languages are easier to learn than the third-generation languages. They are also called vey high level languages. For an operation, if we have to write hundreds of lines in a program of high level language like COBOL, the same operation requires only 5 to 10 lines in a 4gl . 4gls are non-procedural. The first three generations of language are procedural . In a non-procedural language, we just write what we want the computer to do. In procedural language, we provide the details of how it is to be done.

Page 13: Computer software

As we know, machine language is the only language that the computer can understand. If we write a program in any other programming language, we have to use translator.

A translator is a program that translates the program written by the programmer into the form that the computer understands. It also points out any errors if the programming language has been used improperly.

A compiler is a computer program (or set of programs) that transforms source code written in a programming language (the source language) into another computer language (the target language, often having a binary form known as object code). The most common reason for wanting to transform source code is to create an executable program.

An interpreter translates one line of a program at a time and executes the translated instruction before going to the next line. As it translates the source code, it keeps checking for errors and stops, ifr it finds one. The program execution is resumed only after the error is resolved.

Compilers and Interpreters

Page 14: Computer software

Software fall into two categories-system software and application software. System Software can be put into three categories- operating software, language

processor and utilities. The job of utility programs is to keep the compute system running smoothly. Some utility programs are supplied as part of the operating system Application Software can either be general purpose o customized (tailor made). General purpose software is also called off-the-shelf software. The advantage of customized software over general purpose software is that the

software works exactly as we want as it is tailor-made to our needs Programming languages are called low-level o high-level depending on how close

they are to the machine language.

Summary

User

Application

Operating System

Hardware