Change search
Refine search result
1234567 51 - 100 of 542
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Rows per page
  • 5
  • 10
  • 20
  • 50
  • 100
  • 250
Sort
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
Select
The maximal number of hits you can export is 250. When you want to export more records please use the Create feeds function.
  • 51.
    bin Ali, Nauman
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Petersen, Kai
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Wohlin, Claes
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    A systematic literature review on the industrial use of software process simulation2014In: Journal of Systems and Software, ISSN 0164-1212, Vol. 97Article in journal (Refereed)
    Abstract [en]

    Context Software process simulation modelling (SPSM) captures the dynamic behaviour and uncertainty in the software process. Existing literature has conflicting claims about its practical usefulness: SPSM is useful and has an industrial impact; SPSM is useful and has no industrial impact yet; SPSM is not useful and has little potential for industry. Objective To assess the conflicting standpoints on the usefulness of SPSM. Method A systematic literature review was performed to identify, assess and aggregate empirical evidence on the usefulness of SPSM. Results In the primary studies, to date, the persistent trend is that of proof-of-concept applications of software process simulation for various purposes (e.g. estimation, training, process improvement, etc.). They score poorly on the stated quality criteria. Also only a few studies report some initial evaluation of the simulation models for the intended purposes. Conclusion There is a lack of conclusive evidence to substantiate the claimed usefulness of SPSM for any of the intended purposes. A few studies that report the cost of applying simulation do not support the claim that it is an inexpensive method. Furthermore, there is a paramount need for improvement in conducting and reporting simulation studies with an emphasis on evaluation against the intended purpose.

  • 52.
    bin Ali, Nauman
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Unterkalmsteiner, Michael
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Use and evaluation of simulation for software process education: a case study2014Conference paper (Refereed)
    Abstract [en]

    Software Engineering is an applied discipline and concepts are difficult to grasp only at a theoretical level alone. In the context of a project management course, we introduced and evaluated the use of software process simulation (SPS) based games for improving students’ understanding of software development processes. The effects of the intervention were measured by evaluating the students’ arguments for choosing a particular development process. The arguments were assessed with the Evidence-Based Reasoning framework, which was extended to assess the strength of an argument. The results indicate that students generally have difficulty providing strong arguments for their choice of process models. Nevertheless, the assessment indicates that the intervention of the SPS game had a positive impact on the students’ arguments. Even though the illustrated argument assessment approach can be used to provide formative feedback to students, its use is rather costly and cannot be considered a replacement for traditional assessments.

  • 53.
    Bjarnason, Elizabeth
    et al.
    Lund Univ, SWE.
    Morandini, Mirko
    Fdn Bruno Kessler, ITA.
    Borg, Markus
    Lund Univ, SWE.
    Unterkalmsteiner, Michael
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Felderer, Michael
    Univ Innsbruck, AUT.
    Staats, Matthew
    Google Inc, CHE.
    2nd International Workshop on Requirements Engineering and Testing (RET 2015)2015In: 2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 2, IEEE , 2015, p. 997-998Conference paper (Refereed)
    Abstract [en]

    The RET (Requirements Engineering and Testing) workshop provides a meeting point for researchers and practitioners from the two separate fields of Requirements Engineering (RE) and Testing. The goal is to improve the connection and alignment of these two areas through an exchange of ideas, challenges, practices, experiences and results. The long term aim is to build a community and a body of knowledge within the intersection of RE and Testing. One of the main outputs of the 1st workshop was a collaboratively constructed map of the area of RET showing the topics relevant to RET for these. The 2nd workshop will continue in the same interactive vein and include a keynote, paper presentations with ample time for discussions, and a group exercise. For true impact and relevance this cross-cutting area requires contribution from both RE and Testing, and from both researchers and practitioners. For that reason we welcome a range of paper contributions from short experience papers to full research papers that both clearly cover connections between the two fields.

  • 54. Bjarnason, Elizabeth
    et al.
    Unterkalmsteiner, Michael
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Borg, Markus
    Engström, Emelie
    A Multi-Case Study of Agile Requirements Engineering and the Use of Test Cases as Requirements2016In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 77, p. 61-79Article in journal (Refereed)
    Abstract [en]

    [Context] It is an enigma that agile projects can succeed ‘without requirements’ when weak requirementsengineering is a known cause for project failures. While agile development projects often manage well withoutextensive requirements test cases are commonly viewed as requirements and detailed requirements are documented astest cases.[Objective] We have investigated this agile practice of using test cases as requirements to understand how test casescan support the main requirements activities, and how this practice varies.[Method] We performed an iterative case study at three companies and collected data through 14 interviews and 2focus groups.[Results] The use of test cases as requirements poses both benefits and challenges when eliciting, validating,verifying, and managing requirements, and when used as a documented agreement. We have identified five variants ofthe test-cases-as-requirements practice, namely de facto, behaviour-driven, story-test driven, stand-alone strict andstand-alone manual for which the application of the practice varies concerning the time frame of requirementsdocumentation, the requirements format, the extent to which the test cases are a machine executable specification andthe use of tools which provide specific support for the practice of using test cases as requirements.[Conclusions] The findings provide empirical insight into how agile development projects manage andcommunicate requirements. The identified variants of the practice of using test cases as requirements can be used toperform in-depth investigations into agile requirements engineering. Practitioners can use the providedrecommendations as a guide in designing and improving their agile requirements practices based on projectcharacteristics such as number of stakeholders and rate of change.

  • 55.
    Bjarnason, Elizabeth
    et al.
    Lund University.
    Unterkalmsteiner, Michael
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Engström, Emelie
    Lund University.
    Borg, Markus
    Lund University.
    An Industrial Case Study on the Use of Test Cases as Requirements2015In: Lecture Notes in Business Information, Springer, 2015, p. 27-39Conference paper (Refereed)
    Abstract [en]

    It is a conundrum that agile projects can succeed 'without requirements' when weak requirements engineering is a known cause for project failures. While Agile development projects often manage well without extensive requirements documentation, test cases are commonly used as requirements. We have investigated this agile practice at three companies in order to understandhow test cases can fill the role of requirements. We performed a case study based on twelve interviews performed in a previous study.The findings include a range of benefits and challenges in using test cases for eliciting, validating, verifying, tracing and managing requirements. In addition, we identified three scenarios for applying the practice, namely as a mature practice, as a de facto practice and as part of an agile transition. The findings provide insights into how the role of requirements may be met in agile development including challenges to consider.

  • 56.
    Bjäreholt, Johan
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    RISC-V Compiler Performance:A Comparison between GCC and LLVM/clang2017Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    RISC-V is a new open-source instruction set architecture (ISA) that in De-cember 2016 manufactured its rst mass-produced processors. It focuses onboth eciency and performance and diers from other open-source architec-tures by not having a copyleft license permitting vendors to freely design,manufacture and sell RISC-V chips without any fees nor having to sharetheir modications on the reference implementations of the architecture.The goal of this thesis is to evaluate the performance of the GCC andLLVM/clang compilers support for the RISC-V target and their ability tooptimize for the architecture. The performance will be evaluated from ex-ecuting the CoreMark and Dhrystone benchmarks are both popular indus-try standard programs for evaluating performance on embedded processors.They will be run on both the GCC and LLVM/clang compilers on dierentoptimization levels and compared in performance per clock to the ARM archi-tecture which is mature yet rather similar to RISC-V. The compiler supportfor the RISC-V target is still in development and the focus of this thesis willbe the current performance dierences between the GCC and LLVM com-pilers on this architecture. The platform we will execute the benchmarks onwil be the Freedom E310 processor on the SiFive HiFive1 board for RISC-Vand a ARM Cortex-M4 processor by Freescale on the Teensy 3.6 board. TheFreedom E310 is almost identical to the reference Berkeley Rocket RISC-Vdesign and the ARM Coretex-M4 processor has a similar clock speed and isaimed at a similar target audience.The results presented that the -O2 and -O3 optimization levels on GCCfor RISC-V performed very well in comparison to our ARM reference. Onthe lower -O1 optimization level and -O0 which is no optimizations and -Oswhich is -O0 with optimizations for generating a smaller executable code sizeGCC performs much worse than ARM at 46% of the performance at -O1,8.2% at -Os and 9.3% at -O0 on the CoreMark benchmark with similar resultsin Dhrystone except on -O1 where it performed as well as ARM. When turn-ing o optimizations (-O0) GCC for RISC-V was 9.2% of the performanceon ARM in CoreMark and 11% in Dhrystone which was unexpected andneeds further investigation. LLVM/clang on the other hand crashed whentrying to compile our CoreMark benchmark and on Dhrystone the optimiza-tion options made a very minor impact on performance making it 6.0% theperformance of GCC on -O3 and 5.6% of the performance of ARM on -O3, soeven with optimizations it was still slower than GCC without optimizations.In conclusion the performance of RISC-V with the GCC compiler onthe higher optimization levels performs very well considering how young theRISC-V architecture is. It does seems like there could be room for improvement on the lower optimization levels however which in turn could also pos-sibly increase the performance of the higher optimization levels. With theLLVM/clang compiler on the other hand a lot of work needs to be done tomake it competetive in both performance and stability with the GCC com-piler and other architectures. Why the -O0 optimization is so considerablyslower on RISC-V than on ARM was also very unexpected and needs furtherinvestigation.

  • 57.
    Björneskog, Amanda
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Goniband Shoshtari, Nima
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Comparison of Security and Risk awareness between different age groups2017Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    The Internet have become a 'necessity' in the everyday life of just below 50\% of the world population. With the growth of the Internet and it creating a great platform to help people and making life easier, it has also brought a lot of malicious situations. Now a days people hack or uses social engineering on other people for a living, scamming and fraud is part of their daily life. Therefore security awareness is truly important and sometimes vital.We wanted to look at the difference in security awareness depending on which year you were born, in relation to the IT-boom and growth of the Internet. Does it matter if you lived through the earlier stages of the Internet or not? We found that the security awareness did increase with age, but if it was due to the candidates growing up before or after the IT-boom or due to the fact that younger people tend to be more inattentive is hard to tell. Our result is that the age group, 16-19, were more prone to security risks, due to an indifferent mindset regarding their data and information.

  • 58.
    Blal, Redouane
    et al.
    Universite du Quebec a Montreal, CAN.
    Leshob, Abderrahmane
    Universite du Quebec a Montreal, CAN.
    Gonzalez-Huerta, Javier
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Mili, Hafedh
    Universite du Quebec a Montreal, CAN.
    Boubaker, Anis
    Universite du Quebec a Montreal, CAN.
    From inter-organizational business process models to service-oriented architecture models2018In: Service Oriented Computing and Applications, ISSN 1863-2386, E-ISSN 1863-2394, Vol. 12, no 3-4, p. 227-245Article in journal (Refereed)
    Abstract [en]

    Today’s business processes become increasingly complex and often cross the boundaries of the organizations. On the one hand, to support their business processes, modern organizations use enterprise information systems that need to be aware of the organizations’ processes and contexts. Such systems are called Process-Aware Information System (PAIS). On the other hand, the service-oriented architecture (SOA) is a fast emerging architectural style that has been widely adopted by modern organizations to design and implement PAIS that support their business processes. This paper aims to bridge the gap between inter-organizational business processes and SOA-based PAISs that support them. It proposes a novel model-driven design method that generates SOA models expressed in SoaML taking the specification of collaborative business processes expressed in BPMN as input. We present the principles underlying the approach, the state of an ongoing implementation, and the results of two studies conducted to empirically validate the method in the context of ERP key processes. © 2018, Springer-Verlag London Ltd., part of Springer Nature.

  • 59.
    Bodicherla, Saikumar
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Pamulapati, Divyani
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Knowledge Management Maturity Model for Agile Software Development2019Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Context: Knowledge is the major aspect of an organization which enables the enterprise to be more productive and to deliver the high complexity services. Knowledge management plays a key role in agile software development because it supports cultural infrastructure esteems like collaboration, communication, and knowledge transfer. This research aims to explore how organizations that adopts Agile Software Development (ASD) implement knowledge management utilizing practices that supports the key process areas. Several knowledge management maturity models have been proposed over a decade ago but not all of the models that is specially stated knowledge Management Maturity Model (KMMM) for Agile software development. To fulfil this research gap, we introduce the maturity model which emphasize knowledge management in ASD among the practitioners. This maturity model helps to assess their knowledge management in organization and provides a road map to the organizations for any further improvement required in their processes. 

    Objectives: In this thesis, we investigate the key process areas of knowledge management maturity models that could support agile software development. Through investigation about the key process areas, we found that the organizations should emphasis on key process areas and its practices in order to improve the software process. The objectives of this research include:

    • Explore the key process areas and practices of knowledge management in the knowledge management maturity models. 
    • Identify the views of practitioners on knowledge management practices and key process areas for Agile software development.
    • To propose the maturity model for Knowledge management in Agile software development among the practitioner’s opinions. 

    Methods: In this research, we conducted two methods: Systematic mapping and Survey to fulfil our aim and objectives. We conducted Systematic mapping study through the snowballing process to investigate empirical literature about Knowledge management maturity models. To triangulate the systematic mapping results, we conducted a survey. From the survey results, we obtained the responses and were analyzed statistically using descriptive statistics.

    Results: From Systematic mapping, we identified 18 articles and analyzed 24 practices of Knowledge management maturity models. These practices are indicated in key process areas such as process, people, technology. Through the systematic mapping results, 9 KM practices that were found from KMMM literature were listed in the survey questionnaire and answered by software engineering practitioners. Moreover, 5 other new practices for agile have suggested in the survey that was not found in KMMM literature. To address the systematic mapping and survey results, we propose the maturity model which emphasize knowledge management practices in ASD among the practitioners.

    Conclusions: This thesis lists the main elements of practices that are utilized by the organization and also show the usage of maturity levels at each practice in detail. Furthermore, this thesis helps the organization's to assess the current levels of maturity that exist to each practice in a real process. Hence, the researchers can utilize the model from this thesis and further they can improve their Km in organizations.

  • 60.
    Bodireddigari, Sai Srinivas
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    A Framework To Measure the Trustworthiness of the User Feedback in Mobile Application Stores2016Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Context: Mobile application stores like Google Play, Apple store, Windows store have over 3 million apps. Users download the applications from their respective stores and they generally prefer the apps with the highest ratings. In response to the present situation, application stores provided the categories like editor’s choice or top charts, providing better visibility for the applications. Customer reviews play such critical role in the development of the application and the organization, in such case there might be flawed reviews or biased opinions about the application due to many factors. The biased opinions and flawed reviews are likely to cause user review untrustworthiness. The reviews or ratings in the mobile application stores are used by the organizations to make the applications more efficient and more adaptable to the user. The context leads to importance of the user’s review trustworthiness and managing the trustworthiness in the user feedback by knowing the causes of mistrust. Hence, there is a need for a framework to understand the trustworthiness in the user given feedback.

    Objectives: In the following study the author aims for the accomplishment of the following objectives, firstly, exploring the causes of untrustworthiness in user feedback for an application in the mobile application stores such as google play store. Secondly, Exploring the effects of trustworthiness on the users and developers. Finally, the aim is to propose a framework for managing the trustworthiness in the feedback.

    Methods: To accomplish the objectives, author used qualitative research method. The data collection method is an interview-based survey that was conducted with 13 participants, to find out the causes of untrustworthiness in the user feedback from user’s perspective and developer’s perspective. Author follows thematic coding for qualitative data analysis.

    Results:Author identifies 11 codes from the description of the transcripts and explores the relationship among the trustworthiness with the causes. 11 codes were put into 4 themes, and a thematic network is created between the themes. The relations were then analyzed with cost-effect analysis.

    Conclusions: We conclude that 11 causes effect the trustworthiness according to user’s perspective and 9 causes effect the trustworthiness according to the developer’s perspective, from the analysis. Segregating the trustworthy feedback from the untrustworthy feedback is important for the developers, as the next releases should be planned based on that. Finally, an inclusion and exclusion criteria to help developers manage trustworthy user feedback is defined. 

  • 61.
    Borg, Markus
    et al.
    RISE SICS AB, SWE.
    Alegroth, Emil
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Runeson, Per
    Lunds Universitet, SWE.
    Software Engineers' Information Seeking Behavior in Change Impact Analysis: An Interview Study2017In: IEEE International Conference on Program Comprehension, IEEE Computer Society , 2017, p. 12-22Conference paper (Refereed)
    Abstract [en]

    Software engineers working in large projects must navigate complex information landscapes. Change Impact Analysis (CIA) is a task that relies on engineers' successful information seeking in databases storing, e.g., source code, requirements, design descriptions, and test case specifications. Several previous approaches to support information seeking are task-specific, thus understanding engineers' seeking behavior in specific tasks is fundamental. We present an industrial case study on how engineers seek information in CIA, with a particular focus on traceability and development artifacts that are not source code. We show that engineers have different information seeking behavior, and that some do not consider traceability particularly useful when conducting CIA. Furthermore, we observe a tendency for engineers to prefer less rigid types of support rather than formal approaches, i.e., engineers value support that allows flexibility in how to practically conduct CIA. Finally, due to diverse information seeking behavior, we argue that future CIA support should embrace individual preferences to identify change impact by empowering several seeking alternatives, including searching, browsing, and tracing. © 2017 IEEE.

  • 62.
    Borg, Markus
    et al.
    SICS Swedish ICT AB, SWE.
    Luis de la Vara, Jose
    Univ Carlos III Madrid, ESP.
    Wnuk, Krzysztof
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Practitioners' Perspectives on Change Impact Analysis for Safety-Critical Software: A Preliminary Analysis2016In: COMPUTER SAFETY, RELIABILITY, AND SECURITY, SAFECOMP 2016, 2016, p. 346-358Conference paper (Refereed)
    Abstract [en]

    Safety standards prescribe change impact analysis (CIA) during evolution of safety-critical software systems. Although CIA is a fundamental activity, there is a lack of empirical studies about how it is performed in practice. We present a case study on CIA in the context of an evolving automation system, based on 14 interviews in Sweden and India. Our analysis suggests that engineers on average spend 50-100 h on CIA per year, but the effort varies considerably with the phases of projects. Also, the respondents presented different connotations to CIA and perceived the importance of CIA differently. We report the most pressing CIA challenges, and several ideas on how to support future CIA. However, we show that measuring the effect of such improvement solutions is non-trivial, as CIA is intertwined with other development activities. While this paper only reports preliminary results, our work contributes empirical insights into practical CIA.

  • 63.
    Borg, Markus
    et al.
    SICS Swedish ICT AB, SWE.
    Wnuk, Krzysztof
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Regnell, Björn
    Lund University, SWE.
    Runeson, Per
    Lund University, SWE.
    Supporting Change Impact Analysis Using a Recommendation System: An Industrial Case Study in a Safety-Critical Context2017In: IEEE Transactions on Software Engineering, ISSN 0098-5589, E-ISSN 1939-3520, Vol. 43, no 7, p. 675-700Article in journal (Refereed)
    Abstract [en]

    Abstract—Change Impact Analysis (CIA) during software evolution of safety-critical systems is a labor-intensive task. Severalauthors have proposed tool support for CIA, but very few tools were evaluated in industry. We present a case study on ImpRec, arecommendation System for Software Engineering (RSSE), tailored for CIA at a process automation company. ImpRec builds onassisted tracing, using information retrieval solutions and mining software repositories to recommend development artifacts, potentiallyimpacted when resolving incoming issue reports. In contrast to the majority of tools for automated CIA, ImpRec explicitly targetsdevelopment artifacts that are not source code. We evaluate ImpRec in a two-phase study. First, we measure the correctness ofImpRec’s recommendations by a simulation based on 12 years’ worth of issue reports in the company. Second, we assess the utilityof working with ImpRec by deploying the RSSE in two development teams on different continents. The results suggest that ImpRecpresents about 40 percent of the true impact among the top-10 recommendations. Furthermore, user log analysis indicates thatImpRec can support CIA in industry, and developers acknowledge the value of ImpRec in interviews. In conclusion, our findings showthe potential of reusing traceability associated with developers’ past activities in an RSSE

  • 64.
    Bowin, Hampus
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Johansson, Daniel
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Scalability of the Bitcoin and Nano protocols: a comparative analysis2018Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
    Abstract [en]

    In the past year cryptocurrencies have gained a lot of attention because of the increase in price. This attention has increased the number of people trading and investing in different cryptocurrencies which has lead to an increased number of transactions flowing through the different networks. This has revealed scalability issues in some of them, especially in the most popular cryptocurrency, Bitcoin. Many people are working on solutions to this problem. One proposed solution replaces the blockchain with a DAG structure. In this report the scalability of Bitcoin’s protocol will be compared to the scalability of the protocol used in the newer cryptocurrency, Nano. The comparison is conducted in terms of throughput and latency. To perform this comparison, an experiment was conducted where tests were run with an increasing number of nodes and each test sent different number of transactions per second from every node. Our results show that Nano’s protocol scales better regarding both throughput and latency, and we argue that the reason for this is that the Bitcoin protocol uses a blockchain as a global data-structure unlike Nano that uses a block-lattice structure where each node has their own local blockchain.

  • 65.
    BRAMAH-LAWANI, ALEX
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    REQUIREMENTS ELICITATION AND SPECIFICATION FOR HAPTIC INTERFACES FOR VISUALLY IMPAIRED USERS2016Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
  • 66.
    Brisland, Karl
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Användarupplevelse på webben under skiftande tekniska förutsättningar: en fallstudie av ett implementationsprojekt2018Independent thesis Basic level (university diploma), 10 credits / 15 HE creditsStudent thesis
    Abstract [sv]

    Denna rapport dokumenterar utvecklingen av en interaktiv tidslinje i webbformat, med högt ställda krav på utseende, funktion, visuella effekter samt konsekvent användarupplevelse på olika plattformar. Implementationen utfördes utifrån teoretiska riktlinjer som erhållits genom litteraturstudier och därefter värderades utfallet dels genom att bedöma dess efterlevnad av dessa riktlinjer och dels genom en användarstudie med ett flertal olika enheter. Resultaten från användarstudien användes sedan för att värdera den praktiska relevansen hos den teoretiska grunden. Slutprodukten utgörs av en välfungerande webbapplikation som, med vissa eftergifter, beter sig konsekvent på alla testade enheter och väl uppfyller de teoretiska rekommendationerna ur främst design- och prestandaperspektiv. Användartesten visade på vissa svagheter som åtgärdades i möjligaste mån samt avslöjade en mycket stark vilja bland användarna att själva kontrollera navigering och informationsinhämtning. Testen visade även att de identifierade riktlinjerna varit såväl värdefulla som användbara, inklusive hur användarstudien i sig skulle utföras. Projektet ledde fram till en väl underbyggd bästa praxis samt värdefulla insikter ifråga om användarbeteende och i synnerhet användandet av uppmärksamhetsfångande element i designen, samt utgjorde en tydlig demonstration av vilket stort mervärde som användartest kan medföra. Slutligen noteras att det på grund av tekniska begränsningar inte alltid går att uppnå fullständig konsekvens ifråga om användarupplevelse under skiftande förutsättningar.

  • 67.
    Britto, Ricardo
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Knowledge Classification for Supporting Effort Estimation in Global Software Engineering Projects2015Licentiate thesis, comprehensive summary (Other academic)
    Abstract [en]

    Background: Global Software Engineering (GSE) has become a widely applied operational model for the development of software systems; it can increase profits and decrease time-to-market. However, there are many challenges associated with development of software in a globally distributed fashion. There is evidence that these challenges affect many process related to software development, such as effort estimation. To the best of our knowledge, there are no empirical studies to gather evidence on effort estimation in the GSE context. In addition, there is no common terminology for classifying GSE scenarios focusing on effort estimation.

    Objective: The main objective of this thesis is to support effort estimation in the GSE context by providing a taxonomy to classify the existing knowledge in this field.

    Method: Systematic literature review (to identify and analyze the state of the art), survey (to identify and analyze the state of the practice), systematic mapping (to identify practices to design software engineering taxonomies), and literature survey (to complement the states of the art and practice) were the methods employed in this thesis.

    Results: The results on the states of the art and practice show that the effort estimation techniques employed in the GSE context are the same techniques used in the collocated context. It was also identified that global aspects, e.g. time, geographical and social-cultural distances, are accounted for as cost drivers, although it is not clear how they are measured. As a result of the conducted mapping study, we reported a method that can be used to design new SE taxonomies. The aforementioned results were combined to extend and specialize an existing GSE taxonomy, for suitability for effort estimation. The usage of the specialized GSE effort estimation taxonomy was illustrated by classifying 8 finished GSE projects. The results show that the specialized taxonomy proposed in this thesis is comprehensive enough to classify GSE projects focusing on effort estimation.

    Conclusions: The taxonomy presented in this thesis will help researchers and practitioners to report new research on effort estimation in the GSE context; researchers and practitioners will be able to gather evidence, com- pare new studies and find new gaps in an easier way. The findings from this thesis show that more research must be conducted on effort estimation in the GSE context. For example, the way the cost drivers are measured should be further investigated. It is also necessary to conduct further research to clarify the role and impact of sourcing strategies on the effort estimates’ accuracies. Finally, we believe that it is possible to design an instrument based on the specialized GSE effort estimation taxonomy that helps practitioners to perform the effort estimation process in a way tailored for the specific needs of the GSE context.

  • 68.
    Britto, Ricardo
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Strategizing and Evaluating the Onboarding of Software Developers in Large-Scale Globally Distributed Legacy Projects2017Doctoral thesis, comprehensive summary (Other academic)
    Abstract [en]

    Background: Recruitment and onboarding of software developers are essential steps in software development undertakings. The need for adding new people is often associated with large-scale long-living projects and globally distributed projects. The formers are challenging because they may contain large amounts of legacy (and often complex) code (legacy projects). The latters are challenging, because the inability to find sufficient resources in-house may lead to onboarding people at a distance, and often in many distinct sites. While onboarding is of great importance for companies, there is little research about the challenges and implications associated with onboarding software developers and teams in large-scale globally distributed projects with large amounts of legacy code. Furthermore, no study has proposed any systematic approaches to support the design of onboarding strategies and evaluation of onboarding results in the aforementioned context.

    Objective: The aim of this thesis is two-fold: i) identify the challenges and implications associated with onboarding software developers and teams in large-scale globally distributed legacy projects; and ii) propose solutions to support the design of onboarding strategies and evaluation of onboarding results in large-scale globally distributed legacy projects.

    Method: In this thesis, we employed literature review, case study, and business process modeling. The main case investigated in this thesis is the development of a legacy telecommunication software product in Ericsson.

    Results: The results show that the performance (productivity, autonomy, and lead time) of new developers/teams onboarded in remote locations in large-scale distributed legacy projects is much lower than the performance of mature teams. This suggests that new teams have a considerable performance gap to overcome. Furthermore, we learned that onboarding problems can be amplified by the following challenges: the complexity of the product and technology stack, distance to the main source of product knowledge, lack of team stability, training expectation misalignment, and lack of formalism and control over onboarding strategies employed in different sites of globally distributed projects. To help companies addressing the challenges we identified in this thesis, we propose a process to support the design of onboarding strategies and the evaluation of onboarding results.

    Conclusions: The results show that scale, distribution and complex legacy code may make onboarding more difficult and demand longer periods of time for new developers and teams to achieve high performance. This means that onboarding in large-scale globally distributed legacy projects must be planned well ahead and companies must be prepared to provide extended periods of mentoring by expensive and scarce resources, such as software architects. Failure to foresee and plan such resources may result in effort estimates on one hand, and unavailability of mentors on another, if not planned in advance. The process put forward herein can help companies to deal with the aforementioned problems through more systematic, effective and repeatable onboarding strategies.

  • 69.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Cruzes, Daniella
    SINTEF Digital, NOR.
    Šmite, Darja
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Šāblis, Aivars
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Onboarding Software Developers and Teams in Three Globally Distributed Legacy Projects: A Multi-Case Study2018In: Journal of Software: Evolution and Process, ISSN 2047-7473, E-ISSN 2047-7481, Vol. 30, no 4, article id e1921Article in journal (Refereed)
    Abstract [en]

    Onboarding is the process of supporting new employees regarding their social and performance adjustment to their new job. Software companies have faced challenges with recruitment and onboarding of new team members and there is no study that investigates it in a holistic way. In this paper, we conducted a multi-case study to investigate the onboarding of software developers/teams, associated challenges, and areas for further improvement in three globally distributed legacy projects. We employed Bauer's model for onboarding to identify the current state of the onboarding strategies employed in each case. We learned that the employed strategies are semi-formalized. Besides, in projects with multiple sites, some functions are executed locally and the onboarding outcomes may be hard to control. We also learned that onboarding in legacy projects is especially challenging and that decisions to distribute such projects across multiple locations shall be approached carefully. In our cases, the challenges to learn legacy code were further amplified by the project scale and the distance to the original sources of knowledge. Finally, we identified practices that can be used by companies to increase the chances of being successful when onboarding software developers and teams in globally distributed legacy projects.

  • 70.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Freitas, Vitor
    Mendes, Emilia
    Blekinge Institute of Technology, Faculty of Computing, Department of Computer Science and Engineering.
    Usman, Muhammad
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Effort Estimation in Global Software Development: A systematic Literature Review2014In: Proceedings of the 2014 9th IEEE International Conference on Global Software Engineering, 2014, p. 135-144Conference paper (Refereed)
    Abstract [en]

    Nowadays, software systems are a key factor in the success of many organizations as in most cases they play a central role helping them attain a competitive advantage. However, despite their importance, software systems may be quite costly to develop, so substantially decreasing companies’ profits. In order to tackle this challenge, many organizations look for ways to decrease costs and increase profits by applying new software development approaches, like Global Software Development (GSD). Some aspects of the software project like communication, cooperation and coordination are more chal- lenging in globally distributed than in co-located projects, since language, cultural and time zone differences are factors which can increase the required effort to globally perform a software project. Communication, coordination and cooperation aspects affect directly the effort estimation of a project, which is one of the critical tasks related to the management of a software development project. There are many studies related to effort estimation methods/techniques for co-located projects. However, there are evidences that the co-located approaches do not fit to GSD. So, this paper presents the results of a systematic literature review of effort estimation in the context of GSD, which aimed at help both researchers and practitioners to have a holistic view about the current state of the art regarding effort estimation in the context of GSD. The results suggest that there is room to improve the current state of the art on effort estimation in GSD. 

  • 71.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Mendes, Emilia
    Blekinge Institute of Technology, Faculty of Computing, Department of Computer Science and Engineering.
    Börstler, Jürgen
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    An Empirical Investigation on Effort Estimation in Agile Global Software Development2015In: Proceedings of the 2015 IEEE 10th International Conference on Global Software Engineering, 2015, p. 38-45Conference paper (Refereed)
    Abstract [en]

    Effort estimation is a project management activity that is mandatory for the execution of softwareprojects. Despite its importance, there have been just a few studies published on such activities within the Agile Global Software Development (AGSD) context. Their aggregated results were recently published as part of a secondary study that reported the state of the art on effort estimationin AGSD. This study aims to complement the above-mentioned secondary study by means of anempirical investigation on the state of the practice on effort estimation in AGSD. To do so, a survey was carried out using as instrument an on-line questionnaire and a sample comprising softwarepractitioners experienced in effort estimation within the AGSD context. Results show that the effortestimation techniques used within the AGSD and collocated contexts remained unchanged, with planning poker being the one employed the most. Sourcing strategies were found to have no or a small influence upon the choice of estimation techniques. With regard to effort predictors, globalchallenges such as cultural and time zone differences were reported, in addition to factors that are commonly considered in the collocated context, such as team experience. Finally, many challenges that impact the accuracy of the effort estimates were reported by the respondents, such as problems with the software requirements and the fact that the communication effort between sites is not properly accounted.

  • 72.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Mendes, Emilia
    Blekinge Institute of Technology, Faculty of Computing, Department of Computer Science and Engineering.
    Wohlin, Claes
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    A Specialized Global Software Engineering Taxonomy for Effort Estimation2016In: International Conference on Global Software Engineering, IEEE Computer Society, 2016, p. 154-163Conference paper (Refereed)
    Abstract [en]

    To facilitate the sharing and combination of knowledge by Global Software Engineering (GSE) researchers and practitioners, the need for a common terminology and knowledge classification scheme has been identified, and as a consequence, a taxonomy and an extension were proposed. In addition, one systematic literature review and a survey on respectively the state of the art and practice of effort estimation in GSE were conducted, showing that despite its importance in practice, the GSE effort estimation literature is rare and reported in an ad-hoc way. Therefore, this paper proposes a specialized GSE taxonomy for effort estimation, which was built on the recently proposed general GSE taxonomy (including the extension) and was also based on the findings from two empirical studies and expert knowledge. The specialized taxonomy was validated using data from eight finished GSE projects. Our effort estimation taxonomy for GSE can help both researchers and practitioners by supporting the reporting of new GSE effort estimation studies, i.e. new studies are to be easier to identify, compare, aggregate and synthesize. Further, it can also help practitioners by providing them with an initial set of factors that can be considered when estimating effort for GSE projects.

  • 73.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Usman, Muhammad
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Bloom's taxonomy in software engineering education: A systematic mapping study2015In: Frontiers in Education Conference (FIE), 2015, IEEE Communications Society, 2015, p. 392-399Conference paper (Refereed)
    Abstract [en]

    Designing and assessing learning outcomes could be a challenging activity for any SoftwareEngineering (SE) educator. To support the process of designing and assessing SE courses, educators have been applied the cognitive domain of Bloom's taxonomy. However, to the best of our knowledge, the evidence on the usage of Bloom's taxonomy in SE higher education has not yet been systematically aggregated or reviewed. Therefore, in this paper we report the state of the art on the usage of Bloom's taxonomy in SE education, identified by conducted a systematic mapping study. As a result of the performed systematic mapping study, 26 studies were deemed as relevant. The main findings from these studies are: i) Bloom's taxonomy has mostly been applied at undergraduate level for both design and assessment of software engineering courses; ii) software construction is the leading SE subarea in which Bloom's taxonomy has been applied. The results clearly point out the usefulness of Bloom's taxonomy in the SE education context. We intend to use the results from this systematic mapping study to develop a set of guidelines to support the usage of Bloom's taxonomycognitive levels to design and assess SE courses.

  • 74.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Usman, Muhammad
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Mendes, Emilia
    Blekinge Institute of Technology, Faculty of Computing, Department of Computer Science and Engineering.
    A TAXONOMY OF WEB EFFORT PREDICTORS2017In: Journal of Web Engineering, ISSN 1540-9589, E-ISSN 1544-5976, Vol. 16, no 7-8, p. 541-570Article in journal (Refereed)
    Abstract [en]

    Web engineering as a field has emerged to address challenges associated with developing Web applications. It is known that the development of Web applications differs from the development of non-Web applications, especially regarding some aspects such as Web size metrics. The classification of existing Web engineering knowledge would be beneficial for both practitioners and researchers in many different ways, such as finding research gaps and supporting decision making. In the context of Web effort estimation, a taxonomy was proposed to classify the existing size metrics, and more recently a systematic literature review was conducted to identify aspects related to Web resource/effort estimation. However, there is no study that classifies Web predictors (both size metrics and cost drivers). The main objective of this study is to organize the body of knowledge on Web effort predictors by designing and using a taxonomy, aiming at supporting both research and practice in Web effort estimation. To design our taxonomy, we used a recently proposed taxonomy design method. As input, we used the results of a previously conducted systematic literature review (updated in this study), an existing taxonomy of Web size metrics and expert knowledge. We identified 165 unique Web effort predictors from a final set of 98 primary studies; they were used as one of the basis to design our hierarchical taxonomy. The taxonomy has three levels, organized into 13 categories. We demonstrated the utility of the taxonomy and body of knowledge by using examples. The proposed taxonomy can be beneficial in the following ways: i) It can help to identify research gaps and some literature of interest and ii) it can support the selection of predictors for Web effort estimation. We also intend to extend the taxonomy presented to also include effort estimation techniques and accuracy metrics.

  • 75.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Usman, Muhammad
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Mendes, Emilia
    Blekinge Institute of Technology, Faculty of Computing, Department of Computer Science and Engineering.
    Effort Estimation in Agile Global Software Development Context2014In: Agile Methods. Large-Scale Development, Refactoring, Testing, and Estimation: XP 2014 International Workshops, Rome, Italy, May 26-30, 2014, Revised Selected Papers, Springer, 2014, Vol. 199, p. 182-192Conference paper (Refereed)
    Abstract [en]

    Both Agile Software Development (ASD) and Global Software Development (GSD) are 21st century trends in the software industry. Many studies are reported in the literature wherein software companies have applied an agile method or practice GSD. Given that effort estimation plays a remarkable role in software project management, how do companies perform effort estimation when they use agile method in a GSD context? Based on two effort estimation Systematic Literature Reviews (SLR) - one in within the ASD context and the other in a GSD context, this paper reports a study in which we combined the results of these SLRs to report the state of the art of effort estimation in agile global software development (ASD) context.

  • 76.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Usman, Muhammad
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Minhas, Nasir Mehmood
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    A quasi-experiment to evaluate the impact of mental fatigue on study selection process2017In: ACM International Conference Proceeding Series, Association for Computing Machinery , 2017, p. 264-269Conference paper (Refereed)
    Abstract [en]

    Context: Existing empirical evidence indicates that loss of alertness associated with mental fatigue is highly correlated with fluctuations in the performance of people carrying out auditory tasks. In software engineering research, mental fatigue may affect the results of study selection (an auditory task) when conducting secondary studies such as systematic literature reviews or systematic mapping studies. However, to date there is no empirical study that reports an in-depth investigation about the relationship between mental fatigue and researchers' selection decisions during study selection process. Objective: The main objective of this paper is to report the design and preliminary results of an investigation about the impact of mental fatigue on the study selection process of secondary studies. Method: We designed and piloted a quasi-experiment. Results: The preliminary results do not indicate that mental fatigue negatively impacts the correctness of selection decision and confidence. However, it is important to note that the preliminary results are only based on six subjects. Conclusion: This paper brings awareness about the role of mental fatigue in the conduction of secondary studies. Although the preliminary results do not indicate any meaningful relationship, we believe that it is worthwhile to continue the research, by adding more subjects, and also revising the design of the reported quasi-experiment. © 2017 ACM.

  • 77.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Wohlin, Claes
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Mendes, Emilia
    Blekinge Institute of Technology, Faculty of Computing, Department of Computer Science and Engineering.
    An Extended Global Software Engineering Taxonomy2016In: Journal of Software Engineering Research and Development, ISSN 2195-1721, Vol. 4, no 3Article in journal (Refereed)
    Abstract [en]

    In Global Software Engineering (GSE), the need for a common terminology and knowledge classification has been identified to facilitate the sharing and combination of knowledge by GSE researchers and practitioners. A GSE taxonomy was recently proposed to address such a need, focusing on a core set of dimensions; however its dimensions do not represent an exhaustive list of relevant GSE factors. Therefore, this study extends the existing taxonomy, incorporating new GSE dimensions that were identified by means of two empirical studies conducted recently.

  • 78.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Šmite, Darja
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Damm, Lars-Ola
    Ericsson, SWE.
    Software Architects in Large-Scale Distributed Projects: An Ericsson Case Study2016In: IEEE Software, ISSN 0740-7459, E-ISSN 1937-4194, Vol. 33, no 6, p. 48-55, article id 7725230Article in journal (Refereed)
    Abstract [en]

    Software architects are key assets for successful development projects. However, not much research has investigated the challenges they face in large-scale distributed projects. So, researchers investigated how architects at Ericsson were organized, their roles and responsibilities, and the effort they spent guarding and governing a large-scale legacy product developed by teams at multiple locations. Despite recent trends such as microservices and agile development, Ericsson had to follow a more centralized approach to deal with the challenges of scale, distribution, and monolithic architecture of a legacy software product. So, the architectural decisions were centralized to a team of architects. The team extensively used code reviews to not only check the code's state but also reveal defects that could turn into maintainability problems. The study results also suggest that the effort architects spend designing architecture, guarding its integrity and evolvability, and mentoring development teams is directly related to team maturity. In addition, significant investment is needed whenever new teams and locations are onboarded.

  • 79.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering. Blekinge Institute of Technology.
    Šmite, Darja
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Lars-Ola, Damm
    Ericsson, SWE.
    Experiences from Measuring Learning and Performance in Large-Scale Distributed Software Development2016In: Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ACM Digital Library, 2016, article id 17Conference paper (Refereed)
    Abstract [en]

    Background: Developers and development teams in large-scale software development are often required to learn continuously. Organizations also face the need to train and support new developers and teams on-boarded in ongoing projects. Although learning is associated with performance improvements, experience shows that training and learning does not always result in a better performance or significant improvements might take too long.

    Aims: In this paper, we report our experiences from establishing an approach to measure learning results and associated performance impact for developers and teams in Ericsson.

    Method: Experiences reported herein are a part of an exploratory case study of an on-going large-scale distributed project in Ericsson. The data collected for our measurements included archival data and expert knowledge acquired through both unstructured and semi-structured interviews. While performing the measurements, we faced a number of challenges, documented in the form of lessons learned.

    Results: We aggregated our experience in eight lessons learned related to collection, preparation and analysis of data for further measurement of learning potential and performance in large-scale distributed software development.

    Conclusions: Measuring learning and performance is a challenging task. Major problems were related to data inconsistencies caused by, among other factors, distributed nature of the project. We believe that the documented experiences shared herein can help other researchers and practitioners to perform similar measurements and overcome the challenges of large-scale distributed software projects, as well as proactively address these challenges when establishing project measurement programs.

  • 80.
    Britto, Ricardo
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Šmite, Darja
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Lars-Ola, Damm
    Ericsson, SWE.
    Börstler, Jürgen
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Learning and Performance Evolution of Immature Remote Teams in Large-ScaleSoftware Projects: An Industrial Case StudyIn: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025Article in journal (Refereed)
    Abstract [en]

    Context: Large-scale distributed software projects with long life cycles often involve a considerable amount ofcomplex legacy code. The combination of scale and distribution challenges, and the diculty to acquire knowledgeabout large amounts of complex legacy code may make the onboarding of new developers/teams problematic. Thismay lead to extended periods of low performance.Objective: The main objective of this paper is to analyze the learning processes and performance evolutions (teamproductivity and team autonomy) of remote software development teams added late to a large-scale legacy softwareproduct development, and to propose recommendations to support the learning of remote teams.Method: We conducted a case study in Ericsson, collecting data through archival research, semi-structured interviews,and workshops. We analyzed the collected data using descriptive, inferential and graphical statistics and softqualitative analysis.Results: The results show that the productivity and autonomy of immature remote teams are on average 3.67 and2.27 times lower than the ones of mature teams, respectively. Furthermore, their performance had a steady increaseduring almost the entire first year and dropped (productivity) or got stagnated (autonomy) for a great part of the secondyear. In addition to these results, we also identified four challenges that aected the learning process and performanceevolution of immature remote teams: complexity of the product and technology stack, distance to the main source ofproduct knowledge, lack of team stability, and training expectation misalignment.Conclusion: The results indicate that scale, distribution and complex legacy code may make learning more dicultand demand a long period to achieve high performance. To support the learning of remote teams, we put forward fiverecommendations. We believe that our quantitative analysis, as well as the identified factors and recommendationscan help other companies to onboard new remote teams in large-scale legacy product development projects.

  • 81.
    Börstler, Jürgen
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Caspersen, Michael E.
    Nordström, Marie
    Beauty and the Beast: on the readability of object-oriented example programs2016In: Software quality journal, ISSN 0963-9314, E-ISSN 1573-1367, Vol. 24, no 2, p. 231-246Article in journal (Refereed)
    Abstract [en]

    Some solutions to a programming problem are more elegant or more simple than others and thus more understandable for students. We review desirable properties of example programs from a cognitive and a measurement point of view. Certain cognitive aspects of example programs are captured by common software measures, but they are not sufficient to capture a key aspect of understandability: readability. We propose and discuss a simple readability measure for software, SRES, and apply it to object-oriented textbook examples. Our results show that readability measures correlate well with human perceptions of quality. Compared with other readability measures, SRES is less sensitive to commenting and white-space. These results also have implications for software maintainability measures.

  • 82.
    Börstler, Jürgen
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Hilburn, Thomas B.
    Team Projects in Computing Education2015In: ACM Transactions on Computing Education, ISSN 1946-6226, E-ISSN 1946-6226, Vol. 15, no 4, p. 16:1-16:4, article id 16Article, review/survey (Refereed)
    Abstract [en]

    Team projects are a way to expose students to conflicting project objectives, and "[t]here should be a strong real-world element … to ensure that the experience is realistic" [ACM/IEEE-CS 2015b]. Team projects provide students an opportunity to put their education into practice and prepare them for their professional careers. The aim of this special issue is to collect and share evidence about the state-of-practice of team projects in computing education and to help educators in designing and running team projects. From a record number of 69 submitted abstracts, 19 were invited to submit a full paper. Finally, nine papers were accepted for publication in this and a subsequent issue. The articles presented in the present issue cover the following topics: real projects for real clients, open source projects, multidisciplinary team projects, student and team assessment, and cognitive and psychological aspects of team projects.

  • 83.
    Börstler, Jürgen
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Hilburn, Thomas B.
    Team Projects in Computing Education II2016In: ACM Transactions on Computing Education, ISSN 1946-6226, E-ISSN 1946-6226, Vol. 16, no 2, p. 4:1-4:4, article id 4Article, review/survey (Refereed)
    Abstract [en]

    Team projects are a way to expose students to conflicting project objectives, and "[t]here should be a strong real-world element … to ensure that the experience is realistic" [ACM/IEEE-CS 2015b]. Team projects provide students an opportunity to put their education into practice and prepare them for their professional careers. The aim of this special issue is to collect and share evidence about the state-of-practice of team projects in computing education and to help educators in designing and running team projects. From a record number of 69 submitted abstracts, 19 were invited to submit a full paper. Finally, nine papers were accepted for publication in this and a subsequent issue. The articles presented in the present issue cover the following topics: real projects for real clients, open source projects, multidisciplinary team projects, student and team assessment, and cognitive and psychological aspects of team projects.

  • 84.
    Börstler, Jürgen
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Paech, Barbara
    The Role of Method Chains and Comments in Software Readability and Comprehension – An Experiment2016In: IEEE Transactions on Software Engineering, ISSN 0098-5589, E-ISSN 1939-3520, Vol. 42, no 9, p. 886-898Article in journal (Refereed)
    Abstract [en]

    Software readability and comprehension are important factors in software maintenance. There is a large body of research on software measurement, but the actual factors that make software easier to read or easier to comprehend are not well understood. In the present study, we investigate the role of method chains and code comments in software readability and comprehension. Our analysis comprises data from 104 students with varying programming experience. Readability and comprehension were measured by perceived readability, reading time and performance on a simple cloze test. Regarding perceived readability, our results show statistically significant differences between comment variants, but not between method chain variants. Regarding comprehension, there are no significant differences between method chain or comment variants. Student groups with low and high experience, respectively, show significant differences in perceived readability and performance on the cloze tests. Our results do not show any significant relationships between perceived readability and the other measures taken in the present study. Perceived readability might therefore be insufficient as the sole measure of software readability or comprehension. We also did not find any statistically significant relationships between size and perceived readability, reading time and comprehension.

  • 85.
    Börstler, Jürgen
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Störrle, Harald
    QAware GmbH, DEU.
    Toll, Daniel
    Linné University, SWE.
    van Assema, Jelle
    University of Amsterdam, NLD.
    Duran, Rodrigo
    Aalto University, FIN.
    Hooshangi, Sara
    George Washington University, USA.
    Jeuring, Johan
    Utrecht University, NLD.
    Keuning, Hieke
    Windesheim University of Applied Sciences, NLD.
    Kleiner, Carsten
    University of Applied Sciences & Arts Hannover, DEU.
    MacKellar, Bonnie
    St John’s University, USA.
    “I know it when I see it”: Perceptions of Code Quality2018In: ITiCSE-WGR 2017 - Proceedings of the 2017 ITiCSE Conference on Working Group ReportsVolume 2018-January, 30 January 2018, ACM Digital Library, 2018, p. 70-85Conference paper (Refereed)
    Abstract [en]

    Context. Code quality is a key issue in software development. The ability to develop high quality software is therefore a key learning goal of computing programs. However, there are no universally accepted measures to assess the quality of code and current standards are considered weak. Furthermore, there are many facets to code quality. Defining and explaining the concept of code quality is therefore a challenge faced by many educators.

    Objectives. In this working group, we investigated code quality as perceived by students, educators, and professional developers, in particular, the differences in their views of code quality and which quality aspects they consider as more or less important. Furthermore, we investigated their sources for information about code quality and its assessment.

    Methods. We interviewed 34 students, educators and professional developers regarding their perceptions of code quality. For the interviews they brought along code from their own experience to discuss and exemplify code quality.

    Results. There was no common definition of code quality among or within these groups. Quality was mostly described in terms of indicators that could measure an aspect of code quality. Among these indicators, readability was named most frequently by all groups. The groups showed significant differences in the sources they use for learning about code quality with education ranked lowest in all groups.

    Conclusions. Code quality should be discussed more thoroughly in educational programs.

  • 86.
    Callele, David
    et al.
    Experience First Design Inc., CAN.
    Dueck, Philip
    Experience First Design Inc., CAN.
    Wnuk, Krzysztof
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Hynninen, Peitsa
    Aalto University Espoo, FIN.
    Experience requirements in video games definition and testability2015In: Requirements Engineering Conference (RE), 2015 IEEE 23rd International, IEEE, 2015Conference paper (Refereed)
    Abstract [en]

    A properly formed requirement is testable, a necessity for ensuring that design goals are met. While challenging in productivity applications, entertainment applications such as games compound the problem due to their subjective nature. We report here on our efforts to create testable experience requirements, the associated scope challenges and challenges with test design and result interpretation. We further report on issues experienced when performing focus group testing and provide practitioner guidance.

  • 87.
    Callele, David
    et al.
    University of Saskatchewan, CAN.
    Penzenstadler, Birgit
    California State University Long Beach, USA.
    Wnuk, Krzysztof
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Public policy challenges: An RE perspective2018In: CEUR Workshop Proceedings / [ed] Chitchyan R.,Venters C.C.,Penzenstadler B., CEUR-WS , 2018, p. 24-33Conference paper (Refereed)
    Abstract [en]

    In this perspective paper, we investigate the parallels between public policy and IT projects from the perspective of traditional RE practice. Using the mainstream media as an information source (as would an average citizen), over a period of approximately one year we captured documents that presented analyses of public policy issues. The documents were categorized into eight topic areas, then analyzed to identify patterns that RE practitioners would recognize. We found evidence of policy failures that parallel project failures traceable to requirements engineering problems. Our analysis revealed evidence of bias across all stakeholder groups, similar to the rise of the “beliefs over facts” phenomenon often associated with “fake news”. We also found substantial evidence of unintended consequences due to inadequate problem scoping, terminology definition, domain knowledge, and stakeholder identification and engagement. Further, ideological motivations were found to affect constraint definitions resulting in solution spaces that may approach locally optimal but may not be globally optimal. Public policy addresses societal issues; our analysis supports our conclusion that RE techniques could be utilized to support policy creation and implementation. © 2018 SPIE. All rights reserved.

  • 88.
    Callele, David
    et al.
    University of Saskatchewan, CAN.
    Wnuk, Krzysztof
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    A Process for Product and Service Definition2016In: 9th International Workshop on Software Product Management (IWSPM 2016), IEEE, 2016, p. 322-327Conference paper (Refereed)
    Abstract [en]

    This short paper presents an iterative and incrementalprocess to improve the probability that the product or service definition leading to requirements and implementation is both representative of the market needs and has a reasonable expecta-tion of a financially viable business model. Rather than a relative-ly linear process wherein marketing delivers a product definition to the development team, this process ensures that all assump-tions are validated during the definition stage and that all team members are engaged. The process balances the need to address current challenges against future opportunities, providing short-term customer satisfaction (and justification for purchasing or adoption) and a coherent vision for future development efforts (and maintaining and growing the customer base). The process is applied to a case in the agriculture commodities sector.

  • 89.
    Callele, David
    et al.
    University of Saskatchewan, CAN.
    Wnuk, Krzysztof
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Penzenstadler, Birgit
    California State University Long Beach, USA.
    New Frontiers for Requirements Engineering2017In: 2017 IEEE 25th International Requirements Engineering Conference, RE 2017, Institute of Electrical and Electronics Engineers Inc. , 2017, p. 184-193, article id 8048904Conference paper (Refereed)
    Abstract [en]

    Requirements Engineering (RE) has grown from its humble beginnings to embrace a wide variety of techniques, drawn from many disciplines, and the diversity of tasks currently performed under the label of RE has grown beyond that encom-passed by software development. We briefly review how RE has evolved and observe that RE is now a collection of best practices for pragmatic, outcome-focused critical thinking-A pplicable to any domain. We discuss an alternative perspective on, and de-scription of, the discipline of RE and advocate for the evolution of RE toward a discipline that supports the application of RE prac-tice to any domain. We call upon RE practitioners to proactively engage in alternative domains and call upon researchers that adopt practices from other domains to actively engage with their inspiring domains. For both, we ask that they report upon their experience so that we can continue to expand RE frontiers. © 2017 IEEE.

  • 90.
    Carlson, Jan
    et al.
    Malardalen Univ, Vasteras, Sweden..
    Papatheocharous, Efi
    Swedish Inst Comp Sci, Stockholm, Sweden..
    Petersen, Kai
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    A Context Model for Architectural Decision Support2016In: PROCEEDINGS 2016 1ST INTERNATIONAL WORKSHOP ON DECISION MAKING IN SOFTWARE ARCHITECTURE, IEEE Computer Society, 2016, p. 9-15Conference paper (Refereed)
    Abstract [en]

    Developing efficient and effective decision making support includes identifying means to reduce repeated manual work and providing possibilities to take advantage of the experience gained in previous decision situations. For this to be possible, there is a need to explicitly model the context of a decision case, for example to determine how much the evidence from one decision case can be trusted in another, similar context. In earlier work, context has been recognized as important when transferring and understanding outcomes between cases. The contribution of this paper is threefold. First, we describe different ways of utilizing context in an envisioned decision support system. Thereby, we distinguish between internal and external context usage, possibilities of context representation, and context inheritance. Second, we present a systematically developed context model comprised of five types of context information, namely organization, product, stakeholder, development method & technology, and market & business. Third, we exemplary illustrate the relation of the context information to architectural decision making using existing literature.

  • 91.
    Chamala, Navneet Reddy
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Reasons Governing the Adoption and Denial of TickITplus: A Survey2015Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Context. Software Process Improvement (SPI) initiatives like Capability Maturity Model (CMM), Capability Maturity Model Integration (CMMI), Bootstrap etc., have been developed on the primary agenda of continuous software process improvement. Similarly, about two decades ago, the United Kingdom Accreditation Services (UKAS) have laid down a set of guidelines based on the ISO quality standards for providing certification to organizations named TickIT. TickIT is now obsolete with its successor scheme TickITplus taking up its place with a lot of significant additions. All the companies which were certified based on TickIT guidelines (more than 1000 companies) were asked to move to TickITplus in order to keep their TickIT certification. However, until now it has been three years since the inception of TickITplus and only 70 companies have adopted TickITplus. This is way below relative to the number of TickIT certified organizations. The present thesis is done in order to find the factors why most of the companies have not adopted TickITplus and also why the 70 organizations have moved to TickITplus.  

    Objectives In this study, an attempt has been made to accomplish the following objectives: Identifying the changes that have been brought about in the new scheme. The factors that a software organization looks into while adopting or migrating to a new software quality certification scheme are identified. Validate these factors with the help of survey and interviews. Analyze the results of survey and interviews to provide the reasons why most of the organizations haven’t adopted TickITplus certification scheme.

    Methods. This research is done by using a mixed method approach by incorporating both quantitative and qualitative research methods. An online survey is conducted with the help of an online questionnaire as part of the quantitative leg. Two survey questionnaires have been framed to gather responses. With respect to the qualitative research method interviews are conducted to get a wider understanding about the factors that led an organization to migrate or not to migrate to TickITplus. The gathered data is analyzed using statistical methods like bivariate and univariate analysis for the quantitative method and thematic coding has been applied for the qualitative method. Triangulation method is used to validate the data obtained by correlating the results from the survey and interviews with those extracted from the literature review.

    Results. Results pertaining to the reasons why companies have moved to and also why other companies haven’t taken up TickITplus have been gathered from the survey and interviews. It was identified that high costs and low customer demand were the main reasons for the organizations not to choose TickITplus while among the organizations which have moved to TickITplus have also chosen the scheme based on customer requirement. However, few other reasons apart from these have also been identified which are presented in this document

    Conclusions. Conclusions have been drawn citing the importance of costs incurred for implementing TickITplus as a reason for not selecting TickITplus as it was considered very expensive. Among other reasons customer requirement was also low which was identified as a factor for the relatively low number of TickITplus certified organizations. On the other hand, among the TickITplus certified firms, customer demand forms the prominent reason for moving to TickITplus and lack of appropriate people to take up the work was considered as an important hindrance while implementing TickITplus. Several other reasons and challenges have also been identified which are clearly detailed in the document.

  • 92.
    Charla, Shiva Bhavani Reddy
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Examining Various Input Patterns Effecting Software  Application Performance: A Quasi-experiment on Performance Testing2016Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Nowadays, non-functional testing has a great impact on the real-time environment. Non-functional testing helps to analyze the performance of the application on both server and client. Load testing attempts to cause the system under test to respond incorrectly in a situation that differs from its normal operation, but rarely encountered in real world use. Examples include providing abnormal inputs to the software or placing real-time software under unexpectedly high loads. High loads are induced over the application to test the performance, but there is a possibility that particular pattern of the low load could also induce load on a real-time system. For example, repeatedly making a request to the system every 11 seconds might cause a fault if the system transitions to standby state after 10 seconds of inactivity. The primary aim of this study is to find out various low load input patterns affecting the software, rather than simply high load inputs. A quasi-experiment was chosen as a research method for this study. Performance testing was performed on the web application with the help of a tool called HP load runner. A comparison was made between low load and high load patterns to analyze the performance of the application and to identify bottlenecks under different load.

  • 93.
    Chatzipetrou, Panagiota
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Alégroth, Emil
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Papatheocharous, Efi
    RISE SICS AB, SWE.
    Borg, Markus
    RISE SICS AB, SWE.
    Gorschek, Tony
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Wnuk, Krzysztof
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Component selection in Software Engineering: Which attributes are the most important in the decision process?2018In: EUROMICRO Conference Proceedings, IEEE conference proceedings, 2018, p. 198-205Conference paper (Refereed)
    Abstract [en]

    Abstract— Component-based software engineering is a common approach to develop and evolve contemporary software systems where different component sourcing options are available: 1)Software developed internally (in-house), 2)Software developed outsourced, 3)Commercial of the shelf software, and 4) Open Source Software. However, there is little available research on what attributes of a component are the most important ones when selecting new components. The object of the present study is to investigate what matters the most to industry practitioners during component selection. We conducted a cross-domain anonymous survey with industry practitioners involved in component selection. First, the practitioners selected the most important attributes from a list. Next, they prioritized their selection using the Hundred-Dollar ($100) test. We analyzed the results using Compositional Data Analysis. The descriptive results showed that Cost was clearly considered the most important attribute during the component selection. Other important attributes for the practitioners were: Support of the component, Longevity prediction, and Level of off-the-shelf fit to product. Next an exploratory analysis was conducted based on the practitioners’ inherent characteristics. Nonparametric tests and biplots were used. It seems that smaller organizations and more immature products focus on different attributes than bigger organizations and mature products which focus more on Cost

  • 94.
    Chatzipetrou, Panagiota
    et al.
    Aristotle Univ Thessaloniki, Dept Informat, GR-54006 Thessaloniki, Greece..
    Angelis, Lefteris
    Aristotle Univ Thessaloniki, Dept Informat, GR-54006 Thessaloniki, Greece..
    Barney, Sebastian
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Wohlin, Claes
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    An experience-based framework for evaluating alignment of software quality goals2015In: Software quality journal, ISSN 0963-9314, E-ISSN 1573-1367, Vol. 23, no 4, p. 567-594Article in journal (Refereed)
    Abstract [en]

    Efficient quality management of software projects requires knowledge of how various groups of stakeholders involved in software development prioritize the product and project goals. Agreements or disagreements among members of a team may originate from inherent groupings, depending on various professional or other characteristics. These agreements are not easily detected by conventional practices (discussions, meetings, etc.) since the natural language expressions are often obscuring, subjective, and prone to misunderstandings. It is therefore essential to have objective tools that can measure the alignment among the members of a team; especially critical for the software development is the degree of alignment with respect to the prioritization goals of the software product. The paper proposes an experience-based framework of statistical and graphical techniques for the systematic study of prioritization alignment, such as hierarchical cluster analysis, analysis of cluster composition, correlation analysis, and closest agreement-directed graph. This framework can provide a thorough and global picture of a team's prioritization perspective and can potentially aid managerial decisions regarding team composition and leadership. The framework is applied and illustrated in a study related to global software development where 65 individuals in different roles, geographic locations and professional relationships with a company, prioritize 24 goals from individual perception of the actual situation and for an ideal situation.

  • 95.
    Chatzipetrou, Panagiota
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Ouriques, Raquel
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Gonzalez-Huerta, Javier
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Approaching the Relative Estimation Concept with Planning Poker2018In: ACM International Conference Proceeding Series, Association for Computing Machinery , 2018, p. 21-25Conference paper (Refereed)
    Abstract [en]

    Simulation is a powerful instrument in the education process that can help students experience a reality context and understand complex concepts required to accomplish practitioners' tasks. The present study aims to investigate the software engineering students' perception about the usefulness of the Planning Poker technique in relation to their understanding of the relative estimation concept. We conducted a simulation exercise where students first estimated tasks applying the concepts of relative estimation based on the concepts explained in the lecture, and then to estimate tasks applying the Agile Planning Poker technique. To investigate the students' perception, we used a survey at the end of each exercise. The preliminary results did not show statistical significance on the students' confidence to estimate relatively the user stories. However, from the students' comments and feedback, there are indications that students are more confident in using Agile Planning Poker when they are asked to estimate user stories. The study will be replicated in the near future to a different group of students with a different background, to have a better understanding and also identify possible flaws of the exercise. © 2018 Association for Computing Machinery.

  • 96.
    Chatzipetrou, Panagiota
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Šmite, Darja
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Van Solingen, Rini
    Delft University of Technology, NLD.
    When and who leaves matters: Emerging results from an empirical study of employee turnover2018In: International Symposium on Empirical Software Engineering and Measurement, IEEE Computer Society , 2018, article id a53Conference paper (Refereed)
    Abstract [en]

    Background: Employee turnover in GSD is an extremely important issue, especially in Western companies offshoring to emerging nations. Aims: In this case study we investigated an offshore vendor company and in particular whether the employees' retention is related with their experience. Moreover, we studied whether we can identify a threshold associated with the employees' tendency to leave the particular company. Method: We used a case study, applied and presented descriptive statistics, contingency tables, results from Chi-Square test of association and post hoc tests. Results: The emerging results showed that employee retention and company experience are associated. In particular, almost 90% of the employees are leaving the company within the first year, where the percentage within the second year is 50-50%. Thus, there is an indication that the 2 years' time is the retention threshold for the investigated offshore vendor company. Conclusions: The results are preliminary and lead us to the need for building a prediction model which should include more inherent characteristics of the projects to aid the companies avoiding massive turnover waves. © 2018 ACM.

  • 97.
    Chen, Hao
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Xu, Luyang
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Software Architecture and Framework for Programmable Automation Controller: A Systematic Literature Review and A Case Study2018Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Background. PAC controller is a strengthened version of PLC controller. Its function is very similar, but its essence and construction are different. PLC and PAC have many successful applications in the field of industrial automation control. There is a lot of literature about the software architecture of PLC control system. However, there is almost no relevant literature on software architecture based on PAC control system. A well-performing and stable automatic control system is indispensable to the design and development of suitable software architecture. The quality and pattern of software architecture can even affect the stability and efficiency of the control system.

    Objectives. Based on these problems, we defined two primary objectives. The first is to investigate the architecture of some existing large industrial control systems, to analyze and summarize the scenarios and advantages and disadvantages of these architectural patterns. The second, based on the results of effort for the first objective, we want to propose and design a set of automated control solution architecture model based on PAC control system, which is implemented and applied in a printing house. In the process, we sum up the challenges and obstacles encountered in implementing the solution and provide some guidance or reference for those involved in the field.

    Methods. For the first objective, we used a systematic literature review to collect data about existing ICS architecture. Concerning the second objective, a case study was conducted in a printing house in Karlskrona Sweden, in the study, we proposed a software architecture model suitable for PAC automation control system. Then, we developed and tested the automation control system and summarized some challenges and obstacles in the process of the implementation.

    Results. The existing ICS (Industrial Control System) architecture models and critical problems and challenges in the implementation of ICS are identified. From the existing literature, we have summarized five commonly used large industrial control system architecture models, which are mainly using composite structures, that is, a combination of multiple architecture patterns. Also, some critical problems in the industrial control system, such as information security, production reliability, etc. are also identified. In the case study, we put forward an automatic control solution for Printing House based on SLR results. We designed the hardware deployment architecture of the system and the software control architecture. Generally speaking, this architecture is based on C/S architecture. In the development of client, we adopt the popular MVC architecture mode. In the longitudinal view of the whole system, an extended hierarchical architecture model is adopted. In the core control system, we adopt the modular architecture design idea. The whole control system is composed of 6 parts, four subsystems of PAC terminal, one server-side program and one client program. After a long time, development and test, our system finally goes online for the production, and its production efficiency is improved compared with the old system. Its expansion functions, such as Production Report and Tag Print, are deeply satisfying for the customers.

    Conclusions. In this research, we summarize and compare the advantages and disadvantages of several commonly used industrial control systems. Besides, we proposed a software architecture model and developed an automation control system based on PAC. We fill the gap that there is a lack of studies about the software architecture about the implementation of the automation control system based on PAC. Our result can help software engineers and developers in ICS fields to develop their own PAC based automation control system.

  • 98.
    Chen, Mingda
    et al.
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    He, Yao
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Exploration on Automated Software Requirement Document Readability Approaches2017Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Context. The requirements analysis phase, as the very beginning of software development process, has been identified as a quite important phase in the software development lifecycle. Software Requirement Specification (SRS) is the output of requirements analysis phase, whose quality factors play an important role in the evaluation work. Readability is a quite important SRS quality factor, but there are few available automated approaches for readability measurement, because of the tight dependency on readers' perceptions. Low readability of SRS documents has a serious impact on the whole process of software development. Therefore, it's extremely urgent to propose effective automated approaches for SRS documents readability measurement. Using traditional readability indexes to analyze readability of SRS documents automatically is a potentially feasible approach. However, the effectiveness of this approach is not systematically evaluated before.

    Objectives. In this study, firstly, we aim to understand the readability of texts and investigate approaches to score texts readability manually. Then investigate existing automated readability approaches for texts with their working theories. Next, evaluate the effectiveness of measuring the readability of SRS documents by using these automated readability approaches. Finally, rank these automated approaches by their effectiveness.

    Methods. In order to find out the way how human score the readability of texts manually and investigate existing automated readability approaches for texts, systematic literature review is chosen as the research methodology. Experiment is chosen to explore the effectiveness of automated readability approaches.

    Results. We find 67 articles after performing systematic literature review. According to systematic literature review, human judging the readability of texts through reading is the most common way of scoring texts readability manually. Additionally, we find four available automated readability assessments tools and seven available automated readability assessments formulas. After executing the experiment, we find the actual value of effectiveness of all selected approaches are not high and Coh-Metrix presents the highest actual value of effectiveness of automated readability approach among the selected approaches.

    Conclusions. Coh-Metrix is the most effective automated readability approach, but the feasibility in directly applying Coh-Metrix in SRS documents readability assessments cannot be permitted. Since the actual value of evaluated effectiveness is not high enough. In addition, all selected approaches are based on metrics of readability measures, but no semantic factors are blended in readability assessments. Hence studying more on human perception quantifying and adding semantic analysis in SRS documents readability assessment could be two research directions in future.

  • 99.
    Chennamsetty, Harish
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    Experimentation in Global Software Engineering2015Independent thesis Advanced level (degree of Master (Two Years))Student thesis
    Abstract [en]

    Context: Software engineering researchers are guided by research principles to conduct any type of research. Though, there are many guidelines to detail how a particular research method can be applied, there is always a necessity to continue and to improve the existing empirical research strategies. The context of this thesis is to address guidelines for conducting controlled experiments in Global Software Engineering (GSE). With this thesis, the state-of-the-art of conducting experiments in GSE research has been explored. Objectives: The goal of this thesis is to analyze the existing experiments in GSE research. Research problems addressed with GSE experiments and the state-of-the-art of overall GSE experiment design need to be analyzed. Appropriate guidelines should be drawn in order to provide strategies to future GSE researchers in mitigating or solving GSE specific experimentation challenges. Methods: A systematic literature review (SLR) is conducted to review all the GSE experiments that are found in the literature. The search process was done on 6 databases. A specific search and quality assessment criterion is used to select these GSE experiments. Furthermore, scientific interviews are conducted with GSE research experts to evaluate a set of guidelines (thesis author’s recommendations) that address the challenges when conducting GSE experiments. Thematic analysis has been performed to analyze the evaluation results and to further improve or implement any suggestions given by the interviewees. Conclusions: The results obtained from the SLR have provided a chance to understand the state-of-the-art and to analyze the challenges or problems when conducting controlled experiments in GSE. The challenges that are identified in GSE controlled experiments are found to be with experiment study-setting, involving subjects and addressing GSE relevant threats to validity in a GSE experiments. 9 guidelines are framed, with each guideline addressing a specific challenge. The final guidelines (that resulted after interviews) provide effective recommendations to GSE researchers when conducting controlled experiments.

  • 100.
    chikkala, sai sandeep
    Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.
    EVALUATION CRITERIA FOR SELECTION OF API PRODUCTS: Practitioners' Perspective2017Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
    Abstract [en]

    Context. The approach of developing software systems with the use of third partycomponents i.e. COTS or OSS has increased globally. In this study API product refers toeither a software component or a software service or both packaged together, that can beaccessed through an API. Developers are faced with plethora of alternative choices to selectan API product. With this increase in components adoption, API product providers are facedwith challenge of designing their product to be more attractive than others. This needs theproviders to be educated about the developer behavior when they choose an API product.Understanding the selection practices of developers can help providers to improve thepackaging of API products, making them more suitable for selection.

    Objectives. The objectives of this study is to investigate the criteria that developers usewhen reasoning about acceptability of a software component.

    Methods. A background study is performed to identify the evaluation criteria proposed inthe literature. An empirical study using Qualitative content analysis is performed. In the study the 480 reviews of different API products are analyzed to understand the criteria frompractitioners’ perspective.

    Results. 9 relevant criteria that developer use to reason about accepting or rejecting an APIProduct are identified. 30 sub criteria related to the 9 criteria are described in the study.

    Conclusions. This study concludes that the identified 9 criteria play an important role indeveloper assessment of the API product. It is also found that the criteria have significantimpact on the ratings of API product. These criteria could guide API product providers tomake better choices when developing the product.

1234567 51 - 100 of 542
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf