Souravsaini Report
Souravsaini Report
On
(Session 2022-2024)
Sourav Saini
Roll No. 93
ONLINE BOOKSTORE
Online Book store is an online web application where the customer can purchase
books online. Through a web browser the customers can search for a book by its
title or author, later can add to the shopping cart and finally purchase using credit
card transaction. The user can login using his account details or new customers can
set up an account very quickly. They should give the details of their name, contact
number and shipping address. The user can also give feedback to a book by giving
ratings on a score of five. The books are divided into many categories based on
subject like Software, Database, English, Architecture, Biography etc.
The Online Book Store Website provides customers with online shopping through a
web browser. A customer can, create, sign in to his account, place items into a
shopping cart and purchase using his credit card details.
Brief overview of the technology:
• WAMP Server
• MAMP Server
• LAMP Server
. The Online Book Store Website provides customers with online shopping through
a web browser. A customer can, create, sign in to his account, place items into a
shopping cart and purchase using his credit card details.
1. Problem Definition:
2. Existing System:
It is scripting language.
It is very code complexity.
There is server controls in asp.
It Doesn’t Support language interoperability.
3. Proposed System:
modules:
1. users
2. cart
3. category
1. Users: In this users can see the Books and upcoming books
details, buying books and Registering as members.
2. Cart: In this details about books which user want to
purchase, book quantity, total price.
3. Category: In this users can search the books which he want to
purchase like biography, novel, action, history, geography etc.
PROJECT CATEGORY
This is an RDBMS based project which is currently using MySQL for all
the transaction statements. MySQL is an open source RDBMS System.
2. The user at any time can view the required information whether
the books available for particular type. He can collect all
information like as books Details, cost etc.
User login and If you want to update personal Details and you
and update.
6. The User Can search book and after add it in cart and
7. The user collect all information like as books Details and cost
from database.
The Online Book Store Website provides customers with online shopping through a
web browser. A customer can, create, sign in to his account, place items into a
shopping cart and purchase using his credit card details.
Be easy to operate
Be expandable
1. PRELIMINARY INVESTIGATION:
The initial cost of setting up the system will include the cost of hardware
software (OS, add-on software, utilities) & labor (setup & maintenance).
The same has to bear by the organization.
System Identification
This phase is used to recognize the need for a new system. The system is
identified at this stage. It is very important step. Everything performed in
future depends on this definition and identification.
System Scope
The scope of the system is also recognized at this stage. A system can be
reduced in its scope due to financial, political or time problems.
Alternate Solutions
This phase is also used to find out alternate solutions for developing the
system. The best available solution must be used. The best way to do this
is to interview the concerned people in the organization. It may include
the clients, customer, supplier and consultants etc. The competitors can
also be an important source to find the best way to develop new system.
3. ECONOMIC FEASIBILITY:
After doing the project Online Books Purchasing System, study and
analyzing all the existing or required functionalities of the system, the
next task is to do the feasibility study for the project. All projects are
feasible - given unlimited resources and infinite time.
Will be cost of the project for development which includes all required
cost for final development like hardware and software resource required,
Design and development cost and operational cost and so on. After that
it is analyzed whether project will be beneficial in terms of finance for
organization or not.
4. TECHNICAL FEASIBILITY:
No doubt the proposed system is fully GUI based that is very user friendly
and all inputs to be taken all self-explanatory even to a layman. Besides,
a proper training has been conducted to let know the essence of the system
to the users so that they feel comfortable with new system.
As far our study is concerned the clients are comfortable and happy as
the system has cut down their loads and doing.
In Operational Feasibility degree of providing service to requirements is
analyzed along with how much easy product will be to operate and
maintenance after deployment. Along with this other operational scopes
are determining usability of product, Determining suggested solution by
software development team is acceptable or not etc.
6. FEASIBILITY REPORT:
The feasibility study is the second step of the SDLC. It is the stage at
which all of the software needs and requirements are written down and
thoroughly documented. This document is created in this stage with the
assistance of the Software Requirement Specification document. It is
referred to as the SRS paper. A feasibility report is a document
That assesses potential solutions to the business problem or opportunity,
and determines which of these are viable for further analysis.
SYSTEM ANALYSIS
Introduction –
Communication –
Computer systems are more often than not linked together in networks
and the ability to connect with these networks is something we take for
granted now. We can now communicate across the planet at a speed that
was unimaginable only a few years ago. Using our smartphones, tablets,
laptops and personal computers, we can send and receive data from
wherever we are. We can do this across the Internet or via the phone
network using 3g or 4g.
Business –
Employment –
Education –
The way students learn now has changed beyond recognition. Whole
libraries of information are available via the Internet. The use of
interactive whiteboards, wireless connections, video cameras,
smartphones and tablets, for example, have changed the activities in a
classroom and exam boards are making increased use of online testing
and marking as well.
Entertainment –
Socializing –
Interviews –
Interviews are a great way to start the requirements elicitation process.
They are invaluable for gathering background information on business
needs, customers’ and users’ problems, and the concerns of support staff
and other relevant stakeholders. Interviews can also be used in follow-
up to gather more detailed information.
You’ll also want to ask a lot of follow-up questions during the interview.
Good follow-up questions either drill down for more detail or pull up to
get an overview of the context. Some people will tend to talk specifics
and exceptions. With them, you’ll need to pull up. Others will talk about
context without ever getting into specifics. With those folks, you’ll need
to drill down.
Questionnaires or survey –
One of the best ways to understand what users truly need is to observe
them performing their daily tasks.
When observing users, record the actions and activities that take place.
What already works well? What causes users difficulty? Note the
obstacles users must routinely overcome.
By observing end users in the real context in which they perform their
tasks, you’ll gain a true understanding of what they are up against and
what improvements they need so they can perform better. You’ll then be
better able to specify a system that successfully reinvents users’ processes
and grants them far greater productivity and usability, rather than simply
providing them an incremental improvement.
Document analysis –
Interface analysis –
End users
System components the software interacts with (e.g., sensors
or other peripherals)
External systems the software interacts with
Thorough interface analysis—really understanding the interactive
context of the system— will frequently uncover requirements not
readily visible to users.
Workshops –
Brainstorming –
Role-play –
Use cases are the specific, individual business objectives the system
must accomplish and the various situations in which a given feature or
functionality will be used. They describe the various external entities
that act on the system and the specific interactions they have with the
system to accomplish the business objective. Use cases are expressed
as step-by-step lists of tasks performed during a process.
Scenarios, also called user stories, are similar to use cases in that they
describe how the system will carry out a process to fulfill a business
objective. Their form, however, is a narrative, rather than an enumerated
list. They are essentially short stories with the user in the role of the
protagonist. Scenarios describe:
Use cases and scenarios can be used to validate the features and
functional requirements of the system across a wide range of situations.
They can also help you discover exceptions and boundary cases that
need consideration.
Focus groups –
either:
Prototyping –
Prototyping gives users a chance to try out ideas on what their next
solution could look like. Today’s rapid prototyping tools allow
developers to quickly put together any number of interactive mock-
ups for users to try.
The general tasks involved in the design process are the following:
1. Design various blocks for overall system processes.
2. Design smaller, compact and workable modules in each block.
3. Design various database structures.
4. Specify details of programs to achieve desired functionality.
5. Design the form of inputs, and outputs of the system.
6. Perform documentation of the design.
7. System reviews.
3. PHYSICAL DESIGN:
Physical design relates to the actual input and output processes of the
system. It focuses on how data is entered into a system, verified,
processed, and displayed as output.
4. MODULE DESCRIPTION :
These criteria are defined by Meyer. Some of them are given below:
Modular Decomposability –
Decomposability simply means to break down something into smaller
pieces. Modular decomposability means to break down the problem into
different sub-problems in a systematic manner. Solving a large problem
is difficult sometimes, so the decomposition helps in reducing the
complexity of the problem, and sub-problems created can be solved
independently. This helps in achieving the basic principle of modularity.
Modular Composability –
Composability simply means the ability to combine modules that are
created. It’s actually the principle of system design that deals with the
way in which two or more components are related or connected to each
other. Modular composability means to assemble the modules into a
new system that means to connect the combine the components into a
new system.
Modular Understandability –
Understandability simply means the capability of being understood,
quality of comprehensible. Modular understandability means to
make it easier for the user to understand each module so that it is
very easy to develop software and change it as per requirement.
Sometimes it’s not
easy to understand the process models because of its complexity and its
large size in structure. Using modularity understandability, it becomes
easier to understand the problem in an efficient way without any issue.
Modular Continuity –
Continuity simply means unbroken or consistent or uninterrupted
connection for a long period of time without any change or being
stopped. Modular continuity means making changes to the system
requirements that will cause changes in the modules individually
without causing any effect or change in the overall system or software.
Modular Protection –
Protection simply means to keep something safe from any harms, to
protect against any unpleasant means or damage. Modular protection
means to keep safe the other modules from the abnormal condition
occurring in a particular module at run time. The abnormal condition
can be an error or failure also known as run-time errors. The side
effects of these errors are constrained within the module.
SYSTEM DEVELOPMENT
1. CODING:
Once the system design phase is over, the next phase is coding. In this
phase, developers start build the entire system by writing code using
the chosen programming language. In the coding phase, tasks are
divided into units or modules and assigned to the various developers.
Importance of coding –
During the coding phase, developers analyze the feasibility of each
coding language and begin programming according to coding
specifications. Without proper coding, the product won't function
according to the customer's specifications, and new codes may need to
be implemented.
2. CODE EFFICIENCY:
Code efficiency is a broad term used to depict the reliability, speed
and programming methodology used in developing codes for an
application. Code efficiency is directly linked with algorithmic
efficiency and the speed of runtime execution for software. It is the
key element in ensuring high performance.
The term efficiency refers to the peak level of performance that uses the
least amount of inputs to achieve the highest amount of output. Efficiency
requires reducing the number of unnecessary resources used to produce a
given output, including personal time and energy.
3. OPTIMISATION OF CODE :
TESTING
The main goal of the testing procedures is to report, monitor, resolve and
retest software components until they reach the quality standards defined
in the initial SRS. Many teams use documents such as RTM to trace the
main requirements of the project and see how they affect each other.
This stage is usually a subset of all the stages as in the modern SDLC
models, the testing activities are mostly involved in all the stages of
SDLC. However, this stage refers to the testing only stage of the product
where product defects are reported, tracked, fixed and retested, until the
product reaches the quality standards defined in the SRS.
SDLC MODELS
There are various software development life cycle models defined and
designed which are followed during the software development process.
These models are also referred as Software Development Process
Models". Each process model follows a Series of steps unique to its type
to ensure success in the process of software development.
Following are the most important and popular SDLC models followed in
the industry −
Waterfall Model
Iterative Model
Spiral Model
V-Model
Big Bang Model
Testing is vital for the success of any software. no system design is ever
perfect. Testing is also carried in two phases. first phase is during the
software engineering that is during the module creation. second phase is
after the completion of software. this is system testing which verifies that
the whole set of programs hanged together.
In this technique, the close examination of the logical parts through the
software are tested by cases that exercise species sets of conditions or
loops. all logical parts of the software checked once. errors that can be
corrected using this technique are typographical errors, logical
expressions which should be executed once may be getting executed
more than once and error resulting by using wrong controls and loops.
When the box testing tests all the independent part within a module a
logical decisions on their true and the false side are exercised , all loops
and bounds within their operational bounds were exercised and internal
data structure to ensure their validity were exercised once.
Alpha Testing:
Beta Testing:
Unit Testing:
Integration Testing:
Validation Testing:
Validation testing was performed to ensure that all the functional and
performance requirements are met.
System Testing:
2. TEST CASES –
Test cases define how to test a system, software or an application. A test
case is a singular set of actions or instructions for a tester to perform that
validates a specific aspect of a product or application functionality. If the
test fails, the result might be a software defect that the organization can
triage.
Test Case acts as the starting point for the test execution, and after
applying a set of input values, the application has a definitive outcome
and leaves the system at some end point or also known as execution post
condition.
WHAT ARE TEST CASE TYPES?
VERIFICATION TESTING -
It is also known as static testing, where we are ensuring that "we are
developing the right product or not". And it also checks that the developed
application fulfilling all the requirements given by the client.
VALIDATION TESTING -
Let’s say the documentation says the button must be black with the
lettering in white. It should be no larger than 10mm X 10mm, and it
should be constantly visible in the top right corner of every product page
of the website. Another button with the same text, color, and dimensions
should be placed under every product on the page.
The easiest way to run these tests is to use manual testing and automated
testing on a cloud-based testing platform like BrowserStack. Use 3000+
real browsers and devices on the cloud to check every aspect of the
software while it is accessed by different devices running various
browsers and browsers versions running on different operating systems.
SYSTEM IMPLEMENTATION MAINTENANCE AND
REVIEW
Security analysis
Physical Security of the hardware
Design review
Power analysis
Electromagnetic Emanation analysis
Laser fault injection
Frequency manipulation
Differential Fault analysis
Electromagnetic fault injection
There may be other tests in the hardware evaluation but the above
mentioned things are the basic operations for the hardware
evaluation. Let us have a brief introduction about some of the above
mentioned tests.
HARDWARE & SOFTWARE EVALUATION FACTORS
CONVERSION AND TRAINING NEEDS
The personnel in the system must know in detail what their roles will be,
how they can use the system, and what the system will or will not do. The
success or failure of well-designed and technically elegant systems can
depend on the way they are operated and used.
Training Systems Operators
Systems operators must be trained properly such that they can handle all
possible operations, both routine and extraordinary. The operators should
be trained in what common malfunctions may occur, how to recognize
them, and what steps to take when they come.
Training involves creating troubleshooting lists to identify possible
problems and remedies for them, as well as the names and telephone
numbers of individuals to contact when unexpected or unusual problems
arise.
Training also involves familiarization with run procedures, which
involves working through the sequence of activities needed to use a new
system.
User Training
End-user training is an important part of the computer-based
information system development, which must be provided to
employees to enable them to do their own problem solving.
User training involves how to operate the equipment,
troubleshooting the system problem, determining whether a
problem that arose is caused by the equipment or software.
Most user training deals with the operation of the system itself. The
training courses must be designed to help the user with fast
mobilization for the organization.
Training Guidelines
Establishing measurable objectives
Using appropriate training methods
Selecting suitable training sites
Employing understandable training materials
Conversion
It is a process of migrating from the old system to the new one. It provides
understandable and structured approach to improve the communication
between management and project team.
Conversion Plan
It contains description of all the activities that must occur during
implementation of the new system and put it into operation. It anticipates
possible problems and solutions to deal with them.
It includes the following activities −
Name all files for conversions.
Identifying the data requirements to develop new files
during conversion.
Listing all the new documents and procedures that are required.
Identifying the controls to be used in each activity.
Identifying the responsibility of person for each activity.
Verifying conversion schedules.
Conversion Methods
The four methods of conversion are −
Parallel Conversion
Direct Cutover Conversion
Pilot Approach
Phase-In Method
Method Description Advantages Disadvantages
Dataflow Diagram: Data flow diagram is the starting point of the design
phase that functionally decomposes the requirements specification. A
DFD consists of a series of bubbles joined by lines. The bubbles represent
data transformation and the lines represent data flows in the system. A
DFD describes what data flow rather than how they are processed, so it
does not hardware, software and data structure.
produce a Level 1 DFD that shows some of the detail of the system being
modeled. The Level 1 DFD shows how the system is divided into sub-
systems (processes), each of which deals with one or more of the data
flows to or from an external agent, and which together provide all of the
functionality of the system as a whole. The level 1 DFD is further
spreaded and split into more descriptive and detailed description about
the project as level 2 DFD. The level 2 DFD can be a number of data
flows which will finally show the entire description of the software
project.
About ER Diagram:
E-R Model is a popular high level conceptual data model. This model
and its variations are frequently used for the conceptual design of
database application and many database design tools employ its
concept. A database that confirms to an E-R diagram can be represented
by a collecton of tables in the relational system.
Attributes
Relations
o Many-to-many
o Many-to-one
o One-to-many
o One-to-one
Weak entities
Entities are the basic units used in modeling database entities can
have concrete existence or constitute ideas or concepts.
#1 Home Page
#2 Search
#3 Login Page
#4 On login
#5 Cart Page
#6 Discription
Database-architecture(structure)
#Sourcecodeester_bookdb
#Cart
#Products
#users