297 research outputs found
Improving Learning of Programming Through E-Learning by Using Asynchronous Virtual Pair Programming
The problem of learning programming subjects, especially through distance
learning and E-Learning, has been widely reported in literatures. Many attempts
have been made to solve these problems. This has led to many new approaches in
the techniques of learning of programming. One of the approaches that have been
proposed is the use of virtual pair programming (VPP). Most of the studies about
VPP in distance learning or e-learning environment focus on the use of the
synchronous mode of collaboration between learners. Not much research have been
done about asynchronous VPP. This paper describes how we have implemented VPP
and a research that has been carried out to study the effectiveness of asynchronous
VPP for learning of programming. In particular, this research study the
effectiveness of asynchronous VPP in the learning of object-oriented programming
among students at Open University Malaysia (OUM). The result of the research has
shown that most of the learners have given positive feedback, indicating that they
are happy with the use of asynchronous VPP. At the same time, learners did
recommend some extra features that could be added in making asynchronous VPP
more enjoyable. (Authors' abstract
The investigation on the best pracices of extreme programming (XP) quality implementation at UUMIT
Software engineering (SE) plays an important role for improving society‘s wellbeing through the use of high quality software. There is noted that most of the software projects are failed, due to missing or poor software development practices in software organizations. Due to this reason, having a good and sound software development methodology is crucial for software organization to satisfy
stakeholder‘s requirements. One of the prevalent software development methodologies in SE is Extreme programming (XP) methodology. This methodology is an emerging SE approach, which is able to increase software quality and hence reducing software development time and cost. However, the level of application of
this methodology among software developers in UUM IT centre is still unclear. Therefore, this study aims to investigate the application of XP practices in this centre. UUM IT was chosen as a case study because the role of this organization has changed to meet high demand among campus communities. Thus, research that
focuses on the 12 XP practices of UUM IT is highly needed. This study was conducted using a semi–structured interview with five (5) experts from the UUM IT, to identify the successful implementation of the XP practices. The findings have shown that, most of the practices are used by UUM IT developers but need to
improve. In contrast, some of the practices such as pair programming and test first
programming are not used by the UUM IT developers. This is due to the nature and type of software projects involved, also because of the personality, experiences and the education level differences among developers. This study provides qualitative evident that can assist software project managers to guide them in improving software development practices for producing high quality software
A mapping study on documentation in Continuous Software Development
Context: With an increase in Agile, Lean, and DevOps software methodologies over the last years (collectively referred to as Continuous Software Development (CSD)), we have observed that documentation is often poor. Objective: This work aims at collecting studies on documentation challenges, documentation practices, and tools that can support documentation in CSD. Method: A systematic mapping study was conducted to identify and analyze research on documentation in CSD, covering publications between 2001 and 2019. Results: A total of 63 studies were selected. We found 40 studies related to documentation practices and challenges, and 23 studies related to tools used in CSD. The challenges include: informal documentation is hard to understand, documentation is considered as waste, productivity is measured by working software only, documentation is out-of-sync with the software and there is a short-term focus. The practices include: non-written and informal communication, the usage of development artifacts for documentation, and the use of architecture frameworks. We also made an inventory of numerous tools that can be used for documentation purposes in CSD. Overall, we recommend the usage of executable documentation, modern tools and technologies to retrieve information and transform it into documentation, and the practice of minimal documentation upfront combined with detailed design for knowledge transfer afterwards. Conclusion: It is of paramount importance to increase the quantity and quality of documentation in CSD. While this remains challenging, practitioners will benefit from applying the identified practices and tools in order to mitigate the stated challenges
Teams in agile software development: Design principles and examination of human factors
In response to new customer requirements, market dynamics, mergers, and technological innovation, modern software development organizations are adopting agile software development (ASD). Yet, the simple adoption of agile methods such as Scrum or eXtreme programming does not automatically result in a very agile team. While we understand the introduction and adoption of ASD from a methodical perspective, we have yet to explore design principles that guide methodical extensions of ASD, and we need to learn more about the human factors that influence software development teams. This thesis presents four studies. Studies 1 and 2 investigate the methodical extension of ASD by identifying design principles from secondary data. Study 1 extends ASD with processes and practices from user-centered design. Study 2 investigates early activities that precede development activities. The thesis also investigates human factors of agile software development in studies 3 and 4. Study 3 compares teams along their extents of agility in order to identify influential factors using a multicase study design. Study 4 tests the effects of emotional contagion in virtual software development teams using a large dataset from an open source software repository. Thus, this thesis makes two primary contributions. First, it develops design principles for methodical extensions of ASD; second, it contributes to the human factors that influence software development teams. Managers also receive guidance on the improvement of ASD in their organization
- …