You are on page 1of 49

QA BASED TESTING PROJECT

A PROJECT REPORT

Submitted by

KEDAR SONEJI

190630107210

In partial fulfillment for the award of the degree of

BACHELOR OF ENGINEERING

In

Computer Engineering

Madhuben and Bhanubhai Patel Institute of Technology,

Gujarat Technological University, Ahmedabad

May, 2023
Madhuben and Bhanubhai Patel Institute of Technology

ADIT Campus, New V.V Nagar, Anand-388001

CERTIFICATE
This is to certified that the project report submitted along with the project
entitled QA Based Testing Project has been carried out by Kedar Soneji
(190630107210) under my guidance in partial fulfillment for the degree of
Bachelor of Engineering in, 8th Semester of Gujarat Technological University,
Ahmadabad during the academic year 2022-23.

Prof. Dhruv Dalwadi Dr. Shital Gondaliya

Internal Guide Head of the Department


Madhuben and Bhanubhai Patel Institute of Technology

ADIT Campus, New V.V Nagar, Anand-388001

DECLARATION
We hereby declare that the summer Internship report submitted along with the
Project entitled QA Based Testing Project submitted in partial fulfillment for
the degree of Bachelor of Engineering in Computer Engineering to Gujarat
Technological University, Ahmedabad, is a bonafide record of original project
work carried out by me/us at Zignuts Technolab Pvt. Ltd. under the
supervision of Mentor Nikita Dadhania and that no part of this report has
been directly copied from any students reports or taken from any other source,
without providing due reference.

Name of Student Sign of Student


Project id: 302353

ACKNOWLEDGEMENT

I hereby, would like to have the privilege to show our gratitude to all the persons, helped me in whatever

way for the successful completion of this Internship without hindrance. I am grateful to all our mentors

who inspired me by setting an example for them for the kind purpose of motivating me to reach my

targeted objective. Without their knowledge and wisdom along with experience and specialization in

their specific field, I would not have been able to think of doing or completing this work. All the persons

who have contributed directly or indirectly with their kind support and humble approach are highly

appreciative and I would always remain indebted to them in all ways. I am especially thankful of Prof.

Dhruv Dalwadi who is my internal guide, for her kind support and motivation. I extend my heartfelt

thanks to Nikita Dadhania, for his co-operation in our project work.

Name of Student Enrollment


No.

Soneji Kedar 190630107210

Gujarat Technology University i MBIT


Project id: 302353

ABSTRACT

I carried out my internship at Zignuts Technolab Pvt. Ltd, Anand. Internship is


an opportunity to relate what has been covered in class and what is applicable
in the field in an operational environment. The purpose of the program is to
fulfil the core equipment for the award of bachelor’s degree in Computer
Engineering to get a practical aspect of theoretical work studied at the
university and to understand the operations in the CE industry and to enable
students gain experience in different tasks.

During Internship period I have worked on the QA Based Testing Project, as


Intern.

In conclusion, this was an opportunity to develop and enhance the skills and
competencies in my career field which I achieved.

Gujarat Technology University ii MBIT


Project id: 302353

LIST OF FIGURES

Fig. 2.2 Agile Process 4

Fig. 3.6 QA Based Testing Project Cycle 10

Fig 6.1 Test of the project 26

Fig 6.2.1 Testing process 27

Fig. 6.2.2 flow of demo website which tested 28

Fig 7.3.1(a) Issue in error message 31

Fig 7.3.1(b) Issue in description(it is not proper format) 31

Fig 7.3.1(c) Issue in design 32

Fig 7.3.1(d) issue in description 32

Fig 7.3.1(e) item increase decrease button missing 33

Fig 7.3.1(f) description issue in the cart item 33

Fig 7.3.1(g) some time this button is not working properly 34

Fig 7.3.1(h) placement is not proper 34

Fig 7.3.1(i) increase item and decrease item button missing in cart also 35

Fig 7.3.2(a) issue in error validation message(close button) 35

Fig 7.3.2(b) issue in the checkout process 36

Fig 7.3.2 (c) design is not proper in the checkout process 36

Gujarat Technology University iii MBIT


Project id: 302353

TABLE OF CONTENTS
Acknowledgement i

Abstract ii

List of Figures iii

Table of Contents iv

Chapter 1 : Overview of the Company 1

1.1 About Company 1


1.2 Different Technologies Use in Company 2

1.3 Capacity of Company 2

Chapter 2 : Overview of the Different Department 3


2.1 Sequence of operation for create End product 3

2.2 Stages of Production 4

Chapter 3 : Introduction of Internship/Project 5

3.1 Project/Internship Summary 5

3.2 Purpose 5

3.3 Objective 6

3.4 Scope 6

3.5 Technologies 7

3.6 Project Planning 9

3.7 Project Scheduling 11

Chapter 4 : System Analysis 13

4.1 Study of current System 13

4.2 Problem and Weaknesses of Current System 14

