0% found this document useful (0 votes)
46 views40 pages

Complete

The document provides an overview of the waterfall model for software development. It describes the key stages of requirement elicitation and analysis, design, coding, testing, installation, and maintenance. It notes that the waterfall model is best suited for projects with fixed requirements where changes are not expected during development. The main advantages are that it is easy to understand and can produce stable products, while disadvantages include that it is only suitable for small projects and does not allow for backtracking or changes to requirements.

Uploaded by

Ashok Nidamanuri
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views40 pages

Complete

The document provides an overview of the waterfall model for software development. It describes the key stages of requirement elicitation and analysis, design, coding, testing, installation, and maintenance. It notes that the waterfall model is best suited for projects with fixed requirements where changes are not expected during development. The main advantages are that it is easy to understand and can produce stable products, while disadvantages include that it is only suitable for small projects and does not allow for backtracking or changes to requirements.

Uploaded by

Ashok Nidamanuri
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 40

Requirement, Waterfall Model

Elicitation &
Analysis
Business
Analyst: Feasibility
• Complete

Study
Consistent
• Ambiguity • Finance
• Resource Design
• Technology
• LLD
• HLD Coding

Testing

Installation

Maintenance
WATERFALL MODEL
When to go for Waterfall model:
• When Requirements are fixed.
• When there is no any changes in Requirements in middle of the project development.
 
Advantages:
• Easy to understand.
• Can achieve stable products.
 
Disadvantages:
• Applicable only for small projects.
• Back tracking is not possible.
• Requirements always should be fixed.
 
Applications:
• Calculator(Because addition,subtraction,etc…..will not change for a long persiod of time).
SPIRAL MODEL
When to go for Spiral model?
• Whenever there is dependency.
• Whenever the requirements are not completely available.
• Whenever there are changes in requirements.
 
Advantages:
• Changes in requirements is possible in middle of the project development.
• User can use the software at early stages.
• More accurate software can be developed(because changes are accepted).
• Avoidance of Risk is enhanced(because Risk analysis is involved).
 
Disadvantages:
• Complex to understand.
• Not suitable for small projects.
• Can be a costly model because Risk analysis is involved(Risk analysts).
• Project is highly dependent on Risk analysis.
 
Application:
Facebook, WhatsApp, etc.
Prototype Model

Checking whether the Checking whether


components are the components
present or not Customer is Satisfied are working or not

Requirement Prototype
Prototype Customer Actual Actual Actual
Elicitation & design and
testing feedback Design Development Testing
Analysis development

Installation

Maintenance
PROTOTYPE MODEL
When to go for prototype model?
• When the customer is new to the market.
• When developer is new to the market.
• When there are changes in requirements.
 
Advantages:
• Users are actively involved in the development.
• Errors can be detected much earlier.
• Quick user feedback is available which leads to better solutions.
 
Disadvantages:
• It takes Excessive Development time which is based upon customer.
• Customer can only see the Prototype, he can not Operate it.
 
Application:
• Real time operating system(RTOS),
• front ends(GUI),
• when the customer wants the customized products etc.
 
White Box Testing:
Checking the code or program which is written to develop the software or application

Types of White box testing:


1. Statement testing
2. Path testing
3. Condition testing
4. Loop testing
5.Unit testing.
6. Testing the code from memory point of view
7. Testing the code from performance point of view
Example 1:
class Demo
{
public static void main(String[] args)
{
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
System.out.println("Welcome to abc");
}
}
OUTPUT:
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Example 2:
class Demo
{ public static void main(String[] args)
{
for (int i=0; i<=10 ;i++)
{
System.out.println("Welcome to abc");
}
}
}
OUTPUT:
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Welcome to abc
Black Box Testing:
Checking the behaviour of an application is called as Black box testing.

Types of BBT:
1.Functional testing
2.Integartion testing
3.System testing
4.User acceptance testing

How to perform BBT?

• Understand the working of the software product by referring to requirements


