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.
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 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 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 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.
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 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.
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.
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.
Essay Writing Service Features
Our Experience
No matter how complex your assignment is, we can find the right professional for your specific task. Contact Essay is an essay writing company that hires only the smartest minds to help you with your projects. Our expertise allows us to provide students with high-quality academic writing, editing & proofreading services.Free Features
Free revision policy
$10Free bibliography & reference
$8Free title page
$8Free formatting
$8How Our Essay Writing Service Works
First, you will need to complete an order form. It's not difficult but, in case there is anything you find not to be clear, you may always call us so that we can guide you through it. On the order form, you will need to include some basic information concerning your order: subject, topic, number of pages, etc. We also encourage our clients to upload any relevant information or sources that will help.
Complete the order formOnce we have all the information and instructions that we need, we select the most suitable writer for your assignment. While everything seems to be clear, the writer, who has complete knowledge of the subject, may need clarification from you. It is at that point that you would receive a call or email from us.
Writer’s assignmentAs soon as the writer has finished, it will be delivered both to the website and to your email address so that you will not miss it. If your deadline is close at hand, we will place a call to you to make sure that you receive the paper on time.
Completing the order and download