Software Engineering Principles - Chapter 1
Objectives
At the end of this chapter students will be able to:- Explain Software
- Types of software
- Components of Software
- Features of software
- role of software.
- Engineering Concepts
- Software Engineering concepts
What is Software?
Any Computer program is SoftwareComputer program that provides functionality and performance.
Software is:
(1) instructions (computer programs)That when executed provide desired features, functions, and performance
(2) Data Structures
That enable the programs to adequately manipulate information
(3) documentation
That describes the operation and use of the programs. So in simple words:
- Instructions
- Desired Functionality and Performance
- Data Structures
- Essential Component
- Main Data
- Program Logic and Design
- Documents
- User Manuals
- Design Manuals
A program is a set of instructions or a program is executable code which serve some computational objective. Software is considered to be set of executable code, associated with libraries and documentations. Software, when made for a specific requirement is called software product.
Types of Software
1. System Software
Any software designed for system use, it is not used by user to perform their tasks, but they are mandatory for running other applications.Characteristics of System Software
- Heavy interaction with Hardware
- Multiple users
- Concurrent Operations
- Scheduling
- Resource Sharing
- Process Management
- Complex Data Structures
- Multiple external Interfaces
Main Function
- Provide Interface to other applications
- Hide the complexity from the higher level of applications
Examples:
- Operating Systems
- Device Drivers
- Compilers
- And File Management Utilities
Types of System Software Explained
A- Utility Programs
The programs which are used for protection, management or solving problems. In simple words they are helper programs, they come with operating system are we can install them separately examples, anti virus programs, disk drivers, backup software, compression programs , file viewers etc.B- Translators
Translators are the programs which translates the Source code written any any language to computer language. There are three types of translators- Assembler
- This translator translates the program written in Assembly Language
- Interpreter
- This is high level language translator, Interpreter translates the program written in any high level language line by line, and it is slower than Compiler
- Compiler
- This is also high level language translator , Compiler translates the whole program written in any high level language and is faster than Interpreter
C-Operating System
A set of programs which perform all the tasks, takes placed on your device like computer, or mobile. It host all applications running on that device. Operating System make interface between user and device, Examples of Operating Systems are: Windows Operating Systems, Disk Operating System (DOS),Linux Operating System, Unix Operating System, Mac Operating System, OS2, Android Operating System for Android Mobile Phones, IOS Operating System for Iphone Mobiles etc.2- Real Time Software
Real time software is the program or set of programs which works in real time. These programs Monitor, Analyze and Control the real time events.Components of Real Time Software
- Input Data
- Analyze the Data
- Take appropriate action
- Radar Software
- Air Traffic Control System
- Food Control System
- Sonar
3- Business Software
The programs which are used to perform business related functions, like payroll system, inventory management system, sales analysis system4- Scientific and Engineering Software
Used for solving scientific problemsExamples:
- Mat lab
- Auto-cad
- Mathematical
5- Embedded Software
Resides in Read only Memory (ROM)Examples:
- Mobile Software
- BIOS
6- Personal Computer Software
- Word Processing
- Spread Sheet
- Multi Media Software
- Database Applications
7- Web Based Software
- Web pages
- Websites
What is Engineering?
Engineering is all about developing products like Vehicles , Motors, Computers robots etc using well defined , scientific methods and principles. if engineering is used for machines it is called mechanical engineering, if engineering is used for electrical devices it is called electrical engineering and similarly if engineering is used for making software it is said to be software engineering.Engineering can also be defined as the application of scientific knowledge to solve the problems of real world.
What is Software Engineering
It is an engineering branch which is associated with constructing software product using well defined scientific methods, procedures and principles. The outcome of the software engineering is an reliable and efficient software product.IEEE defines Software Engineering as:
The application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software; that is, the application of engineering to software.
The study of approaches as in the above statement.
In brief according to IEEE:
Software Engineering is applying the principals of engineering to the development of software systems.
Some other definitions of software engineering are:
1. It is the application of engineering to the development of software product in a systematic method.
2. The systematic application of the technological and scientific experience, methods and knowledge to the design , implementation , testing and documentation of software.
Software Engineering Principles lecture 1 |
dfvsdfsadf
ReplyDeleteThe gorgeous post learned a great deal Thanks greatly!
ReplyDeleteweb link
Thank you for taking the time to publish this information very useful! marketing 1 on 1
ReplyDelete