Unit 8-Architectural
Modelling
Architectural Modelling in is the
process of designing and representing the overall structure of a software
system.
It describes how the major
components of the system are organized and how they interact with each other.
Definition
Architectural modelling is the
high-level design of a software system that identifies the main
components, their relationships, and system structure before detailed
design and implementation.
UML Diagrams
Used in Architectural Modelling
·
Component Diagram – shows system components and
dependencies.
·
Deployment Diagram – shows
hardware nodes and software deployment.
·
Package Diagram – organizes classes into
packages.
A component is a modular
and replaceable part of a software system that performs a specific function
and interacts with other components through defined interfaces.
Definition
A component
is a self-contained unit of software that provides a set of related
functions and can be independently developed, replaced, or reused in different
systems.
Deployment Diagram is a
diagram in Unified Modelling Language (UML) that illustrates the physical
deployment of software artifacts on hardware nodes and their connections.
Main
Elements of a Deployment Diagram
1.
Node
o
A physical device that executes software.
o
Examples: server, computer, mobile device.
2.
Artifact
o
A piece of software deployed on a node.
o
Examples: application files, databases, executables.
3.
Communication Path
o
Shows the network connection between nodes.
4.
Component / Software Instance
o
Software that runs on the hardware node.
Example
In an Online
Shopping System, the deployment diagram may include:
·
Client
Device
o Web browser
·
Web
Server
o Web application
·
Application
Server
o Business logic
·
Database
Server
o Database system
Collaboration
Diagram is a UML
diagram that shows how objects interact with each other by sending messages to
complete a task.
It focuses on object
relationships and communication.
It is part of Unified Modelling Language (UML)
interaction diagrams.
Main
elements:
·
Objects
·
Links
(connections)
·
Messages
(numbered to show order)
Unit9-Object-Oriented Testing
Object-Oriented Testing are methods used to test object-oriented software
to ensure classes, objects, and their interactions work correctly.
Main Testing Strategies
1. Unit Testing
o Tests individual classes or methods
separately.
2. Integration Testing
o Tests how different classes and objects
interact with each other.
3. System Testing
o Tests the entire system to check if
it meets requirements.
4. Validation Testing
o Ensures the software meets user needs and
requirements.
Key Focus in Object-Oriented Testing
·
Class
testing
·
Object
interaction
·
Inheritance
and polymorphism
Test Case Design for Object-Oriented
Software creating test cases to verify the
correctness of classes, objects, methods, and their interactions in an
object-oriented system.
Steps in Test Case Design
1. Class Testing
o Test individual methods and attributes
of a class.
2. State-Based Testing
o Check how an object behaves in different
states.
3. Use Case Testing
o Design test cases based on system use cases.
4. Interaction Testing
o Test communication between objects using diagrams like
Unified Modelling
Language sequence or collaboration
diagrams.
Example
·
Test Case
1: Valid username and password →
Login successful
·
Test Case
2: Invalid password → Error
message
·
Test Case
3: Empty fields → Validation
message
Inter-Class
Test Case Design
It is the process of designing
test cases to verify that multiple classes work together correctly,
ensuring object interactions, message passing, and data exchange are
correct.
Key Focus
Areas
1.
Message Passing
o
Ensure that methods in one class correctly call
methods in another class.
2.
Data Consistency
o
Verify that shared data or state is maintained
correctly across classes.
3.
Interaction Testing
o
Test sequences where one object triggers actions in
another.
4.
Dependency Handling
o
Ensure that dependent classes function correctly
when one class is modified.
Assignment Questions
1) What is Architectural Modelling?
2) What is a
Component in UML?
3) Draw Component
Diagram for Online Shopping System.
4) Draw Deployment
Diagram for ATM System.
5) Draw Collaboration
Diagram for Library Management System.
6) Explain Object-Oriented Testing Strategies.
7) What is Interaction Testing?
8)
Explain Inter-Class Test Case Design
0 comments:
Post a Comment