4.3 Requirement of System 15

4.4 System Feasibility 16

4.5 Features of System 17

4.6 Selection of Technology 18

Chapter 5 : Project Management 19

5.1 Project Planning Objective 19

5.2 Project Scope 20

Gujarat Technology University iv MBIT


Project id: 302353

5.3 Reusable Project Component 21

5.4 Project Development Approach 22

5.5 Project Plan 23

5.6 Project Scheduling 24

Chapter 6 : System Design 26

6.1 Flowchart Design 26

6.2 Database Design 27

Chapter 7 : Implementation 29

7.1 Implementation Platform/Environment 29

7.2 Technologies 30

7.3 Results 31

Chapter 8 : Conclusion 37

References 38

Gujarat Technology University v MBIT


Project id: 302353 Chapter 1: Overview of the Company

CHAPTER 1: OVERVIEW OF THE COMPANY

1.1 ABOUT COMPANY

Zignuts Technolab is a professional technology company that specializes in offering


innovative and cutting-edge solutions to clients across various industries. Our team of
experts is dedicated to providing high-quality services that meet the unique needs of each
client, with a focus on delivering authentic and transparent results.

At Zignuts Technolab, we pride ourselves on our commitment to identifying and


understanding the unique problems facing our clients. We use our expertise to explore a
variety of ways to solve these problems, and quickly test them with users to identify the
best solution. Our approach involves collecting all the requirements, user stories, and
technical needs for sprint planning and executing a solution in continuous delivery,
continuing to test as we build.

Our team of professionals is committed to delivering authentic and transparent results,


with a focus on accessibility and compliance standards, and quality. We believe that our
dedication to our clients' businesses and goals has enabled us to forge long- lasting
relationships with them.

As a community-driven start-up, we believe in learning, applying, and innovating to bring


a new standard of quality and work ethics to the community. We are a pool of spear
headers who are constantly pushing the boundaries of innovation, and we are always
striving to stay ahead of the curve.

At Zignuts Technolab, we are committed to delivering innovative and cutting- edge


solutions that meet the unique needs of each client. We believe that our dedication to our
clients, coupled with our expertise and commitment to quality, sets us apart as a
professional technology company that is committed to delivering authentic and
transparent results.

Gujarat Technological University 1 MBIT


Project id: 302353 Chapter 1: Overview of the Company

1.2 DIFFERENT TECHNOLOGIES USE IN COMPANY

HTML
CSS
JAVASCRIPT
REACT.JS
ANGULAR
NODE.JS
REACT-NATIVE
FLUTTER

1.3 CAPACITY OF THE COMPANY

Zignuts Technolab have more than 200+ employees with specialized skills in
software development, custom software development, and e-commerce software
development.

Gujarat Technological University 2 MBIT


Project id: 302353 Chapter 2: Overview of Different Units of the Company

CHAPTER 2: OVERVIEW OF DIFFERENT UNITS OF THE COMPANY

2.1 SEQUENCE OF OPERATION FOR MANUFACTURING OF END PRODUCT

Main end product of our company is mostly the software. Software is a very different thing
other than industry’s End products. Its process is very different. The main flow of software
development is as per below:
1. Client requirement understanding: First step to build something is to know what to
build. Specially in the case of software it is very important to understand the client
requirement completely as if the requirement changes, then it will create huge problems
in later part of the development. Often a requirement document is created which is
called a client requirement document to make things clearer.

2. Planning: Second step to build something is to know how to build. In software


development, we need to decide the entire flow of the process like which technology
stack will be used? Which type of architecture will be used? Etc.

3. Development: After sufficient planning comes the development part. In this part actual
software is built. Or at least part of the software is built in methods like agile delivery
methods.

4. Review and QA: Internal review and QA is done to ensure the quality of the final
product as in software in this case. It also helps to identify the bugs before releasing
the software.

5. Release or Deployment: In this phase the software is delivered to the client either the
direct code or hosted service.

6. Maintenance: This part comes in picture after the final delivery of the software. This
phase includes tasks such as making sure the service is always running, bug fixes etc.

Gujarat Technological University 3 MBIT


Project id: 302353 Chapter 2: Overview of Different Units of the Company

2.2 DIFFERENT STAGES OF THE PRODUCTION

At our company we mostly use an agile development process in which the software is
delivered in different parts or phases which are called the sprints. Each sprint contains the
upgraded version of the software and it is kept upgrading unless we reach the final product.

Fig 2.2 Agile Process

Gujarat Technological University 4 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

CHAPTER 3: INTRODUCTION TO INTERNSHIP

3.1 INTERNSHIP SUMMARY

Internship is part of our curriculum. I have joined TEPL as Intern and


my major role is to contribute to python and data Science (Data
Analysis). It was in offline mode. My training phase and project work
was done in offline mode.

Project Title: QA Based Testing Project

