Open Access. Powered by Scholars. Published by Universities.®

Software Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Discipline
Institution
Keyword
Publication Year
Publication
Publication Type
File Type

Articles 1 - 30 of 2377

Full-Text Articles in Software Engineering

Proactive Empirical Assessment Of New Language Feature Adoption Via Automated Refactoring: The Case Of Java 8 Default Methods, Raffi T. Khatchadourian, Hidehiko Masuhara Apr 2018

Proactive Empirical Assessment Of New Language Feature Adoption Via Automated Refactoring: The Case Of Java 8 Default Methods, Raffi T. Khatchadourian, Hidehiko Masuhara

Publications and Research

Programming languages and platforms improve over time, sometimes resulting in new language features that offer many benefits. However, despite these benefits, developers may not always be willing to adopt them in their projects for various reasons. In this paper, we describe an empirical study where we assess the adoption of a particular new language feature. Studying how developers use (or do not use) new language features is important in programming language research and engineering because it gives designers insight into the usability of the language to create meaning programs in that language. This knowledge, in turn, can drive future innovations ...


Software Engineering Lecture Notes (Student Version), Kyle Burke Jan 2018

Software Engineering Lecture Notes (Student Version), Kyle Burke

Open Educational Resources

Lecture notes for an upper-level undergraduate software engineering course, with a strong focus on software design. Students taking this course should have already completed a data structures course. These notes are designed to be used with Dale Skrien’s text Object Oriented Design using Java.


Universality Of Egoless Behavior Of Software Engineering Students, Pradeep Waychal, Luiz Fernando Capretz Jan 2018

Universality Of Egoless Behavior Of Software Engineering Students, Pradeep Waychal, Luiz Fernando Capretz

Electrical and Computer Engineering Publications

Software organizations have relied on process and technology initiatives to compete in a highly globalized world. Unfortunately, that has led to little or no success. We propose that the organizations start working on people initiatives, such as inspiring egoless behavior among software developers. This paper proposes a multi-stage approach to develop egoless behavior and discusses the universality of the egoless behavior by studying cohorts from three different countries, i.e., Japan, India, and Canada. The three stages in the approach are self-assessment, peer validation, and action plan development. The paper covers the first stage of self-assssment using an instrument based ...


Moving Toward The Automation Of The Systematic Review Process: A Summary Of Discussions At The Second Meeting Of International Collaboration For The Automation Of Systematic Reviews (Icasr), Annette M. O'Connor, Guy Tsafnat, Stephen B. Gilbert, Kristina A. Thayer, Mary S. Wolfe Jan 2018

Moving Toward The Automation Of The Systematic Review Process: A Summary Of Discussions At The Second Meeting Of International Collaboration For The Automation Of Systematic Reviews (Icasr), Annette M. O'Connor, Guy Tsafnat, Stephen B. Gilbert, Kristina A. Thayer, Mary S. Wolfe

Veterinary Diagnostic and Production Animal Medicine Conference Proceedings and Presentations

The second meeting of the International Collaboration for Automation of Systematic Reviews (ICASR) was held 3–4 October 2016 in Philadelphia, Pennsylvania, USA. ICASR is an interdisciplinary group whose aim is to maximize the use of technology for conducting rapid, accurate, and efficient systematic reviews of scientific evidence. Having automated tools for systematic review should enable more transparent and timely review, maximizing the potential for identifying and translating research findings to practical application. The meeting brought together multiple stakeholder groups including users of summarized research, methodologists who explore production processes and systematic review quality, and technologists such as software developers ...


Big Data And Parkinson’S Disease: Exploration, Analyses, And Data Challenges, Mahalakshmi Senthilarumugamveilukandammal, Sree Nilakanta, Baskar Ganapathysubramanian, Vellareddy Anantharam, Anumantha Kanthasamy, Auriel A. Willette Jan 2018

