You are on page 1of 16

Software Case Study

Of
Freecharge.in

Submitted By: Ankit Rathee


Reg. No.: 11611157
Section : K1603
Group : 2
Roll No.: B41
Submitted To: Mr. Sandeep Singh
Contents:
1. Introduction to S.R.S. (System Requirement
Specification).
2. What is meant by functional requirements?
3. What is meant by non-functional requirements?
4. Topic (“FREECHARGE.IN”) related information?
5. Functional Requirements.
6. Non - Functional Requirements.
7. Data Flow Diagram.
8. Use Case Diagram.
9. Test Cases.
1.Introduction to S.R.S. (System Requirement
Specification).:

SRS is an abbreviation used for System Requirement Specification document. It is the


document or a of a software system to be developed. It lays out functional and non-functional
requirements, and may include a set of use cases that describe user interactions that the
software must provide.
Software requirements specification establishes the basis for an agreement between
customers and contractors or suppliers (in market-driven projects, these roles may be played
by the marketing and development divisions) on what the software product is to do as well as
what it is not expected to do. Software requirements specification permits a rigorous
assessment of requirements before design can begin and reduces later redesign. It should also
provide a realistic basis for estimating product costs, risks, and schedules. Used
appropriately, software requirements specifications can help prevent software project failure.
The software requirements specification document enlists enough and necessary requirements
that are required for the project development. To derive the requirements, the developer
needs to have clear and thorough understanding of the products to be developed or being
developed. This is achieved and refined with detailed and continuous communications with
the project team and customer till the completion of the software.
The SRS may be one of a contract deliverable Data Item s or have other forms of
organizationally-mandated content.

2. What is meant by functional requirements?

In Software engineering and systems engineering, a functional requirement defines a


function of a system or its component. A function is described as a set of inputs, the behavior,
and outputs.
Functional requirements may be calculations, technical details, data manipulation and
processing and other specific functionality that define what a system is supposed to
accomplish. Behavioral requirements describing all the cases where the system uses the
functional requirements are captured in use cases. Functional requirements are supported
by non-functional requirements (also known as quality requirements), which impose
constraints on the design or implementation (such as performance requirements, security, or
reliability). Generally, functional requirements are expressed in the form "system must do
<requirement>", while non-functional requirements are "system shall be <requirement>". The
plan for implementing functional requirements is detailed in the system design. The plan for
implementing non-functional requirements is detailed in the system architecture.
3.What is meant by non-functional requirements?

In systems engineering and requirements engineering, a non-functional requirement (NFR)


is a requirement that specifies criteria that can be used to judge the operation of a system,
rather than specific behaviors. They are contrasted with functional requirements that define
specific behavior or functions. The plan for implementing functional requirements is detailed
in the system design. The plan for implementing non-functional requirements is detailed in
the system architecture, because they are usually Architecturally Significant Requirements.
Broadly, functional requirements define what a system is supposed to do and non-functional
requirements define how a system is supposed to be. Functional requirements are usually in
the form of "system shall do <requirement>", an individual action of part of the system,
perhaps explicitly in the sense of a mathematical function, a black box input, output, process
and control functional model or IPO Model. In contrast, non-functional requirements are in
the form of "system shall be <requirement>", an overall property of the system as a whole or
of a particular aspect and not a specific function. The system's overall properties commonly
mark the difference between whether the development project has succeeded or failed.
Non-functional requirements are often called "quality attributes" of a system. Other terms for
non-functional requirements are "qualities", "quality goals", "quality of service requirements",
"constraints" and "non-behavioral requirements".

4. Topic (“FREECHARGE.IN”) related information

Freecharge was founded in the August 2010 by Kunal Shah and Sandeep Tandon.it provides
online facility to recharge any prepaid mobile phones ,postpaid mobile ,DTH & Data Cards
in all around India.it was seed funded by Tandon Group and Sequoia Capital in 2010 with
an un disclosed amount. Freecharge has a customer base of over 30 million users and over
8 million users of its mobile wallet in partnership with YES Bank, Freecharge launched its
digital wallet. Freecharge co-founder Kunal shah said that the digital wallet service would
transform the way people make payments . as we continue our efforts to make your
recharge experience simpler and faster, today we are happy to introduce voice recharge on
Freecharge app for windows phone.no more filling long forms, going through multiple steps
or entering never ending details-now a single voice command to your phone will complete
your transaction! Just say ‘Freecharge Me’ or any other voice command you have created
and it is done.
5.Functional Requirements:

