Professional Documents
Culture Documents
(2020-2021)
CE / SE /180160107004 Page : 1
Index
CE / SE /180160107004 Page : 2
Practical : 1
Theory/Description :
The first case ,SRS is used to define the needs and expectation of the
users.
The best SRS documents define how the software will interact
When embedded in hardware or when connected to other software. Good
SRS documents also account for real-life users.
CE / SE /180160107004 Page : 3
Introduction :
CE / SE /180160107004 Page : 4
Introduction :
Student :
Student easily access this library for study purpose.
Faculty :
Also faculty access this library for teaching purpose .
Librarian :
Librarian can easily manage the book and their work can be so
easy.Librarian can easily maintain the record of all the data
of students,book,faculty and other staff.
Author :
Author can easily publish their book and easily access this digital library.
CE / SE /180160107004 Page : 5
PURPOSE
Moreover, the user can check all these features from their home.
SCOPE
Also user can provide feedback for adding some new books to the
library
CE / SE /180160107004 Page : 6
OVERALL DESCRIPTION
CE / SE /180160107004 Page : 7
2.1 PRODUCT PRESPECTIVE
The book issue, book return will update the current book details
automatically so that user will get the update current book details.
LIBRARIAN :
USERS:
There are various kinds of users for the product. Usually web products
are visited by various users for different reasons.
CE / SE /180160107004 Page : 8
The users include:
Students who will be using the above features by accessing the Library
online.
Librarian who will be acting as the controller and he will have all the
privileges of an administrator.
SOFTWARE REQUIREMENT
Front end:
• java
Back end:
• MySQL
HARDWARE REQUIREMENT
2 GB RAM
16 GB ROM
Users must have their correct username and passwords to enter into
their online accounts and do actions.
CE / SE /180160107004 Page : 9
2.6 USER DOCUMENTATION
The user manual and help will be available online and can be accessed
any time by any user.
1:Register
Description : First the user will have to register/sign up. There are
two different type of users.
R.1.1: Sign up
Processing : All details will be checked and if any error are found
then an error message is displayed else a membership number and
password will be generated.
R.2.2 : Search
Output : conformation for book issue and apology for failure in issue.
Output : The issued list will be updated and the returned book will be
listed out.
R.2.6 : Penalty
Input : Enter the details of the books such as names ,author ,edition,
quantity.
Performance Requirement :
0 Level Diagram :
Aim: To study about UML and UML Diagrams and Use Case
diagrams. Draw Use case Diagram for your Software Project.
1) Theory / Description :
UML:
UML Diagram:
2. Class Diagram
3. Interaction Diagrams
i. Sequence Diagram
ii. Collaboration Diagram
4. State Diagram
5. Activity Diagram
6. Physical Diagrams
i. Component Diagram
ii. Deployment Diagram
The two main components of a use case diagram are use cases
and actors.
USE:
Use cases are used in almost every project. They are helpful
in exposing requirements and planning the project.
Actor
3) Definition Diagram :-
1) Theory / Description :
Class Diagram:
Visibility:
Theory / Description:
Theory / Description:
A sequence diagram simply depicts interaction between objects in a
sequential order. Sequence diagrams describe how and in what order the
objects in a system function.
These diagrams are widely used by businessmen and software developers
to document and understand requirements for new and existing systems.
Sequence diagrams are sometimes known as event diagrams or event
scenarios.
Basic Sequence Diagram Notations:
Theory / Description:
A state diagram is used to represent the condition of the system or part of
the system at infinite instances of time. It is also referred to as State
machines and State-chart diagrams.
A state diagram is used to model the dynamic behavior of a class in
response to time and changing external stimuli. These diagram are used to
model the event based system. A state of an object is controlled with the
help of an event.
Uses of state chart diagram:
We use it to state the events responsible for change in state.
We use it to model the dynamic behavior of the system.
To understand the reaction of objects / classes to internal or
external stimuli.
Basic components of a state chart diagram:
Name Notation Description
We use a black filled
Initial state circle represent the initial
state of a System or a
class.
We use a solid arrow to
represent the transition or
change of control from
one state to another. The
Transition arrow is labelled with the
event which causes the
change in state.
We use a rounded
rectangle to represent a
state. A state represents
State the conditions or
circumstances of an
object of a class at an
instant of time.
We use a rounded
rectangle to represent a
Composite state composite state also. We
represent a state with
internal activities using a
composite state.
We use a filled circle
within a circle notation
Final state to represent the final
state in a state machine
diagram.
Theory / Description:
Theory / Description:
ABSTRACT:
Software testing is one of the most important phases in software development
lifecycle (SDLC). Software testing is the process of evaluating the software product
with the intent to find whether it satisfies the user requirements or not. It involves
identifying bug or error or defect in a software product without correcting it. There
are various automated tools which help as to test the software products with accuracy.
This paper analyses some of the test management, functional and load testing tools.
INTRODUCTION:
Software testing is the process of detecting defects/bugs in the product during
execution. It acts as the part of quality assurance. It assists the software developers in
delivering a defect free product. It also helps in validating a product against client’s
specifications/ requirements.
Software development lifecycle (SDLC) explains the process involved in developing
software by the software industry. Mainly there are five phases. They are Analysis,
Design, Implementation, Testing and Maintenance. Software development, begins
with customer specification of requirements and then it will progress through
Analysis, Design, Implementation, Testing and ongoing support of the completed
software.
The process of testing involves the following steps. Initially the Test plan has to be
prepared which is a document describing the scope, methodology, testing
environment, schedule, major risks etc.
There are two types of testing, they are static and dynamic. Static testing means
identify the error before executing the program. Techniques used for static testing are
code inspections and review. It identifies logical, standard and control errors.
Dynamic testing means identify the error after executing the program.
Testing can be done in two ways. They are Manual Testing and Automation Testing.
Manual Testing:
In manual testing, testers will initially prepare the test plan and test cases based on the
requirement specifications. Test cases will contain the information about the input to
be given to the system and the corresponding output. Quality of testing depends on
how far the test cases have covered the requirements. Test cases should also cover the
incorrect scenario to detect how the system is responding for the particular scenario.
One main drawback of manual testing is which required more time and resources.
Automation Testing:
In automation testing tester writes scripts and feed to another software to test the
products. It improves the test coverage, accuracy and save time and memory.
Automation testing tools falls under three different categories. They are Test
Management tools, Functional Testing Tools and Load Testing Tools.
This section discusses about the various software testing tools which is focused on
Test Management, Functionality and load.
Functional testing is a type of testing which verifies that each function of the software
application operates in conformance with the requirement specification. This testing
involves checking of User Interface, APIs, Database, security, client/ server
applications and functionality of the Application under Test. The testing can be done
either manually or using automation.
Here we have listed some of the testing tools under different categories. It mainly
concentrates on:
1) Mainline functions: Testing the main functions of an application
2) Basic Usability: It involves basic usability testing of the system. It checks
whether an user can freely navigate through the screens without any
difficulties.
3) Accessibility: Checks the accessibility of the system for the user.
4) Error Conditions: Usage of testing techniques to check for error conditions. It
checks whether suitable error messages are displayed.
Theory / Description:
Structure-Based (White Box Techniques): These techniques design test cases based
on the internal structure of the software program and code. Developers go into minute
details of the developed code and test them one by one.
Test Case Name: A test case should have a name or title that is self-explanatory.
Test Case Description: The description should tell the tester what they’re going to
test in brief.
Pre-Conditions: Any assumptions that apply to the test and any preconditions that
must be met prior to the test being executed should be listed here.
Test Case Steps: The test steps should include the necessary data and information on
how to execute the test. The steps should be clear and brief, without leaving out
essential facts.
Test Data: It’s important to select a data set that gives sufficient coverage. Select a
data set that specifies not only the positive scenarios but negative ones as well.
Expected Result: The expected results tell the tester what they should experience as a
result of the test steps.
Actual Result: They specifies how the application actually behaved while test cases
were being executed.
Comments: Any other useful information such as screenshots that tester want’s to
specify can be included here.
This is the typical format that testers follow when they write a test case. Along with
these parameters, testers can include additional parameters like test case priority, type
of test case, bug id, etc.
Show My Rank NA F NA
Test Case 1 :
Test Case ID LMS_001 Test Case Test the Login Functionality in Library Application
Description
Created By Kartik Reviewed By Test Lead Version 1.1
Test Verify on entering valid user-ID and password, the customer can login.
Scenario
Step # Step Details Expected Actual Results Pass / Fail / Not executed /
Results Suspended
Test Case ID LMS_001 Test Case Test the Login Functionality in Library Application
Description
Created By Kartik Reviewed By Test Lead Version 1.1
Test Verify on entering invalid user-ID and password, the customer can login
Scenario
Step # Step Details Expected Actual Results Pass / Fail / Not executed /
Results Suspended
Test Case ID Bank_01 Test Case Test The Money Transfer Functionality in App
Description
Created By Kartik Reviewed By Test Lead Version 1.2
Step # Step Details Expected Actual Results Pass / Fail / Not executed /
Results Suspended
Theory / Description:
Introduction
Selenium is an open-source tool that is used for automating the tests carried out on
web browsers (Web applications are tested using any web browser).
Wait, before you get carried away, let me re-iterate that, only testing of web
applications is possible with Selenium. We can neither test any desktop (software)
application nor test any mobile application using Selenium.
It’ a bummer right? I can feel your pain. But don’t worry, there are many tools for
testing software and mobile applications like: IBM’s RFT, HP’s QPT, Appium and
many more. But, the focus of this blog is, testing dynamic web applications and why
Selenium is the best for that purpose.
Challenges with manual testing
Manual testing means the (web) application is tested manually by QA testers. Tests
need to be performed manually in every environment, using a different data set and
the success/ failure rate of every transaction should be recorded.
Look at the above image of a poor chap, who manually verifies the transactions
recorded. The challenges he is facing cause fatigue, boredom, delay in work, mistakes
and errors because of manual effort. This lead to the invention of Selenium
(automation testing tool).
Disadvantages:
We can use Selenium only to test web applications. We cannot test desktop
applications or any other software.
There is no guaranteed support available for Selenium. We need to leverage
on the available customer communities.
It is not possible to perform testing on images. We need to integrate Selenium
with Sikuli for image based testing.
There is no native reporting facility. But we can overcome that issue by
integrating it with frameworks like TestNG or JUnit.
Step-2: Next add your URL which you want to test and Press Start Recording.
Step-3: Next start test of your url. In background selenium start recording your test
steps like following image.
In 2006, Shinya Kastani from Japan had donated his Selenium IDE prototype to
Apache’s Selenium project. It was a Firefox plugin for faster creation of test cases.
IDE implemented a record and playback model wherein, test cases are created by
recording the interactions which the user had with the web browser. These tests can
then be played back any number of times.
The advantage with Selenium IDE is that, tests recorded via the plugin can be
exported in different programming languages like: Java, Ruby, Python etc. Check out
the below screenshot of Firefox’s IDE plugin.
Plug-in only available for Mozilla Firefox; not for other browsers
It is not possible to test dynamic web applications; only simple tests can be
recorded
Test cases cannot be scripted using programming logic
Does not support Data-Driven testing
Theory / Description:
Gantt chart:
A Gantt chart is a project management tool assisting in the planning and scheduling of
projects of all sizes, although they are particularly useful for simplifying complex
projects. Project management timelines and tasks are converted into a horizontal bar
chart, showing start and end dates, as well as dependencies, scheduling and deadlines,
including how much of the task is completed per stage and who is the task owner.
This is useful to keep tasks on track when there is a large team and multiple
stakeholders when the scope changes.
As it's in a bar chart format it is possible to check on progress with a quick glance.
You can easily see:
Project management solutions that integrate Gantt charts give managers visibility into
team workloads, as well as current and future availability, which allows for more
accurate scheduling. Gantt charts have been around for nearly a century, having been
invented by Henry Gantt, an American mechanical engineer, around 1910.
Establish the initial project schedule - who is going to do what, when and how
long will it take.
Allocate resources - ensure everyone knows who is responsible for what.
Make project adjustments - the initial plan will need many adjustments.
Monitor and report progress - helps you stay on schedule.
Control and communicate the schedule - clear visuals for stakeholders and
participants.
Display milestones - shows key events.
Identify and report problems - As everything is depicted visually you can
immediately see what should have been achieved by a certain date and, if the
project is behind schedule, you can take action to bring it back on course.
Task list: Runs vertically down the left of the gantt chart to describe project
work and may be organized into groups and subgroups
Timeline: Runs horizontally across the top of the gantt chart and shows
months, weeks, days, and years
Dateline: A vertical line that highlights the current date on the gantt chart
Bars: Horizontal markers on the right side of the gantt chart that represent
tasks and show progress, duration, and start and end dates
Milestones: Yellow diamonds that call out major events, dates, decisions, and
deliverables
Dependencies: Light gray lines that connect tasks that need to happen in a
certain order
Progress: Shows how far along work is and may be indicated by % Complete
and/or bar shading
Definition Diagram: