395,392 research outputs found
âIt Takes All Kindsâ: A Simulation Modeling Perspective on Motivation and Coordination in Libre Software Development Projects
This paper presents a stochastic simulation model to study implications of the mechanisms by which individual software developersâ efforts are allocated within large and complex open source software projects. It illuminates the role of different forms of âmotivations-at-the-marginâ in the micro-level resource allocation process of distributed and decentralized multi-agent engineering undertakings of this kind. We parameterize the model by isolating the parameter ranges in which it generates structures of code that share certain empirical regularities found to characterize actual projects. We find that, in this range, a variety of different motivations are represented within the community of developers. There is a correspondence between the indicated mixture of motivations and the distribution of avowed motivations for engaging in FLOSS development, found in the survey responses of developers who were participants in large projects.free and open source software (FLOSS), libre software engineering, maintainability, reliability, functional diversity, modularity, developersâ motivations, user-innovation, peer-esteem, reputational reward systems, agent-based modeling, stochastic simulation, stigmergy, morphogenesis.
Building on CHASM: A Study of Using Counts for the Analysis of Static Models of Processes
Process modelling is gaining increasing acceptance by software engineers as a useful discipline to facilitate both process understanding and improvement activities. This position paper builds upon previous work reported at the 1997 ICSE workshop on process models and empirical studies of software engineering (Phalp and Counsell 1997). In the previous paper, we argued that simple counts could be used to support analysis of static process models. We also illustrated the idea with a coupling measure for Role Activity Diagrams, a graphical process modelling notation adapted from Petri Nets. At that time only limited empirical work had been carried out, based upon a single industrial study, where we found high levels of coupling in an inefficient process (a more thorough description may be found in (Phalp and Shepperd 1999)). We now summarise a more recent study, which uses a similar analysis of process coupling again based on simple counts. In the study, we compared ten software prototyping processes drawn from eight different organisations. We found that this approach does yield insights into process problems, which could potentially be missed by qualitative analysis alone. This is particularly so when analysing real world processes, which are frequently more complex than their text book counterparts. One notable finding was that despite differences in size and domain, role types across the organisations exhibited similar levels of coupling. Furthermore, where there were deviations in one particular role type, this led the authors to discover a relationship between project size and the coupling levels within that type of role. Given the simplicity of our approach and the complexity of many real world processes we argue that quantitative analysis of process models should be considered as a process analysis technique
Case Studies in Industry: What We Have Learnt
Case study research has become an important research methodology for
exploring phenomena in their natural contexts. Case studies have earned a
distinct role in the empirical analysis of software engineering phenomena which
are difficult to capture in isolation. Such phenomena often appear in the
context of methods and development processes for which it is difficult to run
large, controlled experiments as they usually have to reduce the scale in
several respects and, hence, are detached from the reality of industrial
software development. The other side of the medal is that the realistic
socio-economic environments where we conduct case studies -- with real-life
cases and realistic conditions -- also pose a plethora of practical challenges
to planning and conducting case studies. In this experience report, we discuss
such practical challenges and the lessons we learnt in conducting case studies
in industry. Our goal is to help especially inexperienced researchers facing
their first case studies in industry by increasing their awareness for typical
obstacles they might face and practical ways to deal with those obstacles.Comment: Proceedings of the 4th International Workshop on Conducting Empirical
Studies in Industry, co-located with ICSE, 201
Unleashing the Power of Sound: Revisiting the Physics of Notations for Modelling with auditory symbols
Sound - the oft-neglected sense for Software Engineering - is a crucial
component of our daily lives, playing a vital role in how we interact with the
world around us. In this paper, we challenge the traditional boundaries of
Software Engineering by proposing a new approach based on sound design for
using sound in modelling tools that is on par with visual design. By drawing
upon the seminal work of Moody on the `Physics' of Notations for visual design,
we develop a comprehensive catalogue of principles that can guide the design of
sound notations.
Using these principles, we develop a catalogue of sounds for UML and report
on an empirical study that supports their usefulness. Our study lays the
foundation for building more sophisticated sound-based notations. The
guidelines for designing symbolic sounds for software models are an essential
starting point for a new research thread that could significantly and
effectively enable the use of sound in modelling tools
The Design of Adaptive Acquisition of Users Feedback: an Empirical Study
Usersâ feedback is a main source of knowledge on how users perceive the role of software in meeting their requirements. Collectively, such feedback helps shaping software autonomous and semi-autonomous adaptation decisions of what is called Social Adaptation. It also helps developers to identify loci in the system where an evolution should be introduced in the next release. Despite this role of usersâ feedback, there is a lack of systematic engineering approaches on how to design its acquisition mechanisms. In this paper, we observe that the acquisition of feedback should be itself adaptive to the context of use . We conduct an empirical study following a mixed-method sequential
exploratory approach to explore the main drivers of such adaptation and understand usersâ attitude when being asked to provide feedback. Our findings are meant to enrich the knowledge base for developers and researchers in users-centric, or crowd-centric, adaptation. It also highlights areas of study for a future research in the area
Alignment of requirements and services with user feedback
University of Technology Sydney. Faculty of Engineering and Information Technology.It is widely acknowledged that software reuse reduces the cost and effort of software development. Over the years many solutions have emerged that propose methodologies to support software reusability. Service oriented software engineering (SOSE) advocates software reuse while aiming to achieve better alignment of software solutions to business requirements. Service orientation has evolved from Object Oriented Analysis and Design (OOAD) and Component Based Software Development (CBSD), the major difference being that reusable artefacts are in the form of services rather than objects or packaged components.
Although SOSE is considered a new architectural style of software development that addresses some of the shortcomings of previous approaches, it has also inherited some of the challenges of CBSD, and OOAD, in particular in the requirements engineering process. In Service Oriented Requirements Engineering (SORE) an analyst has an additional challenging task of aligning requirements and services to select the optimally matched service from an increasingly large set of available online services. Much of the existing empirical research in SORE has focused mainly on the technical aspects while the human related issues are yet to be fully explored and addressed. The lack of empirical evidence to investigate the human related issues in SORE provides the overall motivation for the research covered in this thesis.
User involvement in software development has been the focus of significant research and has been intuitively and axiomatically accepted to play a positive role in usersâ satisfaction thus leading to system success. More recently, past usersâ feedback, reviews and comments from online sources are considered a form of user involvement. These offer valuable information to assist analysts in increasing their knowledge for making more informed decision for service selection. In service oriented paradigm the full extent of the benefits of this form of user involvement has not been empirically investigated.
This thesis addresses three important high level research goals: (1) to investigate and identify the most important challenges of SORE, (2) to design an innovative and flexible method to address the top challenge of SORE, focusing specifically on the important relationship between user involvement and system success, and (3) to evaluate the applicability and effectiveness of the proposed method in an empirical study.
This thesis presents research conducted in three parts for achieving each of the stated goals respectively: problem analysis, solution analysis and implementation analysis. For problem analysis a mixed method approach is used, i.e. literature review, quantitative online survey, and qualitative industrial interview study. For solution analysis a Systematic Literature Review (SLR) is conducted to analyse the existing empirical studies about the relationship between user involvement and system success. Inspired by the results of this SLR, I designed the ARISE (Alignment of RequIrement and SErvices) method, following Situational Method Engineering to make it flexible for adoption in various project contexts. The ARISE method aims to exploit the benefits of experiences of past users for service selection. For implementation analysis, the ARISE method was instantiated in a case study with real life data with two objectives in mind: (1) validation of the effectiveness of ARISE in overcoming the challenges of alignment, and (2) improvement and refinement of the ARISE method. Analysis of the results of this validation revealed the need for automated tool support for the ARISE method. This automation is achieved through the design and implementation of software tools created for supporting the analysts in service selection.
The systematic and mixed method research approach of the problem analysis phase identified that alignment of requirements and services was the top challenge for practitioners in SORE. It also increased our understanding of why this alignment is considered the most challenging task. The findings of the SLR confirmed that the effective user involvement in software development in general, and in requirements engineering in particular could lead to system success. In SORE, the past users of services can be involved through their feedback and sentiments about the services from online sources. These concepts were the basis for the design of the ARISE method. The results of the case study complemented by the experimentation with the automated tools revealed that past usersâ feedback and sentiments are indeed valuable sources of information that can assist analysts in overcoming the challenges of alignment between requirements and services thus making a more informed decision in service selection
- âŠ