• Write test scenarios
• Write test cases
• Execute test cases
Functional test scenarios for text field box:
Positive Scenarios:
1) Check whether the text field box is placed as per the requirements or not.
2) Check whether the length and breadth of the text field box is as per the requirements or not
3) Check whether the text field box is navigable using tab key or Mouse.
4) Check whether placeholder value is visible or not inside the text field box.
5) Check whether placeholder value's spelling is correct or not.
6) Check whether the font size, font style ,font colour and alignment of placeholder value's text is as per the requirements or not.
7) Enter the character inside textbox erase the character check whether placeholder value is visible or not.
8) Check whether the position of placeholder value gets retained to its initial position or not.
9) Enter the characters in the text field box after entering check whether the user is able to navigate to other components or not.
10) Check whether text field box is having asterisk symbol or not which represents mandatory text field box.
11) Enter the characters inside textbox check whether characters editable or not.
12) Enter the capital letters and check how many letters that text box can accommodate.
13) Enter the small letters and check how many letters that text box can accommodate.
14) Enter the combination of letters (small and capital )and check how many letters that text box can accommodate.
15) Enter the different languages (other than English such as Kannada ,Hindi, Telugu..) and check how many letters that
text box can accommodate.
16) Check whether the user is able to type characters inside the text field box which is having dropdown.
17) Enter the characters inside the text field box check whether user is able to navigate each and every letters using
left Arrow and right Arrow through keyboard.
18) Check whether the copied text is past able or not inside the text field box.
19) Check whether the text field box contains suggestions or not.
20) Check whether the text field box is accepting any specific characters or not.
Negative scenarios for Text field box:
1) Leave as Blank in the text field box click on enter or submit button check whether proper error message is displayed or not.
2) Enter the characters by giving space between each and every characters click on enter or submit button check whether proper
error message is displayed or not.
3) Enter the characters less than minimum range of characters specified in the requirements click on submit button or enter key
check whether proper error message is displayed or not.
4) Enter some characters in the text field less than minimum characters switch off the internet check whether the user is able to
type the characters further or not.
5) Check whether in the text field box auto filling of characters is present or not.
6) Enter the characters or numbers inside the text field box refresh the webpage check whether the entered character is getting
displayed or not in the text field.
7) Enter the characters inside the text field box, navigate to other web page again come back to the previous page where the
characters entered in the text field box check whether the previously typed characters are displayed or not.
INTEGRATION TESTING
Checking the Data flow between the modules is only called as Integration Testing.

MODULE-A DATA FLOW


MODULE-B
Integration testing scenarios for Gmail application

Compose
Inbox
Drafts
Sent items
Outbox
Spam
Starred
Important
Trash
All mails
S1: Login as User A, compose a mail using compose functionality, check whether a copy of sent mail is visible in sent items
functionality or not.
S2: Login as User A, compose a mail using a compose functionality, and cancel that mail, check whether a copy of cancelled
mail is visible in Draft functionality or not.
S3: Login as User A go to Sent items and delete one mail from sent items functionality, check whether the deleted mail is
present in Trash functionality or not.
S4: Login as User A, compose a mail using compose functionality, Disconnect internet connection, check whether copy of
unsent mail is visible in outbox functionality or not.
S5: Provide internet connection to the system, check whether copy of mail is been transferred from outbox functionality to
sent items functionality.
S6: Login as User A, select a mail from Inbox functionality and mark it as Starred, check whether a copy of mail is visible is
Starred functionality or not.
S7: Login as User A, select mail from Inbox functionality and mark it as important check whether a copy of mail is visible in
Important functionality or not.
S8: Login as User A, select mail from Inbox functionality and mark it as spam check whether a copy of mail is visible in
Spam functionality or not.
TOP – DOWN APPROACH
1

AMOUNT BALANCE

2 3 4

DEPOSIT WITHDRAW TRANSFER


BOTTOM-UP APPROACH
4

AMOUNT BALANCE

1 2 3

DEPOSIT WITHDRAW TRANSFER


SANDWICH APPROACH

A B c

X Y Z
NON-INCREMENTAL INTEGRATION TESTING/BIG-BANG APPROACH

