Se Mid2
Se Mid2
Unit-5
1.Discuss about common modelling techniques of use case diagrams.
a) Use case diagrams are a popular technique for analyzing and modeling
system requirements by focusing on the interactions between users (actors)
and the system. There are several common modeling techniques used for
developing use case diagrams, including:
1. System boundary: The system boundary defines what is included in the
system and what is external to the system. This boundary is represented by a
rectangle enclosing all the use cases and actors under consideration.
2. Actors: Actors are external entities that interact with the system. They may
represent users or other systems. Actors are represented by stick figures and
are placed outside the system boundary.
3. Use cases: Use cases represent the functions or tasks an actor performs with
the system. They are represented by ovals and can be named after the action
the actor takes. Use cases are often organized into logical groupings, such as
registration, payment, or search.
4. Relationships: Relationships are used to define the connections between
actors and use cases. There are three main types of relationships used in use
case diagrams:
Association: An association represents a simple or passive interaction
between an actor and use case, where the actor is connected to the use
case by a straight line.
Generalization: A generalization indicates a hierarchical relationship
between two or more use cases or actors. This is represented by an
inheritance arrow.
Extension: An extension shows a variant of the primary use case
triggered under specific circumstances. It is represented by a dashed
arrow that extends from the primary use case.
5. Use case descriptions: Once the use case diagram is complete, the use cases
can be described in more detail using textual descriptions.
2. what is the importance of modelling. Explain principles of modelling.
a) Importance of modelling:
Modeling is a proven and well-accepted engineering technique. We build
architectural models of houses and high rises to help their users visualize the
final product.
Modeling is not only limited to the construction industry. Modeling is applied
in the fields of aeronautics, automobile, picture, sociology, economics,
software development and many more. We build models so that we can
validate our theories or try out new ones with minimal risk and cost.
A model is a simplification of reality.
A good model includes those elements that have broad effect and omits those
minor elements that are not relevant to the given level of abstraction. A model
may be structural, emphasizing the organization of the system, or it may be
behavioral, emphasizing the dynamics of the system.
We build models so that we can better understand the system we are
developing.
Through modeling, we achieve four aims:
The larger and more complex the system becomes, the more important
modeling becomes, for one very simple reason:
We build models of complex systems because we cannot comprehend such a
system in its entirety.
Every project can benefit from modeling. Modeling can help the development
team better visualize the plan of their system and allow them to develop more
rapidly by helping them build the right thing. The more complex your project,
the more likely it is that you will fail or that you will build the wrong thing if
you do on modeling at all.
Principles of modelling:
Modeling has rich history in all the engineering disciplines. That experience
suggests four basic principles of modeling.
First principle of modeling:
The choice of what models to create has a profound influence on how a
problem is attacked and how a solution is shaped.
Choose your models well. The right models will highlight the most nasty
development problems. Wrong models will mislead you, causing you to focus
on irrelevant issues.
Second principle of modeling:
Every model may be expressed at different levels of precision.
Sometimes, a quick and simple executable model of the user interface is
exactly what you need. At other times, you have to get down to complex details
such as cross-system interfaces or networking issues etc.
In any case, the best kinds of models are those that let you choose your degree
of detail, depending on who is viewing it. An analyst or an end user will want to
focus on issues of what and a developer will want to focus on issues of how.
Third principle of modeling:
The best models are connected to reality.
In software, the gap between the analysis model and the system’s design
model must be less. Failing to bridge this gap causes the system to diverge over
time. In object-oriented systems, it is possible to connect all the nearly
independent views of a system into one whole.
Fourth principle of modeling:
No single model is sufficient. Every non-trivial system is best approached
through a small set of nearly independent models.
In the case of a building, you can study electrical plans in isolation, but you can
also see their mapping to the floor plan and perhaps even their interaction
with the routing of pipes in the plumbing plan.
The same is true of object-oriented systems. To understand the architecture of
such a system, you need several complementary and interlocking views: a use
case view , a design view , a process view , an implementation view and a
deployment view . Depending on the nature of the system, some models may
be more important than others.
3.Explain about conceptual model of the UML.
a) The conceptual model of the UML forms the foundation for understanding
how to use this powerful visual language for software design. It consists of
three main parts:
Building Blocks: These are the basic elements that you'll use to construct UML
diagrams. The most fundamental ones are:
Things: These represent real-world entities or concepts that are relevant
to your software system. In UML, things are typically shown as classes,
objects, components, and actors.
Relationships: These define how the things interact with each other. In
UML diagrams, relationships are depicted using arrows or lines
connecting the relevant elements.
Rules: These govern how you can put the building blocks together to create
well-formed and meaningful UML diagrams. Here are some key aspects
covered by the rules:
Semantics: This refers to the meaning associated with the elements and
their relationships. The UML rules ensure that the diagrams are
consistent and unambiguous.
Structure: The rules dictate how elements can be combined to form valid
diagrams. For example, there are specific ways to show inheritance
between classes.
Completeness: A well-formed model should provide a comprehensive
picture of the system, capturing all the essential elements and their
interactions.
Understanding these building blocks and rules is crucial for effectively using
UML diagrams to design software systems. Think of it like learning the
alphabet and grammar before you can write a sentence.
Here are some additional points to consider:
Diagrams: While not strictly part of the conceptual model itself, UML utilizes
various diagrams like class diagrams, sequence diagrams, and use case
diagrams to represent different aspects of the system. These diagrams all
adhere to the core principles of the conceptual model.
Object-Oriented Focus: The UML is heavily influenced by object-oriented
programming principles. Building blocks like classes and objects are central to
the UML framework.
By grasping the conceptual model, you'll be well on your way to creating UML
diagrams that effectively communicate your software design ideas.
4. Explain about class diagram and sequence diagram with suitable example.
a) Class Diagram:--
A class diagram shows a set of classes, interfaces, and collaborations and their
relationships. These diagrams are the most common diagram found in
modeling object-oriented systems. Class diagrams address the static design
view of a system. Class diagrams that include active classes address the static
process view of a system.
Sequence diagram:
A sequence diagram is an interaction diagram that emphasizes the
timeordering of messages.Sequence diagrams, commonly used by developers,
model the interactions between objects in a single use case. They illustrate
how the different parts of a system interact with each other to carry out a
function, and the order in which the interactions occur when a particular use
case is executed.
Unit-6
1.Breifly explain software configuration management.
a) Software quality factors are a set of characteristics that define how good a
software product is. These factors help us measure and ensure that the
software meets the needs of its users and functions as intended. There are
many different quality factors, but some of the most important ones can be
grouped into three categories according to McCall's Quality Model: