You are on page 1of 8

Software Testing

Question 1:
What is Software Maintenance? What does a Software Maintenance Engineer
need to know?
Ans. The process of modifying a software system after it has been delivered to
the client is known as Software Maintenance. The basic purpose of software
maintenance is to modify and update the software application to resolve defects
and improve efficiency of the software after delivery. It lasts for the lifetime of the
project and involves careful recording and monitoring of requests for change in
accordance with the change management guidelines set at the end of the
requirements process.
Types of Software Maintenance
 Corrective Software Maintenance
Correct software maintenance fixes the errors and bugs that could affect
different aspects of your software, such as the design, logic, and code.

 Adaptive Software Maintenance


Adaptive software maintenance means changes to the operating system,
infrastructure, software, cloud storage, or even changes inside the
operating system.

 Perfective Software Maintenance


Perfective software maintenance focuses on the evolution of your system's
existing requirements and features. When users interact with your apps, as
part of the program, they will find things you have not completed or
recommend new features that they'd like.

What a Software Maintenance Engineer needs to know


Here’s some following things a software maintenance engineer needs to know.
Companies have tremendous investments in their software. So, these softwares
should be updated and maintained regularly. Software Maintenance Engineers
should know how to meet user requirements while maintaining softwares.
For Corrective Maintenance, the engineer needs to know the flow of the system
along with defect that occurred for the user.
In Adaptive Maintenance, the engineer should be aware of the software
environment and hardware.
For Perfective Maintenance, the engineer should have previous knowledge of the
application which will help in updating software features. They should also have
user feedback.

Question 2:
What is current average salary of software tester or SQA in Islamabad? Fill the
following table?
Ans.
Average Salary Min and Max Salaries
Fresh Graduate Rs. 36,300 per month Rs. 20,000-Rs.40,000
per month
Candidate with 3 to 5 Rs. 46,700 per month Rs. 30,600-Rs. 97,600
years of experience per month

Question 3:
Provide a job advertisement for the post of Software tester or SQA (not older
than a year) that describes job activities, skills, and other expectations from the
right candidate. (Preferably screenshot WITH reference in bibliography)
Ans. Job added- Over 1 month ago
Salary- PKR 15K a month
Job type- Internship
Are you a student, or a fresh graduate? Do you live in Islamabad/ Rawalpindi? If
yes, then we are providing you with the right opportunity to shape your career.
We’re looking for a person who has the ability to test the projects. Fresh
Graduates (BSCS, BSSE, BSIT. MSCS. MSIT) are encouraged to apply

Your responsibilities will include:


 Test the project manually/automatically.
 Writing test cases.
 Reviewing and analyzing system specifications
 Executing test scripts and reviewing results
 Reporting and documenting technical issues

Qualifications:
 Undergraduate or Graduate degree in Computer Sciences.
 A test mentality and methodology with a strong focus on end-to-end
scenario testing.
 Understanding of performance and security issues, and its testing.
 Excellent verbal and written communication and presentation skills.
 High energy level with strong motivation to meet delivery deadlines.

Key Benefits:
 Competitive salaries
 Daily catered lunches
 Annual performance bonus
 Accelerated learning and career growth

Question 4:
In a table format, describe what should be tested first, minimally tested, and
ignorable features in three applications namely Zoom, HUM TV app and Subway
surf.
Ans.
Tested First Minimally Tested Ignorable
features
Zoom App launches Captions Adjust video for
correctly/Video or option/recording low light/ profile
Audio Quality/App option options
performance
HUM TV Availability of Ultra High
video/Quality of Definition
video/Sound
features/ Colour
accuracy
Subway Surfers Functionality of the Pause feature/ Theme of the
game/ User Chat feature/ game
Interface Score feature

Question 5: Analyse the difference between adaptive and corrective maintenance


with examples.
Ans. Adaptive Maintenance
The implementation of changes that have been affected by a change in a part of
the system that has occurred in another part of the system is known as Adaptive
Maintenance. Adaptive modifications concentrate on the software infrastructure.
To ensure compatibility with the software, they are made in response to new
operating systems, new hardware, and new platforms.
For e.g. You are running a web application and you have discovered that it is not
functional with the latest version of a developer's Microsoft Web Browser
(Chromium-powered Edge Browser). Before the final release of the Microsoft
Chromium-powered Edge browser, if you resolve this compatibility problem in
your web application, then you are doing an adaptive software maintenance.
Corrective Maintenance
Corrective maintenance in the management of software is those that fix software
glitches, weaknesses and defects. On a semi-regular basis, they often come in
the form of quick, minor updates. It's necessary to act quickly and frequently with
corrective software maintenance. This allows you to prepare for any possible
issues with users and keep the product in good shape.
For e.g. If before users discover it, you find and fix the weaknesses in the
program, then the maintenance is preventive or adaptive. If, however, after
getting bug reports from the user's side, you fix the problem, then it is corrective
maintenance.