A B

C
D
G

E
F
System testing

• End to end testing of an application/software product is called as System testing


System testing scenarios for banking application
CRS for banking application:
Let us consider Citibank wants a software for personal loan feature it asks Wipro company to develop the software and it provides CRS to develop
the software the. CRS is as shown below:

->If a Citibank customer wants a personal loan of Rs 20000/ over his monthly income of Rs10000/, then the manager approves the loan, let's say
rate of interest is 2% and the activation fee for the first time is Rs250/ when the customer repays the loan amount at the end of the month then the
total amount he has to pay is

=[20,000+2%interest +250]

=20,000+400+250

=20,650Rs

-> If the same customer wants another personal loan then no activation fee is taken now the customer applies for another personal loan of Rs20000
and the rate of interest is 2% when the customer repays the Loan at the end of the month then the total amount has to pay is

=[20,000+2% of interest]

=[20,000+4000]

=20,400Rs

-> If the customer applies loan of Rs 50000 for the first time itself then no activation fee taken this time the amount he has to pay is

=[50,000+2% of interest]

=50,000+1000=51,000Rs
Personal loans Apply For Loans
Amount balance
Apply Loan
3
Account no
Amount transfer
Customer Login 2 Amount
Personal Loan
User name
1 Check Loan balance

password Gold Loan


Apply Cancel
Login Cancel Insurance Repay Loan amount

7
Log out

8
9
Check Loan Balance Repay Loan Amount

Account no
Account no

Amount
Amount

Check Cancel Repay Cancel


Pending Loans
5 Sl no Account Name Amount
Pending Loans number
Manager Login 4
1 123 Ram 20000
User name

password
Deposit 2 456 Rani 25000
Login Cancel
3 789 Sheela 10000

Log out
4 007 Bond 7777

Approve Cancel
Deposit

Account no

Amount 6

Deposit Cancel
Scenario 1: When the customer applies loan for the first time
1)Login as user A[ customer]
Apply for loan amount of Rs 20000
logout
2) Login as manager
Check for pending personal loans and select the customer name approve the loan
Logout
3) Login as manager
Deposit loan amount of Rs20000
Logout
4) Login as user A [customer]
Check loan balance loan amount of Rs20000 should be displayed
Logout
Change the server date to next month
5) Login as user A [customer]
Repay loan amount of Rs [20000 + 400 + 250=20,650]
Logout
6) Login as user A [customer]
Check loan balance ,loan balance should be 0 Rs.
Logout
Scenario 2: when the customer apply loan for second time
1) Login as user A[ customer]
Apply for loan amount of Rs 20000
logout
2) Login as manager
Check for pending personal loans and select the customer name approve
the loan
Logout
3) Login as manager
Deposit loan amount of Rs20000
Logout
4) Login as user A [customer]
Check loan balance loan amount of Rs20000 should be displayed
Logout
Change the server date to next month
5) Login as user A[ customer]
Repay loan amount of Rs [20000 + 400 =20,400]
Logout
6) Login as user A [customer]
Check loan balance ,loan balance should be 0 Rs.
Logout
Scenario 3: When the customer applies loan of Rs 50,000 for the first time
1) Login as user A[ customer]
Apply for loan amount of Rs 50,000
logout
2) Login as manager
Check for pending personal loans and select the customer name approve the loan
Logout
3) Login as manager
Deposit loan amount of Rs 50,000
Logout
4) Login as user A [customer]
Check loan balance loan amount of Rs50,000 should be displayed
Logout
Change the server date to next month
5) Login as user A [customer]
Repay loan amount of Rs 51,000
Logout
6) Login as user A [customer]
Check loan balance ,loan balance should be 0 Rs.
Logout
 
Different peoples involved in installing the build to testing environment:

1)Test engineers
2)Developers
3)Release engineers
Development Environment Testing Environment
Test engineers installing build1.zip into testing
environment

D:testing/build1.zip
Build1.zip
(TE)
Compresse
d File
(TE) Unzip thebuild1

01101 Test engineers can


