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...
Autores principales: | , , , |
---|---|
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 |