Professional Documents
Culture Documents
Software=Program+
Documentation+ Operating
Procedures
What is software?
Software=Program+
Documentation+ Operating
Procedures
Computer software, or
simplysoftware, is that part of a
computer systemthat consists of
dataor computer instructions
Types of software
Application software, which is
software that uses the computer
system to perform special functions.
Applications software (also
calledend-userprograms) include
such things asdatabaseprograms,
word processors,Web browsersand
spreadsheets.
Types of software
System software, which is software
that directly operates the
computer hardware, to provide basic
functionality needed by users and
other software.
System software
1) Microsoft Windows
2) Linux
3) Unix
4) Mac OSX
5) DOS
6) BIOS Software
7) HD Sector Boot Software
8) Device Driver Software i.e Graphics Driver etc
9) Linker Software
10) Assembler and Compiler Software
Application software
1) Opera (Web Browser)
2) Microsoft Word (Word Processing)
3) Microsoft Excel (Spreadsheet software)
5) MySQL (Database Software)
6) Microsoft Powerpoint (Presentation
Software)
7) iTunes (Music / Sound Software)
8) VLC Media Player (Audio / Video Software )
9) World of Warcraft (Game Software)
10) Adobe Photoshop (Graphics Software)
What is software engineering?
Software engineering is an
engineering discipline which is
concerned with all aspects of
software production
What is software engineering?
At the first conference on software
engineering in 1968, Fritz Bauer
defined software engineering as The
establishment and use of sound
engineering principles in order to
obtain economically developed
software that is reliable and works
efficiently on real machines.
What is software engineering?
Blackbox Testing
Black box testing is a testing
technique that ignores the internal
mechanism of the system and
focuses on the output generated
against any input and execution of
the system. It is also called
functional testing.
Basics of software testing
WhiteboxTesting
White box testing is a testing technique
that takes into account the internal
mechanism of a system. It is also called
structural testing and glass box testing.
Black box testing is often used for
validation and white box testing is
often used for verification.
Types of testing
Unit Testing
Integration Testing
Functional Testing
System Testing
Stress Testing
Performance Testing
Usability Testing
Acceptance Testing
Regression Testing
Beta Testing
Unit Testing
Unit testing is the testing of an
individual unit or group of related
units.
It falls under the class of white box
testing.
It is often done by the programmer to
test that the unit he/she has
implemented is producing expected
output against given input.
Integration Testing
Integration testing is testing in which a
group of components are combined to
produce output.
Also, the interaction between software
and hardware is tested in integration
testing if software and hardware
components have any relation.
It may fall under both white box testing
and black box testing.
Functional Testing
Functional testing is the testing to
ensure that the specified
functionality required in the system
requirements works.
It falls under the class of black box
testing.
System Testing
System testing is the testing to ensure
that by putting the software in
different environments (e.g.,
Operating Systems) it still works.
System testing is done with full
system implementation and
environment.
It falls under the class of black box
testing.
Stress Testing
Stress testing is the testing to
evaluate how system behaves under
unfavorable conditions.
Testing is conducted at beyond limits
of the specifications.
It falls under the class of black box
testing.
Performance Testing
Performance testing is the testing to
assess the speed and effectiveness
of the system and to make sure it is
generating results within a specified
time as in performance
requirements.
It falls under the class of black box
testing.
Usability Testing
Usability testing is performed to the
perspective of the client, to evaluate
how the GUI is user-friendly?
How easily can the client learn?
After learning how to use, how
proficiently can the client perform?
How pleasing is it to use its design?
This falls under the class of black box
testing.
Acceptance Testing
Acceptance testing is often done by
the customer to ensure that the
delivered product meets the
requirements and works as the
customer expected.
It falls under the class of black box
testing.
Regression Testing
Regression testing is the testing after
modification of a system, component,
or a group of related units to ensure
that the modification is working
correctly and is not damaging or
imposing other modules to produce
unexpected results.
It falls under the class of black box
testing.
Beta Testing
Beta testing is the testing which is
done by end users, a team outside
development, or publicly releasing full
pre-version of the product which is
known as beta version.
The aim of beta testing is to cover
unexpected errors.
It falls under the class of black box
testing.
Requirement Engineering
Produces one large document written
in natural language contains a
description of what the system will
do without describing how it will do
it.
Requirement Engineering
Requirement Engineering
Requirement Engineering is the
disciplined application of proven
principles, methods, tools, and
notations to describe a proposed
systems intended behavior and
its associated constraints.
Types of Requirements
Functional requirements describe
what the software has to do. They
are often called product features.
Review Checklists
Redundancy
Completeness
Ambiguity
Consistency
Organization
Traceability
Software Quality Assurance
The function of software quality
that assures that the standards,
processes, and procedures are
appropriate for the project and are
correctly implemented.
Focuses on processes and
procedures
Process-oriented activities.
Preventive activities.
Software Quality Control
The function of software quality
that checks that the project follows
its standards, processes, and
procedures, and that the project
produces the required internal and
external (deliverable) products.
Focuses on actual testing
Product-oriented activities.
It is a corrective process.
Software Quality Metrics
A definition of software quality
metrics is:-