Fig 1 - uploaded by Ralf Kneuper
Content may be subject to copyright.
Software processes (based on 49])  

Software processes (based on 49])  

Source publication
Chapter
Full-text available
In this paper, we describe how software processes can be supported using knowledge management, concentrating on the creative manual tasks performed bydevelopers. The main support needed by developers is the availability of the knowledge about the development processes relevant to their task. As a result, software process modeling can be considered...

Similar publications

Article
Full-text available
In this paper, we present our approach to text navigation conceived like a cognitive process, which exploits navigation specific knowledge. We draw up the hypothesis that such knowledge can be designed in a declarative way with our language SEXTANT. Finally, several experimentations are described. MOTS-CLÉS : navigation textuelle assistée, modélisa...
Article
Full-text available
In order to spread the use of software process improvement programs and to make their use independent of organizations features, this work describes the results obtained using a knowledge based model and tool, as well as the proposal of using a patterns based solution implemented using a SPEM extension, in order to improve the efficiency of use of...

Citations

... Knowledge management is a very important discipline to implement properly the software engineering principles [22][23][24]. ...
Article
Service creation and customization are expensive tasks: they require specialists for the creation of required software elements, while the knowledge for defining and using those services is owned by domain experts. In many cases, some of the usual basic services could be implemented by domain experts without any programming skills. In this, paper we present the prosumer service pattern (ProSP), which considers the characterization of the prosumer and enables them to manage the knowledge of the services. A ProSP behaves as a knowledge object defined through a problem–solution approach and allows the solving of specific problems in a prosumer framework. The proposal comprises a ProSP data model, a lifecycle for the patterns, a methodological approach that involves prosumers in framework provisioning and a tool to manage ProSPs through their life cycle. This tool is based on a cloud-hosted web solution and it is accessible from different devices (PCs, tablets and smartphones). An experimental validation, where 24 students of telecommunications and bioengineering participated, was carried out. Based on obtained results, the authors discuss the factors that affect the correct elicitation of knowledge about prosumer services, the service quality improvement using the ProSP approach and the evaluation of the ProSP model.
... Despite their importance, generally they have not been given the attention they deserve. For example, in the 1719-page 2-volume Handbook of Software Engineering and Knowledge Engineering exceptions receive a very brief mention in just two places: p.126 of [6], and p.742 of [7]. This situation has not improved much. ...
Data
Full-text available
... KM has a great impact on SE [1,13,14] and is considered to be an essential part of software engineers' training [15]. In SE organizations, KM can be used to capture and share the knowledge and experience generated during the execution of organizational processes [6]; although every project is unique in some sense, similar experiences can help software engineers to better perform their activities, and managers to capture the domain knowledge that software engineers acquire during their work [1,16]. ...
Article
Full-text available
The adoption of innovative Software Engineering (SE) processes by an organization implies that engineers have to learn new processes which they might not be familiar with. Social software can support and enhance this adoption process, so research needs to focus on how the exchange of knowledge among software engineers using these tools can help to perform training more effectively. We propose a framework based on social software to support the collaborative learning, adoption and improvement of SE processes through the exchange of experiences among individuals. This article examines factors influencing the adoption of new SE processes and the quality of the experiences shared using the proposed framework in comparison with similar ones. Two case studies were carried out involving junior engineers in a training course on agile software development. Anonymous surveys collected data on the perceived quality of the experiences shared during the research, their usefulness, and the simplicity of the mechanisms provided to contribute experiences. Results show that the adoption of new SE processes is influenced by several factors such as the commitment of software engineers to collaborate in the adoption of the new process, the perceived level of usefulness of the tacit knowledge elicited during the adoption process, the diversity of the topics covered by the shared knowledge, the simplicity of the mechanisms to contribute new tacit knowledge, and the amount of learning achieved by software engineers.
... Despite their importance, generally they have not been given the attention they deserve. For example, in the 1719-page 2-volume Handbook of Software Engineering and Knowledge Engineering exceptions receive a very brief mention in just two places: p.126 of [6], and p.742 of [7]. This situation has not improved much. ...
Article
Full-text available
Exceptions are considered to be unusual states that can but must not be taken primarily into account. They form exclusions, represent cases to which a rule does not apply, form specific states that are not going to be handled at least by the current system, or might represent legal objections against the typical state. Exceptions are currently considered to be a sign of poor culture, wrong implementation, bugs in the code, bad understanding of the application domain area, wrong deployment of technology, or poor education of people. This understanding is completely different from the understanding and treatment of exceptions in real life. In our projects we discovered that exceptions must not be neglected in such a way. Architectures can be made more flexible to cope with exceptions. This paper thus aims in extending architectures of modern software and information systems in such a way that these systems are exception-aware and provide a management of exceptions in a coherent form.
... The cost of software evolution is 60% to 80% of the total software life cycle cost [1]. Identifying effort prediction metrics of software maintenance and evolution helps to prevent cost overruns and delivery slippage. ...
Conference Paper
Full-text available
The goal of this research was to assess the consistency of source code comprehension strategies and comprehension effort estimation metrics, such as LOC, across different types of modification tasks in software maintenance and evolution. We conducted an empirical study with software development practitioners using source code from a small paint application written in Java, along with four semantics-preserving modification tasks (refactoring, defect correction) and four semantics-modifying modification tasks (enhancive and modification). Each task has a change specification and corresponding source code patch. The subjects were asked to comprehend the original source code and then judge whether each patch meets the corresponding change specification in the modification task. The subjects recorded the time to comprehend and described the comprehension strategies used and their reason for the patch judgments. The 24 subjects used similar comprehension strategies. The results show that the comprehension strategies and effort estimation metrics are not consistent across different types of modification tasks. The recorded descriptions indicate the subjects scanned through the original source code and the patches when trying to comprehend patches in the semantics-modifying tasks while the subjects only read the source code of the patches in semantics-preserving tasks. An important metric for estimating comprehension efforts of the semantics-modifying tasks is the Code Clone Subtracted from LOC(CCSLOC), while that of semantics-preserving tasks is the number of referred variables.
... The most challenging problems that are related to efficient realization of system's modifications, as the system comprehension , analysis of its impacts, defects identification and elimination, hence present the considerable motivation for integration of new approaches supporting the maintenance process [3]. ...
Conference Paper
Software maintenance presents nowadays one of the most critical phases of software system life cycle. Constant changes of system's requirements or changes related to occurrences of system defects caused that thorough system understanding in order of efficient realization of system's modifications becomes now an inevitable part of maintenance process. In this paper, we emphasize the importance of system's comprehension in the context of an early detection of system's defects by offering the description of its life cycle and classification, but mainly by introducing the principles of architectural knowledge concept. We also propose a new approach of dealing with one of the currently most serious obstacles inhibiting this concept from its further use - the problem of architectural knowledge automatic acquisition.
... Bjørnson and Dingsøyr (2008) affirm that having an established development process can improve both communication and learning, but they also see that it is important to focus on sharing tacit knowledge. In fact, some authors suggest that software process improvement practices (SPI) can foster knowledge creation and other knowledge management capabilities in software organizations (Arent, Nørbjerg & Pederson, 2000;Kneuper, 2002). Arent et al. (2000) state that software process improvement can promote knowledge creation in software organizations by claiming that to improve software practices it is therefore necessary to create and institutionalize new and better knowledge about how software is developed. ...
... Mathiassen and Pourkomeylian (2003) affirm that SPI is a particular form of knowledge creation, sharing and management. Kneuper (2002) states that the main support that SPI can offer to software developers is providing the knowledge they need to perform their tasks. Nonetheless, some scholars believe that researches following this line of investigation are insufficient to initiate the outline of a theory (Ravinchadran & Rai, 2003;Schönström & Carlsson, 2003). ...
Article
Full-text available
This chapter explores knowledge management practices in a software organization. It argues that softwarcompanies are knowledge intensive organizations and therefore they must properly address the matteof knowledge management. This case study highlights the importance of understanding the practiceof knowledge management and describes knowledge acquisition, protection, transfer, and applicatiopractices in the context of a Brazilian software organization. The authors hope that this chapter increase understanding of existing knowledge practices in software organizations.
... According to Kneuper [28], the knowledge representation schemes must fulfill the following characteristics: ...
Article
Full-text available
Evolving a software process without a retrospective on its evolution and, in consequence, without an appropriate understanding, can lead to im- portant problems for a software development organization. Two examples of such problems are inefficient performance as a consequence of the arbitrary introduction of changes or difficulty in demonstrating compliance to a given standard. Capturing information on the rationale underlying process changes provides a means for better understanding process evolution. This article pre- sents two studies aimed at understanding and identifying information needs for describing the rationale for process evolution. Additionally, it presents an ap- proach for incrementally evolving processes supported by this rationale. This approach is derived from the results of the studies and a survey of related work. An application of the approach during the evolution of a reference process for developing service-oriented applications is presented together with experience and open questions for future research work.
... They presented a three-tier approach that treats the people WSEAS TRANSACTIONS on COMPUTERS Iuliana Scorta and SE process as central pieces of the KM effort [10]. Also, researchers studied the role of KM in software development process and suggested that KM can be conceptualized as a major component of Software Process Improvement (SPI) initiatives [22] or argued that KM in SE assists software developers in defining software processes, pursuing a processoriented approach and improving and adapting existing software processes for future use [19]. Other several studies were focused on the application of KM in software engineering organizations [16], [17], [20] and have revealed favourable views of existing KM models and frameworks specifically developed for SE, while others showed a negative view towards KM in SE organizations [28]. ...
Article
Knowledge plays an increasingly larger role in organizations and many consider it the most important factor of production in a knowledge economy. Knowledge is dynamic and evolves with technology, organizational culture and the changing needs of organization's software development practices. In this paper I frame my research by discussing the importance of knowledge management in software engineering. After presenting the landscape inspiring the study research questions I conduct an investigation for evaluating aspects of knowledge management practice in Romanian software engineering industry and discuss the major findings.
... In a collaborative research, Mathiassen and Pourkomeylian [36] included definition of KM strategies early in SPI projects in order to ensure KM strategies include both personalised and codified approaches, as well as align them with those of the organisational strategy. The relationship between software development processes and KM has also been examined, eliciting a distinction between formalising and automating software processes using KM [28]. It is argued that KM in SE assists software developers in defining software processes, pursuing a process-oriented approach and improving and adapting existing software processes for future use. ...
Article
This study, using both quantitative and qualitative methods, investigates current practice of Knowledge Management (KM) in Software Engineering (SE) processes in two Australian companies on the basis that they both claimed to apply KM practices in their software development work. It also describes the KM activities and KM process used in SE practice, and examines the enablers of KM process for SE in terms of leadership, technology, culture, process and measurement.One of the main findings showed that software developers believe in the usefulness of knowledge sharing; however, their ability to utilise some of the KM systems was limited. The most commonly used systems included personal networks, informal networks, groupware and third-party knowledge. There is a need to formalise knowledge sharing of practices, while also supporting informal and ad-hoc knowledge sharing. While KM was considered to be important, the tools, techniques and methodologies currently employed for software development were inadequate to address effective management of knowledge in these organisations. In both organisations, a uniform model of the KM process did not exist. Among the four KM enablers, leadership was considered to be the most significant as top-down KM strategies were seemingly being pursued by management. Technology was also considered to be an obvious mechanism for KM, despite some of their current KM systems either being unsuitable or inaccessible. In addition, the crucial role that personal networks played in accessing tacit and implicit knowledge was seen as a key reason to foster a culture that encourages participants to share their knowledge with others.