Jussi Koskinen
University of Jyväskylä
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Jussi Koskinen.
The Open Software Engineering Journal | 2009
Sami Kollanus; Jussi Koskinen
There is a great need to assure and improve the reliability and quality of software. Software inspections were introduced over 30 years ago as an answer for this need and they have inspired a lot of research covering many different kinds of aspects. There is a need for an up-to-date survey revealing the current state and the overall evolution of the most prominent research on the area. This paper presents a comprehensive survey focusing on the most relevant 16 interna- tional high-impact scientific publication series. There are 153 articles included in the survey covering both technical and management aspects. The main results include a description of the research trends during 1980-2008 and a description of the main results of the included studies. The description is organized based on a taxonomy of the inspection research as having emerged based on the survey. At general level the surveyed research provides clear evidence that inspections gen- erally benefit software development and quality assurance. There are several proposed theoretical variations for the in- spection process but also many empirical studies. Although the conducted research is relatively scattered, proper science- based understanding about some of the most studied issues has been achieved. Our main conclusion is that conducting empirical research needs to be continued in order to validate the effects of the different kinds of proposed theoretical con- structs in practice. Empirical studies are needed especially in order to better understand the proper implementation and the actual impacts of applying inspections in different kinds of industrial and organizational settings.
automated software engineering | 2009
Timo Tuunanen; Jussi Koskinen; Tommi Kärkkäinen
Software license is a legal instrument governing the usage or redistribution of copyright-protected software. License analysis is an elaborate undertaking, especially in case of large software consisting of numerous modules under different licenses. This paper describes an automated approach for supporting software license analysis. The approach is implemented in a reverse engineering tool called ASLA. We provide a detailed description of the architecture and features of the tool. The tool is evaluated on the basis of an analysis of 12 OSS (open source software) packages. The results show that licenses for (on average) 89% of the source code files can be identified by using ASLA and that the efficiency of the automated analysis is (on average) 111 files per second. In a further comparison with two other open source license analyzers—OSLC and FOSSology—ASLA shows a competitive performance. The results validate the general feasibility of the ASLA approach in the context of analyzing non-trivial OSS packages.
Journal of Software Maintenance and Evolution: Research and Practice | 2004
Jussi Koskinen; Airi Salminen; Jukka Paakki
Making changes safely to programs requires program comprehension and satisfaction of the information needs of software maintainers. In this paper we provide insights into improving hypertext-based software maintenance support by analyzing those information needs. There exists a series of four earlier, detailed-level empirical studies on the information needs of professional C program maintainers. We focus on these studies, synthesize their results and determine sources from which the required information might be attained. An experimental research tool, the HyperSoft system, is used to demonstrate the satisfaction of information needs and the system is analytically evaluated against the needs explored by the empirical studies. HyperSoft is based on our transient hypertext approach for software maintenance support. HyperSoft provides automatically generated hypertextual access structures and software visualizations. The results show that transient hypertext is a well-suited representational form of the typically required versatile information. The discussion also covers related tools and the main features for providing the information required by maintainers are identified. The results show that the focus areas of these tools vary considerably.
conference on software maintenance and reengineering | 2005
Jussi Koskinen; Jarmo J. Ahonen; Henna Sivula; Tero Tilus; Heikki Lintinen; Irja Kankaanpää
Decisions regarding software evolution strategies such as modernizations are economically important. We present results of our empirical study of the views of decision makers. We have asked their views of the relative importance of 49 software modernization decision criteria. We have gathered data from Finnish software industry. There were 26 experts from 8 organizations involved. They were mainly upper or middle level managers. Our study shows that there is a large set of criteria which should be taken into account, and that those studied by us provide a good coverage of the relevant ones. We list the top-20 criteria. We also performed a cluster analysis which produced two groups of subjects. Views of the decision makers in software user and software supplier organizations were different. We suggest that decision makers work process could be enhanced by taking into account the received lessons.
The Computer Journal | 1996
Jukka Paakki; Airi Salminen; Jussi Koskinen
A model called HyperSoft is presented, which can be used for viewing programs as hypertext. The main goal in developing the model has been to offer a framework for new program browsing tools to support the maintenance of legacy software in particular. The model consists of four layers: source code as such, its syntactic structure, hypertextual access structures based on the source code and its syntax, and the user interface for viewing and manipulating the source code and the access structures. The access structures are based on a general relational model of program dependencies. Both the hypertextual software model and the program dependency model are language independent and provide for a systematic and automated way of representing programs as different kinds of dependency graphs. The models are implemented in a program browsing tool which analyses C programs and automatically generates relevant hypertextual representations for them, according to requests of the maintainer.
international conference on software engineering advances | 2007
Miia-Maarit Saarelainen; Jussi Koskinen; Jarmo J. Ahonen; Irja Kankaanpää; Henna Sivula; Heikki Lintinen; Päivi Juutilainen; Tero Tilus
Software evolution decision-making is important. Decisions can be made by an individual or a group. Currently it is not known how decision-making is organized in software industry. However, that knowledge is needed to improve the decision-making processes. Therefore, we have studied 29 decision making experts, who were involved in software evolution decision-making. The study was performed with qualitative methods, which enabled the gathering of versatile information concerning the views of the decision-makers. The study revealed group decisions are widely used both in private and public organizations and attitudes towards them are generally positive or neutral. The study provided information about usage of groups in the preparation phase of the decisions and in the actual decision-making phase. In most cases groups were used in the preparation phase. The revealed decision-making process is related to two theoretical process models. The findings help to understand industrial decision-making in this important, but empirically surprisingly scarcely studied area.
Journal of Software Maintenance and Evolution: Research and Practice | 2002
Jussi Koskinen
Transient hypertextual access structures (THASs) are temporary graphs formed automatically on the basis of the situation-dependent information needs of software engineers. The approach is implemented in the HyperSoft system, which is a hypertext-based software maintenance support tool. THASs highlight the relevant parts of the program and enable nonlinear browsing between them. The system also supports various graphical views whose elements are linked to the program text. This paper describes the effects of using these hypertextual structures in two separate experiments. The subjects of both experiments were computer science students (total N = 70). In both experiments, the subjects performed a series of sample information accesses from a C program. HyperSoft and conventional text browsing and searching were compared. The results from the two experiments are well in line with our hypothesis of the usefulness of the approach and with each other. The results indicate better task performance while using THASs as compared to using the information seeking capabilities of a conventional compiler environment. The difference is statistically significant (p > 0.001).
international symposium on empirical software engineering | 2005
Jussi Koskinen; Heikki Lintinen; Jarmo J. Ahonen; Tero Tilus; Henna Sivula
This paper describes the results of an empirical study focusing on software modernization decision making in software industry. 29 decision making experts were interviewed. The main aim was to gather versatile information about their views by posing 26 questions concerning decision making. Topics of interest of these questions included: decision makers, decision making process, used and needed methods and tools, confirmation of decisions, and decision criteria. Six important themes were identified and discussed: role of intuition, economical evaluation, confirmation of the decisions, group decision making, tool support, and success and limitations of the conducted empirical study. The most important findings include the following: use of intuition in decision making is polarized, economical evaluation is important and pursued but reliable estimation of benefits is hard fo achieve, decisions are seldom confirmed, group decision support aspects appear to be important, and tool support for expert judgment needs to be improved.
product focused software process improvement | 2006
Sami Kollanus; Jussi Koskinen
Software inspections have been acknowledged as an important method in software engineering, but they are not well applied in practice. This paper discusses the current practices and the related problems based on six case studies in industrial settings. The analysis of inspection practices was organized according to ICMM, which is a model for systematically assessing and improving software inspection process maturity. The sample case organizations used inspections relatively regularly. The involved units are compared and the revealed practices, their characteristics, inspection problems and implications of the study discussed. The main problem areas were non-existent inspection training, limited formality of inspections and immaturity of inspection metrics.
Archive | 2007
Jaakko Korpi; Jussi Koskinen
Since software must evolve to meet the typically changing requirements, source code modifications can not be avoided. Impact analysis is one of the central and relatively demanding tasks of software maintenance. It is constantly needed while aiming at ensuring the correctness of the made modifications. Due to its importance and challenging nature automated support techniques are required. Theoretically, forward slicing is a very suitable technique for that purpose. Therefore, we have implemented a program dependence graph (PDG) based tool, called GRACE, for it. For example, due to the typical rewritings of Visual Basic programs there is a great need to support their impact analysis. However, there were neither earlier scientific studies on slicing Visual Basic nor reported slicers for it. In case of forward slicing there is a need to perform efficient static slicing revealing all the potential effects of considered source code modifications. Use of PDGs helps in achieving this goal. Therefore, this paper focuses on describing automated PDG-based forward slicing for impact analysis support of Visual Basic programs. GRACE contains a parser, a PDG-generator and all other necessary components to support forward slicing. Our experiences on the application of the PDG-based forward slicing has confirmed the feasibility of the approach in this context. GRACE is also compared to other forward slicing tools.