CIS 4655: Use Cases in Software Development Process - Fall 2018
VerifiedAdded on 2023/05/31
|9
|2122
|312
Report
AI Summary
This report examines the significance of use cases in software development, arguing for their vital role in the process. It justifies this position by explaining how use cases define anticipated behavior and facilitate system design from the end-user perspective. The report highlights that use cases improve documentation by breaking down Software Requirement Specifications (SRS) into smaller, manageable documents, enhance communication by providing a user-centric perspective, and serve as effective project management tools by enabling parallel development. Furthermore, it discusses use case-driven development, where use cases drive the entire software development process from requirement capture to system implementation. The analysis emphasizes the relationships within use cases, such as generalization and stereotypes, which help manage complexity and provide flexibility. The report concludes that use cases are crucial for focusing on specific sections of software development, thereby enhancing efficiency and effectiveness.

Running head: SOFTWARE ENGINEERING
Software Engineering
Name of the Student
Name of the University
Author Note
Software Engineering
Name of the Student
Name of the University
Author Note
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

SOFTWARE ENGINEERING
Table of Contents
Introduction:...................................................................................................................2
Importance of the use case diagram in software development:.....................................2
Analysis of the Use Case:..............................................................................................5
Conclusion:....................................................................................................................5
References:.....................................................................................................................6
pg. 1
Table of Contents
Introduction:...................................................................................................................2
Importance of the use case diagram in software development:.....................................2
Analysis of the Use Case:..............................................................................................5
Conclusion:....................................................................................................................5
References:.....................................................................................................................6
pg. 1

SOFTWARE ENGINEERING
Introduction:
The use case is very much essential for the representation of how a user interacts with
a system. This use case diagram mainly represents the connection between the users and
altered use cases in which the involvement of the user is normal (Azzeh 2013). This type of
use case diagram is successfully able to identify the various type of users who are involved in
the system and the different types of use cases of the system. The use cases are represented in
the diagram by using the shape of the eclipse or by the shape of the circle.
In this document why the use case diagram is very much important in the context of
software development will be discussed. Following that justification of stating this position
will be explained thoroughly. Further in the explanation background and definition for
providing the context of the position will be discussed thoroughly. Finally, a brief analysis of
the importance of the use case diagram in software development will be elaborated in this
document.
Importance of the use case diagram in software development:
The main argument of this paper is that whether the use case diagram is important for
software development or not. This paper argues in support of use case that it is very much
vital in the case of software development process. As the context of this paper is that the use
case is very much vital for the software development process, the justification for choosing
this position will be evaluated in the following discussion.
The use case can specifically determine the anticipated behaviour and the particular
way of making it possible. The use case can be represented by both textually and visually
(Abrahamsson et al. 2017). The key concept of the use case modelling is that it can be very
much helpful in the case of designing a system from the viewpoint of the end user. The
implementation of the use case is an effective method which can be used for communicating
pg. 2
Introduction:
The use case is very much essential for the representation of how a user interacts with
a system. This use case diagram mainly represents the connection between the users and
altered use cases in which the involvement of the user is normal (Azzeh 2013). This type of
use case diagram is successfully able to identify the various type of users who are involved in
the system and the different types of use cases of the system. The use cases are represented in
the diagram by using the shape of the eclipse or by the shape of the circle.
In this document why the use case diagram is very much important in the context of
software development will be discussed. Following that justification of stating this position
will be explained thoroughly. Further in the explanation background and definition for
providing the context of the position will be discussed thoroughly. Finally, a brief analysis of
the importance of the use case diagram in software development will be elaborated in this
document.
Importance of the use case diagram in software development:
The main argument of this paper is that whether the use case diagram is important for
software development or not. This paper argues in support of use case that it is very much
vital in the case of software development process. As the context of this paper is that the use
case is very much vital for the software development process, the justification for choosing
this position will be evaluated in the following discussion.
The use case can specifically determine the anticipated behaviour and the particular
way of making it possible. The use case can be represented by both textually and visually
(Abrahamsson et al. 2017). The key concept of the use case modelling is that it can be very
much helpful in the case of designing a system from the viewpoint of the end user. The
implementation of the use case is an effective method which can be used for communicating
pg. 2
You're viewing a preview
Unlock full access by subscribing today!

