OOAD Internal 2
OOAD Internal 2
OOAD Internal 2
Types of testing
1. Unit tests
Unit tests are very low level and close to the source of an application. They consist in
testing individual methods and functions of the classes, components, or modules
used by your software. Unit tests are generally quite cheap to automate and can run
very quickly by a continuous integration server.
2. Integration tests
Integration tests verify that different modules or services used by your application
work well together. For example, it can be testing the interaction with the
database or making sure that microservices work together as expected. These types
of tests are more expensive to run as they require multiple parts of the application to
be up and running.
3. Functional tests
4. End-to-end tests
5. Acceptance testing
Acceptance tests are formal tests that verify if a system satisfies business
requirements. They require the entire application to be running while testing and
focus on replicating user behaviors. But they can also go further and measure the
performance of the system and reject changes if certain goals are not met.
6. Performance testing
7. Smoke testing
Smoke tests are basic tests that check the basic functionality of an application. They
are meant to be quick to execute, and their goal is to give you the assurance that the
major features of your system are working as expected.
Smoke tests can be useful right after a new build is made to decide whether or not
you can run more expensive tests, or right after a deployment to make sure that they
application is running properly in the newly deployed environment.
https://creately.com/blog/diagrams/class-diagram-tutorial/
https://www.vidyarthiplus.com/vp/attachment.php?aid=45205
View layer objects are more responsible for user interaction and these view layer
objects have more relation with the user where business layer objects have less
interaction with users.
Another feature of view layer objects are they deal less with the logic. They help the
users to complete their task in an easy manner.
The Major responsibilities of view layer objects are
1. Input – View Layer objects have to respond for user interaction. The
user interface is designed to translate an action by the user (Eg. Clicking the button)
in to a corresponding message.
2. Output - Displaying or printing information after processing.
View Layer Design Process:
1. Macro Level UI Design Process
a. Identify classes that interact with human actors
b. A sequence/ collaboration diagram can be used to represent a clear picture of
actor system interaction.
Name = getName()
c. For every class identified determine if the class interacts with the human actor. If so
i. Identify the view layer object for that class.
ii. Define the relationship among view layer objects.
2. Micro Level UI Design Process
a. Design of view layer objects by applying Design Axioms and Corollaries.
b. Create prototype of the view layer interface.
3. Testing the usability and user satisfaction testing.
4. Iterate and refine the above steps.
[Note: Explain the above process for an essay]
User Interface Design Rules:
UI Design Rule 1: Making the interface simple
For complex application if the user interface is simple it is easy for the users to learn
new applications. Each User Interface class should have a well define single purpose.
If a user cannot sit before a screen and find out what to do next without asking
multiple questions, then it says your interface is not simple.
UI Design Rule 2: Making the Interface Transparent and Natural.
The user interface should be natural that users can anticipate what to do next by
applying previous knowledge of doing things with out a computer. This rule says
there should be a strong mapping and users view of doing things.
UI Design Rule 3: Allowing users to be in control of the Software.
The UI should make the users feel they are in control of the software and not the
software controls the user. The user should play an active role and not a reactive role
in the sense user should initiate the action and not the software.
Some ways to make put users in control are 1. Make the interface forgiving.
2. Make the interface visual.
3. Provide immediate feedback.
4. Avoid Modes.
5. Make the interface consistent.
Purpose of View Layer Interface – Guideline
It is an internal test, performed within the It is an external test, carried out in the
organization. user's environment.
Alpha Testing uses both black box and Beta Testing only uses the black box
white box testing techniques testing technique.
Developers start fixing bugs as soon as Errors are found by users and feedback
they are identified. is necessary.
It answers the question: Does the product It answers the question: Do customers
work? like the product?
https://www.geeksforgeeks.org/software-engineering-user-interface-design/
8. Documentation in ooad
https://www.techtarget.com/searchsoftwarequality/definition/documentation
S.
No. Black Box Testing White Box Testing
11. It is also called closed testing. It is also called as clear box testing.
12
.CRChttp://pages.cpsc.ucalgary.ca/~eberly/Courses/CPSC333/Lectures/Design/CRC_modeling.html