Software Quality Engineering: Assignment
Software Quality Engineering: Assignment
Software Quality Engineering: Assignment
1|P age
2
University of
Kotli Azad Kashmir
Assignment
Date :13-09-2019
Session :2016/2020
2|P age
3
• Data Flow
• Control Flow
• Dependency Graphs
• Decision Tables
• State transition machines
3|P age
4
There is a system which allows employees to log- into the application. Now, a
current state of the employee is ''Out'' and it became ''In'' once he signs- into the
system. Under the ''in'' state, an employee can view, print, scan documents in the
system.
• Activities
• Actors
• Business Process
• Components
• Programming language
4|P age
5
State Charts
It is an extension of Finite state machine and can be used for complex and real time
systems. State charts are used to describe various behaviors of the system. It has a
definite number of states. The behavior of the system is analyzed and represented in
the form of events for each state.
For example :
Defects are raised in defect management tool with the status as New. Once it is fixed
by developers, it has to be changed to status Fixed. If a defect is not fixed change
status to Re-open. State chart should be designed in such a way that it should call for
an event for each state.
5|P age
6
Advantages to MBT:
➢ Once the model is created, model-based tests can cover an incredibly large
variety of scenarios with relatively little effort.
➢ Random execution of the model can uncover problems that would not be
revealed up front.
➢ The MBT process can find design and specification errors quickly.
➢ Changes to the model will increase coverage and some MBT tools can
automatically update test suites.
Disadvantages to MBT:
➢ MBT has a steep learning curve -- for developers integrating testing knowledge,
and for testers learning how modeling relates to testing.
➢ MBT tools can be time-consuming and difficult to implement, but actual test
creation and execution can be faster, which leads to faster test processes.
Conclusion
Testers construct mental models anyway during their testing. Those mental models
can be transformed into models on paper. This helps testers to achieve readability
and re-usability.
6|P age
7
Introduction
Test documentation is documentation of artifacts created before or during the testing
of software. It helps the testing team to estimate testing effort needed, test coverage,
resource tracking, execution progress, etc. It is a complete suite of documents that
allows you to describe and document test planning, test design, test execution, test
results that are drawn from the testing activity.
For a newbie, it's easy to assume that Testing is executing the various section of
code on an ad-hoc basis and verifying the results. But in the real world, Testing is a
very formal activity and is documented in detail. Test Documentation makes
planning, review, and execution of testing easy as well as verifiable.
7|P age
8
➢ QA team needs to be involved in the initial phase of the project so that Test
Documentation is created in parallel
➢ Don’t just create and leave the document, but update whenever required
➢ Use version control to manage and track your documents
➢ Try to document what is needed for you to understand your work and what
you will need to produce to your stakeholders
➢ You should use a standard template for documentation like excel sheet or
doc file
➢ Store all your project related documents at a single location. It should be
accessible to every team member for reference as well as to update when
needed
➢ Not providing enough detail is also a common mistake while creating a test
document
➢ The cost of the documentation may surpass its value as it is very time-
consuming
8|P age
9
➢ Many times, it is written by people who can't write well or who don't know the
material
➢ Keeping track of changes requested by the client and updating corresponding
documents is tiring.
➢ Poor documentation directly reflects the quality of the product as a
misunderstanding between the client and the organization can occur
9|P age