00010 install only Desktop (TE) Install Build1
00101 applications
(TE) Test
Compile the theBuild1
source code Identify the
(TE)
errors

Report error
Req (TE) to the
A developers
Development Environment Testing Environment
Developers installing build1.zip into testing
environment

D:testing/build1.zip
Build1.zip
(Dev)
Compresse
d File
(Dev) Unzip thebuild1

01101 Developers will


00010 install client server (Dev) Install Build1
00101 and web based
application (TE) Test
Compile the theBuild1
source code Identify the
(TE)
errors

Report error
Req (TE) to the
A developers
Development Environment
Testing Environment
Release engineers
D:testing/build1 installing build1.zip
.zipCompressed into testing
File environment
Build1.zi
0110 (RE)
1000 p
1000
101
Compile (RE) Unzip
the thebuild1
source
(RE) Install
code
Build1
SOFTWA
RE RELEASE (TE Test
ENGINEERS ) theBuild1
Identify
Secur Secur Secur Secur (TE
e e e e
the errors
folder folder
VERSION )
folder folder
1 2 3 4 CONTROL
Report
TOOL
(TE the
) errors to
the
developer
India Pakist USA German s
User acceptance testing:
Testing which is performed by the
customer while accepting the software product

Types of UAT:

1)Alpha testing
2)Beta testing
3)Gamma-testing.
V Model
Write test cases or test scenarios
USER ACCEPTANCE
CRS
TESTING

Write test cases or test scenarios


SRS
SYSTEM TESTING

Write test cases or test scenarios


HLD INTEGRATION
TESTING

Write test cases or test scenarios


LLD FUNCTIONAL VALIDATION
VERIFICATION TESTING
“ have we built right product “
“ are we building CODING
product right “
Quality control
Quality analyst
Product oriented
Process oriented WHITE BOX TESTING
Usability Testing
It is a software testing where the test engineers checks for the User friendliness of the
software or application.
Points:
• easy to access
• easy to understand
• freely downloadable
• easy to navigate
• privacy setting
• platform independent
• self explanatory
• easy to update
• easy to uninstall
• less memory consumption
Accessibility Testing

It is a type of software testing which is performed to insure the application


is usable by people with disabilities like hearing,colour blindness,old age
and other disability groups.
T.E. Checks for:
• Whether colours used in the application is flexible for all the
users(or)not.
• Whether that application is having voice recognition or not.
• Whether Audio/Video content will be heard by the disabled people or
not.
• Whether most of the features are accessible through keyboard (or)not.
V & V MODEL

Advantages:
•1) Testing starts in very early stages of product development which avoids downward flow
of defects which in turn reduces lot of rework.
•2) Testing is involved in every stage of product development.
Disadvantages:
•1) Initial investment is more – because right from the beginning testing team is needed.
•2) More documentation work – because of the test plans and test cases and all other
documents .
•High Risk and uncertainty.
Applications:
•1) for long term projects.
•2) for complex applications.
•3) when customer is expecting a very high quality product within stipulated time frame
because every stage is tested and developers & testing team are working in parallel.
 
 
Agile Model
BACKLOG PRODUCT BACKLOG SPRINT BACKLOG
D.S.M
S.R.M
Spam Login Login
S.M S.R.M
Inbox P.O Compose S.P.M Compose Release
Sent items Inbox Inbox
Drafts Sent items logout
Compose Drafts
Login Spam
logout logout SPRINT

Unprioritised Prioritized
requirement requirement

P.O

S.M S.T
AGILE MODEL

When to go for agile model:


• When changes can be discussed and features can be newly effected or removed based feedback.

Advantages:
• Realistic approach to software development.
• Promotes team work and cross training.
• Functionalities can be developed rapidly & demonstrated.
• Suitable for fixed or changing requirements.
•  Give flexibility to developers.

Disadvantages:
• Depends heavily on Project manager.
• Not suitable for handling complex dependencies.
• Transfer of technology to new team members may be quite challenging due to lack of documentation.

Applications:
• Mobile app development

You might also like