Big Data And Parkinson’S Disease: Exploration, Analyses, And Data Challenges, Mahalakshmi Senthilarumugamveilukandammal, Sree Nilakanta, Baskar Ganapathysubramanian, Vellareddy Anantharam, Anumantha Kanthasamy, Auriel A. Willette

Mechanical Engineering Conference Presentations, Papers, and Proceedings

In healthcare, a tremendous amount of clinical and laboratory tests, imaging, prescription and medication data are being collected. Big data analytics on these data aim at early detection of disease which will help in developing preventive measures and in improving patient care. Parkinson disease is the second-most common neurodegenerative disorder in the United States. To find a cure for Parkinson's disease biological, clinical and behavioral data of different cohorts are collected, managed and propagated through Parkinson’s Progression Markers Initiative (PPMI). Applying big data technology to this data will lead to the identification of the potential biomarkers of Parkinson ...


The Evolution Of Requirements Practices In Software Startups, Catarina Gralha, Daniela Damian, Anthony Wasserman, Miguel Goulão, João Araújo Dec 2017

The Evolution Of Requirements Practices In Software Startups, Catarina Gralha, Daniela Damian, Anthony Wasserman, Miguel Goulão, João Araújo

Tony Wasserman

We use Grounded Theory to study the evolution of requirements practices of 16 so ware startups as they grow and introduce new products and services. These startups operate in a dynamic environment, with significant time and market pressure, and rarely have time for systematic requirements analysis. Our theory describes the evolution of practice along six dimensions that emerged as relevant to their requirements activities: requirements artefacts, knowledge management, requirements-related roles, planning, technical debt and product quality. Beyond the relationships among the dimensions, our theory also explains the turning points that drove the evolution along these dimensions. These changes are reactive ...


Characterizing Data Dependence Constraints For Dynamic Reliability Using N-Queens Attack Domains, Eric W. D. Rozier, Kristin Yvonne Rozier, Ulya Bayram Dec 2017

Characterizing Data Dependence Constraints For Dynamic Reliability Using N-Queens Attack Domains, Eric W. D. Rozier, Kristin Yvonne Rozier, Ulya Bayram

Kristin Yvonne Rozier

As data centers attempt to cope with the exponential growth of data, new techniques for intelligent, software-defined data centers (SDDC) are being developed to confront the scale and pace of changing resources and requirements. For cost-constrained environments, like those increasingly present in scientific research labs, SDDCs also may provide better reliability and performability with no additional hardware through the use of dynamic syndrome allocation. To do so, the middleware layers of SDDCs must be able to calculate and account for complex dependence relationships to determine an optimal data layout. This challenge is exacerbated by the growth of constraints on the ...


Underwater Acoustic Signal Analysis Toolkit, Kirk Bienvenu Jr Dec 2017

Underwater Acoustic Signal Analysis Toolkit, Kirk Bienvenu Jr

University of New Orleans Theses and Dissertations

This project started early in the summer of 2016 when it became evident there was a need for an effective and efficient signal analysis toolkit for the Littoral Acoustic Demonstration Center Gulf Ecological Monitoring and Modeling (LADC-GEMM) Research Consortium. LADC-GEMM collected underwater acoustic data in the northern Gulf of Mexico during the summer of 2015 using Environmental Acoustic Recording Systems (EARS) buoys. Much of the visualization of data was handled through short scripts and executed through terminal commands, each time requiring the data to be loaded into memory and parameters to be fed through arguments. The vision was to develop ...


A Study Of Repetitiveness Of Code Changes In Software Evolution, Hoan Anh Nguyen, Anh Tuan Nguyen, Tung Thanh Nguyen, Tien N. Nguyen, Hridesh Rajan Dec 2017

A Study Of Repetitiveness Of Code Changes In Software Evolution, Hoan Anh Nguyen, Anh Tuan Nguyen, Tung Thanh Nguyen, Tien N. Nguyen, Hridesh Rajan

Hridesh Rajan

