Context: Today's project managers have a myriad of methods to choose from for the development of software applications. However, they lack empirical data about the character of these methods in terms of usefulness...
详细信息
Context: Today's project managers have a myriad of methods to choose from for the development of software applications. However, they lack empirical data about the character of these methods in terms of usefulness, ease of use or compatibility, all of these being relevant variables to assess the developer's intention to use them. Objective: To compare three methods, each following a different paradigm (Model-Driven, Model-Based and code-centric) with respect to their adoption potential by junior software developers engaged in the development of the business layer of a Web 2.0 application. Method: We have conducted a quasi-experiment with 26 graduate students of the University of Alicante. The application developed was a Social Network, which was organized around a fixed set of modules. Three of them, similar in complexity, were used for the experiment. Subjects were asked to use a different method for each module, and then to answer a questionnaire that gathered their perceptions during such use. Results: The results show that the Model-Driven method is regarded as the most useful, although it is also considered the least compatible with previous developers' experiences. They also show that junior software developers feel comfortable with the use of models, and that they are likely to use them if the models are accompanied by a Model-Driven development environment. Conclusions: Despite their relatively low level of compatibility, Model-Driven development methods seem to show a great potential for adoption. That said, however, further experimentation is needed to make it possible to generalize the results to a different population, different methods, other languages and tools, different domains or different application sizes. (C) 2012 Elsevier B.V. All rights reserved.
Researchers have been evaluating the benefits of Model-Driven development (MDD) for more than a decade now. Although some works suggest that MDD decreases development time, other works limit MDD benefits to academic e...
详细信息
ISBN:
(纸本)9783030494353;9783030494346
Researchers have been evaluating the benefits of Model-Driven development (MDD) for more than a decade now. Although some works suggest that MDD decreases development time, other works limit MDD benefits to academic exercises and to developers without experience. To clarify the benefits of MDD, we present the results of our experiment, which compares MDD and code-centric development (CcD) in terms of correctness, efficiency, and satisfaction. Our experiment achieves fidelity to real-world settings because the tasks are taken from real-world video game development, and the subjects use domain frameworks as they are used in real-world developments. Our results challenge previous ideas that limit the benefits of MDD to academic exercises and to developers without experience. Furthermore, our results also suggest that understanding the benefits of MDD might require researchers to rethink their experiments to include the social part of software development.
The development of video games usually involves two main methods: code-centric development (CcD) and Model-Driven development (MDD). CcD uses code languages that provide more control but it requires more effort in ord...
详细信息
ISBN:
(纸本)9783031610561;9783031610578
The development of video games usually involves two main methods: code-centric development (CcD) and Model-Driven development (MDD). CcD uses code languages that provide more control but it requires more effort in order to deal with implementation details. MDD raises the abstraction level (avoiding implementation details) by means of software models that are transformed into code or interpreted at run-time. Raising the abstraction level favors the participation of non-technical roles such as level designers or artists that are essential for video game development. However, bug localization, which is crucial for identifying faults, is less explored in MDD despite its advantages. This work examines how MDD and CcD impact bug localization by using a commercial video game that has been released on PlayStation 4 and Steam. We compare bug localization in terms of performance, productivity, and user satisfaction. The results showed that bug localization in MDD led to higher satisfaction among subjects. However, the differences in performance or productivity depended on experience and favored CcD for professionals. Our findings suggest that bug localization practices performed suboptimally in models, indicating a knowledge gap in addressing bugs within MDD environments. With the rising popularity of MDD in video games, there is a need to explore alternative forms of bug localization for MDD.
The general consensus of researchers and practitioners is that up-front and continuous software design using modeling languages such as UML improve code quality and reliability particularly as the software evolves ove...
详细信息
The general consensus of researchers and practitioners is that up-front and continuous software design using modeling languages such as UML improve code quality and reliability particularly as the software evolves over time. Software designs and models help in managing the underlying code complexities which are crucial for sustainability. Recently, there has been increasing evidence suggesting broader adoption of modeling languages such as UML. However, our understanding of the impact of using such modeling and design languages remains limited. This paper reports on a study that aims to characterize this impact on code quality and sustainability. We identify a sample of open source software repositories with extensive use of designs and modeling and compare their code qualities with similar code-centric repositories. Our evaluation focuses on various code quality attributes such as code smells and technical debt. We also conduct code evolution analysis over five-year period and collect additional data from questionnaires and interviews with active repository contributors. This study finds that repositories with significant use of models and design activities are associated with reduced critical code smells but are also associated with increase in non-critical code smells. The study also finds that modeling and design activities are associated with significant reduction in measures of technical debt. Analyzing code evolution over five year period reveals that UML repositories start with significantly lower technical debt density measures but tend to decline over time.
暂无评论