software

Introduction:
We mostly refer hardware and software to computer, Hardware is physical component of computer we can see and touch(monitor , mouse, keyboard, printer etc).while Software is collection program which perform all computer operation and we can not touch them.
(windows , Microsoft word ,word-press etc).

Computer software:
“ software is set of computer programs, procedures, and associated documents(flowcharts, manuals etc)describing the program and how it will work”
A software package is a group of programs that solve a specific problem or a specific type of job.
Example: word processing contain text editing ,text formatting, drawing graphics etc
Types of software:
According to their functionality software is divided into two major parts:
1. Application software
2. System software
system software:
System software is set of one or more programs which control and extend capability of computer. In general system software perform following function:
Support development of other application software
Support execution of other application software
Monitor effective use of hardware resources such as CPU , memory etc
Communicate with and controls operation with peripheral devices such as printer, disk etc.
System program:
Program included in system software is known as system programs.and the programmers who are referred to these program are known as system programmers.
Most common system software:
1. Operating system
2. Utility software
3.Programming language translator
4. Communication software

Application software:
Application software is set of program that is used that is used to solve a specific problem or to perform a specified task.
For example: graphics software is used to specifically perform operation on graphics such as it is used to edit a video or picture. Many other graphic related functions are performed by these software such as logo designing making cover pages etc. some graphic related software are following:
Illustrator , photo shop, pics-art, photo splash etc.http://wikipedia.com
Application software is further divided int two parts:
Customized software(a software for particular organization or person)
Package software( MS-WORD, illustrator, MS-ACCESS)
Some application software are following:
Word processing software(text editing formatting adding deletion etc)
Spreadsheet software( collection of rows and columns , calculation are performed)
Data base software(store record files reports etc)
Entertainment software(for entertainment video games , music etc)
SYSTEM DEVELOPMENT LIFE CYCLE(SDLC):
Someone must develop all software, no matter by which source we acquire software. Developing software , putting it to use , and maintaining it is a complex process involving following phases:
Requirement specification
System analysis and design
Implementation(also known as construction or code generation)
Testing and debugging
Deployment( installation)
Maintenance
Evolving software products through these phases is known as software development life cycle(SDLC) model.
Waterfall model:
SDLC is also known as waterfall model because it is sequential development model which flows steadily downward(like a waterfall) through various phases of the process.

A software development team performed the various activities in SDLC model. For small software this may be a one person team (who alone carries out all the activities of all phases) whereas for large software the team may consist of several tens or even hundred of people with different types of skills. Main activities performed in various phases of SDLC model are:

Requirement specification:
The team defines all possible requirements of a software in this phase. These includes:
Functionality
Capability
Performance
User interface
I\O requirements
The team records the defined requirement specification document which help in next phase of model.

System analysis and design:
The team studies the requirement specified in the first phase with respect to available hardware and software. System design define overall architect of system. It specifies the various software and hardware and the interface between them. It includes:
Hierarchy
Software components
Rules for component section
Interface between components
Implementation:
This phase is known as construction or code generation. Because in this phase team constructs the various software components specified in system design document. While constructing software the team construct according to hardware requirements. To construct software components the team divide it into modules and then code them separately. This is mostly done in large software so one can code one’s modules accurately. While dividing into modules the team code the interface between two modules. The team code and test modules independently.
Unit testing:
The type of testing in which modules are tested independently by programmer who developed the module is referred as unit testing.

Testing and debugging:
In this the team test the all modules separately and after successful result they all combine their modules and test them at all. If the interface of all modules are connected and work effectively then it move to next phase but if it does not work then team have to debug (find error) and correct them all.
Bug: bug mean error or any mistake it could be wrong plan or programming errors.
Debug: debug is the process of finding and eliminating errors.
If there is no error in the phase then software is ready for deployment.
Deployment:
Deployment is the process of installing program on the system. In this phase team install software on system .if the software is installed on system successfully then it will move to next phase.
Maintenance:
In this process the installed software and system requirement are maintained. This phase is because if their still a problem exist in the system and then it will be corrected.

Leave a comment