1. Create a new account:

 Description:
This will create an account on customer’s behalf. Which will contain all the details of
the customer, delivery address and many more. This function will contribute in
making it user-friendly.

 Input:
Enter the required basics details like address, phone numbers.

 Output:
You have Successfully Registered and now you can access your freecharge account.

 Processing:
It will contact the server to create and add a new user to it. Then the necessary details
will be updated on its database for further requirements.

2. Autofill using any other account:

Description:
This function is one the best feature of my software. If anyone is having account on
google ,LinkedIn, Facebook or Yahoo . Then user can directly sync their details from
their respective accounts.
Input:
Enter the Email and password

Output:
You have Successful Registered and enjoy freecharge benefits.

Processing:
It directs the user to google, LinkedIn, Facebook or Yahoo page for log in process and
terms and conditions.

3. Checking for valid Account in Freecharge and Bank account:

Description:
If password and serial number are ok, the authorization processes is finished.
Input:
The Freecharge gets accept from the bank computer form authorization process.
Output:
Start transaction dialog.

4. Bank Account balance checking:


Description:
If the Freecharge account linked up bank account is running out of money, no
Transaction should be accepted. An error message is sent.

Input:
Trying to make the transaction.

Processing:
The amount of cash is limited as per Freecharge policy

Output:
Display an error message Return cash card.

5. Validation of Cash card:


Description
The Freecharge has to check if the entered bank account is a valid cash-card or ATM
card

Input:
Customer enters the card number.

Processing:
Check if it is valid cash card. It will be valid if
1. The information on the card can be read.
2. It is not expired.

Output:
Display error message and return cash card if it is invalid.

6. Transaction with Freecharge:

Description:
The serial number should be logged in the Freecharge database safely time to time
when required during the transaction takes place.

Input:
Transaction ID number from cash card.

Processing:
Log the number

Output: Update to log file

7. Accessing bank account:

Description:
Authorization dialog: The user is requested to enter his/her password. The Freecharge
verifies the bank card code and password with the bank databases.
Input:
Password from the user, bank card from cash card.

Processing:
Send serial number and password to bank computer, receive respond from bank.

Output:
Accept or reject authorization from bank.

8. Cashback system:

Description:
Cash back is given frequently

Input:
Do as much as transaction possible.

Processing:
limited time bound offers are only valid under that time interval.

9. Feedback

Description:
This function will provide user facility to give their feedback into the feedback option.

Input:
Email-id, Contact number and feedback.

Output:
Display Feedback submitted successfully message.

Processing:
Save feedback into database.

10. Forgot password:


Description:
This function will provide user to recover their password in case the password is forgot

Input:
Forgot password.

Output:
Send an email to the registered email-id of user and make the user reset the password

Processing:
System checks your query from database.
11. Help:

Description:
It will be used to check for FAQs

Input:
Enter a keyword related to your problem

Output:
Related FAQs

Process:
Search for all related FAQs

12. Refund:
Description:
It will review the refund request of the customers
Input:
Refund request of any product

Output:
Your request is under process

Process:
The request is stored database further processing.
6. Non - Functional Requirements
6.1 Availability

 The system should be available at all times, meaning the user can
access it using a web browser, only restricted by the down time of
the server on which the system runs. In case of a of a hardware
failure or database corruption, a replacement page will be
shown. Also in case of a hardware failure or database corruption,
backups of the database should be retrieved from the server and
saved by the administrator.

6.2 Security

 The system use SSL (secured socket layer) in all transactions that
include any confidential customer information.
 The system must automatically log out all customers after a period
of inactivity.
 The system should not leave any cookies on the customer’s
computer containing the user’s password.
 The system’s back-end servers shall only be accessible to
authenticated administrators.