SOFTWARE ENGINEERING
the behaviour of the system in terms of the user by specifying the behaviour of the system
which is all visible externally. The use case is very much simple, but it does not represent the
details of the use cases (Hopfgartner et al. 2016). The use cases mainly summarize the
relations between the use cases, systems and actors of the diagram. The use case diagram
does not represent the orders of the steps in which it will be performed to get the goals of
each of the implemented use cases. The main purpose of implementing a use case is
specifying the context of a system, capturing the system requirements, validation of the
architecture of the system and implementation of the drive and test case generation. The use
case arrived during the late 1980s with the languages of the object oriented modelling (Iida,
Futatsugi and Watanabe 2016). The Ivar Jacobson was the first person who has been
successfully formulating the structural, textual and visual modelling technique to specify the
use cases perfectly. Since that time the development of the use cases has begun. The use case
is actually is the list of steps or the actions which defines the interaction between the system
and the role which is known as the actor in the Unified Modelling Language to achieve the
goals. This actors can be an external system or can be a human.
Now, the main important thing is that why the use case is so much significant for the
development of the software. The use case is very much vital for the software development
for various cases, but there are four main reason or considerations for this. The first
consideration is that this is a better form of documentation. A software requires various types
of specifications, and for that, the Software Requirement Specification or the SRS is a very
good solution (Fatwanto 2013). The main problem with the SRS is that it uses a single
document of the specification. In this case, the implementation of the use case encourages to
split up the SRS document in more intensive documents which are smaller than the initials.
This small documents also carry the all the requirements for the software development which
a traditional SRS document will carry. In this case, each of the use cases will carry a specific
pg. 3
the behaviour of the system in terms of the user by specifying the behaviour of the system
which is all visible externally. The use case is very much simple, but it does not represent the
details of the use cases (Hopfgartner et al. 2016). The use cases mainly summarize the
relations between the use cases, systems and actors of the diagram. The use case diagram
does not represent the orders of the steps in which it will be performed to get the goals of
each of the implemented use cases. The main purpose of implementing a use case is
specifying the context of a system, capturing the system requirements, validation of the
architecture of the system and implementation of the drive and test case generation. The use
case arrived during the late 1980s with the languages of the object oriented modelling (Iida,
Futatsugi and Watanabe 2016). The Ivar Jacobson was the first person who has been
successfully formulating the structural, textual and visual modelling technique to specify the
use cases perfectly. Since that time the development of the use cases has begun. The use case
is actually is the list of steps or the actions which defines the interaction between the system
and the role which is known as the actor in the Unified Modelling Language to achieve the
goals. This actors can be an external system or can be a human.
Now, the main important thing is that why the use case is so much significant for the
development of the software. The use case is very much vital for the software development
for various cases, but there are four main reason or considerations for this. The first
consideration is that this is a better form of documentation. A software requires various types
of specifications, and for that, the Software Requirement Specification or the SRS is a very
good solution (Fatwanto 2013). The main problem with the SRS is that it uses a single
document of the specification. In this case, the implementation of the use case encourages to
split up the SRS document in more intensive documents which are smaller than the initials.
This small documents also carry the all the requirements for the software development which
a traditional SRS document will carry. In this case, each of the use cases will carry a specific
pg. 3
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

SOFTWARE ENGINEERING
portion of the software requirement which will help to execute it with an only focus onto it.
Thus configuration management and the change in the control becomes easy.
The second consideration is that the use case can be considered as a tool of
communication. A decent use case is always written from the perspective of the user. As it is
written on the user standpoint, it assists as a very much useful document in the case of
discussing the functional requirements of a system which is under the development with
everyone attached with the project actively (Wiegers and Beatty 2013). A use case is very
much easy to understand and read for the end users while it sufficiently provides information
to the developer designers and analysts to do their jobs. Many time a project of software
development failed because the wrong understating of the project development team. As in
this case, the same document is used to provide information to the end users and to the
development team, the chances of project failure due to the communication gap reduces
(Gibson and Sodeman 2014).
The third consideration is that the use cases can be used as the project management
tool (Desmond 2014). As the requirements of the software are captured in the use case
specification form, there are many benefits in the project management. This actually helps to
break the functional requirements of a project in smaller parts. The main benefit of dividing
the project into smaller parts is that provides opportunities for parallel development which is
very much useful in the case of the project management.
The last consideration is the use case driven development. The UML is not necessary
for capturing the functional requirements for a developing system (Sugiarti 2013). However,
in many cases, it has been founded that the project team has used the use case for the system
development. There are various techniques which are well-known for controlling the stream
of the events in the description of the use case to analyse the communication and the
pg. 4
portion of the software requirement which will help to execute it with an only focus onto it.
Thus configuration management and the change in the control becomes easy.
The second consideration is that the use case can be considered as a tool of
communication. A decent use case is always written from the perspective of the user. As it is
written on the user standpoint, it assists as a very much useful document in the case of
discussing the functional requirements of a system which is under the development with
everyone attached with the project actively (Wiegers and Beatty 2013). A use case is very
much easy to understand and read for the end users while it sufficiently provides information
to the developer designers and analysts to do their jobs. Many time a project of software
development failed because the wrong understating of the project development team. As in
this case, the same document is used to provide information to the end users and to the
development team, the chances of project failure due to the communication gap reduces
(Gibson and Sodeman 2014).
The third consideration is that the use cases can be used as the project management
tool (Desmond 2014). As the requirements of the software are captured in the use case
specification form, there are many benefits in the project management. This actually helps to
break the functional requirements of a project in smaller parts. The main benefit of dividing
the project into smaller parts is that provides opportunities for parallel development which is
very much useful in the case of the project management.
The last consideration is the use case driven development. The UML is not necessary
for capturing the functional requirements for a developing system (Sugiarti 2013). However,
in many cases, it has been founded that the project team has used the use case for the system
development. There are various techniques which are well-known for controlling the stream
of the events in the description of the use case to analyse the communication and the
pg. 4

