A comprehensive study to assist decision-makers in determining software design between four UML diagrams
Saikat Baul, Jubayer Ahamed, Md. Ariful Islam, Md. Khairul Alam Mazumder, Tofayet Sultan, Dip Nandi · 2024
UML is a graphical language that allows software engineers and developers to design, describe, and represent software systems. While UML cannot be defined as a programming language, it provides graphical representations which help software developers in understanding various results of programs or defects. UML diagrams are essential in software engineering as they offer a standardized approach for visually expressing system design and behavior. A clear and well-defined visual representation of the code's structure and flow allows developers to effectively allocate resources, set work priorities, and improve the overall efficiency of the development process. The interdependence of these diagrams requires their consistency, as any discrepancies may result in problems during software development processes that depend on them. Establishing defined consistency criteria and recognizing, analyzing, and resolving any differences is essential. This research study investigates the enhancement of software design by strategically choosing UML (Unified Modelling Language) diagrams, with a specific focus on Class, Sequence, Use Case, and Activity diagrams. This study aims to determine the advantages and suitable uses of each diagram form to improve the clarity and effectiveness of the design process. The study evaluates the strengths of different diagrams in various settings and contexts. It offers advice to assist in selecting the most appropriate diagram depending on specific design criteria. In our study, we provide a comprehensive analysis of the UML diagram. Also, we provide a decision-making method. The decision-makers will choose a suitable diagram for their project by following the phases.