In this paper, we present a large-scale study of repetitiveness of code changes in software evolution. We collected a large data set of 2,841 Java projects, with 1.7 billion source lines of code (SLOC) at the latest revisions, 1.8 million code change revisions (0.4 million fixes), 6.2 million changed files, and 2.5 billion changed SLOCs. A change is considered repeated within or cross-project if it matches another change having occurred in the history of the project or another project, respectively. We report the following important findings. First, repetitiveness of changes could be as high ...


Rendering Real-Time Dashboards Using A Graphql-Based Ui Architecture, Naresh Eeda Dec 2017

Rendering Real-Time Dashboards Using A Graphql-Based Ui Architecture, Naresh Eeda

Electronic Thesis and Dissertation Repository

With the increase in the complexity of the systems being built and demand in the quality of service by the customers, developing and providing highly efficient real-time systems is one of the biggest challenges today for software enterprises. BluemixTM ─ IBM’s cloud offering implemented on Cloud Foundry, an open source “Platform as a Service” (PaaS), is an example of such a system. Currently, there are approx. 26 infrastructural services running in the background from where the data is fetched and is rendered on different dashboards of the system. However, the system suffers from performance issues.

This thesis explores the ...


Design And Implementation Of A Stand-Alone Tool For Metabolic Simulations, Milad Ghiasi Rad Dec 2017

Design And Implementation Of A Stand-Alone Tool For Metabolic Simulations, Milad Ghiasi Rad

Computer Science and Engineering: Theses, Dissertations, and Student Research

In this thesis, we present the design and implementation of a stand-alone tool for metabolic simulations. This system is able to integrate custom-built SBML models along with external user’s input information and produces the estimation of any reactants participating in the chain of the reactions in the provided model, e.g., ATP, Glucose, Insulin, for the given duration using numerical analysis and simulations. This tool offers the food intake arguments in the calculations to consider the personalized metabolic characteristics in the simulations. The tool has also been generalized to take into consideration of temporal genomic information and be flexible ...


Web Application For Graduate Course Recommendation System, Sayali Dhumal Dec 2017

Web Application For Graduate Course Recommendation System, Sayali Dhumal

Electronic Theses, Projects, and Dissertations

The main aim of the course advising system is to build a course recommendation path for students to help them plan courses to successfully graduate on time. The recommendation path displays the list of courses a student can take in each quarter from the first quarter after admission until the graduation quarter. The courses are filtered as per the student’s interest obtained from a questionnaire asked to the student.

The business logic involves building the recommendation algorithm. Also, the application is functionality-tested end-to-end by using nightwatch.js which is built on top of node.js. Test cases are written ...


Secure Server-Aided Top-K Monitoring, Yujue Wang, Hwee Hwa Pang, Yanjiang Yang, Xuhua Ding Dec 2017

Secure Server-Aided Top-K Monitoring, Yujue Wang, Hwee Hwa Pang, Yanjiang Yang, Xuhua Ding

Research Collection School Of Information Systems

In a data streaming model, a data owner releases records or documents to a set of users with matching interests, in such a way that the match in interest can be calculated from the correlation between each pair of document and user query. For scalability and availability reasons, this calculation is delegated to third-party servers, which gives rise to the need to protect the integrity and privacy of the documents and user queries. In this paper, we propose a server-aided data stream monitoring scheme (DSM) to address the aforementioned integrity and privacy challenges, so that the users are able to ...


Vkse-Mo: Verifiable Keyword Search Over Encrypted Data In Multi-Owner Settings, Yinbin Miao, Jianfeng Ma, Ximeng Liu, Junwei Zhang, Zhiquan Liu Dec 2017

Vkse-Mo: Verifiable Keyword Search Over Encrypted Data In Multi-Owner Settings, Yinbin Miao, Jianfeng Ma, Ximeng Liu, Junwei Zhang, Zhiquan Liu

Research Collection School Of Information Systems