SOFTWARE ENGINEERING
sequence diagram. It also helps in the analysis of the classes and that directly helps in the
design process in where the design classes are fleshed out and identified. Then those design
classes are used by the developers for the implementation of the system. This total process is
recognised as the use case driven development in which the use cases drive the software
development process (Völter et al. 2013). Thus it is very much important in the process of
software development.
Analysis of the Use Case:
The use cases are crucial in the framework of the software development. From the
evaluation of the use cases, it has been analysed that the use is very much helpful for the
software developers (Jha, Jena and Malu 2014). It is assessed that the use cases can be related
to various relationships. Mainly, there is total three basic relation in the use cases. The first
one is the generalization, and the other two are the standard stereotypes. For managing the
scenario complexity, the relations between the use cases are a very much important tool.
When several consecutive steps have occurred repetitively in the in several numbers of use
cases, they can be considered as logically closed functional. A use case which is related to an
extended relation, it represents exceptional behaviour to the basic use case scenario. As the
use case is able to provide flexibility to the software development process, it is considered
one of the most important factor in the software development process (Amir et al. 2013).
Conclusion:
From the above discussion, it can be concluded that the role of use case is very much
important in the process of software development. The use case divides the requirements of
the software development process in a smaller section which actually helps in this case by
focusing on a particular section of the software development. In this paper, a brief about the
use case has been shared. Following that, a position has been taken in favour of the role of the
pg. 5
sequence diagram. It also helps in the analysis of the classes and that directly helps in the
design process in where the design classes are fleshed out and identified. Then those design
classes are used by the developers for the implementation of the system. This total process is
recognised as the use case driven development in which the use cases drive the software
development process (Völter et al. 2013). Thus it is very much important in the process of
software development.
Analysis of the Use Case:
The use cases are crucial in the framework of the software development. From the
evaluation of the use cases, it has been analysed that the use is very much helpful for the
software developers (Jha, Jena and Malu 2014). It is assessed that the use cases can be related
to various relationships. Mainly, there is total three basic relation in the use cases. The first
one is the generalization, and the other two are the standard stereotypes. For managing the
scenario complexity, the relations between the use cases are a very much important tool.
When several consecutive steps have occurred repetitively in the in several numbers of use
cases, they can be considered as logically closed functional. A use case which is related to an
extended relation, it represents exceptional behaviour to the basic use case scenario. As the
use case is able to provide flexibility to the software development process, it is considered
one of the most important factor in the software development process (Amir et al. 2013).
Conclusion:
From the above discussion, it can be concluded that the role of use case is very much
important in the process of software development. The use case divides the requirements of
the software development process in a smaller section which actually helps in this case by
focusing on a particular section of the software development. In this paper, a brief about the
use case has been shared. Following that, a position has been taken in favour of the role of the
pg. 5
You're viewing a preview
Unlock full access by subscribing today!

SOFTWARE ENGINEERING
use case in the software development process. For justifying the selected position,
background and the definition of the use case has been discussed in this document. Following
the discussion, a proper justification for the position has been evaluated. Also, in this paper,
an analysis report of the “role of the use case in software development” has been shared.
pg. 6
use case in the software development process. For justifying the selected position,
background and the definition of the use case has been discussed in this document. Following
the discussion, a proper justification for the position has been evaluated. Also, in this paper,
an analysis report of the “role of the use case in software development” has been shared.
pg. 6
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

