4,352 research outputs found

    Roles and responsibilities in agile ICT for development

    Get PDF
    This paper examines the different roles in designing interactive software in a ICT for development context. Using experiences from a participatory action research project, in which we used agile methods to design and deploy an system to support ‘agricultural information flow’ for a co-operative of small farmers in rural India, we identify points of difference between the roles in standard descriptions of agile software methods and the roles as they emerged in our project. A key finding is the critical role played by a ‘Development Project Manager’ in facilitating dialogue, orchestrating the activities of other actors and in building the capabilities and confidence of all the participants in joint action

    Artifacts for Agile User-Centered Design: A Systematic Mapping

    Get PDF
    Abstract—The integration of Agile and User-Centered Design methods is a fundamental condition to improve the quality of software products. However, one of the main problems faced to establish this integration on a day-to-day basis is how to improve communication among the invariably distinct involved teams. We believe that the artifacts involved in the development process could be used to support and increase teams’ communication. To better understand this scenario, we performed a systematic mapping study on artifacts and their role in the communication between Agile and User-Centered Design fields. Through the analysis of 56 papers dealing with this specific topic, we present the artifacts used for communication in these approaches and software development events when they are used. The analyzed studies reinforced our beliefs about the importance of artifacts to improve teams’ communication

    Design and implementation of a web interface for Axis global testing Live Sites

    Get PDF
    Designing and developing a software product is a difficult process. The product must be usable and solve the correct problem. At the same time, the underlying code must be well written. Many projects fail to deliver or exceed their budget. This thesis explores a practical approach to software design and development that tries to adhere to both user centered design and agile development. The process follows Google Ventures’ design sprint model and also takes inspiration from Jacob Nielsen's discount usability methods. This approach is applied to a real project at Axis Communications. The goal of the project was to design and implement a web application for monitoring and analyzing data from Axis global weather testing ``Live Sites''. The data was collected and analyzed manually which was a very time consuming process. It was difficult to interact with the data in order to see correlations between the weather and the camera images. We were able design a solution to this and implement it during four iterations. Each iteration consisted of a design sprint, an implementation sprint and an evaluation phase. The design sprints were fast and effective, which meant we could spend more time on building the actual product while still being confident that we were building something that would actually work. Through continuous usability evaluation and regular stakeholder meetings we were able to validate our design. The project resulted in a web application consisting of a number of interactive dashboards. Our conclusion is that the resulting interface solves the problem of interacting with the ``Live Site'' data and should provide a good foundation to build upon. We also conclude that Google Ventures' design sprint is a powerful and effective model which could be of great benefit to software development projects.Is it possible to create usable software quickly and effectively? To find out, we combined practices of good usability design and fast software development in a project at Axis Communications. Developing usable software is no simple task. The software must be well designed and solve a real problem for its users. At the same time the software’s inner workings must be engineered in a good way. Preferably, the process of producing this software should be fast and cost effective. Many software projects fail, either by delivering an unusable product or by going over budget. In our master thesis we explored a practical approach to software design and coding that tries to solve these issues. We applied this approach to a software project at Axis Communications. Our task was to develop a website for Axis global testing live sites. These live sites are physical sites located around the world in different climate zones. Each site consists of a number of Axis cameras and a weather station connected to a local server. The cameras are left there so that the physical impact of the environment can be monitored and studied. By doing this Axis makes sure that their cameras are able to handle harsh weather conditions in the real world, not just in controlled test chambers. Our approach was to divide the project into four repetitions, each consisting of a design phase, a coding phase, and a usability evaluation phase. During the design phase, which lasted for five days, we tried to solve design issues. We conducted interviews with the users and had observations sessions on day one. Solutions to the discovered problems were explored in day two. On day three we combined our ideas into a single solution. During day four we made a prototype of this solution. The usability of this prototype was tested on real users at Axis on the fifth and final day. The coding phase lasted two to three weeks and took us from a design prototype to a working website. The usability of the website was evaluated and we brought the newly discovered problems with us to the next repetition. Throughout our project we used this approach to solve design problems at an astonishing pace. By incorporating the design phase into a repetitive process we were able to produce a working product very quickly, which we could continuously add and improve upon. The process resulted in a usable product, but we were sadly not able to fully implement our envisioned solution. We do however believe that by following our process model we were able to not only produce good design, but also well written code. Hopefully this means that the product can be built upon and eventually fully realized. The process model turned out to be a powerful and effective tool. Despite the fact that we couldn’t completely evade the problem of going over budget, we think it could be of great benefit to the software engineering process

    User data spectrum theory: Collecting, interpreting, and implementing user data in organizations

    Get PDF
    Organizations interested in increasing their user experience (UX) capacity lack the tools they need to know how to do so. This dissertation addresses this challenge via three major research efforts: 1) the creation of User Data Spectrum theory and a User Data Spectrum survey for helping organizations better invest resources to grow their UX capacity, 2) a new UX method and model for organizations that want to capitalize on spoken words from end users called Rapid Meaningful Scenarios (RMS), and 3) a recommendation for UX education in response to the current ACM SIGCHI education Living Curriculum initiative. The User Data Spectrum work is based on 30 interviews and 110 survey responses from UX stakeholders across 120 companies. These data informed the theory as well as a factor analysis performed to identify the most relevant items in the User Data Spectrum survey. The Rapid Meaningful Scenarios methodology was developed based on iterative UX experience with a real-world organization and refined to aid UX professionals in creating structured results based on end users\u27 words. The UX education recommendation integrates experience with the HCI curriculum at Iowa State University and curriculum discussions within the SIGCHI community over the past 5 years. The overall contribution of this research is a set of tools that will enable UX professionals and organizations to better strategize how to increase their UX capacity

    Model-Driven Software Development

    Get PDF
    Model-Driven Software Development (MDSD) is an emerging technology approach that has potential to revolutionize the software industry. MDSD has the ability to both increase software delivery velocity, while at the same time reduce complexity and reuse software assets. Experts in the field believe that the MDSD approach helps to abstract away the growing interdependencies of enterprise software development by use of sophisticated tools, models, and automatic code generation. Through the use of Unified Modeling Language (UML/UML2) and other related technologies, the models are intricate enough to fully represent a system domain and then generate system code to represent that system. The case study evaluates the key factors of velocity, modeling complexity, code generation, and code completeness. Using both Model-Driven Software Development and so-called traditional methods of development, both techniques were applied against a real-world system for First United Methodist Church Children\u27s Ministry. The two techniques were measured and critiqued for their effect on the software development. Future direction of MDSD and potential impacts are presented
    • 

    corecore