A QA-based testing project typically involves the use of Quality Assurance (QA)
methodologies to test software applications and ensure that they meet the expected quality
standards. This may involve a variety of testing techniques such as unit testing, integration
testing, functional testing, performance testing, and security testing. The goal of a QA-
based testing project is to identify any defects or issues in the software before it is released
to users. The project team will typically work closely with developers to understand the
requirements and design of the software, and to develop and execute test cases to verify
that the software works as intended. By thoroughly testing the software, the project team
can increase the overall quality and reliability of the application, and improve user
satisfaction.

3.2 PURPOSE

Main purpose of this internship is to gain knowledge about the usage of


various technologies in industry. Also gain knowledge on how to behave
in the professional environment. To improve communication skills
specifically for the professional environment.

Gujarat Technological University 5 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

3.3 OBJECTIVE OF PROJECT

The main objective of a QA-based testing project is to ensure that the software application
meets the desired quality standards and performs as intended. The project team aims to
identify any defects or issues in the software through various testing techniques, such as
unit testing, integration testing, functional testing, performance testing, and security
testing.

The project team also ensures that the software meets the functional and non-functional
requirements specified in the project scope, including usability, accessibility, reliability,
and scalability. By achieving these objectives, the QA-based testing project helps to
improve the overall quality of the software application, reduce the risk of defects or errors
in production, and enhance user satisfaction. Additionally, it helps the organization to
maintain a competitive edge in the market by delivering high-quality software products.

3.4 SCOPE

The scope of a QA-based testing project typically includes the following:

1. Defining the objectives of the project: The project team needs to understand the goals
and objectives of the software application being developed to identify the scope of the
testing project.

2. Identifying the testing requirements: The project team needs to identify the functional
and non-functional requirements that the software application needs to meet. This includes
understanding the business requirements, user needs, and technical specifications.

3. Developing a testing strategy: Based on the testing requirements, the project team
needs to develop a testing strategy that includes the types of testing, testing tools, and
resources required for testing.

4. Creating test plans: The project team needs to create test plans that outline the test
scenarios, test cases, and expected results for each type of testing.

Gujarat Technological University 6 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

5. Executing tests: The project team executes the test plans to identify any defects or issues
in the software application. The team also performs regression testing to ensure that fixes
have not introduced new defects.

6. Reporting and tracking defects: The project team reports and tracks defects in a defect
tracking system, prioritizes them, and assigns them to the development team for resolution.

7. Providing testing status and metrics: The project team provides testing status and
metrics to stakeholders to ensure that they are aware of the progress and quality of the
software application.

8. Test closure: Once all testing is complete and defects are resolved, the project team
performs a final round of testing to ensure that the software application meets the testing
requirements and is ready for release.

Overall, the scope of a QA-based testing project involves ensuring that the software
application is thoroughly tested and meets the desired quality standards before it is released
to users.

3.5 TOOLS AND TECHNOLOGIES

JIRA

JIRA is a web-based project management and issue tracking tool developed by Atlassian.
It is widely used by software development teams to track and manage tasks, bugs, and
issues throughout the software development lifecycle. JIRA allows teams to plan and
prioritize tasks, track progress, and collaborate with team members in real-time. It also
provides advanced reporting and analytics capabilities to help teams gain insights into their
project performance. JIRA integrates with a wide range of development tools and supports
agile development methodologies such as Scrum and Kanban.

Gujarat Technological University 7 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

BROWSER STACK

Browser Stack is a cloud-based cross-browser testing tool that allows developers and testers
to test their web applications on a variety of browsers, operating systems, and mobiledevices.
With Browser Stack, users can test their web applications on over 2,000 real devices and
browsers, including the latest versions of popular browsers such as Chrome, Firefox, Safari,
and Microsoft Edge. Browser Stack offers advanced features such as automated testing,
live testing, and visual regression testing to help teams catch bugs and issues early in the
development cycle. It also integrates with popular development tools such as JIRA,
GitHub, and Bitbucket to streamline the testing and development process.

GOOGLE SHEETS

Google Sheets is a cloud-based spreadsheet application developed by Google. It allows


teams to collaborate on creating, editing, and sharing spreadsheets in real-time, making it
a useful tool for bug reporting and test scenario management.

Google Sheets can be used for bug reporting by creating a spreadsheet to track bugs found
during testing. The spreadsheet can include columns for bug ID, bug description, severity,
status, assignee, and comments. Multiple team members can collaborate on the same
spreadsheet, allowing for real-time updates and feedback.

Google Sheets can also be used for managing test scenarios by creating a spreadsheet to
track test cases. The spreadsheet can include columns for test case ID, test case description,
expected results, actual results, pass/fail status, and comments. Testers can update the
spreadsheet as they execute the test cases, and team members can review the results and
provide feedback.

Overall, Google Sheets is a flexible and collaborative tool that can be customized to meet
the needs of a variety of testing and bug reporting scenarios.

Gujarat Technological University 8 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

3.6 PROJECT PLANNING

