Cargando…

A user task design notation for improved software design

System design is recognized as one of the most critical components of a software system that bridges system requirements and coding. System design also has a significant impact on testing and maintenance activities, and on further improvements during the lifespan of the software system. Software des...

Descripción completa

Detalles Bibliográficos
Autores principales: Ozcan, Eda, Topalli, Damla, Tokdemir, Gul, Cagiltay, Nergiz Ercil
Formato: Online Artículo Texto
Lenguaje:English
Publicado: PeerJ Inc. 2021
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8156997/
https://www.ncbi.nlm.nih.gov/pubmed/34084923
http://dx.doi.org/10.7717/peerj-cs.503
_version_ 1783699580351676416
author Ozcan, Eda
Topalli, Damla
Tokdemir, Gul
Cagiltay, Nergiz Ercil
author_facet Ozcan, Eda
Topalli, Damla
Tokdemir, Gul
Cagiltay, Nergiz Ercil
author_sort Ozcan, Eda
collection PubMed
description System design is recognized as one of the most critical components of a software system that bridges system requirements and coding. System design also has a significant impact on testing and maintenance activities, and on further improvements during the lifespan of the software system. Software design should reflect all necessary components of the requirements in a clear and understandable manner by all stakeholders of the software system. To distinguish system elements, separation of concerns in software design is suggested. In this respect, identification of the user tasks, i.e., the tasks that need to be performed by the user, is not currently reflected explicitly in system design documents. Our main assumption in this study is that software quality can be improved significantly by clearly identifying the user tasks from those that need to be performed by the computer system itself. Additionally, what we propose has the potential to better reflect the user requirements and main objectives of the system on the software design and thereby to improve software quality. The main aim of this study is to introduce a novel notation for software developers in the frame of UML Activity Diagram (UML-AD) that enables designers to identify the user tasks and define them separately from the system tasks. For this purpose, an extension of UML-AD, named UML-ADE (UML-Activity Diagram Extended) was proposed. Afterwards, it was implemented in a serious game case for which the specification of user tasks is extremely important. Finally, its effectiveness was analyzed and compared to UML-AD experimentally with 72 participants. The defect detection performance of the participants on both diagrams with two real-life serious game scenarios was evaluated. Results show a higher level of understandability for those using UML-ADE, which in turn may indicate a better design and higher software quality. The results encourage researchers to develop specific design representations dedicated to task design to improve system quality and to conduct further evaluations of the impact of these design on each of the above mentioned potential benefits for the software systems.
format Online
Article
Text
id pubmed-8156997
institution National Center for Biotechnology Information
language English
publishDate 2021
publisher PeerJ Inc.
record_format MEDLINE/PubMed
spelling pubmed-81569972021-06-02 A user task design notation for improved software design Ozcan, Eda Topalli, Damla Tokdemir, Gul Cagiltay, Nergiz Ercil PeerJ Comput Sci Human–Computer Interaction System design is recognized as one of the most critical components of a software system that bridges system requirements and coding. System design also has a significant impact on testing and maintenance activities, and on further improvements during the lifespan of the software system. Software design should reflect all necessary components of the requirements in a clear and understandable manner by all stakeholders of the software system. To distinguish system elements, separation of concerns in software design is suggested. In this respect, identification of the user tasks, i.e., the tasks that need to be performed by the user, is not currently reflected explicitly in system design documents. Our main assumption in this study is that software quality can be improved significantly by clearly identifying the user tasks from those that need to be performed by the computer system itself. Additionally, what we propose has the potential to better reflect the user requirements and main objectives of the system on the software design and thereby to improve software quality. The main aim of this study is to introduce a novel notation for software developers in the frame of UML Activity Diagram (UML-AD) that enables designers to identify the user tasks and define them separately from the system tasks. For this purpose, an extension of UML-AD, named UML-ADE (UML-Activity Diagram Extended) was proposed. Afterwards, it was implemented in a serious game case for which the specification of user tasks is extremely important. Finally, its effectiveness was analyzed and compared to UML-AD experimentally with 72 participants. The defect detection performance of the participants on both diagrams with two real-life serious game scenarios was evaluated. Results show a higher level of understandability for those using UML-ADE, which in turn may indicate a better design and higher software quality. The results encourage researchers to develop specific design representations dedicated to task design to improve system quality and to conduct further evaluations of the impact of these design on each of the above mentioned potential benefits for the software systems. PeerJ Inc. 2021-05-24 /pmc/articles/PMC8156997/ /pubmed/34084923 http://dx.doi.org/10.7717/peerj-cs.503 Text en ©2021 Ozcan et al. https://creativecommons.org/licenses/by/4.0/This is an open access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, reproduction and adaptation in any medium and for any purpose provided that it is properly attributed. For attribution, the original author(s), title, publication source (PeerJ Computer Science) and either DOI or URL of the article must be cited.
spellingShingle Human–Computer Interaction
Ozcan, Eda
Topalli, Damla
Tokdemir, Gul
Cagiltay, Nergiz Ercil
A user task design notation for improved software design
title A user task design notation for improved software design
title_full A user task design notation for improved software design
title_fullStr A user task design notation for improved software design
title_full_unstemmed A user task design notation for improved software design
title_short A user task design notation for improved software design
title_sort user task design notation for improved software design
topic Human–Computer Interaction
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8156997/
https://www.ncbi.nlm.nih.gov/pubmed/34084923
http://dx.doi.org/10.7717/peerj-cs.503
work_keys_str_mv AT ozcaneda ausertaskdesignnotationforimprovedsoftwaredesign
AT topallidamla ausertaskdesignnotationforimprovedsoftwaredesign
AT tokdemirgul ausertaskdesignnotationforimprovedsoftwaredesign
AT cagiltaynergizercil ausertaskdesignnotationforimprovedsoftwaredesign
AT ozcaneda usertaskdesignnotationforimprovedsoftwaredesign
AT topallidamla usertaskdesignnotationforimprovedsoftwaredesign
AT tokdemirgul usertaskdesignnotationforimprovedsoftwaredesign
AT cagiltaynergizercil usertaskdesignnotationforimprovedsoftwaredesign