Searchable encryption (SE) techniques allow cloud clients to easily store data and search encrypted data in a privacy-preserving manner, where most of SE schemes treat the cloud server as honest-but-curious. However, in practice, the cloud server is a semi-honest-but-curious third-party, which only executes a fraction of search operations and returns a fraction of false search results to save its computational and bandwidth resources. Thus, it is important to provide a results verification method to guarantee the correctness of the search results. Existing SE schemes allow multiple data owners to upload different records to the cloud server, but these schemes have ...


Web Application For Graduate Course Advising System, Sanjay Karrolla Dec 2017

Web Application For Graduate Course Advising System, Sanjay Karrolla

Electronic Theses, Projects, and Dissertations

The main aim of the course recommendation system is to build a course recommendation path for students to help them plan courses to successfully graduate on time. The Model-View-Controller (MVC) architecture is used to isolate the user interface (UI) design from the business logic. The front-end of the application develops the UI using AngularJS. The front-end design is done by gathering the functionality system requirements -- input controls, navigational components, informational components and containers and usability testing. The back-end of the application involves setting up the database and server-side routing. Server-side routing is done using Express JS.


Feasibility Of Using Virtual Reality In Requirements Elicitation Process, Aman Bhimani Nov 2017

Feasibility Of Using Virtual Reality In Requirements Elicitation Process, Aman Bhimani

Master of Science in Software Engineering Theses

Contemporary Virtual Reality (VR) technologies offer an increasing number of functionalities including head-mounted displays (HMD), haptic and sound feedback, as well as motion tracking. This gives us the opportunity to leverage the immersive power offered by these technologies in the context of requirements elicitation, especially to surface those requirements that cannot be expressed via traditional techniques such as interviews and focus groups. The goal of this thesis is to survey uses of VR in requirements engineering, and to describe a method of elicitation using VR as a tool.

To validate the methodology, a research plan is developed with a strong ...


Building The Ascend Siu Web Application, Lee Cooper, Cody Lingle, Ren Jing, Hallie Martin, Matt Gross, Nancy Martin Nov 2017

Building The Ascend Siu Web Application, Lee Cooper, Cody Lingle, Ren Jing, Hallie Martin, Matt Gross, Nancy Martin

ASA Multidisciplinary Research Symposium

This poster represents a year-long web application development project completed by undergraduate students in the Information Systems Technologies department at Southern Illinois University. The web application was developed for the Ascend registered student organization using Agile Scrum software engineering methods.


Reengineering A 2-Tier Database Application With Software Architecture, Hong G. Jung Nov 2017

Reengineering A 2-Tier Database Application With Software Architecture, Hong G. Jung

ASA Multidisciplinary Research Symposium

The purpose of this research is to demonstrate how to reengineer a legacy Database Application using to a target system with MVC and 3-layered architecture. A Coffee Inventory Management database application is used for legacy application. The benefits of the reengineering are discussed.


Software Reengineering: Reverse Engineering With Using 4+1 Architectural Views And Forward Engineering With Mvc Architecture, Shane Mueller Nov 2017

Software Reengineering: Reverse Engineering With Using 4+1 Architectural Views And Forward Engineering With Mvc Architecture, Shane Mueller

ASA Multidisciplinary Research Symposium

As software complexity is increasing exponentially in our modern era, software architecture becomes increasingly important. The separation of concerns through architecture allows each programmer the opportunity to limit their need of understanding to only the portion of code for which they are responsible for, thus saving large amounts of time.


Would You Like To Motivate Software Testers? Ask Them How, Ronnie Santos, Cleyton Magalhaes, Jorge Correia-Neto, Fabio Queda Silva, Luiz Fernando Capretz, Rodrigo Souza Nov 2017

Would You Like To Motivate Software Testers? Ask Them How, Ronnie Santos, Cleyton Magalhaes, Jorge Correia-Neto, Fabio Queda Silva, Luiz Fernando Capretz, Rodrigo Souza

Electrical and Computer Engineering Publications

Considering the importance of software testing to the development of high quality and reliable software systems, this paper aims to investigate how can work-related factors influence the motivation of software testers. Method. We applied a questionnaire that was developed using a previous theory of motivation and satisfaction of software engineers to conduct a survey-based study to explore and understand how professional software testers perceive and value work-related factors that could influence their motivation at work. Results. With a sample of 80 software testers we observed that software testers are strongly motivated by variety of work, creative tasks, recognition for their ...


