model answers oose
model answers oose
PART- A
Ans:
traditional agile
Development linear iterative and
Process incremental
Project Learning rigid process ongoing learnings
Focus software delivery discovery, flexibility
Duration and Cost larger teams, clear smaller teams, self-
hierarchies organized
Ans:
PART-B
(Or).
Object-Oriented Analysis
12. (a). Summarize on Petri nets with a suitable use case of your
choice.
Petri nets are a graphical and mathematical tool for modelling and
analysing dynamic systems, especially those involving concurrency,
parallelism, and synchronization. They use places, transitions, and arcs
to represent system components, events, and their relationships,
respectively. A common use case for Petri nets is modelling
manufacturing systems, allowing engineers to analyse and improve the
flow of materials, resources, and production processes.
Places:
Represent conditions or states in the system (e.g., a part waiting to be
processed, a machine in a specific status).
Transitions:
Represent events or actions that can change the state of the system
(e.g., a machine starting a process, a part moving to the next stage).
Arcs:
Directed connections between places and transitions, showing the flow
of tokens (representing resources or data).
Tokens:
Represent resources or data flowing through the net, moving from one
place to another after a transition fires.
In summary, Petri nets offer a powerful and versatile tool for modelling,
analysing, and improving manufacturing systems by visualizing the
flow of materials, resources, and production processes.
(Or)
Coupling and Cohesion are two key concepts in software engineering that
are used to measure the quality of a software system’s design. Both
coupling and cohesion are important factors in determining the
maintainability, scalability, and reliability of a software system. High
coupling and low cohesion can make a system difficult to change and test,
while low coupling and high cohesion make a system easier to maintain
and improve.
Cohesion.
Cohesion refers to the degree to which elements within a module work
together to fulfill a single, well-defined purpose. High cohesion means that
elements are closely related and focused on a single purpose, while low
cohesion means that elements are loosely related and serve multiple
purposes.
Types of Cohesion
The following are the types of cohesion:
1. Functional Cohesion
2. Procedural Cohesion
3. Temporal Cohesion
4. Sequential Cohesion
5. Layer Cohesion
6. Communication Cohesion
Coupling.
Coupling refers to the degree of interdependence between software
modules. High coupling means that modules are closely connected and
changes in one module may affect other modules. Low coupling means
that modules are independent, and changes in one module have little
impact on other modules.
Types of Coupling
1. Data Coupling
2. Stamp Coupling
3. Control Coupling
4. External Coupling
5. Common Coupling
6. Content Coupling
5. Layered Architecture.
A number of different layers are defined with each layer performing
a well-defined set of operations. Each layer will do some operations
that becomes closer to machine instruction set progressively.
At the outer layer, components will receive the user interface
operations and at the inner layers, components will perform the
operating system interfacing (communication and coordination with
OS)
Intermediate layers to utility services and application software
functions.
One common example of this architectural style is OSI-ISO (Open
Systems Interconnection-International Organisation for
Standardisation) communication system.
Ans:
Test Plan:
The criteria are usually defined in the test plan, which outlines the
scope, objectives, and methods for testing.
Stakeholder Involvement:
Risk-Based Approach:
The severity of risks to the software should influence the rigor of the
completion criteria, according to Software Testing Genius. Higher
risks necessitate more stringent criteria.
Test Case Execution: Ensuring all planned test cases have been
executed.
Bug Resolution: Addressing critical and high-severity bugs, with a
focus on stability and quality.
Test Data: Preparing and managing the necessary test data for
execution
Component Testing:
Ensuring all integrated components have been tested and that there are
no critical defects impacting system testing.
System Testing:
(Or)
PART-C(15*1=15)
Class diagram :
Sequence diagram:
Activity diagram:
Collaboration diagram:
B) Scenario:
Question
system. Key entities will likely include Hotels, Rooms, Bookings, Users, and
Payments.
2. Define Attributes: Each entity has attributes that describe it. For
example, a Hotel has a name, location, and rating. A Room has a room
3. Define Methods: Each class will have methods that define its behavior.
For example, a Hotel class might have a method to search for available
booking.
other. A Hotel has many Rooms. A User makes many Bookings. A Booking
Solution Steps
Hotel:
Room:
Booking:
Payment:
Hotel:
Room:
User:
login(): Logs in an