Development and implementation of a method for checking the integrity of the design of an object-oriented system

  • Mykyta Pugach PhD student, Department of Theoretical and Applied Informatics, Faculty of Mathematics and Informatics, V. N. Karazin Kharkiv National University, Ukraine https://orcid.org/0009-0004-8923-6489
  • Iryna Zaretska associate professor of the institution of higher education, Department of Theoretical and Applied Informatics, Faculty of Mathematics and Informatics, V. N. Karazin Kharkiv National University, Ukraine https://orcid.org/0000-0001-8747-2737
Keywords: software development, UML, software design, object-oriented design diagrams

Abstract

Creating modern software products is a complex and long process consisting of many parts. To achieve quality, it is necessary to carry out various measures for testing and verifying software at all stages of development. This article discusses the software design stage, which is integral and one of the most important. In most software development life cycle (SDLC) models, this stage is one of the first, so design mistakes will lead to problems in all subsequent stages. Thus, due to the high cost of error, it is very important to check the integrity of the developed design at the design stage. The article examines the problem of finding contradictions in object-oriented design. The authors present a set of contradictions that can arise in such a design and aim to develop methods and algorithms for detecting and searching for these contradictions in order to improve the quality of the design, as well as writing software that will implement these algorithms and methods. The program "diagrams.net" was chosen as a tool for creating object-oriented design, the main useful feature of which is the ability to present the created diagrams in the form of an XML file in the popular drawio format. The authors of the study propose a method for parsing the XML file of the diagram and presenting it as a set of objects, such as dependency arrows, classes, methods, etc. These objects must interact according to the established rules.The violation of these rules is a contradiction of the object-oriented design. As a result of the study, a method of finding contradictions was presented and implemented in the Java programming language.

Downloads

Download data is not yet available.

References

Grady Booch, Robert A. Maksimchuk, Michael W. Engle, Bobbi J. Young, & Jim Conallen. (2007). Object-Oriented Analysis and Design with Applications (3rd ed.). https://zjnu2017.github.io/OOAD/reading/Object.Oriented.Analysis.and.Design.with.Applications.3rd.Edition.by.Booch.pdf

Craig Larman. (2004). Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. https://bsituos.weebly.com/uploads/2/5/2/5/25253721/applying-umland-patterns-3rd.pdf

Vanessa Weber, Kleinner Farias, Lucian Gonçales & Vinícius Bischoff. (2016). Detecting Inconsistencies in Multi-view UML Models. International Journal of Computer Science and Software Engineering (IJCSSE), Volume 5, Issue 12. https://www.researchgate.net/publication/313837603_Detecting_Inconsistencies_in_Multi-view_UML_Models

OMG. Unified Modeling Language 2.5.1 Specification. (2017). https://www.omg.org/spec/UML/2.5.1/

Gamma Erich, Helm Richard, Johnson Ralph & Vlissides John. (1994). Design Patterns: Elements of Reusable Object-Oriented Software. https://www.javier8a.com/itc/bd1/articulo.pdf

Robert C. Martin. (2008). Clean Code: A Handbook of Agile Software Craftsmanship. https://ptgmedia.pearsoncmg.com/images/9780132928472/samplepages/0132928477.pdf

Martin Fowler, Kent Beck, John Brant, William Opdyke & Don Roberts. (1999). Refactoring: Improving the Design of Existing Code. https://ptgmedia.pearsoncmg.com/images/9780201485677/samplepages/9780201485677.pdf

Joyce Farrell. (2017). Programming Logic and Design, Introductory. https://jamborebook.co/download/4867679-program-logic-and-design

Iryna Zaretska, Oleksandra Kulankhina & Hlib Mykhailenko. Cross-Diagram UML Design Verification. ICT in Education, Research and Industrial Applications. CCIS, Vol. 347, Springer-Verlag, Berlin Heidelberg (2013). – pp. 165-176. http://dx.doi.org/10.1007/978-3-642-35737-4_10

Iryna Zaretska, Oleksandra Kulankhina, Hlib Mykhailenko & Tamara Butenko. Consistency of UML Design. International Journal of Information Technology and Computer Science (IJITCS), Vol.10, No.9, 2018. – pp. 47-56. https://doi.org/10.5815/ijitcs.2018.09.06

Rational Rose. https://www.ibm.com/docs/en/rational-clearquest/7.1.0?topic=developing-schemasclearquest-designer

Diagrams.Net. https://app.diagrams.net/

Published
2024-09-12
Cited
How to Cite
Mykyta Pugach, & Iryna Zaretska. (2024). Development and implementation of a method for checking the integrity of the design of an object-oriented system. Computer Science and Cybersecurity, (1), 76-87. https://doi.org/10.26565/2519-2310-2024-1-07
Section
Статті