Here are some key steps for project planning in a QA based testing project:

1. Define project scope and objectives: Clearly define the scope and objectives of the
project, including the expected deliverables, timelines, and budget.

2. Determine testing methodology: Decide on the testing methodology to be used, such


as Agile, Waterfall, or a hybrid approach.

3. Identify testing requirements: Identify the testing requirements, including the types of
testing to be performed (e.g. functional, performance, security), testing tools and
frameworks to be used, and testing environment requirements.

4. Define testing schedule: Define the testing schedule, including testing cycles,
milestones, and deadlines.

5. Allocate resources: Allocate the necessary resources, including testers, developers, and
project managers, and assign responsibilities and roles.

6. Develop a testing plan: Develop a comprehensive testing plan that includes test
scenarios, test cases, and test scripts.

7. Establish a communication plan: Establish a communication plan to ensure that all


stakeholders are kept informed of the project progress, issues, and risks.

8. Define quality metrics: Define quality metrics that will be used to measure the success
of the testing project, such as defect density, test coverage, and defect closure rate.

9. Monitor and report progress: Monitor and report project progress regularly to ensure
that the project stays on track, and any issues or risks are identified and addressed in a
timely manner.

Gujarat Technological University 9 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

Fig. 3.6 QA Based Testing Project Cycle

Gujarat Technological University 10 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

3.7 PROJECT SCHEDULING

Scheduling a QA-based testing project requires careful planning and coordination to ensure
that all tasks are completed on time and within budget. Here are some steps to follow when
scheduling a QA-based testing project:

1. Identify project milestones: Identify the major project milestones, such as the start and
end dates of testing, completion of test plan and reports, and delivery of the final system to
the client. Use these milestones to create a timeline for the project.

2. Break down tasks: Break down the testing process into smaller tasks, such as test
planning, test execution, and defect management. Estimate the time required for each task
based on the complexity of the system and the level of testing required.

3. Allocate resources: Identify the resources required for each task, such as personnel,
equipment, and testing tools. Allocate resources based on the estimated time for each task
and the availability of resources.

4. Create a Gantt chart: Create a Gantt chart or project timeline that includes all the tasks
and milestones for the project. This will help you visualize the schedule and identify any
potential conflicts or delays.

5. Establish dependencies: Identify any dependencies between tasks and ensure that they
are scheduled in the correct order. For example, you cannot execute test cases until the test
plan is completed.

6. Set deadlines: Set deadlines for each task and milestone to ensure that the project stays
on track. Be sure to include some contingency time in case of unexpected delays or issues.

Gujarat Technological University 11 MBIT


Project id: 302353 Chapter 3: Introduction to Internship

7. Monitor progress: Monitor the progress of the project regularly and update the schedule
as needed. Identify any delays or issues and take corrective action to keep the project on
track.

8. Communicate with stakeholders: Communicate the project schedule to stakeholders,


including clients, project managers, and team members. Keep them informed of progress
and any changes to the schedule.

By following these steps, you can create a realistic and achievable schedule for a QA-based
testing project that ensures timely delivery of a high-quality system..

Gujarat Technological University 12 MBIT


Project id: 302353 Chapter 4: System Analysis

CHAPTER 4: SYSTEM ANALYSIS

4.1 STUDY OF THE CURRENT SYSTEM

System analysis is an important aspect of QA based testing projects, as it helps to identify the
requirements, constraints, and risks associated with the system being tested. Here are some key
steps for conducting system analysis in a QA based testing project:

1. Define system requirements: Define the system requirements, including the functional and
non-functional requirements, and ensure that they are clearly documented.

2. Identify system architecture: Identify the system architecture, including the hardware and
software components, and understand how they interact with each other.

3. Conduct risk analysis: Identify potential risks and their impact on the system, and develop
mitigation strategies to manage them.

4. Define testing objectives: Define the testing objectives, including the types of testing to be
performed, and ensure that they align with the system requirements.

5. Identify testing tools and resources: Identify the testing tools and resources required to carry
out the testing, including hardware, software, and personnel.

6. Develop a testing strategy: Develop a comprehensive testing strategy that defines the testing
approach, test scenarios, test cases, and test data.

7. Plan test execution: Plan the test execution process, including the scheduling of testing cycles,
test environment setup, and test case execution.

8. Monitor and report progress: Monitor and report progress throughout the testing process to
ensure that the testing is progressing as planned, and any issues or risks are identified and
addressed in a timely manner.

Gujarat Technological University 13 MBIT


Project id: 302353 Chapter 4: System Analysis

By conducting system analysis, QA teams can ensure that they have a comprehensive
understanding of the system being tested, its requirements, and its risks, enabling them to
develop an effective testing strategy and carry out high-quality testing.

Based on the results of the study, the organization can develop an action plan to improve
its human resource management system. This plan may include reviewing people policies
and procedures, enhancing training and development programs, improving employee
engagement, and other initiatives aimed at improving the organization's overall
performance.