Evidence-Based Devops For Continuous Collaboration, Process, And Delivery, Weon S. Chung Nov 2017

Evidence-Based Devops For Continuous Collaboration, Process, And Delivery, Weon S. Chung

ASA Multidisciplinary Research Symposium

The purpose of this research is to propose Evidence-Based DevOps and to demonstrate its application to software reengineering. For this purpose, we borrow an approach from Medicine, Evidence-Based Medicine (EBM), and apply it to DevOps. Evidence-Based DevOps supports continuous collaboration, process, and deployment within or across diverse teams.


Sudoku App: Model-Driven Development Of Android Apps Using Ocl?, Yoonsik Cheon, Aditi Barua Nov 2017

Sudoku App: Model-Driven Development Of Android Apps Using Ocl?, Yoonsik Cheon, Aditi Barua

Departmental Technical Reports (CS)

Model driven development (MDD) shifts the focus of software development from writing code to building models by developing an application as a series of transformations on models including eventual code generation. Can the key ideas of MDD be applied to the development of Android apps, one of the most popular mobile platforms of today? To answer this question, we perform a small case study of developing an Android app for playing Sudoku puzzles. We use the Object Constraint Language (OCL) as the notation for creating precise models and translate OCL constraints to Android Java code. Our findings are mixed in ...


A High Quality, Eulerian 3d Fluid Solver In C++, Lejon Anthony Mcgowan Nov 2017

A High Quality, Eulerian 3d Fluid Solver In C++, Lejon Anthony Mcgowan

Computer Science

Fluids are a part of everyday life, yet are one of the hardest elements to properly render in computer graphics. Water is the most obvious entity when thinking of what a fluid simulation can achieve (and it is indeed the focus of this project), but many other aspects of nature, like fog, clouds, and particle effects. Real-time graphics like video games employ many heuristics to approximate these effects, but large-scale renderers aim to simulate these effects as closely as possible.

In this project, I wish to achieve effects of the latter nature. Using the Eulerian technique of discrete grids, I ...


Distributed Multi-Task Classification: A Decentralized Online Learning Approach, Chi Zhang, Peilin Zhao, Shuji Hao, Yeng Chai Soh, Bu Sung Lee, Chunyan Miao, Hoi, Steven C. H. Nov 2017

Distributed Multi-Task Classification: A Decentralized Online Learning Approach, Chi Zhang, Peilin Zhao, Shuji Hao, Yeng Chai Soh, Bu Sung Lee, Chunyan Miao, Hoi, Steven C. H.

Research Collection School Of Information Systems

