277 research outputs found

    Agile Processes in Software Engineering and Extreme Programming: 18th International Conference, XP 2017, Cologne, Germany, May 22-26, 2017, Proceedings

    Get PDF
    agile software development; lean development; scrum; project management; software developmen

    A case-study based assessment of Agile software development

    Get PDF
    This study set out to determine various aspects of the agile approaches to software development. These included an investigation into the principles and practices driving these methodologies; determining the applicability of these approaches to the current software development needs; determining whether these methodologies can comply with software engineering standards (as set out for example by ISO); investigating the feasibility of these approaches for the telecommunication industry; establishing whether practitioners are reaping the benefits that are advertised by agile proponents; and attempting to discover short-comings of the agile paradigm. This dissertation examines the aforementioned issues and tries to provide answers to them. It is argued that: Agile software development is suited to projects where the system evolves over the life cycle of the project. These methodologies are intended to seamlessly handle changing requirements. Thus, using an agile approach might provide a competitive advantage in developing e-business solutions which are tightly coupled with the business strategy and needs. It is shown that agile methodologies can comply with software engineering standards such as ISO 12207:1995 and ISO 15288:2002. Furthermore diligent application of certain agile methodologies may result in a level 3 Capability Maturity Model (CMM) grading. Evidence from the feedback of a case study conducted on an XP project team, supports the view that XP, and agile in general, does indeed live up to its 'promises'. However, some potential problem areas were identified that should be kept in mind when implementing these methodologies. Finally, an in situ investigation suggests that there are a number of projects in the telecommunication industry that will benefit from the agile approach and its practices.Dissertation (MSc)--University of Pretoria, 2005.Computer Scienceunrestricte

    The discursive constitution of software development

    Get PDF
    The successful development of software continues to be of central interest, both as an academic topic and in professional practice. Consequently, several software development approaches and methodologies have been developed and promoted over the past decades. However, despite the attention given to the subject and the methodical support available, software development and how it should be practiced continue to be controversial. This thesis examines how beliefs about software development come to be socially established as legitimate, and how they come to constitute software development practices in an organization. It is argued that the emergence of a dominant way of conceiving of and practicing software development is the outcome of power relations that permeate the discursive practices of organizational actors. The theoretical framework of this study is guided by Pierre Bourdieu’s theory of symbolic violence and organizational discourse theory. As a research method, ethnographic research techniques are utilized as part of a case study to gain deep insights into the standardization of software development practices. The research site is the IT division of a large financial services organization and is composed of ten units distributed across eight countries. The tumultuous development of a knowledge management programme intended to institutionalize a standard software development process across the organization’s units provides the case for this research. This thesis answers the call for studies providing detailed accounts of the sociopolitical process by which technically oriented practices are transferred and standardized within organizations. It is submitted that a discourse theoretical approach informed by Bourdieu’s thinking enables us to conceptualize this process in a more meaningful, and theoretically rigorous, manner. In providing this theoretical approach, the thesis seeks to contribute to current research on technology and innovation management, and to offer guidance on some issues concerning the management of the software development process

    An Exploration of the Use of Gamification in Agile Software Development

    Get PDF
    Although Project Management has existed for many millennia, software project management is relatively new. As a discipline, software project management is considered difficult. The reasons for this include that software development is non-deterministic; opaque and delivered under ever-increasing time pressure in a volatile environment. Evolving from Incremental and Iterative Development (IID), Agile methodologies have attempted to address these issues by focusing on frequent delivery; working closely with the customer; being responsive to change and preferring working software to extensive documentation. This focus on delivery rather than documentation has sometimes been misrepresented as no documentation, which has led to a shortfall in project metrics. Gamification has its roots in motivation. The aim of gamification is to persuade users to behave in a manner set out by the designer of the gamification. This is achieved by adding game mechanics or elements from games into non-game applications. This dissertation examines the use of gamification in Agile projects and includes an empirical experiment that examines the use of gamification on Agile project tracking. Project tracking is an element of software engineering that acts as a de-motivator for software engineers. Software Engineers are highly motivated by independence and growth, while project tracking is seen as boring work. The dissertation experiment identifies a methodology for applying gamification experiments and then implements an experiment. The result was an overall improvement in project tracking. The experiment needs to be expanded to be run over a longer period of time and a more varied group of development teams

    Human and social aspects of software development for complex organisations: an online ethnography of software developers

    Get PDF
    This thesis addresses the problem of human and social issues that affect software development. It is situated within the field of Information Systems and focuses on the processes of software production used within complex organisational processes: particularly decision-making, collaboration and workflow. Human and social issues are problems and situations caused by the members of the target organisations, software developers, and the dynamics of their working and social interactions.The objective of this thesis is to identify these human and social issues and see how they affect software developers' work. The methodological approach adopted here, is designed from the interpretive point of view. This study takes the perspective of software developers as they possess practical knowledge of complex business settings and current software development practices. Online ethnography is the chosen method that allows this investigation access to virtual communities in which software developers work and exchange experiences. The design of this thesis is as follows:1. Online data is collected which reflect software developers' beliefs about their work and their target organisations.2. Data categories are created which show a picture of the current state of affairs in software development.3. An interpretive theory building strategy is used to create a model of software development based on data categories.The final outcome of this thesis is developed as a complement to Orlikowski's (2000) structurational model of enactment of technologies-in-practice and takes the form of a descriptive, theory based model. This model contributes to the deeper understanding of software development issues. It presents human and social issues that affect the production of software within three different contexts: software development environment, software development practices and complex business organisations. The model generated in this thesis also suggests that software developers' perceptions of human and social issues in complex business organisations are influenced by the developers' background knowledge and experience

    A study of standards and the mitigation of risk in information systems

    Get PDF
    Organisations from the multinational Organisation for Economic Cooperation and Development through to national initiatives such as the UK's Cabinet Office, have recognised that risk - the realisation of undesirable outcomes - needs a firm framework of policy and action for mitigation. Many standards have been set that implicitly or explicitly expect to manage risk in information systems, so creating a framework of such standards would steer outcomes to desirable results.This study applies a mixed methodology of desk enquiries, surveys, and action research to investigate how the command and control of information systems may be regulated by the fusion and fission of tacit knowledge in standards comprising the experience and inductive reasoning of experts. Information system user organisations from the membership of The National Computing Centre provided the working environment in which the research was conducted in real time. The research shows how a taxonomy of risks can be selected, and how a validated catalogue of standards which describe the mitigation of those risks can be assembled taking the quality of fit and expertise required to apply the standards into account. The work bridges a gap in the field by deriving a measure of organisational risk appetite with respect to information systems and the risk attitude of individuals, and linking them to a course of action - through the application of standards - to regulate the performance of information systems within a defined tolerance. The construct of a methodology to learn about a framework of ideas has become an integral part of the methodology itself with the standards forming the framework and providing direction of its application.The projects that comprise the research components have not proven the causal link between standards and the removal of risk, leaving this ripe for a narrowly scoped, future investigation. The thesis discusses the awareness of risk and the propensity for its management, developing this into the definition of a framework of standards to mitigate known risks in information systems with a new classification scheme that cross-references the efficacy of a standard with the expertise expected from those who apply it. The thesis extends this to the idea that the framework can be scaled to the views of stakeholders, used to detect human vulnerabilities in information systems, and developed to absorb the lessons learnt from emergent risk. The research has clarified the investigation of the security culture in the thrall of an information system and brought the application of technical and management standards closer to overcoming the social and psychological barriers that practitioners and researchers must overcome.EThOS - Electronic Theses Online ServiceGBUnited Kingdo

    e-Process selection using decision making methods : a thesis presented in partial fulfilment of the requirements for the degree of Doctor of Philosophy in Information Systems at Massey University, Palmerston North, New Zealand

    Get PDF
    The key objective of this research is to develop a selection methodology that can be used to support and aid the selection of development processes for e-Commerce Information Systems (eCIS) effectively using various decision methods. The selection methodology supports developers in their choice of an e-Commerce Information System Development Process (e-Process) by providing them with a few different decision making methods for choosing between defined e-Processes using a set of quality aspects to compare and evaluate the different options. The methodology also provides historical data of previous selections that can be used to further support their specific choice. The research was initiated by the fast growing Information Technology environment, where e-Commerce Information Systems is a relatively new development area and developers of these systems may be using new development methods and have difficulty deciding on the best suited process to use when developing new eCIS. These developers also need documentary support for their choices and this research helps them with these decision-making processes. The e-Process Selection Methodology allows for the comparison of existing development processes as well as the comparison of processes as defined by the developers. Four different decision making methods, the Value-Benefit Method (Weighted Scoring), the Analytical Hierarchy Process, Case-Based Reasoning and a Social Choice method are used to solve the problem of selecting among e-Commerce Development Methodologies. The Value-Benefit Method, when applied to the selection of an e-Process from a set of e-Processes, uses multiple quality aspects. Values are assigned to each aspect for each of the e-Processes by experts. The importance of each of the aspects, to the eCIS, is defined in terms of weights. The selected e-Process is the one with the highest score when the values and weights are multiplied and then summed. The Analytic Hierarchy Process is used to quantify a selection of quality aspects and then these are used to evaluate alternative e-Processes and thus determining the best matching solution to the problem. This process provides for the ranking and determining of the relative worth of each of the quality aspects. Case-Based Reasoning requires the capturing of the resulting knowledge of previous cases, in a knowledge base, in order to make a decision. The case database is built in such a way that the concrete factual knowledge of previous individual cases that were solved previously is stored and can be used in the decision process. Case-based reasoning is used to determine the best choices. This allows the user to either use the selection methodology or the case base database to resolve their problems or both. Social Choice Methods are based on voting processes. Individuals vote for their preferences from a set of e-Processes. The results are aggregated to obtain a final result that indicates which e-Process is the preferred one. The e-Process Selection Methodology is demonstrated and validated by the development of a prototype tool. This tool can be used to select the most suitable solution for a case at hand. The thesis includes the factors that motivated the research and the process that was followed. The e-Process Selection Methodology is summarised as well as the strengths and weaknesses discussed. The contribution to knowledge is explained and future developments are proposed. To conclude, the lessons learnt and reinforced are considered

    An empirical investigation of issues relating to software immigrants

    Get PDF
    This thesis focuses on the issue of people in software maintenance and, in particular, on software immigrants – developers who are joining maintenance teams to work with large unfamiliar software systems. By means of a structured literature review this thesis identifies a lack of empirical literature in Software Maintenance in general and an even more distinct lack of papers examining the role of People in Software Maintenance. Whilst there is existing work examining what maintenance programmers do the vast majority of it is from a managerial perspective, looking at the goals of maintenance programers rather than their day-to-day activities. To help remedy this gap in the research a series of interviews with maintenance programmers were undertaken across a variety of different companies. Four key results were identified: maintainers specialise; companies do not provide adequate system training; external sources of information about the system are not guaranteed to be available; even when they are available they are not considered trustworthy. These results combine together to form a very challenging picture for software immigrants. Software immigrants are maintainers who are new to working with a system, although they are not normally new to programming. Although there is literature on software immigrants and the activities they undertake, there is no comparative literature. That is, literature that examines and compares different ways for software immigrants to learn about the system they have to maintain. Furthermore, a common feature of software immigrants learning patterns is the existence and use of mentors to impart system knowledge. However, as the interviews show, often mentors are not available which makes examining alternative ways of building a software immigrants level-of-understanding about the system they must maintain all the more important. As a result the final piece of work in this thesis is the design, running and results of a controlled laboratory experiment comparing different, work based, approaches to developing a level-of-understanding about a system. Two approaches were compared, one where subjects actively worked and altered the code while a second group took a passive ‘hands-off’ approach. The end result showed no difference in the level-of-understanding gained between the subjects who performed the active task and those that performed the passive task. This means that there is no benefit to taking a hands-off approach to building a level-of-understanding about new code in the hostile environment identified from the literature and interviews and software immigrants should start working with the code, fulfilling maintenance requests as soon as possible
    • …
    corecore