4.2 PROBLEMS AND WEAKNESS OF CURRENT SYSTEM

It is difficult to identify specific problems or weaknesses in a hypothetical QA based testing


project without detailed information on the project's specific requirements, constraints, and
scope. However, here are some common issues that can arise in QA based testing projects:

1. Insufficient testing coverage: If the testing coverage is not comprehensive enough, some
defects or issues may be missed, leading to a lower quality product.

2. Lack of testing resources: If there are insufficient resources for testing, such as personnel
or hardware, it may be challenging to execute the testing plan effectively and efficiently.

3. Communication breakdown: Poor communication between team members can lead to


misunderstandings, delays, and defects being missed.

4. Unclear requirements: If the system requirements are not well defined or documented, it
can be challenging to develop an effective testing strategy or to accurately measure the success
of the testing process.

5. Inadequate testing methodology: If the testing methodology used is not appropriate for the
project's specific requirements, the testing process may be less effective or efficient.

6. Over-reliance on automation: Over-reliance on automation can lead to testing gaps,


particularly in areas that are difficult to automate.

By proactively identifying and addressing these potential issues, QA teams can help to ensure
that the testing process is effective, efficient, and produces high-quality results.
Gujarat Technological University 14 MBIT
Project id: 302353 Chapter 4: System Analysis

4.3 REQUIREMENTS OF THE SYSTEM

As the specific system or project being referred to is not specified, it is difficult to provide a
specific list of requirements. However, in general, a QA based testing system should have the
following requirements:

1. Ability to test various software applications and systems: The system should be able to
test a wide range of software applications and systems, including desktop, web, and mobile
applications.

2. Comprehensive testing coverage: The system should be able to provide comprehensive


testing coverage, including functional, performance, security, and usability testing.

3. Integration with testing tools and frameworks: The system should be able to integrate with
testing tools and frameworks, such as Selenium, Appium, and JMeter.

4. Easy test scenario and test case creation: The system should be easy to use, with a user-
friendly interface, and enable easy test scenario and test case creation.

5. Support for multiple platforms and environments: The system should support testing on
multiple platforms and environments, including Windows, Mac, Linux, and different mobile
devices.

6. Reporting and analytics: The system should provide reporting and analytics capabilities to
enable analysis of testing results and identify areas for improvement.

7. Collaboration and communication: The system should enable collaboration and


communication between team members, with features such as shared dashboards and issue
tracking.

By meeting these requirements, a QA based testing system can help to ensure effective, efficient,
and comprehensive testing of software applications and systems.

Gujarat Technological University 15 MBIT


Project id: 302353 Chapter 4: System Analysis

4.4 FEASIBILITY STUDY

To conduct a feasibility study of a QA based testing system, various factors need to be


considered, including technical, operational, economic, and legal factors. Here are some key
aspects to consider:

1. Technical feasibility: The system must be technically feasible, meaning that it can be
developed and implemented within the available resources and constraints.

2. Operational feasibility: The system must be operationally feasible, meaning that it can be
used effectively and efficiently by the intended users.

3. Economic feasibility: The system must be economically feasible, meaning that it can be
developed and implemented within the available budget and expected returns on investment.

4. Legal feasibility: The system must be legally feasible, meaning that it complies with all
relevant laws, regulations, and standards.

5. Market feasibility: The system must be market feasible, meaning that there is a demand for
it and it meets the needs of the intended market.

Based on the above factors, a feasibility study can be conducted to assess the viability of the QA
based testing system. This may involve conducting market research to identify potential users
and their needs, assessing the technical requirements and available resources, and evaluating the
economic and legal considerations. The feasibility study should provide insights into whether
the system can be developed and implemented within the available resources, and whether it can
provide the expected benefits and returns on investment. If the feasibility study indicates that
the system is viable, further steps can be taken to develop and implement the system.

Gujarat Technological University 16 MBIT


Project id: 302353 Chapter 4: System Analysis

4.5 FEATURES OF THE SYSTEM

The specific features of a QA based testing system can vary depending on the requirements and
scope of the project. However, here are some common features that can be included in such a
system:

1. Test case management: The system should enable the creation, execution, and management
of test cases and test suites.

2. Test automation: The system should support test automation, enabling the creation and
execution of automated test scripts.

3. Test data management: The system should enable the management of test data, including
the creation, storage, and retrieval of test data sets.

4. Defect tracking: The system should enable the tracking and management of defects or issues
found during testing, including defect logging, tracking, and reporting.

5. Reporting and analytics: The system should provide reporting and analytics capabilities,
enabling the analysis of testing results and identification of areas for improvement.

6. Collaboration and communication: The system should enable collaboration and


communication between team members, including shared dashboards and issue tracking.

7. Integration with testing tools and frameworks: The system should integrate with testing
tools and frameworks, such as Selenium, Appium, and JMeter.