Although dispersing one single task to distributed learning nodes has been intensively studied by the previous research, multi-task learning on distributed networks is still an area that has not been fully exploited, especially under decentralized settings. The challenge lies in the fact that different tasks may have different optimal learning weights while communication through the distributed network forces all tasks to converge to an unique classifier. In this paper, we present a novel algorithm to overcome this challenge and enable learning multiple tasks simultaneously on a decentralized distributed network. Specifically, the learning framework can be separated into two phases: (i ...


Domain-Specific Cross-Language Relevant Question Retrieval, Bowen Xu, Zhenchang Xing, Xin Xia, David Lo, Shanping Li Nov 2017

Domain-Specific Cross-Language Relevant Question Retrieval, Bowen Xu, Zhenchang Xing, Xin Xia, David Lo, Shanping Li

Research Collection School Of Information Systems

Chinese developers often cannot effectively search questions in English, because they may have difficulties in translating technical words from Chinese to English and formulating proper English queries. For the purpose of helping Chinese developers take advantage of the rich knowledge base of Stack Overflow and simplify the question retrieval process, we propose an automated cross-language relevant question retrieval (CLRQR) system to retrieve relevant English questions for a given Chinese question. CLRQR first extracts essential information (both Chinese and English) from the title and description of the input Chinese question, then performs domain-specific translation of the essential Chinese information into English ...


The Impact Of Coverage On Bug Density In A Large Industrial Software Project, Thomas Bach, Artur Andrzejak, Ralf Pannemans, David Lo Nov 2017

The Impact Of Coverage On Bug Density In A Large Industrial Software Project, Thomas Bach, Artur Andrzejak, Ralf Pannemans, David Lo

Research Collection School Of Information Systems

Measuring quality of test suites is one ofthe major challenges of software testing. Code coverageidentifies tested and untested parts of code and isfrequently used to approximate test suite quality. Multipleprevious studies have investigated the relationshipbetween coverage ratio and test suite quality, withouta clear consent in the results. In this work we studywhether covered code contains a smaller number of futurebugs than uncovered code (assuming appropriatescaling). If this correlation holds and bug density islower in covered code, coverage can be regarded as ameaningful metric to estimate the adequacy of testing.To this end we analyse 16 000 internal bug reports andbug-fixes ...


On Locating Malicious Code In Piggybacked Android Apps, Li Li, Daoyuan Li, Tegawende F. Bissyande, Jacques Klein, Haipeng Cai, David Lo, Yves Le Traon Nov 2017

On Locating Malicious Code In Piggybacked Android Apps, Li Li, Daoyuan Li, Tegawende F. Bissyande, Jacques Klein, Haipeng Cai, David Lo, Yves Le Traon

Research Collection School Of Information Systems

To devise efficient approaches and tools for detecting malicious packages in the Android ecosystem, researchersare increasingly required to have a deep understanding of malware. There is thus a need to provide a framework for dissectingmalware and locating malicious program fragments within app code in order to build a comprehensive dataset of malicioussamples. Towards addressing this need, we propose in this work a tool-based approach called HookRanker, which providesranked lists of potentially malicious packages based on the way malware behaviour code is triggered. With experiments ona ground truth of piggybacked apps, we are able to automatically locate the malicious packages from ...


Reproducible Research For Computing In Science & Engineering, Lorena A. Barba, George K. Thiruvathukal Nov 2017

Reproducible Research For Computing In Science & Engineering, Lorena A. Barba, George K. Thiruvathukal

Computer Science: Faculty Publications and Other Works

The editors of the new track for reproducible research outline the parameters for future peer review, submission, and access, highlighting the magazine’s previous work in this field and some of the challenges still to come.


Defaultification Refactoring: A Tool For Automatically Converting Java Methods To Default, Raffi T. Khatchadourian, Hidehiko Masuhara Oct 2017

Defaultification Refactoring: A Tool For Automatically Converting Java Methods To Default, Raffi T. Khatchadourian, Hidehiko Masuhara

Publications and Research

Enabling interfaces to declare (instance) method implementations, Java 8 default methods can be used as a substitute for the ubiquitous skeletal implementation software design pattern. Performing this transformation on legacy software manually, though, may be non-trivial. The refactoring requires analyzing complex type hierarchies, resolving multiple implementation inheritance issues, reconciling differences between class and interface methods, and analyzing tie-breakers (dispatch precedence) with overriding class methods. All of this is necessary to preserve type-correctness and confirm semantics preservation. We demonstrate an automated refactoring tool called Migrate Skeletal Implementation to Interface for transforming legacy Java code to use the new default construct. The ...


Metrics, Software Engineering, Small Systems – The Future Of Systems Development, William L. Honig Oct 2017

Metrics, Software Engineering, Small Systems – The Future Of Systems Development, William L. Honig

William L Honig

In this talk I will introduce the importance of metrics, or measures, and the role they play in the development of high quality computer systems. I will review some key mega trends in computer science over the last three decades and then explain why I believe the trend to small networked systems, along with metrics and software engineering will define the future of high technology computer based systems. I first learned about metrics at the Bell System where everything was measured. Metrics can be understood easily if you think of them as measures, for example of calories or salt in ...