6,554 research outputs found
Should I Bug You? Identifying Domain Experts in Software Projects Using Code Complexity Metrics
In any sufficiently complex software system there are experts, having a
deeper understanding of parts of the system than others. However, it is not
always clear who these experts are and which particular parts of the system
they can provide help with. We propose a framework to elicit the expertise of
developers and recommend experts by analyzing complexity measures over time.
Furthermore, teams can detect those parts of the software for which currently
no, or only few experts exist and take preventive actions to keep the
collective code knowledge and ownership high. We employed the developed
approach at a medium-sized company. The results were evaluated with a survey,
comparing the perceived and the computed expertise of developers. We show that
aggregated code metrics can be used to identify experts for different software
components. The identified experts were rated as acceptable candidates by
developers in over 90% of all cases
Software systems engineering: a journey to contemporary agile and beyond, do people matter?
publishedVersio
Software systems engineering: a journey to contemporary agile and beyond, do people matter?
It is fascinating to view the evolution of software systems engineering over the decades. At the first glance, it could be perceived that the various approaches and processes are different. Are they indeed different? This paper will briefly discuss such a journey relating to findings from an empirical study in some organisations in the UK. Some of the issues described in the literature and by practitioners are common across different software system engineering approaches over the time. It can be argued that human-element of software development plays an integral part in the success of software systems development endeavour. After all, software engineering is a human-centric craft. In order to understand such issues, we crossed the discipline to other disciplines in order to adapt theories and principles that will help to better understand and tackle such matter. Other disciplines have well established human related theories and principles that can be useful. From Japanese management philosophies, we have adapted Lean and knowledge management theories. From psychology, we have adapted Emotional Intelligence (EI). With such an interdisciplinary view, some of the issues can be addressed adequately. Which bring the question: is it really the process or the people? The second author will reflect on his experience attending the first SQM conference 25 years ago. The reflection will discuss the evolution of software systems engineering, and what was changed since then, if at all changed
Empowering Leadership, Transactive Memory Systems and Agility in Software Development Teams: A Theoretical Framework
Empowering leadership is crucial in modern software development. However, there is a lack of studies on how empowering leadership affects agility in software development. To fill this gap, we investigate the role of empowering leadership in agility in software development through the lens of transactive memory systems (TMS) theory. In this conceptual paper, we propose a theoretical framework in which TMS plays a mediating role between empowering leadership and agility. This framework advances our understanding of the value of empowering leadership practices in developing TMS, which in turn helps software development teams achieve agility. The proposed leadership practices and their categories also provide guidelines for effectively exercising empowering leadership
Change-Impact driven Agile Architecting.
Software architecture is a key factor to scale up Agile Software Development ASD in large softwareintensive systems. Currently, software architectures are more often approached through mechanisms that enable to incrementally design and evolve software architectures aka. agile architecting. Agile architecting should be a light-weight decision-making process, which could be achieved by providing knowledge to assist agile architects in reasoning about changes. This paper presents the novel solution of using change-impact knowledge as the main driver for agile architecting. The solution consists of a Change Impact Analysis technique and a set of models to assist agile architects in the change -decision-making- process by retrieving the change-impact architectural knowledge resulting from adding or changing features iteration after iteration. To validate our approach, we have put our solution into practice by running a project of a metering management system in electric power networks in an i-smart software factory
Libraries in transition: evolving the information ecology of the Learning Commons: a sabbatical report
This sabbatical report studied various models in order to determine best practices for design, implementation and service of Leaning Commons, a library service model which functionally and spatially integrates library services, information technology services, and media services to provide a continuum of services to the user
Cross-functional teams in Digital transformation projects What are the benefits and challenges of using cross-functional project teams in digital transformation projects?
Master thesis in Business Administration (BE501
A systematic review of knowledge sharing challenges and practices in global software development
Abstract not availableMansooreh Zahedia, Mojtaba Shahinb, Muhammad Ali Baba
- …