8. Platform and environment support: The system should support testing on multiple
platforms and environments, including Windows, Mac, Linux, and different mobile devices.

9. Test environment management: The system should enable the creation and management of
test environments, including the setup and configuration of test servers and systems.

By providing these features, a QA based testing system can help to ensure that software
Gujarat Technological University 17 MBIT
Project id: 302353 Chapter 4: System Analysis

applications and systems are tested effectively and efficiently, with a focus on improving quality
and minimizing defects.

4.6 SELECTION OF HARDWARE, SOFTWARE AND METHODOLOGY

Hardware (Recommended)

• Processor: i5

• RAM: 4GB

• System Type: 64-bit OS

Software

• Browser: Microsoft Edge, Chrome

• BROWSER STACK

• GOOGLE SHEETS

• TRELLO : For management

Gujarat Technological University 18 MBIT


Project id: 302353 Chapter 5: Project Management

CHAPTER 5: PROJECT MANAGEMENT


5.1 STUDY OF THE CURRENT SYSTEM

QA (Quality Assurance) based testing is an important part of the software development


process. It involves testing a software application or system to ensure that it meets the
specified requirements, functions correctly, and is user-friendly. The current QA based
testing system typically involves the following steps:

1. Test Planning: In this step, the QA team identifies the objectives of testing, the scope of
the testing, and the resources required.

2. Test Design: In this step, the QA team develops a test plan that includes the types of tests
to be performed, the test scenarios, and the test cases.

3. Test Execution: In this step, the QA team performs the tests according to the test plan
and reports any defects found during testing.

4. Defect Reporting and Tracking: In this step, the QA team reports any defects found
during testing and tracks them to ensure they are resolved.

5. Test Closure: In this step, the QA team evaluates the testing process, reports the results,
and prepares a test closure report.

The current QA based testing system also involves the use of various tools such as automated
testing tools, bug tracking tools, and performance testing tools to improve the efficiency and
effectiveness of the testing process. Additionally, the use of AI and machine learning in
testing has gained traction in recent years, allowing for more advanced and intelligent testing
techniques.

However, one of the challenges with the current QA based testing system is that it can be
time-consuming and labor-intensive, especially for complex software systems.

Gujarat Technological University 19 MBIT


Project id: 302353 Chapter 5: Project Management

5.2 PROJECT SCOPE

The scope of a QA based testing project typically includes testing a software application or
system to ensure that it meets the specified requirements, functions correctly, and is user-
friendly. The project may involve testing the application at various stages of the software
development life cycle, including during development, integration, and deployment. The
project scope may also include:

1. Test planning: identifying the objectives of testing, the scope of testing, and the resources
required.

2. Test design: developing a test plan that includes the types of tests to be performed, the
test scenarios, and the test cases.

3. Test execution: performing the tests according to the test plan and reporting any defects
found during testing.

4. Defect reporting and tracking: reporting any defects found during testing and tracking
them to ensure they are resolved.

5. Test closure: evaluating the testing process, reporting the results, and preparing a test
closure report.

The scope of a QA based testing project may also involve the use of various tools such as
automated testing tools, bug tracking tools, and performance testing tools to improve the
efficiency and effectiveness of the testing process. The project may also require
collaboration with the development team, stakeholders, and end-users to ensure that the
software application or system meets the specified requirements and is user-friendly.
By proactively identifying and addressing these potential issues, QA teams can help to
ensure that the testing process is effective, efficient, and produces high-quality results.

Gujarat Technological University 20 MBIT


Project id: 302353 Chapter 5: Project Management

5.3 REUSABLE PROJECT COMPONENT

A reusable project component is a piece of code or software that can be used across different
projects or applications. These components are typically designed to be flexible, scalable,
and customizable, so that they can be easily integrated into different software systems.

Some common examples of reusable project components include:

1. Libraries and APIs: Libraries and APIs (Application Programming Interfaces) provide
a set of functions or methods that can be used by other software programs. These components
can be reused across multiple projects or applications, providing a consistent and reliable
way to access certain functionality.

2. Frameworks: Frameworks provide a set of guidelines, standards, and tools for developing
software applications. These components can be reused across different projects, helping to
ensure consistency and efficiency in the software development process.

3. Modules and Plugins: Modules and plugins are pre-built pieces of code that can be added
to a software application or system to provide additional functionality. These components
can be customized and reused across multiple projects or applications, saving time and effort
in the development process

Gujarat Technological University 21 MBIT


Project id: 302353 Chapter 5: Project Management

5.4 PROJECT DEVELOPMENT APPROACH

1. Agile Development: Agile development is an iterative and flexible approach that


emphasizes collaboration, continuous feedback, and quick delivery of working software.
This approach is well-suited for projects involving reusable components as it allows for
frequent testing and validation of the components in real-world scenarios.

2. Waterfall Development: Waterfall development is a linear and sequential approach that


emphasizes the completion of each stage of development before moving onto the next. This
approach can work well for projects involving reusable components that have well-defined
requirements and specifications.

