SE - Full Module Note
SE - Full Module Note
-Operating procedures consist of instructions to setup and use the software system and
instructions on how to react to system failure.
or
-Operating procedure manuals are prepared to help the customer to install, operate and
maintain the software. They are delivered along with program(s) at the time of release.
Some of the operating procedure manuals are given as:
*characteristics of software
1. Software Does Not Wear Out:-There is no concept of ‘ageing’ in software.
-Hardware parts of any product (say automobile) start malfunctioning after the
specified time due to ageing of various parts.
-The same is true for every hardware product.
-If we draw a graph between failure rate and time, we get a curve which is similar to
‘bath tub’ and is known as bath tub curve.
-The curve has three phases, namely, burn-in phase, useful life phase and wear-out
phase as shown in Figure 1.2.
-In the initial phase (burn-in phase),
the failure rate is high.
-When we start testing the product,
we detect faults.
-These faults are corrected which
results into a drop in the failure
Rate.
-therefore the drop may stabilize after
certain time of testing and the curve
becomes stable.
-This is the end of initial phase (burn-in phase)
which is expected to be performed in the company itself.
-Then the product is released to the customer.
-The second phase where the failure rate is less and it is called the useful life phase.
- After the completion of the useful life phase, the failure rate again increases due to
the effects of environmental conditions (like temperature, humidity, pressure, etc.),
rains dusts and rusting on various parts of product.
-This means, various parts begin to wear out. This phase is called wear-out phase.
-We do not have the wear-out phase in software.
-The curve for software is shown in Figure 1.3.
-The software becomes reliable over time
instead of wearing out.
-It may become obsolete due to other
reasons but not because of wear-out.
-Some of such reasons are change in
technologies, change in expectations,
poor response time, deterioration in
the structure of the source code,
complexity issues, etc.
● Embedded software:- it is placed in ROM of the product and control the various
functions of the product like automobile,security system.
-Examples are software used in instrumentation and control applications like washing
machines, satellites, microwaves, etc.
● Networking and Web Applications Software:- provides the required support
necessary for computers to interact with each other and with data storage facilities.
- Networking software is also used when software is running on a network of
computers (such as the World Wide Web).
-It includes all network management software, server software, security and
encryption software, and software to develop web-based applications like HTML,
PHP, XML, etc
*Software Myths
1. Software is easy to change:- It is true that source code files are easy to edit, but that
is quite different than saying that software is easy to change.
-Every change requires that the complete system be re-verified.
-If we do not take proper care, this will be an extremely boring and expensive
process.
2. Testing software correct can remove all the errors:- Testing can only show the
presence of errors.
-Our aim is to find the maximum possible errors.
-The more we test, the more we are confident about our design.
3. Reusing software increases safety:-Code reuse is a very powerful tool that can yield
dramatic improvement in development efficiency, but it still requires analysis to
determine its suitability and testing to determine if it works.
4. Software with more features is better software:-This is, of course, almost the
opposite of the truth.
-The best, most enduring programs are those which do one thing well.
3. Method:-The method provides the answers of all 'how-to' that are asked during the
process.
-It provides the technical way to implement the software.
-It includes collection of tasks starting from communication, requirement analysis,
analysis and design modelling, program construction, testing and support.
4. Tools: -Software engineering tools provide automated or semi-automated support
for the process and the methods.
-Tools are integrated which means information created by one tool can be used by
another.
[A process framework (five generic process framework and umbrella activities)]
*process framework:-The process framework is required for representing common
process activities.
-Five framework activities are described in a process framework for software engineering.
-Communication, planning, modelling, construction, and deployment are all examples of
framework activities.
1. Communication:-By communication, customer requirement gathering is done.
-Communication with consumers and stakeholders to determine the system’s
objectives and the software’s requirements.
2. Planning: Establish engineering work plan, describes technical risk, lists resources
requirements, work produced and defines work schedule.
3. Modelling: Architectural models and design to better understand the problem and
for work towards the best solution. The software model is prepared by:
o Analysis of requirements
o Design
4. Construction: Creating code, testing the system, fixing bugs, and confirming that all
criteria are met. The software design is mapped into a code by:
o Code generation
o Testing
5. Deployment: In this activity, a complete or non-complete product or software is
represented to the customers to evaluate and give feedback. On the basis of their
feedback, we modify the product for the supply of better products.
Software products are produced with the To produce a software product the set of
help of the software process. activities is used. This set is called a
software process.
Product is the final production of the project. process is a set of sequence steps that have
to be followed to create a project.
The main goal of the product is to complete the purpose of the process is to make the
the work successfully. quality of the project better.
Product development focus is on final outcome. The process focuses on each step to be followed
during software product development.
1. Prescriptive Process Models:-A prescriptive process model tries for structure and
order in software development.
-Prescriptive process models are sometimes referred to as “traditional” process
models.
-Prescriptive process models defi ne a prescribed set of process elements and a
predictable process work flow.
-There are three types of prescriptive process models. They are:
● The Waterfall Model
● Incremental Process model
● RAD model
( incremental process model and rad model explain cheyandaaa)
● The Waterfall Model:-The Waterfall Model was the first Process Model to
be introduced.
-It is also referred to as a linear-sequential life cycle model or 'Classic life cycle
model'.
-In this model, each phase is fully completed before the beginning of the next
phase.
-This model is used for the small projects.
-In this model, feedback is taken after each phase to ensure that the project is
on the right path.
-Testing part starts only after the development is complete.
-Activities are carried out in a linear and systematic fashion.
→fig explain
-The process starts with communication, where requirements are gathered
from the customer and recorded.
-Then goes to the planning stage where the cost and time constraints are
estimated.
-Modelling is where a design based on the requirements and keeping the
project constraints in mind is created.
-After this, code is generated and the actual building of the product is started
in the construction phase.
-Testing (unit testing, integration testing) is done after code completion in
this phase.
-Deployment is the last stage where the product is delivered, customer
feedback is received and, support and maintenance for the product are
provided.
● Prototyping Model:-In cases when the requirements are unclear and are likely to
change or when the developer is
doubtful about working of an
algorithm, a solution is to build
a prototype and find out what is
actually needed.
-A quick design is what occurs in a
prototype model.
-The client evaluates the prototype
and gives feedback and other
requirements which are incorporated
in the next prototype.
-This is repeated until the prototype
becomes a complete product that is
acceptable to the client.
-It does not provide more
functionalities. In other words, few functionalities are provided in this first form or
initial product skeleton,
→Advantages of prototyping
➢ Active involvement of the user.
➢ Errors are detected earlier.
➢ Feedback after each prototype helps in understanding the system better.
➢ Does not need to know detailed processes, input and output from the
beginning.
→Disadvantages of prototyping
➢ Multiple prototypes can slow down the process.
➢ Frequent changes can increase complexity.
➢ The customer may not be interested or satisfied after evaluating the initial
prototype.
➢ The client involvement is more and it is not always considered by the
developer.
➢ It is a slow process because it takes more time for development.
-the software team performs activities that are implied by a circuit around the spiral
in a clockwise direction, beginning at the center.
-each phase in spiral model begins with design goal and ends with client reviewing.
-software is developed in a series of incremental releases.
-it is divided into different task regions.
➢ communication:-In this phase, developer and customer meet and discuss
About the software. About the requirement that customer want.
➢ Planning:-nothing but the estimation ,scheduling and risk analysis are come
under the planning.
➢ Modelling:- after planning we have to model.
-in modelling we analysis and design.
➢ Construction:- first write the code and the test the code.
-to identify that the code is correct or not.
-code and test come under the construction phase.
➢ Deployment:- After the project is done .
-in deployment phase deliver of project ,support if any need to the customer
about the project and the feedback from the customer.
→Agile principles
-The highest priority is to satisfy the customer.
-deliver a working software in small time span.
-Business individuals and developers should work along daily throughout the project.
Or
-Throughout the project business people and developers work together on daily basis.
-Face to face interaction is the most efficient method of moving information in the
development team.
-Agile process helps in sustainable development.
-From self organizing teams the best architecture, design and requirements are emerged.
-Simplicity is necessary in development.
→Lifecycle of Scrum:
___________________________________________________________________________
Module -2
(stateholders?)
*Types of requirements:-
→STAKEHOLDER: Who have some direct or indirect influence on the system requirements
- Users who interact with the system.
-All those who are affected by it.
→Feasibility Study Process :-The below steps are carried out during entire feasibility
analysis.
1. Information assessment 2. Information collection
3. Report writing 4. General information
->Drawbacks of interviews
● Time is required to plan and conduct interviews.
● Commitment is required from all the participants.
● Sometimes training is required to conduct effective interviews.
5. Use Case Approach:-This technique combines text and pictures to provide a better
understanding of the requirements.
-The use cases describe the ‘what’, of a system and not ‘how’. Hence, they only give a
functional view of the system.
-The components of the use case design includes three major things – Actor, Use
cases, use case diagram.
1. Actor:-An actor maybe a person, machine etc. It is represented as a stick
figure. Actors can be primary actors or secondary actors.
● Primary actors – It requires assistance from the system to achieve a
goal.
● Secondary actor – It is an actor from which the system needs
assistance.
2. Use cases :-They describe the sequence of interactions between actors and
the system. They capture who(actors) do what(interaction) with the system. A
complete set of use cases specifies all possible ways to use the system.
3. Use case diagram :-A use case diagram graphically represents what happens
when an actor interacts with a system. It captures the functional aspect of the
system.
a. A stick figure is used to represent an actor.
b. An oval is used to represent a use case.
c. A line is used to represent a relationship between an actor and a use
case.
*Data flow diagrams (DFD):-Data flow diagrams (DFD) are used widely for modeling the
requirements.
-DFDs show the flow of data through a system.
or
-The flow of data of a system or a process is represented by DFD.
-The system may be a company, an organization, a set of procedures, a computer hardware
system, a software system, or any combination of the preceding.
-A neat and clear DFD can depict the right amount of the system requirement graphically.
-It shows how data enters and leaves the system, what changes the information, and where
data is stored.
-The DFD is also known as a data flow graph or a bubble chart.
- DFD does not have control flow and no loops or decision rules are present.
● Circle: A circle (bubble) shows a process that transforms data inputs into data
outputs. Or It represents as a process that gives us information. It is also called
processing box.
● Data Flow: A curved line shows the flow of data into or out of a process or data
store.
● Data Store: A set of parallel lines shows a place for the collection of data items. A
data store indicates that the data is stored which can be used at a later stage or by
the other processes in a different order. The data store can have an element or group
of elements.
● Source or Sink: Source or Sink is an external entity and acts as a source of system
inputs or sink of system outputs.
3. 2-level DFD:-DFD Level 2 then goes one step deeper into parts of Level 1.
-It can be used to plan or record the specific/necessary detail about the system’s
functioning.
→Disadvantages of DFD
● At times DFD can confuse the programmers regarding the system.
● Data Flow Diagram takes long time to be generated, and many times due to this
reasons analysts are denied permission to work on it.
*Data Dictionary:-A data dictionary is a file or a set of files that includes a database's
metadata.
-The data dictionary hold records about other objects in the database, such as data
ownership, data relationships to other objects, and other data.
-The data dictionary is very important as it contains information such as what is in the
database, who is allowed to access it, where is the database physically stored etc.
-The data dictionary is an essential component of any relational database., because of its
importance, it is invisible to most database users. ,Typically, only database administrators
interact with the data dictionary.
or
-The users of the database normally don't interact with the data dictionary, it is only handled
by the database administrators.
-The data dictionary contains the following information they are;
● Name of the item: It can be your choice.
● Aliases: It represents another name.
● Description: Description of what the actual text is all about.
● Related data items: with other data items.
● Range of values: It will represent all possible answers.
→Data Dictionary Notations tables :-The Notations used within the data dictionary are
given in the table below.
Notations Meaning
X = a+b X consists of data elements a and b.
X = [a/b] X consists of either elements a or b.
X=aX X consists of optimal data elements a.
X = y[a] X consists of y or more events of data element a
X = [a] z X consists of z or less events of data element a
X = y [a] z X consists of some events of data elements between y and z.
→Uses of Data Dictionary:-Used for creating the ordered list of data items
-Used for creating the ordered list of a subset of the data items
-Used for Designing and testing software in Software Engineering
-Used for finding data items from a description in Software Engineering
or
*ER diagrams:-ER-modeling is a data modeling method used in software engineering to
produce a conceptual data model of an information system. -Diagrams created using this
ER-modeling method are called Entity-Relationship Diagrams or ER diagrams or ERDs.
-An Entity Relationship (ER) Diagram is a type of flowchart that illustrates how “entities”
such as people, objects or concepts relate to each other within a system.
-ER diagrams are created based on three basic concepts: entities, attributes and
relationships.
-components of er model are:-
● entities:- rectangles to represent entities,
● attributes :-ovals to define attributes
● relationships:-diamond shapes to represent relationships.
or
-or
2. Attributes:-Attributes are the properties that define the entity type.
-For example, Roll_No, Name, DOB, Age, Address, Mobile_No are the attributes that define
entity type Student.
-In ER diagram, the attribute is represented by an oval.
● Derived attribute:-An attribute that can be derived from other attributes of the
entity type is known as a derived attribute.
-e.g.; Age (can be derived from DOB). In ER diagram, the derived attribute is
represented by a dashed oval.
→The complete entity type Student with its attributes can be represented as:
2. Many to one – When entities in one entity set can take part only once in the
relationship set and entities in other entity sets can take part more than once in the
relationship set, cardinality is many to one.
-Let us assume that a student can take only one course but one course can be taken
by many students. So the cardinality will be n to 1.
3. Many to many – When entities in all entity sets can take part more than once in the
relationship cardinality is many to many.
-Let us assume that a student can take more than one course and one course can be
taken by many students.
-So the relationship will be many to many.
4. Many to One: More than one entity from entity set A can be associated with at most
one entity of entity set B, however an entity from entity set B can be associated with
more than one entity from entity set A.
-For example - many students can study in a single college, but a student cannot
study in many colleges at the same time.
*prototyping:-It is a technique of constructing a partial implementation of a system so
that customers,developers or users can learn more about a problem or solution.
-Two Approaches:
1. Throwaway Prototyping:-As its name suggests, a throwaway prototype is ‘thrown
out’ once the product design is finalised.
-Also known as rapid prototyping,
-It is quickly developed to show how the requirement will look visually.
-Once the client and the developer have understood the initial requirements with the
help of the prototype and know what to expect in the final product,
-this prototype is either partially re- used or discarded completely.
-Thus, throwaway prototyping is fast and low-effort
1. Introduction:-
2. The Overall Description
3. Specific Requirements
4. Change Management Process
5. Document Approvals
6. Supporting Information
1. Introduction
1.1 Purpose:-describe purpose of the SRS
1.2 Scope:-
1.3 Definitions, Acronyms, and Abbreviations:-
1.4 References:-
1.5 Overview:-
2. The Overall Description
2.1 Product Perspective
2.2 Product Functions
2.3 User Characteristics
2.4 Constraints
2.5 Assumptions and Dependencies.
2.6 Apportioning of Requirements
3. 3. Specific Requirements
3.1 External interfaces
3.2 Functions
3.3 Performance Requirements
3.4 Logical Database Requirements
3.6 Design Constraints
___________________________________________________________________________
Module-3
2.Technical design:-A Technical design is a phase in which the event team writes the code
and describes the minute detail of either the whole design or some parts of it.
-It tells the designers that what actually the system will do.
-Common methods of technical designs are-
• Class Diagrams • Activity diagram
• Sequence diagram • State Diagram
It describes that what will happen to the It describes the functions or methods of the
data in the system. system.
-coupling simply means to connect two or more things together. It means the pairing of two
things
→Types of Module Coupling
1. Data Coupling: When data of one module is passed to
another module, this is called data coupling.--------------->
2. Control Coupling:-it simply means to control data sharing
Between modules.
- if the modules interact or connects by sharing controlled
data,then they are said to be control coupled.
3. Common coupling:-Two modules are common coupled if they share information
through some global data items.
4. Content Coupling: Content Coupling exists among two modules if they share code,
e.g., a branch from one module into another module.
5. Stamp Coupling: Two modules are stamp coupled if they communicate using
composite data items such as structure, objects, etc.
-When the module passes non-global data structure or entire structure to another
module, they are said to be stamp coupled.
6. External Coupling: External Coupling arises when two modules share an externally
imposed data format, communication protocols, or device interface.
-This is related to communication to external tools and devices.
-The strength of coupling from lowest coupling (best) to highest coupling(worst).
-Module design with high cohesion and low coupling characterizes a module as
black box when the entire structure of the system is described.
-Each module can be dealt separately when the module functionality is described.
*Strategy of design:-A good system design is to organize the program modules in such a
way that are easy to develop and change.
-Structured design techniques help developers to deal with the size and complexity of
programs.
-Analysts create instructions for the developers about how code should be written and how
pieces of code should fit together to form a program.
-System design is a critical component of software engineering and involves making
decisions about the architecture, components, modules, interfaces, and data for a software
system.
-There are many strategies or techniques for performing system design. They are:
● Bottom-up approach:-The design starts with the lowest level components and
subsystems.
- By using these components, the next immediate higher-level components and
subsystems are created or composed.
-The process is continued till all the components and subsystems are composed into
a single component, which is considered as the complete system.
-The amount of abstraction grows high as the design moves to more high levels.
-It can be used to hide the low-level details of implementation and be merged with the
top-down technique.
-High-quality bottom-up solutions are very hard to construct.
-If we get it wrong, then at a higher level, we will find that it is not as per
requirements; then we have to redesign at a lower level.
*Object oriented design:-in the object-oriented design method, the system is viewed as
a collection of objects (i.e., entities).
-The state is distributed among the objects, and each object handles its state data.
-each object is a member of some class. Classes may inherit features from the superclass.
-An analysis model created using object-oriented analysis is transformed by object-oriented
design into a design model that works as a plan for software creation.
-The different terms related to object design are:
● Objects: All entities involved in the solution design are known as objects. For
example, person, banks, company, and users are considered as objects.
-Every entity has some attributes associated with it and has some methods to
perform on the attributes.
● Classes: A class is a generalized description of an object. An object is an instance of a
class.
- A class defines all the attributes, which an object can have and methods, which
represents the functionality of the object.
● Messages: Objects communicate by message passing. Messages consist of the
integrity of the target object, the name of the requested operation, and any other
action needed to perform the function.
-Messages are often implemented as procedure or function calls.
● Abstraction In object-oriented design, complexity is handled using abstraction.
-Abstraction is the removal of the irrelevant and the amplification of the essentials.
● Encapsulation: Encapsulation is also called an information hiding concept.
-The data and operations are linked to a single unit.
-Encapsulation not only bundles essential information of an object together but also
restricts access to the data and methods from the outside world.
● Inheritance: OOD allows similar classes to stack up in a hierarchical manner where
the lower or sub-classes can import, implement, and re-use allowed variables and
functions from their immediate superclasses.
-This property of OOD is called an inheritance.
-This makes it easier to define a specific class and to create generalized classes from
specific ones.
● Polymorphism: OOD languages provide a mechanism where methods performing
similar tasks but vary in arguments, can be assigned the same name.
-This is known as polymorphism, which allows a single interface is performing
functions for different types.
- Depending upon how the service is invoked, the respective portion of the code gets
executed.
*steps to analyze and design object oriented systems (youtube)
___________________________________________________________________________
Module - 4
verification validation
check whether we are developing the right check whether the developed product is
product or not. right.
Verification is also known as static testing. Validation is also known as dynamic testing.
In verification testing, we can find the bugs In the validation testing, we can find those
early in the development phase of the bugs, which are not caught in the
product. verification process.
Verification is done before the validation After verification testing, validation testing
testing. takes place.
→Regression testing:-Each time a new module is added as part of integration testing, the
software changes.
-New data flow paths are established,or new I/O may occur.
-These changes may cause problems the previous working.
-Regression testing is the process of rerunning a portion of tests that have already been run
as part of an integration test strategy to make sure that modifications haven't had any
unexpected side effects.
-if error occur the correct them.
-Regression testing is not conducted in changed part not only it also Regression testing in
the unchanged part also.
-to check both changed and unchanged part working fine or not.
→acceptance testing:- it is tested by the customer whether to check to accept or reject the
software and it satisfied the requirement or not.
-it is conducted by end user/customer.
Acceptance Testing is a method of
software testing where a system is
tested for acceptability. The major aim of
this test is to evaluate the compliance of
the system with the business
requirements and assess whether it is
acceptable for delivery or not.
#Testing Tactics
*Black box:-Black box testing is a technique of software testing which examines the
functionality of software without peering into its internal structure or coding.
-In this method, tester selects a function and gives input value to examine its functionality,
and checks whether the function is giving expected output or not.
-If the function produces correct output, then it is passed in testing, otherwise failed.
-After completing testing of all functions if there are severe problems, then it is given back to
the development team for correction.
-The black box test is based on the specification of requirements, so it is examined in the
beginning.
-in black box testing we didn't know procedures or steps that under goes.
-we only give input and it gives output we can’t see any
Procedure or internal structure or step in the black box
Testing.
-The testing is done without the internal
knowledge of the products.
-Testers do not require technical knowledge, programming
or IT skills to test black box testing.
-Black-box testing, also called behavioral testing
-There are different techniques involved in Black Box testing they are;
Consider percentage field that will accept percentage only between 50 to 90 %, more
and even less than not be accepted, and application will redirect user to an error
page. If percentage entered by user is less than 50 %or more than 90 %, that
equivalence partitioning method will show an invalid percentage. If percentage
entered is between 50 to 90 %, then equivalence partitioning method will show valid
percentage.
2. Graph-Based Testing Methods: bakki explain cheyandaaa
3. Boundary Value Analysis :-explain cheyandaa
4. Orthogonal Array Testing:-explain cheyandaa.
*White box testing:-It is also known as glass box is testing, structural testing, clear box
testing, open box testing and transparent box testing.
-It tests internal coding and infrastructure of a software focus on checking of predefined
inputs against expected and desired outputs.
-The primary goal of white box testing is to focus on the flow of inputs and outputs through
the software and strengthening the security of the software.
-Developers do white box testing.
-In this, the developer will test every line of the code of the program.
-The developers perform the White-box testing and then send the application or the
software to the testing team, where they will perform the black box testing and verify the
application along with the requirements and identify the bugs and sends it to the developer.
-The developer fixes the bugs and does one round of white box testing and sends it to the
testing team.
-Here, fixing the bugs implies that the bug is deleted, and the particular feature is working
fine on the application.
-White box testing is a software testing technique that involves testing the internal structure
and workings of a software application.
-The tester has access to the source code and uses this knowledge to design test cases that
can verify the correctness of the software at the code level.
-The white box testing contains various tests are;
→White box-Basis path testing
-Basis path testing is a white-box testing technique first proposed by Tom McCabe
[McC76].
-The objective of basis path testing is to define the number of independent paths.
-In software engineering, Basis path testing involves execution of all possible blocks in a
program and achieves maximum path coverage with the least number of test cases.
-It helps to reduce the redundant tests
-Basis path testing helps to determine all
faults lying within a piece of code.
-example
-In the above example, we can see there
are few conditional statements that is
executed depending on what condition it
suffice.
-Here there are 3 paths or condition that
need to be tested to get the output,
● Path 1: 1,2,3,5,6, 7
● Path 2: 1,2,4,5,6, 7
● Path 3: 1, 6, 7
1. Flow Graph Notation:-Before we consider the basis path method, a simple notation
for the representation of control flow, called a flow graph (or program graph) must
be introduced.
-it is a directed graph which represents the control structure of a program or module.
A control flow graph (V, E) has V number of nodes/vertices and E number of edges in
it.
-The notations used while constructing a flow graph are;
3. Independent Program Paths :-An independent path in the control flow graph is the
one which introduces at least one new edge that has not been traversed before the
path is defined.
-The cyclomatic complexity gives the number of independent paths present in a flow
graph.
-Note that each new path introduces a new edge.
4. Graph Matrices:- ethu onnum explain cheyandaa
Note
-all error/mistakes are note fault
Eg type <= instead of < so it means an error but it is not an fault or it cause an bug
-and all fault/defect/bug are not failure
___________________________________________________________________________
Module-5
*Use Case model :-The Use-case model is defined as a model which is used to show how
users interact with the system in order to solve a problem.
-As such, the use case model defines the user's objective, the interactions between the
system and the user, and the system's behavior required to meet these objectives.
-Various model elements are contained in use-case model, such as actors, use cases, and the
association between them.
-We use a use-case diagram to graphically represent a part of the model in order to make
the communication simpler.
-There are various components of the basic model:
1. Actor:-Usually, actors are people involved with the system defined on the basis of
their roles.
-An actor can be anything such as human or another external system.
-Actors are located outside the system.
2. Use Case:-The use case defines how actors use a system to accomplish a specific
objective.
-The use cases are generally introduced by the user to meet the objectives of the
activities and variants involved in the achievement of the goal.
Or
-A use case is a written description of how users will perform tasks on your website.
-It outlines, from a user's point of view, a system's behavior as it responds to a
request.
-Each use case is represented as a sequence of simple steps, beginning with a user's
goal and ending when that goal is fulfilled.
3. Associations:-Associations are another component of the basic model.
-It is used to define the associations among actors and use cases they contribute in.
-This association is called communicates-association.
→Scenario:-A Scenario is a formal description of the flow of events that occur during the
execution of a use case instance.
-It defines the specific sequence of events between the system and the external actors.
- It is normally described in text and corresponds to the textual representation of the
sequence diagram.
→Basic Use Case Diagram Symbols and Notations:-There are following use-case
diagram symbols and notations:
● System:-With the help of the rectangle, we can draw the boundaries of the system,
which includes use-cases.
-We need to put the actors outside the system's boundaries.
example
→A sequence diagram for an emotion based music player