0000000000166111
AUTHOR
Jouni Markkula
Applying Patterns for Improving Subcontracting Management
This paper studies inter-organizational communication of strategic design information. The focus is on global software subcontracting, where communication problems are common. Software patterns, which have been recognized as a valuable tool in software development, are proposed to be means to facilitate the communication of design information in subcontracting relationship. The position of patterns in subcontracting related processes are studied and the implications of introducing patterns to software subcontracting relationship are analyzed. As a result an evaluation of software patterns’ suitability as means for efficient, systematic and explicit communication in managing the subcontracti…
Geographic personal data, its privacy protection and prospects in a location-based service environment
Jouni Markkula on väitöskirjatyössään tutkinut paikkaan liitettävien henkilöitä koskevien tietojen keräämisen ja hyödyntämisen mahdollisuuksia niin, että samalla otetaan huomioon henkilöiden yksityisyyden suojan turvaaminen. Tällaisia henkilöpaikkatietojen hyödyntämis-mahdollisuuksia syntyy esimerkiksi matkapuhelinteknologian kehittymisen myötä. Henkilöpaikkatiedot ovat hyödyllisiä ja yleisesti arvokkaita. Esimerkiksi SARS-keuhkokuumetartunnan saaneiden kotiosoitetietojen perusteella voitaisiin piirtää kartta sairauden levinneisyydestä vaikka koko maapallolla. Mutta jos yksittäisten SARS tartunnan saaneiden henkilöiden osoitteet julkaistaisiin kaikkien tietoon, se loukkaisi vahvasti henkilö…
An Exploratory Empirical Study of Internal Quality Attributes of Open Source Software Systems
This exploratory empirical study has focused on open source software (OSS). Seven medium-sized OSS systems from the SourceForge repository were analysed. Over 100 internal quality attributes and programming practices were scrutinized by using two semi-automated source code analysis tools (FindBugs and SoftCalc). Many statistically significant relations were revealed by the conducted regression analyses. Seven so-called bad programming practices; as manifested by the measured source code inconsistencies were identified as having significant relations to internal software quality. Additionally we set and tested two hypotheses. That investigation provided mixed results partly supporting some o…
Specifying Patterns for Mobile Application Domain Using General Architectural Components
Software companies adopt patterns as a means to improve architecture and design practices. During recent years, the application of patterns has extended from general software applications to specific problem domains. In a new domain, suitable patterns fitting to the essential design problems in the new context need to be identified. In this paper, we introduce a general architectural model of mobile applications, which can be used to identify and organise essential patterns in mobile-application design process. This model is employed to construct a high-level architecture of a particular application. For each component of the architecture, the model may suggest candidate patterns that can b…
Design Patterns and Organisational Memory in Mobile Application Development
Mobile application development is a challenging task for the software companies due to complicated technological and business environments. Patterns have been recognised to be a valuable tool in software development, for they allow design experiences and solutions to be documented systematically and facilitate the communication of design issues. Patterns can be seen as a part of organisational memory, a means to preserve the design knowledge and enable its reuse in later products and projects. In this paper we study how the design patterns can support organisational memory in mobile application design. We present the utilisation of patterns as a dynamic process and analyse their relationshi…
Exploratory Analysis of the Relations between Code Cloning and Open Source Software Quality
In recent literature there is still a lack of understanding how the reuse and cloning of software affects its quality. The focus of this study is to analyze the relationships between source code cloning and software quality for the case of open source software project forks (SPFs) as a kind of software reuse. In total 117 releases related to three generations of eight eMule SPFs were scrutinized. Software quality was measured in terms of internal quality attributes. The tools CCFinderX and SoftCalc were used to measure code cloning metrics and internal quality attributes, respectively. In total 8 code cloning metrics and 71 internal quality attributes were analyzed. The quantitative relatio…
Defining Complexity Factors for the Architecture Evaluation Framework
The design and implementation of telecommunication systems is an incremental and iterative process, and system architectures may need to be revised and refined several times during their lifetime. Formal evaluation facilitates the identification of the weak points, where improvements are due in these architectures. In the domain of telecommunications, such evaluation can be based on the Architecture Evaluation Framework (AEF). During the evaluation, a deep understanding of the processes within a system is needed. Meanwhile, the systems being designed are usually complex systems encompassing a large number of components with an intricate pattern of interaction between them. As a result, it i…
An integrated identity verification system for mobile terminals
PurposeTo report the work on the design of an integrated identity verification system architecture aimed at approaching high verification accuracy, continuous security, and user‐friendliness.Design/methodology/approachThe reported research corresponds to the building process in the design science research paradigm. The requirements to an identity verification system are defined and used in the selection of architecture components. Furthermore, various issues affecting the suitability of component distribution between a terminal and a remote server are considered.FindingsIn order to meet the stated requirements, in the proposed architecture static and dynamic identity verification is combine…
A Generic Architectural Model Approach for Efficient Utilization of Patterns
A software pattern describes the core of the solution to a problem that tends to (re-)occur in a particular environment. Such patterns are commonly used as a means to facilitate the creation of an architectural design satisfying the desired quality goals. In this chapter, the practical challenges of efficient usage of patterns in domain-specific software development are presented. The specific domain considered here is the mobile domain, for which is given a sample collection of potentially useful patterns. After that, a novel generic architectural model approach for organizing patterns is presented. In this approach, the identification of relevant patterns is considered as the process of r…
Defining Complexity Factors for Architecture Evaluation Framework
The design and implementation of telecommunication systems is an incremental and iterative process, and system architectures may need to be revised and refined several times during their lifetime. Formal evaluation facilitates the identification of the weak points, where improvements are due in these architectures. In the domain of telecommunications, such evaluation can be based on the Architecture Evaluation Framework (AEF). During the evaluation, a deep understanding of the processes within a system is needed. Meanwhile, the systems being designed are usually complex systems encompassing a large number of components with an intricate pattern of interaction between them. As a result, it i…
Developing MLS Location-Based Service Pilot System
Development of mobile networks and terminals provides basis for advanced mobile services and applications. One of the new features is support for locating the mobile user by her/his terminal. The Location-Based Services (LBS), utilising this feature, are expected to form an important class of the new services. At the Information Technology Research Institute, University of Jyvaskyla, LBSs have been studied in MultiMeetMobile research project. The project developed an LBS pilot system, called MLS. This paper presents the experiences collected during the development of the LBS pilot and describes the MLS system.
Utilizing online serious games to facilitate distributed requirements elicitation
Online serious games are used to facilitate distributed requirements elicitation.Interactive games enhance collaboration and communication between project members.Serious games raise individuals' confidence to engage in requirements elicitation.Using serious games can improve both quality and quantity of software requirements.Serious games specially enhance the performance of less-experienced stakeholders. Requirements elicitation is one of the most important and challenging activities in software development projects. A variety of challenges related to requirements elicitation are reported in the literature, of which the lack of proper communication and knowledge transfer between software …
Efficient Utilization of Patterns in Mobile Application Development
Conceptual Differences Among Functional Size Measurement Methods
The paper focuses on measuring and assessing the relation of adaptive maintenance process and quality of open source software (OSS). A framework for assessing adaptive maintenance process is proposed and applied. The framework consists of six sub- processes. Five OSSs with considerable number of releases have been studied empirically. Their main evolutionary and quality characteristics have been measured. The main results of the study are the following:. 1) Software maintainability is affected mostly by the activities of the 'analysis' maintenance sub-process. 2) Software testability is affected by the activities of all maintenance sub-processes. 3) Software reliability is affected mostly b…
Assessing maintainability change over multiple software releases
The focus of the paper is to reveal the relationships between software maintainability and other internal software quality attributes. The source code characteristics of five Java-based open-source software products are analyzed using the software measurement tool SoftCalc. The relationships between maintainability and internal quality attributes are identified based on the Pearson product moment correlation analysis. Our results show negative correlations between maintainability and some well-known internal software quality attributes, as well as the ones between maintainability and complexity metrics. Particularly, according to our results, the Number of Data Variables Declared and the De…
Success and Failure Factors for Software Architecture
First published in the Proceedings of the 6th IBIMA Conference on Managing Information in the Digital Economy, June 19-21, 2006, Bonn, Germany This paper provides a view of the software architecture development and management process. It reviews the literature and practitioners’ experiences relating to the factors that cause success and failure for software architecture and classifies these factors into subgroups. This study demonstrates that the success of software architecture depends on multiple factors. Project management, organisational culture and communication, the skills of architects and architectural know-how, architecture methods and practices, the quality of system requirements …