3. DevOps: DevOps is a development approach that emphasizes collaboration, automation,


and continuous delivery of software. This approach can work well for projects involving
reusable components as it allows for the development, testing, and deployment of
components in a streamlined and automated manner.

Regardless of the development approach chosen, it is important to have a clear understanding


of the project requirements and goals, as well as a solid development plan that outlines the
necessary steps for developing and testing the reusable components. Additionally, effective
communication and collaboration between the development team, stakeholders, and end-
users can help ensure that the components meet the project requirements and are of high
quality.

Gujarat Technological University 22 MBIT


Project id: 302353 Chapter 5: Project Management

5.5 PROJECT PLAN

The specific features of a QA based testing system can vary depending on the requirements
and scope of the project. However, here are some common features that can be included in
such a system:

1. Test case management: The system should enable the creation, execution, and
management of test cases and test suites.

2. Test automation: The system should support test automation, enabling the creation and
execution of automated test scripts.

3. Test data management: The system should enable the management of test data, including
the creation, storage, and retrieval of test data sets.

4. Defect tracking: The system should enable the tracking and management of defects or
issues found during testing, including defect logging, tracking, and reporting.

5. Reporting and analytics: The system should provide reporting and analytics capabilities,
enabling the analysis of testing results and identification of areas for improvement.

6. Collaboration and communication: The system should enable collaboration and


communication between team members, including shared dashboards and issue tracking.

7. Integration with testing tools and frameworks: The system should integrate with testing
tools and frameworks, such as Selenium, Appium, and JMeter.

8. Platform and environment support: The system should support testing on multiple
platforms and environments, including Windows, Mac, Linux, and different mobile devices.

9. Test environment management: The system should enable the creation and management
Gujarat Technological University 23 MBIT
Project id: 302353 Chapter 5: Project Management

of test environments, including the setup and configuration of test servers and systems.

By providing these features, a QA based testing system can help to ensure that software
applications and systems are tested effectively and efficiently, with a focus on improving
quality and minimizing defects.

5.6 PROJECT SCHEDULING

Scheduling a project involving reusable project components requires careful planning and
consideration of various factors such as the project scope, development approach, available
resources, and timeline. Here are some steps that can help in scheduling a project:

1. Define the project scope: Start by defining the project's goals and objectives, as well as
the scope of the work involved. This will help you determine the required resources and the
estimated time needed to complete the project.

2. Break down the project into smaller tasks: Break the project down into smaller tasks
and estimate the time required for each task. This will help in identifying potential delays or
bottlenecks and enable you to adjust the schedule accordingly.

3. Create a project timeline: Once you have estimated the time required for each task,
create a project timeline that includes the start and end dates for each task. This will help you
visualize the project's progress and ensure that the project is on track.

4. Identify dependencies: Identify any dependencies between tasks, such as one task that
must be completed before another can start. This will help you adjust the schedule in case of
delays or changes in the project scope.

5. Allocate resources: Assign resources to each task based on their availability and skillset.
This will help ensure that the project is adequately resourced and that resources are not
overworked or underutilized.

6. Monitor and adjust the schedule: Monitor the project's progress regularly and adjust the
schedule as necessary. This will help you stay on track and ensure that the project is
completed within the specified timeline.
Gujarat Technological University 24 MBIT
Project id: 302353 Chapter 5: Project Management

It is also important to keep in mind that unexpected delays or issues may arise during the
project, so it is essential to build some flexibility into the schedule and be prepared to adjust
the timeline accordingly.

Gujarat Technological University 25 MBIT


Project id: 302353 Chapter 6: System Design

CHAPTER 6: SYSTEM DESIGN


6.1 SYSTEM DESIGN

Fig 6.1 Process of Test the project

Gujarat Technological University 26 MBIT


Project id: 302353 Chapter 6: System Design

6.2 DATA FLOW DESIGN

Fig 6.2.1 Testing process(Simple flow)

Gujarat Technological University 27 MBIT


Project id: 302353 Chapter 6: System Design

Fig. 6.2.2 flow of demo website which tested

Gujarat Technological University 28 MBIT


Project id: 302353 Chapter 7: Implementation

CHAPTER 7: IMPLEMENTATION
7.1 IMPLEMENTATION PLATFORM

The implementation platform for a QA based testing project or system can depend on various
factors, such as the requirements and scope of the project, the budget, and the technical
expertise of the team. Here are some possible implementation platforms for a QA based testing
system:

1. Cloud-based platform: A cloud-based platform can provide easy scalability, flexibility,


and accessibility for the testing system. Cloud platforms such as AWS, Azure, and Google
Cloud can provide the necessary infrastructure and resources for testing, without requiring the
team to manage their own servers and infrastructure.

2. On-premises platform: An on-premises platform can provide greater control and security
over the testing environment, as the testing infrastructure is managed and maintained within
the organization's own data center or server room. This approach may be more suitable for
organizations with strict security or compliance requirements.