Question 6: Your software testing team is finding bugs in the new salary module
in company’s app and correcting them. The launch of module might be delayed
by three months. What are the three things that you can do during that period,
except for watching Netflix, that increases organisational productivity and
ensures that no further delays occur.
Ans. Making minor improvements to behaviours will dramatically increase the
efficiency and office effectiveness levels in your company. In a shorter amount of
time, this will help you to get more quality stuff done and decrease the amount of
time spent on unnecessary activities.
Here are some of the ways which will help increase organizational productivity:
 Be Efficient
Consider how the organization works at the moment and be flexible to the
opportunity to improve the way you work. Provide a schedule for each
employee and motivate everyone to create a list to ensure that he or she
completes prioritized work on time and remains on track all day long,
resulting in successful work. It is essential to provide workers with the right
tools and equipment so that they can perform their duties effectively and
timely. Such facilities should be used to save time and effort.

 Organize training Sessions from time to time


The learning procedure never ends for a person. Each employer should
keep track of the latest technological innovations in their company's favour
and arrange related training sessions. Hiring a skilled trainer who can
direct different opportunities associated with emerging technology should
also be done from time to time.

 Develop Trust with Employees


Encourage, reward and motivate. Tell staff they are doing a great job and
offer positive feedback. Employees should never be made puppets.
Rather, according to their own methodologies, the business owner should
trust their workers to perform a particular task. This would make it possible
for an employee to feel a real part of the company.

Question 7: Define and justify with reasons, the Go/No Go criteria for the launch
of application designed and developed for NTS student registration.
Ans. The student registration application developed for the NTS students should
contain Name, Email, Phone No., and CNIC.
Documentation: Is documentation complete? (documentation required by users
as well as company)
Implementation: Has planning been discussed with all stakeholders?
Testing: Are all positive and negative test cases tested?
Maintenance: Maintenance plans that are to be implemented should also be
discussed with all stakeholders.

Question 8: You are designing an application that performs biometric verification


of students for attendance on daily basis. What are the environmental needs
related to this application?
Ans. Following can be the Environmental needs:
 Student’s data
 Biometric Device
 Internet Connection
 Database/server connectivity

Question 9: Prepare one table each for 1. Resources, 2. Estimated Cost and 3.
Schedule associated with following activities.
A. Requirements analysis
B. Creating test specifications
C. Building up test environment
D. Executing test cases
E. Reporting Defects
Provide in-text citations when using external sources and provide references in
the bibliography section.
In scheduling table, identify if there are any parallel activities.
Ans.
Resources
Requirement Analysis Requirement analyst, Stakeholders, computer,
printer
Creating test specifications Requirement analyst, tester, computer
Building up test environment Testing team, computers, internet
Executing test cases Testing team, testing platform
Reporting defects Testing team, stakeholders, computer

Estimated Cost
Requirement Analysis Max $1000
Creating test specifications Approximately $800
Building up test environment Depends on hardware and software used. Can
be about $30,000
Executing test cases None
Reporting defects None

Schedule
Requirement Analysis Depends on the model used but usually takes
about a month.
Creating test specifications About 150 hours.
Building up test environment Approximately 1-2 days
Executing test cases Depends on the number of test cases. About 3-5
minutes per test case.
Reporting defects 1-2 days.

Question 10: Why should you pursue career in Software Testing? What are
potential advantages or disadvantages of being a Female Software Testing
Engineer in Pakistan
Ans.
 It’s in demand
You will always be wanted as a software tester and you will find no
shortage of leading businesses trying their hardest to hire you, and there
are endless opportunities to achieve a managerial level in your career.

 It’s a specialized skill


Not anyone can test. It needs in-depth understanding of the methods and
practices of Interface development and design, as well as communication
abilities. Not everybody will find that they have what it takes to be a tester.

Advantages
 They can work from home or anywhere as long as there’s laptop and
internet.
 There’s a demand for software testers in almost every field.
 They can work late from home without worrying about being late at night in
an office.
 Work hours can be flexible.
 It’s a high paid job.

Dis-Advantages
 If working from home, it can sometimes be hard to find a peaceful
environment.
 There can be electricity issues.
 In some cases, it can become hard to manage both housework and job.

Question 11: What is the most ambitious goal of your life?


Group member 1: My goal in life is to become an expert in my field and learn
different programming languages that will help me in developing my career. I
would also like to take better care of myself and follow a healthy routine.
Group member 2: I have a few goals in life which include taking care of myself
and of all my relations. I want to be able to live in the present moment as much
as possible and also travel the world.
Another important goal is to excel in my career as a software engineer and enjoy
while working. Not work just to get paid.

You might also like