7 research outputs found

    Incremental submission of programming code using object-oriented classes

    Get PDF
    Given increasing adoption of agile software development methodologies it is essential that information technology students are exposed to them. This paper describes and evaluates an attempt to introduce agile programming into a core second year programming course. The initiative appeared to be associated with improvements in both drop out and pass rate, and student perceptions of the innovation were largely positive

    Harmonizing CMMI-DEV 1.2 and XP Method to Improve The Software Development Processes in Small Software Development Firms

    Get PDF
    Most software development organizations are small firms, and they have realized the need to manage and improve their software development and management activities. Traditional Software Process Improvement (SPI) models and standards are not realistic for these firms because of high cost, limited resources and strict project deadlines. Therefore, these firms need a lightweight software development method and an appropriate SPI model to manage and improve their software development and management processes. This study aims to construct a suitable software development process improvement framework for Small Software Development Firms (SSDFs) based on eXtreme Programming (XP) method and Capability Maturity Model Integration for Development Version 1.2 (CMMI-Dev1.2) model. Four stages are involved in developing the framework: (1) aligning XP practices to the specific goals of CMMI-Dev1.2 Key Process Areas (KPAs); (2) developing the proposed software development process improvement framework based on extending XP method by adapting the Extension-Based Approach (EBA), CMMI-Dev1.2, and generic elements of the SPI framework; (3) verifying the compatibility of the proposed framework to the KPAs of CMMI-Dev1.2 by using focus group method coupled with Delphi technique; and (4) validating the modified framework by using CMMI-Dev1.2 questionnaire as a main item to validate the suitability of the modified framework for SSDFs, and conducting two case studies to validate the applicability and effectiveness of this framework for these firms. The result of aligning XP practices to the KPAs of CMMI-Dev1.2 shows that twelve KPAs are largely supported by XP practices, eight KPAs are partially supported by XP practices, and two KPAs are not-supported by XP practices. The main contributions of this study are: software development process improvement framework for SSDFs, elicit better understanding of how to construct the framework, and quality improvement of the software development processes. There are possible avenues for extending this research to fulfil the missing specific practices of several KPAs, examining other agile practices and using CMMI-Dev1.3 to improve the framework, and conducting more case studie

    Human factors and cultural influences in implementing agile philosophy and agility in global software development

    Get PDF
    As software becomes increasingly important to all aspects of industry, developers should be encouraged to adopt best practice and hence improve the quality of the processes used, and achieve targets relating to time, budget and quality. In the software industry, several software methodologies have been used to address software development problems; however some of these processes may be too bureaucratic. The Agile Alliance formed in 2001, sought to address this problem; accordingly, they developed a manifesto and twelve principles, to which all agile software methods adhere. The purpose of the manifesto and its principles is to uncover better ways of developing software. Agile software development methods seem to address the software development industry’s need for more agile processes that are responsive to changes during software development. Agile values and principles require a major cultural change for software managers, e.g. collective team responsibility and self-organisation, especially in large organisations with a strong culture of planning and centralised power. In large global organisations, this issue is likely to be exacerbated by cultural diversity. The objective of this thesis is to analyse the possibility, of using agile methods or practices in different cultures, and study what changes are required, to adapt agile approaches to different global application development issues. The study found that certain agile practices can be useful in different cultures and some practices required major cultural adaptation. A study of suitable practices for different cultures such as Australia, India and the United Kingdom and the associated suggested changes required are the main areas of study. Human factors have been identified by researchers and practitioners to impact on software development projects. Similarly, cultural differences may also be influential in a global market. The principles of agile software development focus on iterative adaptation and improvement of the activities of individual software development teams to increase effectiveness. This research programme focused specifically on national culture based on Hofstede’s cultural dimensions, Hall’s cultural dimensions and the relationships between different aspects of national culture and the implementation of agile methods. To investigate this aspect of software development, a set of cultural dimensions and consolidated cultural agile attributes were developed, that are considered necessary for implementing agile methods. Based on relevancy, cultural dimensions such as Individualism/Collectivism, Power distance index, Uncertainty avoidance index, Time and Context were selected and studied. Some of cultural agile attributes studied include Transparency, Dedicated team, Decision making, Tolerance for change, Time keeping and Authoritative. This set was identified from a literature review on culture for agile methods, a detailed analysis of relevant commonly used agile methods and from feedback from agile experts. This thesis involves qualitative interviews conducted in Australia, India, and the UK using an interpretive paradigm and aims to identify cultural dimensions to implement agile methods in the software engineering community. The results of this research programme provide an analytical comparative framework for implementing agile methods in different cultures, and insight into how cultural differences may affect a software project and how these challenges can be addressed through agile principles

    The adoption of agile software development methodologies by organisations in South Africa.

    Get PDF
    Master of Commerce in Information Systems and Technology. University of KwaZulu-Natal, Durban 2015.The software development life cycle (SDLC) is considered to be the oldest software de-velopment methodology and is often described as a deliberate, methodical and structured approach that is used by development teams to develop information systems. There are two SDLC methodologies, which are currently being utilized by programming practition-ers, namely traditional development and Agile development. The traditional view to software development assumes that the customer does not have a full understanding of their requirements and would thus need a detailed specification de-signed before development begins. Unlike the traditional view, the agilest views software as unpredictable and rely on people and their creativity rather than on processes. Anecdotal evidence suggests various benefits associated with Agile methodologies, these include increased collaboration, the quality of the end product, transparency and produc-tivity. An international Survey conducted, amongst software development companies, shows that 80% of respondents indicated that they had practiced Agile. While international research shows the popularity of Agile methodologies very little is known about Agile in South Africa. This research provides insight into the adoption of Agile, by South African organisations. The results of the study indicate that Agile methods are being used by organisations in South Africa. However, there is no evidence to suggest its being used overwhelming. Furthermore, this study uses the Gartner hype cycle as the underpinning theoretical model and places Agile methods on the Gartner hype cycle as being in the trough of disillusionment

    Monitoring oriented agile based web applications development methodology for small software firms in Jordan

    Get PDF
    Small software firms (SSF) is vital to the software industry in many countries as they provide substantial growth to their economy. In Jordan, most software companies that are involved with developing Web applications are small firms. However, the extent of applying best Web applications development and management practices in these firms is limited. Besides, the existing software development methods are still lack of monitoring the quality of process and product. As a result, the Web application being developed exceeds deadlines and budget, and not meeting user requirements. Therefore, this research aims to construct a new methodology referred as Monitoring Oriented Agile Based Web Applications Development (MOGWD) Methodology for SSF. This study introduced an Extended Agile Method by extending the Scrum method with Extreme Programming (XP) elements. The Extended Agile Method was improved by combining common steps of Web design method and incorporating the Goal Oriented Monitoring Method (GOMM). The GOMM has defined twenty goals. Each goal has one or more questions. The questions are answered through the defined metrics. There are 101 qualitative metrics for monitoring the process quality, and 37 quantitative metrics for monitoring the process and product quality. Moreover, the proposed MOGWD methodology defines four phases: Plan, Do, Check and Act. The MOGWD methodology was evaluated using expert review and case study. The evaluation results show that the MOGWD methodology has gained SSF practitioners’ satisfaction and found to be practical for the real environment. This study contributes to the field of Agile based development and Web applications measurement. It also provides SSF practitioners a development methodology that monitors the quality of the process and product for Web development

    The Design and Implementation of an Educational Computer Game and Its Study as a Motivational Tool for Middle School ESOL Students

    Get PDF
    Gemstone Team ILL (Interactive Language Learning)Over the past three years, Team ILL has designed, created and tested a multiplayer computer game intended to complement middle school English Speakers of Other Languages (ESOL) curriculum. Reflecting upon our own language classroom experiences, we wanted to create a game whose entertainment value equaled its educational value, thereby helping us answer our research question ―How effective is our interactive multiplayer computer game as a motivational tool for students?‖ In June 2009, we tested the game in Bates and Annapolis Middle Schools, the two schools in the Anne Arundel County Public School system with the largest ESOL populations. For further understanding of the game‘s potential as an educational tool, we performed a follow-up focus group with ESOL teachers and teachers with an interest in ESOL teaching techniques. Overall, the game was well received by both students and educators and shows potential as a motivating factor in middle school ESOL classrooms

    Extreme programming promotes extreme learning?

    No full text
    Extreme programming (XP) is an agile methodology claimed to promote the rapid development of software systems, enabling the accommodation of changing customer requirements during the project lifecycle without excessive cost penalties. The mechanisms used to achieve this require the software development team to maintain accurate tacit knowledge through extensive face-to-face communication and peer learning. This characteristic of XP, the authors argue, makes it a suitable tool in the teaching of new technologies to software engineering students. This is borne out by feedback from a group of fourth-year Master of Engineering (MEng) software engineering undergraduate students who undertook an XP-based project as part of their course. Furthermore, the authors argue that the methodology is best taught in its full form through group project work. This is most effective when undertaken in the latter years of a computer science or software engineering course, after the students have been exposed to more traditional, plan-based methodologies.</p
    corecore