SOFTWARE ENGINEERING
References:
Abrahamsson, Pekka, Outi Salo, Jussi Ronkainen, and Juhani Warsta. "Agile software
development methods: Review and analysis." arXiv preprint arXiv:1709.08439 (2017).
Amir, Muhammad, Khalid Khan, Adnan Khan, and M. N. A. Khan. "An appraisal of agile
software development process." International Journal of Advanced Science &
Technology 58, no. 56 (2013): 20.
Azzeh, Mohammad. "Software cost estimation based on use case points for global software
development." In Computer Science and Information Technology (CSIT), 2013 5th
International Conference on, pp. 214-218. IEEE, 2013.
Desmond, Celia. "Project management tools." IEEE Engineering Management Review 42,
no. 4 (2014): 11-12.
Fatwanto, Agung. "Software requirements specification analysis using natural language
processing technique." In QiR (Quality in Research), 2013 International Conference on, pp.
105-110. IEEE, 2013.
Gibson, Lindsey A., and William A. Sodeman. "Millennials and technology: Addressing the
communication gap in education and practice." Organization Development Journal 32, no. 4
(2014): 63-75.
Hopfgartner, Frank, Torben Brodt, Jonas Seiler, Benjamin Kille, Andreas Lommatzsch,
Martha Larson, Roberto Turrin, and András Serény. "Benchmarking news recommendations:
The clef newsreel use case." In ACM SIGIR Forum, vol. 49, no. 2, pp. 129-136. ACM, 2016.
Iida, Shusaku, Kokichi Futatsugi, and Takuo Watanabe. "Object-Oriented
Modeling." Formal Methods for Open Object-based Distributed Systems 1 (2016): 341.
pg. 7
References:
Abrahamsson, Pekka, Outi Salo, Jussi Ronkainen, and Juhani Warsta. "Agile software
development methods: Review and analysis." arXiv preprint arXiv:1709.08439 (2017).
Amir, Muhammad, Khalid Khan, Adnan Khan, and M. N. A. Khan. "An appraisal of agile
software development process." International Journal of Advanced Science &
Technology 58, no. 56 (2013): 20.
Azzeh, Mohammad. "Software cost estimation based on use case points for global software
development." In Computer Science and Information Technology (CSIT), 2013 5th
International Conference on, pp. 214-218. IEEE, 2013.
Desmond, Celia. "Project management tools." IEEE Engineering Management Review 42,
no. 4 (2014): 11-12.
Fatwanto, Agung. "Software requirements specification analysis using natural language
processing technique." In QiR (Quality in Research), 2013 International Conference on, pp.
105-110. IEEE, 2013.
Gibson, Lindsey A., and William A. Sodeman. "Millennials and technology: Addressing the
communication gap in education and practice." Organization Development Journal 32, no. 4
(2014): 63-75.
Hopfgartner, Frank, Torben Brodt, Jonas Seiler, Benjamin Kille, Andreas Lommatzsch,
Martha Larson, Roberto Turrin, and András Serény. "Benchmarking news recommendations:
The clef newsreel use case." In ACM SIGIR Forum, vol. 49, no. 2, pp. 129-136. ACM, 2016.
Iida, Shusaku, Kokichi Futatsugi, and Takuo Watanabe. "Object-Oriented
Modeling." Formal Methods for Open Object-based Distributed Systems 1 (2016): 341.
pg. 7

SOFTWARE ENGINEERING
Jha, Pragya, Preetam Pratap Jena, and Rajani Kanta Malu. "Estimating software development
effort using UML use case point (UCP) method with a modified set of environmental
factors." International Journal of Computer Science and Information Technologies 5, no. 3
(2014): 2742-2744.
Sugiarti, Yuni. "Analisis & Perancangan UML (Unified Modeling Language) Generated VB.
6." Yogyakarta: Graha Ilmu (2013).
Völter, Markus, Thomas Stahl, Jorn Bettin, Arno Haase, and Simon Helsen. Model-driven
software development: technology, engineering, management. John Wiley & Sons, 2013.
Wiegers, Karl, and Joy Beatty. Software requirements. Pearson Education, 2013.
pg. 8
Jha, Pragya, Preetam Pratap Jena, and Rajani Kanta Malu. "Estimating software development
effort using UML use case point (UCP) method with a modified set of environmental
factors." International Journal of Computer Science and Information Technologies 5, no. 3
(2014): 2742-2744.
Sugiarti, Yuni. "Analisis & Perancangan UML (Unified Modeling Language) Generated VB.
6." Yogyakarta: Graha Ilmu (2013).
Völter, Markus, Thomas Stahl, Jorn Bettin, Arno Haase, and Simon Helsen. Model-driven
software development: technology, engineering, management. John Wiley & Sons, 2013.
Wiegers, Karl, and Joy Beatty. Software requirements. Pearson Education, 2013.
pg. 8
You're viewing a preview
Unlock full access by subscribing today!
1 out of 9
Related Documents

Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
© 2024 | Zucol Services PVT LTD | All rights reserved.