3. Hybrid platform: A hybrid platform can combine the benefits of both cloud and on-
premises platforms, providing a flexible and scalable testing environment that can be tailored
to the organization's needs.

4. Open-source platform: An open-source platform such as Selenium or Appium can provide


a cost-effective and customizable testing environment, with a large community of developers
and contributors.

5. Commercial platform: A commercial platform such as Browser Stack, Sauce Labs, or


Test Complete can provide a comprehensive testing environment with a wide range of features
and integrations, along with technical support and training.

The selection of the implementation platform should be based on the specific needs and
requirements of the project, and should be evaluated based on factors such as cost, scalability,
security, and technical feasibility.

Gujarat Technological University 29 MBIT


Project id: 302353 Chapter 7: Implementation

7.2 TECHNOLOGIES

For a manual QA based testing project or system, the basic technologies used may include:

1. Test management tools: Test management tools such as JIRA, TestRail, or test can be
used to manage test cases, test runs, and defects.

2. Spreadsheets: Spreadsheets such as Microsoft Excel or Google Sheets can be used to


create and organize test cases, test data, and test results.

3. Bug tracking tools: Bug tracking tools such as JIRA, Bugzilla, or Mantis can be used to
track and manage software defects or issues.

4. Collaboration tools: Collaboration tools such as Microsoft Teams, Slack, or Asana can
be used to communicate and coordinate testing activities among team members.

5. Documentation tools: Documentation tools such as Microsoft Word or Google Docs can
be used to create and maintain testing documentation, such as test plans, test cases, or user
manuals.

6. Web browsers: Web browsers such as Google Chrome, Mozilla Firefox, or Microsoft
Edge can be used to manually test web applications.

7. Virtualization technologies: Virtualization technologies such as VirtualBox or VMware


can be used to create and manage virtual testing environments.

8. Communication tools: Communication tools such as email, instant messaging, or video


conferencing can be used to communicate with stakeholders and report testing progress.

The selection of basic technologies for a manual QA based testing project or system should
be based on the specific requirements and goals of the project, as well as the technical
expertise and resources available within the team or organization.

Gujarat Technological University 30 MBIT


Project id: 302353 Chapter 7: Implementation

7.3 RESULTS

7.3.1 Images of BUGS in UI and Design of demo E-Commerce Website

Fig 7.3.1(a) Issue in error message(it is not proper format)

Fig 7.3.1(b) Issue in description(it is not proper format)

Gujarat Technological University 31 MBIT


Project id: 302353 Chapter 7: Implementation

Fig 7.3.1(c) Issue in design

Fig 7.3.1(d) issue in description

Gujarat Technological University 32 MBIT


Project id: 302353 Chapter 7: Implementation

Fig 7.3.1(e) item increase decrease button missing

Fig 7.3.1(f) description issue in the cart item

Gujarat Technological University 33 MBIT


Project id: 302353 Chapter 7: Implementation

Fig 7.3.1(g) sometime this button is not working properly

Fig7.3.1(h) placement is not proper

Gujarat Technological University 34 MBIT


Project id: 302353 Chapter 7: Implementation

Fig 7.3.1(i) increase item and decrease item button missing in cart also

7.3.2 Checkout process Issues

Fig 7.3.2(a) issue in error validation message(close button)

Gujarat Technological University 35 MBIT


Project id: 302353 Chapter 7: Implementation

Fig 7.3.2(b) issue in the checkout process

Fig 7.3.2 (c) design is not proper in the checkout process

Gujarat Technological University 36 MBIT


Project id: 302353 Reference
s

CHAPTER 8: CONCLUSION

In conclusion, a QA based testing project or system is an essential component of software


development, ensuring that the software being developed meets the desired quality
standards. The project involves a series of processes, including planning, analysis, design,
implementation, and maintenance, and requires the use of various technologies and tools,
such as test automation frameworks, test management tools, bug tracking tools,
virtualization technologies, and collaboration tools.

To ensure the success of the project, it is crucial to have a clear understanding of the project's
objectives, requirements, scope, and limitations. The project team should have the necessary
technical expertise, resources, and tools to effectively plan, design, and execute the testing
activities.

Overall, a well-executed QA based testing project or system can significantly improve the
quality of the software being developed, reduce the risk of defects or issues, and ultimately
enhance the user experience and satisfaction.
Project id: 302353 Reference
s

REFERENCE
1. Tutorials points

https://www.tutorialspoint.com/management_concepts/stakeholder_management.htm

2. Atlassian

https://www.atlassian.com/agile/project-management/project-management-intro

3. Geekforgeeks

https://www.geeksforgeeks.org/software-testing-basics/

4. Java T point

https://www.javatpoint.com/types-of-software-testing

5. YouTube

https://www.youtube.com/watch?v=MFHbKILH_Ak

Gujarat Technological University 38 M

You might also like