6.3 Reliability

 The system provides storage of all databases on redundant computers


with automatic switchover.
 The reliability of the overall program depends on the reliability of the
separate components. The main pillar of reliability of the system is
the backup of the database which is continuously maintained and
updated to reflect the most recent changes.

6.4 Maintainability

 A commercial database is used for maintaining the database and the


application server takes care of the site. In case of a failure, a re-
initialization of the program will be done efficiently.
6. Data Flow Diagram:
7. USE CASE DIAGRAM: -
8. TEST CASES FOR “FREECHARGE.IN”: -

8.1 Login Function’s Test Cases-

 Correct username, Correct password - Login Successfully.


 Incorrect username, incorrect password- Can't Login
 Incorrect username, incorrect password- Can't Login
 Valid username and empty password. -Can't Login
 Empty username and valid password. - Can't Login
 Some password (can be a registered/unregistered)- Can't Login
 Case changed username /password. - Can't Login
 Unregistered user's login id and password -Can't Login
 Unregistered username and password. - Can't Login
 Disable(Blocked) email address. - Can't Login
8.2 Registration Function Test Cases: -

 Check the availability of the fields or objects email, name, phone number, password
for account
 Check the spellings of all objects
 Check the consistency of all objects
 Check the mandatory fields in the form
 Check the successful message for entry of all mandatory fields with the proper inputs
 Check the error messages for unfilled of all mandatory fields
 Check for the error message for unfilled of email id
 Check for the error message for fill email address as “Ankit”
 Check for the error message for fill email address as “#@%^%#$@#$@#.com”
 Check for the error message for fill email address as “@gmail.com”
 Check for the error message for fill email address as “Ankit < Ankit@gmail.com>”
 Check for the error message for fill email address as “Ankit.gmail.com”
 Check for the error message for fill email address as “Ankit@gmail@gmail.com”
 Check for the error message for fill email address as “. Ankit@gmail.com”
 Check for the error message for fill email address as “Ankit.@gmail.com”
 Check for the error message for fill email address as “Ankit...s@gmail.com”
 Check for the error message for fill email address as “Ankit@gmail.com(Ankit)”
 Check for the error message for fill email address as “Ankit@gmail”
 Check for the error message for fill email address as “Ankit@gmail...com”
 Check for the error message for fill email address as “Ankit@-gmail.com”
 Check for the error message for fill email address as “Ankit@111.222.333.444”
 Check the error message for special characters for Name
 Check the error message for more than 20 characters for name
 Check for the error message for mobile no field by enter characters
 Check for the error message for mobile no field by enter less than 10 characters
 Check for the error message for mobile no by enter more than 10 numbers

8.3 Test Cases for Money Transactions: -

 Debit Card Options Test Cases

 Check if the dropdown menu of the debit card selection page has “select” option text
enabled.
 Check if the dropdown menu lists following cards – Visa, MasterCard, American
Express etc.
 Check if the respective card selection opens expiry date, card number and CVV
options.
 Check if the tab offers an option to save the card.
 Check if the tab offers an option to name the saved card.

 Credit Card Options Test Cases

 Check if the card options allow card number, expiry date, cvv value text fields.
 Check if the card options tab allows text to be added into the text fields.
 Check if the number being added into the credit card number field detects the type of
card (e.g. visa etc)
 Check if the tab offers an option to name the saved card.

 Net banking Options Test Cases

 Check if the tab offers existing banks to be selected using radio button for net banking
transactions.
 Check if the tab offers options to select other banks than the listed with radio button
selection.
 Check if the tab offers all the leading banks from the country for the net banking
transactions.
 Check if the tab offers net banking option for both local and international banks for
the transactions.
 Check if the net banking option has at least 8 banks for the transaction using radio
button selection inside tab.
 Check if the selection of the radio button or the dropdown menu option takes us to the
net banking.
 ATM Card Options Test Cases

 If the ATM only card can be used on this tab.


 If at least 6 banks are used in the tab using the radio button selection.
 If at least one of the dropdown button near the bank logo is selected by default.
 If the banks selected allow processing of the transaction using ATM card details.

You might also like