Effects of Cognitive-driven Development in the Early Stages of the Software Development Life Cycle

被引:2
|
作者
Pinto, Victor Hugo Santiago C. [1 ,2 ]
Oliveira Tavares De Souza, Alberto Luiz [2 ]
机构
[1] Fed Univ Para UFPA, Belem, Para, Brazil
[2] Zup Innovat, Sao Paulo, SP, Brazil
关键词
Cognitive-driven Development; Cognitive Complexity Metrics; Experimental Study; COMPLEXITY; LOAD;
D O I
10.5220/0011009000003179
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
The main goal of software design is to continue slicing the code to fit the human mind. A likely reason for that is related to the fact that human work can be improved by a focus on a limited set of data. However, even with advanced practices to support software quality, complex codes continue to be produced, resulting in cognitive overload for the developers. Cognitive-Driven Development (CDD) is an inspiration from cognitive psychology that aims to support the developers in defining a cognitive complexity constraint for the source code. The main idea behind the CDD is keeping the implementation units under this constraint, even with the continuous expansion of software scale. This paper presents an experimental study for verifying the CDD effects in the early stages of development compared to conventional practices. Projects adopted for hiring developers in Java by important Brazilian software companies were chosen. 44 experienced software engineers from the same company attended this experiment and the CDD guided part of them. The projects were evaluated with the following metrics: CBO (Coupling between objects), WMC (Weight Method Class), RFC (Response for a Class), LCOM (Lack of Cohesion of Methods) and LOC (Lines of Code). The result suggests that CDD can guide the developers to achieve better quality levels for the software with lower dispersion for the values of such metrics.
引用
收藏
页码:40 / 51
页数:12
相关论文
共 50 条
  • [1] Cognitive-Driven Development: Preliminary Results on Software Refactorings
    Santiago C Pinto, Victor Hugo
    Oliveira Tavares de Souza, Alberto Luiz
    Barboza de Oliveira, Yuri Matheus
    Ribeiro, Danilo Monteiro
    [J]. ENASE: PROCEEDINGS OF THE 16TH INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2021, : 92 - 102
  • [2] ZDLC for the Early Stages of the Software Development Life Cycle
    Makoondlall, Y. K.
    Khaddaj, S.
    Makoond, B.
    [J]. PROCEEDINGS OF THIRTEENTH INTERNATIONAL SYMPOSIUM ON DISTRIBUTED COMPUTING AND APPLICATIONS TO BUSINESS, ENGINEERING AND SCIENCE, (DCABES 2014), 2014, : 6 - 12
  • [3] Toward a Definition of Cognitive-Driven Development
    Oliveira Tavares de Souza, Alberto Luiz
    Santiago Costa Pinto, Victor Hugo
    [J]. 2020 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2020), 2020, : 776 - 778
  • [4] A TAXONOMY FOR THE EARLY STAGES OF THE SOFTWARE-DEVELOPMENT LIFE-CYCLE
    DAVIS, AM
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 1988, 8 (04) : 297 - 311
  • [5] To What Extent Cognitive-Driven Development Improves Code Readability?
    Barbosa, Leonardo Ferreira
    Pinto, Victor Hugo
    Oliveira Tavares de Souza, Alberto Luiz
    Pinto, Gustavo
    [J]. PROCEEDINGS OF THE16TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT, ESEM 2022, 2022, : 238 - 248
  • [6] Software metrics for policy-driven software development life cycle automation
    Borodaev, Leonid
    Smedinga, Rein
    Telea, Alex
    Groenboom, Rix
    [J]. 2018 IEEE 11TH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW), 2018, : 169 - 174
  • [7] Concurrent Modeling in Early Phases of the Software Development Life Cycle
    Brosch, Petra
    Langer, Philip
    Seidl, Martina
    Wieland, Konrad
    Wimmer, Manuel
    Kappel, Gerti
    [J]. COLLABORATION AND TECHNOLOGY, 2010, 6257 : 129 - +
  • [8] Early Risk Assessment in Software Development Life Cycle Using Software Metrics
    Hakizabera, Aline Uwera
    Ohsato, Ario
    [J]. PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON INFORMATION MANAGEMENT AND EVALUATION, 2010, : 122 - 128
  • [9] A Literature Review of Using Machine Learning in Software Development Life Cycle Stages
    Shafiq, Saad
    Mashkoor, Atif
    Mayr-Dorn, Christoph
    Egyed, Alexander
    [J]. IEEE ACCESS, 2021, 9 : 140896 - 140920
  • [10] The Importance of Testing in the Early Stages of Smart Contract Development Life Cycle
    Sanchez-Gomez, N.
    Morales-Trujillo, L.
    Gutierrez, J. J.
    Torres-Valderrama, J.
    [J]. JOURNAL OF WEB ENGINEERING, 2020, 19 (02): : 215 - 242