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 2791 - 2820 of 4404

Full-Text Articles in Software Engineering

A-Maze-D: Advanced Maze Development Kit Using Constraint Databases, Shruti Daggumarti, Peter Revesz, Corey Svehla Oct 2015

A-Maze-D: Advanced Maze Development Kit Using Constraint Databases, Shruti Daggumarti, Peter Revesz, Corey Svehla

School of Computing: Conference and Workshop Papers

In this paper, we describe the A-Maze-D system which shows that constraint databases can be applied conveniently and efficiently to the design of maze games. A-Maze-D provides a versatile set of features by a combination of a MATLAB library and the MLPQ constraint database system. A-Maze-D is the first system that uses constraint databases to build maze games and opens new ideas in video game development.


Choosing Your Weapons: On Sentiment Analysis Tools For Software Engineering Research, Robbert Jongeling, Subhajit Datta, Alexander Serebrenik Oct 2015

Choosing Your Weapons: On Sentiment Analysis Tools For Software Engineering Research, Robbert Jongeling, Subhajit Datta, Alexander Serebrenik

Research Collection School Of Computing and Information Systems

Recent years have seen an increasing attention to social aspects of software engineering, including studies of emotions and sentiments experienced and expressed by the software developers. Most of these studies reuse existing sentiment analysis tools such as SentiStrength and NLTK. However, these tools have been trained on product reviews and movie reviews and, therefore, their results might not be applicable in the software engineering domain. In this paper we study whether the sentiment analysis tools agree with the sentiment recognized by human evaluators (as reported in an earlier study) as well as with each other. Furthermore, we evaluate the impact …


The Importance Of Being Isolated: An Empirical Study On Chromium Reviews, Subhajit Datta, Devarshi Bhatt, Manish Jain, Proshanta Sarkar, Santonu Sarkar Oct 2015

The Importance Of Being Isolated: An Empirical Study On Chromium Reviews, Subhajit Datta, Devarshi Bhatt, Manish Jain, Proshanta Sarkar, Santonu Sarkar

Research Collection School Of Computing and Information Systems

As large scale software development has become more collaborative, and software teams more globally distributed, several studies have explored how developer interaction influences software development outcomes. The emphasis so far has been largely on outcomes like defect count, the time to close modification requests etc. In the paper, we examine data from the Chromium project to understand how different aspects of developer discussion relate to the closure time of reviews. On the basis of analyzing reviews discussed by 2000+ developers, our results indicate that quicker closure of reviews owned by a developer relates to higher reception of information and insights …


Contract-Based General-Purpose Gpu Programming, Alexey Kolesnichenko, Christopher M. Poskitt, Sebastian Nanz, Bertrand Meyer Oct 2015

Contract-Based General-Purpose Gpu Programming, Alexey Kolesnichenko, Christopher M. Poskitt, Sebastian Nanz, Bertrand Meyer

Research Collection School Of Computing and Information Systems

Using GPUs as general-purpose processors has revolutionized parallel computing by offering, for a large and growing set of algorithms, massive data-parallelization on desktop machines. An obstacle to widespread adoption, however, is the difficulty of programming them and the low-level control of the hardware required to achieve good performance. This paper suggests a programming library, SafeGPU, that aims at striking a balance between programmer productivity and performance, by making GPU data-parallel operations accessible from within a classical object-oriented programming language. The solution is integrated with the design-by-contract approach, which increases confidence in functional program correctness by embedding executable program specifications into …


What Are The Characteristics Of High-Rated Apps? A Case Study On Free Android Applications, Tian Yuan, Meiyappan Nagappan, David Lo, Ahmed E. Hassan Oct 2015

What Are The Characteristics Of High-Rated Apps? A Case Study On Free Android Applications, Tian Yuan, Meiyappan Nagappan, David Lo, Ahmed E. Hassan

Research Collection School Of Computing and Information Systems

The tremendous rate of growth in the mobile app market over the past few years has attracted many developers to build mobile apps. However, while there is no shortage of stories of how lone developers have made great fortunes from their apps, the majority of developers are struggling to break even. For those struggling developers, knowing the “DNA” (i.e., characteristics) of high-rated apps is the first step towards successful development and evolution of their apps. In this paper, we investigate 28 factors along eight dimensions to understand how high-rated apps are different from low-rated apps. We also investigate what are …


Should I Follow This Fault Localization Tool's Output? Automated Prediction Of Fault Localization Effectiveness, Tien-Duy B. Le, David Lo, Ferdian Thung Oct 2015

Should I Follow This Fault Localization Tool's Output? Automated Prediction Of Fault Localization Effectiveness, Tien-Duy B. Le, David Lo, Ferdian Thung

Research Collection School Of Computing and Information Systems

Debugging is a crucial yet expensive activity to improve the reliability of software systems. To reduce debugging cost, various fault localization tools have been proposed. A spectrum-based fault localization tool often outputs an ordered list of program elements sorted based on their likelihood to be the root cause of a set of failures (i.e., their suspiciousness scores). Despite the many studies on fault localization, unfortunately, however, for many bugs, the root causes are often low in the ordered list. This potentially causes developers to distrust fault localization tools. Recently, Parnin and Orso highlight in their user study that many debuggers …


Porting The Netbeans Java 8 Enhanced For Loop Lambda Expression Refactoring To Eclipse, Md Arefin, Raffi Khatchadourian Oct 2015

Porting The Netbeans Java 8 Enhanced For Loop Lambda Expression Refactoring To Eclipse, Md Arefin, Raffi Khatchadourian

Publications and Research

Java 8 is one of the largest upgrades to the popular language and framework in over a decade. However, the Eclipse IDE is missing several key refactorings that could help developers take advantage of new features in Java 8 more easily. In this paper, we discuss our ongoing work in porting the enhanced for loop to lambda expression refactoring from the NetBeans IDE to Eclipse. We also discuss future plans for new Java 8 refactorings not found in any current IDE.


Fraglight: Shedding Light On Broken Pointcuts In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Awais Rashid, Hidehiko Masuhara, Takuya Watanabe Oct 2015

Fraglight: Shedding Light On Broken Pointcuts In Evolving Aspect-Oriented Software, Raffi Khatchadourian, Awais Rashid, Hidehiko Masuhara, Takuya Watanabe

Publications and Research

Pointcut fragility is a well-documented problem in Aspect-Oriented Programming; changes to the base code can lead to join points incorrectly falling in or out of the scope of pointcuts. Deciding which pointcuts have broken due to base-code changes is daunting, especially in large and complex systems. We demonstrate an automated tool called FRAGLIGHT that recommends a set of pointcuts that are likely to require modification due to a certain base-code change. The underlying approach is rooted in harnessing unique and arbitrarily deep structural commonality between program elements corresponding to join points selected by a pointcut in a particular software version. …


Assessing Developer Contribution With Repository Mining-Based Metrics, Jalerson Lima, Christoph Treude, Fernando Figueira Filho, Uirá Kulesza Oct 2015

Assessing Developer Contribution With Repository Mining-Based Metrics, Jalerson Lima, Christoph Treude, Fernando Figueira Filho, Uirá Kulesza

Research Collection School Of Computing and Information Systems

Productivity as a result of individual developers' contributions is an important aspect for software companies to maintain their competitiveness in the market. However, there is no consensus in the literature on how to measure productivity or developer contribution. While some repository mining-based metrics have been proposed, they lack validation in terms of their applicability and usefulness from the individuals who will use them to assess developer contribution: team and project leaders. In this paper, we propose the design of a suite of metrics for the assessment of developer contribution, based on empirical evidence obtained from project and team leaders. In …


Mood Self-Assessment On Smartphones, Le Minh Khue, Eng Lieh Ouh, Stan Jarzabek Oct 2015

Mood Self-Assessment On Smartphones, Le Minh Khue, Eng Lieh Ouh, Stan Jarzabek

Research Collection School Of Computing and Information Systems

Mood has been systematically studied by psychologists for over 100 years. As mood is a subjective feeling, any study of mood must take into account and accurately capture user’s perception of an experienced feeling. In last 40 years, a number of pen-andpaper mood self-assessment scales have been proposed. Typically, a person is asked to separately rate various dimensions of the experienced feeling (e.g., pleasure and arousal) or mood items (interested, agitated, excited, etc.) on numeric scales (e.g., between 0 and 10). These partial ratings are then combined into an overall mood rating (or into its positive and negative affect). Penand-paper …


Automated Prediction Of Bug Report Priority Using Multi-Factor Analysis, Yuan Tian, David Lo, Chengnian Sun, Xin Xia Oct 2015

Automated Prediction Of Bug Report Priority Using Multi-Factor Analysis, Yuan Tian, David Lo, Chengnian Sun, Xin Xia

Research Collection School Of Computing and Information Systems

Bugs are prevalent. To improve software quality, developers often allow users to report bugs that they found using a bug tracking system such as Bugzilla. Users would specify among other things, a description of the bug, the component that is affected by the bug, and the severity of the bug. Based on this information, bug triagers would then assign a priority level to the reported bug. As resources are limited, bug reports would be investigated based on their priority levels. This priority assignment process however is a manual one. Could we do better? In this paper, we propose an automated …


Constrained Feature Selection For Localizing Faults, Tien-Duy B. Le, David Lo, Ming Li Oct 2015

Constrained Feature Selection For Localizing Faults, Tien-Duy B. Le, David Lo, Ming Li

Research Collection School Of Computing and Information Systems

Developers often take much time and effort to find buggy program elements. To help developers debug, many past studies have proposed spectrum-based fault localization techniques. These techniques compare and contrast correct and faulty execution traces and highlight suspicious program elements. In this work, we propose constrained feature selection algorithms that we use to localize faults. Feature selection algorithms are commonly used to identify important features that are helpful for a classification task. By mapping an execution trace to a classification instance and a program element to a feature, we can transform fault localization to the feature selection problem. Unfortunately, existing …


What's Hot In Software Engineering Twitter Space?, Abhishek Sharma, Tian Yuan, David Lo Oct 2015

What's Hot In Software Engineering Twitter Space?, Abhishek Sharma, Tian Yuan, David Lo

Research Collection School Of Computing and Information Systems

Twitter is a popular means to disseminate information and currently more than 300 million people are using it actively. Software engineers are no exception; Singer et al. have shown that many developers use Twitter to stay current with recent technological trends. At various time points, many users are posting microblogs (i.e., tweets) about the same topic in Twitter. We refer to this reasonably large set of topically-coherent microblogs in the Twitter space made at a particular point in time as an event. In this work, we perform an exploratory study on software engineering related events in Twitter. We collect a …


Social Signal Processing For Real-Time Situational Understanding: A Vision And Approach, Kasthuri Jeyarajah, Shuchao Yao, Raghava Muthuraju, Archan Misra, Geeth De Mel, Julie Skipper, Tarek Abdelzaher, Michael Kolodny Oct 2015

Social Signal Processing For Real-Time Situational Understanding: A Vision And Approach, Kasthuri Jeyarajah, Shuchao Yao, Raghava Muthuraju, Archan Misra, Geeth De Mel, Julie Skipper, Tarek Abdelzaher, Michael Kolodny

Research Collection School Of Computing and Information Systems

The US Army Research Laboratory (ARL) and the Air Force Research Laboratory (AFRL) have established a collaborative research enterprise referred to as the Situational Understanding Research Institute (SURI). The goal is to develop an information processing framework to help the military obtain real-time situational awareness of physical events by harnessing the combined power of multiple sensing sources to obtain insights about events and their evolution. It is envisioned that one could use such information to predict behaviors of groups, be they local transient groups (e.g., protests) or widespread, networked groups, and thus enable proactive prevention of nefarious activities. This paper …


Usability Of Error Messages For Introductory Students, Paul A. Schliep Sep 2015

Usability Of Error Messages For Introductory Students, Paul A. Schliep

Scholarly Horizons: University of Minnesota, Morris Undergraduate Journal

Error messages are an important tool programmers use to help find and fix mistakes or issues in their code. When an error message is unhelpful, it can be difficult to find the issue and may impose additional challenges in learning the language and concepts. Error messages are especially critical for introductory programmers in understanding problems with their code. Unfortunately, not all error messages in programming are beneficial for novice programmers. This paper discusses the general usability of error messages for introductory programmers, analyses of error messages in compilers and DrRacket, and two methodologies intended to improve error handling.


A Constraint Language For Static Semantic Analysis Based On Scope Graphs, Hendrik Van Antwerpen, Pierre Néron, Andrew Tolmach, Eelco Visser, Guido Wachsmuth Sep 2015

A Constraint Language For Static Semantic Analysis Based On Scope Graphs, Hendrik Van Antwerpen, Pierre Néron, Andrew Tolmach, Eelco Visser, Guido Wachsmuth

Computer Science Faculty Publications and Presentations

In previous work, we introduced scope graphs as a formalism for describing program binding structure and performing name resolution in an AST-independent way. In this paper, we show how to use scope graphs to build static semantic analyzers. We use constraints extracted from the AST to specify facts about binding, typing, and initialization. We treat name and type resolution as separate building blocks, but our approach can handle language constructs—such as record field access—for which binding and typing are mutually dependent.We also refine and extend our previous scope graph theory to address practical concerns including ambiguity checking and support for …


Rfid Microscope Lab, Patricia Carranza Sep 2015

Rfid Microscope Lab, Patricia Carranza

Computer Engineering

The RFID Microscope Lab is a new exhibit created for the San Luis Obispo Children's Museum. The goal of the project is to create a modern, interactive exhibit that will teach children about different natural specimens through the use of technology. A computer, custom software, and RFID technology, will be used to display facts, microscopic images, and short videos of ten different specimens.


Event And Strategy Analytics, Jin Song Dong, Jun Sun, Yang Liu, Yuan-Fang Li, Jing Sun, Ling Shi Sep 2015

Event And Strategy Analytics, Jin Song Dong, Jun Sun, Yang Liu, Yuan-Fang Li, Jing Sun, Ling Shi

Research Collection School Of Computing and Information Systems

Model checking has been pervasive and successful in finding bugs in hardware and software systems, including real-time and probabilistic systems. Applying model checking to decision making is relative new and has an excellent potential to be compliment to data analytics and other Artificial Intelligent (AI) or Operational Research (OR) based decision making techniques. Our last 8 years research has focused on the development of PAT (Process Analysis Toolkit) [18] which supports modelling languages that combine the expressiveness of event, state, time and probability based modeling techniques to which model checking can be directly applied. The next direction for PAT is …


Information Retrieval And Spectrum Based Bug Localization: Better Together, Tien-Duy B. Le, Richard J. Oentaryo, David Lo Sep 2015

Information Retrieval And Spectrum Based Bug Localization: Better Together, Tien-Duy B. Le, Richard J. Oentaryo, David Lo

Research Collection School Of Computing and Information Systems

Debugging often takes much effort and resources. To help developers debug, numerous information retrieval (IR)-based and spectrum-based bug localization techniques have been proposed. IR-based techniques process textual information in bug reports, while spectrum-based techniques process program spectra (i.e., a record of which program elements are executed for each test case). Both eventually generate a ranked list of program elements that are likely to contain the bug. However, these techniques only consider one source of information, either bug reports or program spectra, which is not optimal. To deal with the limitation of existing techniques, in this work, we propose a new …


How Practitioners Perceive The Relevance Of Software Engineering Research, David Lo, Nachiappan Nagappan, Thomas Zimmermann Sep 2015

How Practitioners Perceive The Relevance Of Software Engineering Research, David Lo, Nachiappan Nagappan, Thomas Zimmermann

Research Collection School Of Computing and Information Systems

The number of software engineering research papers over the last few years has grown significantly. An important question here is: how relevant is software engineering research to practitioners in the field? To address this question, we conducted a survey at Microsoft where we invited 3,000 industry practitioners to rate the relevance of research ideas contained in 571 ICSE, ESEC/FSE and FSE papers that were published over a five year period. We received 17,913 ratings by 512 practitioners who labelled ideas as essential, worthwhile, unimportant, or unwise. The results from the survey suggest that practitioners are positive towards studies done by …


Summarizing And Measuring Development Activity, Christoph Treude, Fernando Figueira Filho, Uirá Kulesza Sep 2015

Summarizing And Measuring Development Activity, Christoph Treude, Fernando Figueira Filho, Uirá Kulesza

Research Collection School Of Computing and Information Systems

Software developers pursue a wide range of activities as part of their work, and making sense of what they did in a given time frame is far from trivial as evidenced by the large number of awareness and coordination tools that have been developed in recent years. To inform tool design for making sense of the information available about a developer’s activity, we conducted an empirical study with 156 GitHub users to investigate what information they would expect in a summary of development activity, how they would measure development activity, and what factors influence how such activity can be condensed …


Uedashboard: Awareness Of Unusual Events In Commit Histories, Larissa Leite, Christoph Treude, Fernando Figueira Filho Sep 2015

Uedashboard: Awareness Of Unusual Events In Commit Histories, Larissa Leite, Christoph Treude, Fernando Figueira Filho

Research Collection School Of Computing and Information Systems

To be able to respond to source code modifications with large impact or commits that necessitate further examination, developers and managers in a software development team need to be aware of anything unusual happening in their software projects. To address this need, we introduce UEDashboard, a tool which automatically detects unusual events in a commit history based on metrics and smells, and surfaces them in an event feed. Our preliminary evaluation with a team of professional software developers showed that our conceptualization of unusual correlates with developers' perceptions of task difficulty, and that UEDashboard could be useful in supporting development …


Tonetrack: Leveraging Frequency-Agile Radios For Time-Based Indoor Wireless, Jie Xiong, Karthikeyan Sundaresan, Kyle Jamieson Sep 2015

Tonetrack: Leveraging Frequency-Agile Radios For Time-Based Indoor Wireless, Jie Xiong, Karthikeyan Sundaresan, Kyle Jamieson

Research Collection School Of Computing and Information Systems

Indoor localization of mobile devices and tags has received much attention recently, with encouraging fine-grained localization results available with enough line-of-sight coverage and hardware infrastructure. Some of the most promising techniques analyze the time-of-arrival of incoming signals, but the limited bandwidth available to most wireless transmissions fundamentally constrains their resolution. Frequency-agile wireless networks utilize bandwidths of varying sizes and locations in a wireless band to effi- ciently share the wireless medium between users. ToneTrack is an indoor location system that achieves sub-meter accuracy with minimal hardware and antennas, by leveraging frequency-agile wireless networks to increase the effective bandwidth. Our novel …


Need Accurate User Behaviour?: Pay Attention To Groups!, Kasthuri Jayarajah, Youngki Lee, Archan Misra, Rajesh Krishna Balan Sep 2015

Need Accurate User Behaviour?: Pay Attention To Groups!, Kasthuri Jayarajah, Youngki Lee, Archan Misra, Rajesh Krishna Balan

Research Collection School Of Computing and Information Systems

In this paper, we show that characterizing user behaviour from location or smartphone usage traces, without accounting for the interaction of individuals in physical-world groups, can lead to erroneous results. We conducted one of the largest studies in the UbiComp domain thus far, involving indoor location traces of more than 6,000 users, collected over a 4-month period at our university campus, and further studied fine-grained App usage of a subset of 156 Android users. We apply a state-of-the-art group detection algorithm to annotate such location traces with group vs. individual context, and then show that individuals vs. groups exhibit significant …


Sandra Helps You Learn: The More You Walk, The More Battery Your Phone Drains, Chulhong Min, Chungkuk Yoo, Inseok Hwang, Seungwoo Kang, Youngki Lee, Seungchul Lee, Pillsoon Park, Changhun Lee, Seungpyo Choi Choi Sep 2015

Sandra Helps You Learn: The More You Walk, The More Battery Your Phone Drains, Chulhong Min, Chungkuk Yoo, Inseok Hwang, Seungwoo Kang, Youngki Lee, Seungchul Lee, Pillsoon Park, Changhun Lee, Seungpyo Choi Choi

Research Collection School Of Computing and Information Systems

Emerging continuous sensing apps introduce new major factors governing phones’ overall battery consumption behaviors: (1) added nontrivial persistent battery drain, and more importantly (2) different battery drain rate depending on the user’s different mobility condition. In this paper, we address the new battery impacting factors significant enough to outdate users’ existing battery model in real life. We explore an initial approach to help users understand the cause and effect between their physical activity and phones’ battery life. To this end, we present Sandra, a novel mobility-aware smartphone battery information advisor, and study its potential to help users redevelop their battery …


Candy Crushing Your Sleep, Kasthuri Jeyarajah, Meeralakshi Radhakrishnan, Steven C. H. Hoi, Archan Misra Sep 2015

Candy Crushing Your Sleep, Kasthuri Jeyarajah, Meeralakshi Radhakrishnan, Steven C. H. Hoi, Archan Misra

Research Collection School Of Computing and Information Systems

Growing interest in quantified self has led to the popularity of lifelogging applications. In particular, health and wellness related applications have seen an upsurge with the advent of wearables such as the Fitbit. In this paper, we focus on the quality of sleep that directly impacts the overall wellness of individuals. In particular, in this work, we present a first of its kind study that (1) unobtrusively quantifies the quality of sleep and (2) seeks to identify attributing aspects of our daily lives such as an individual's usage of apps throughout the day and his/her physical environment that may affect …


Gpu/Cpu Performance Of Image Processing Tasks For Use In The Cam 2 System, Jonathan Cottom, Yung-Hsiang Lu, Young-Sol Koh Aug 2015

Gpu/Cpu Performance Of Image Processing Tasks For Use In The Cam 2 System, Jonathan Cottom, Yung-Hsiang Lu, Young-Sol Koh

The Summer Undergraduate Research Fellowship (SURF) Symposium

Over the past several years, graphics processing units (GPU) have increasingly been viewed as the future of image processing engines. Currently, the Continuous Analysis of Many CAMeras (CAM2) project performs its processing on CPUs, which will potentially be more costly as the system scales to service more users. This study seeks to analyze the performance gains of GPU processing and evaluate the advantage of supporting GPU-accelerated analysis for CAM2 users. The platform for comparing the CPU and GPU performance has been the NVIDIA Jetson TK1. The target hardware implementation is an Amazon cloud instance, where final cost …


Implementation Of A Speech Recognition Algorithm To Facilitate Verbal Commands For Visual Analytics Law Enforcement Toolkit, Shubham S. Rastogi, David L. Wiszowaty, Hanye Xu, Abish Malik, David S. Ebert Aug 2015

Implementation Of A Speech Recognition Algorithm To Facilitate Verbal Commands For Visual Analytics Law Enforcement Toolkit, Shubham S. Rastogi, David L. Wiszowaty, Hanye Xu, Abish Malik, David S. Ebert

The Summer Undergraduate Research Fellowship (SURF) Symposium

The VALET (Visual Analytics Law Enforcement Toolkit) system allows the user to visualize and predict crime hotspots and analyze crime data. Police officers have difficulty in using VALET in a mobile situation, since the system allows only conventional input interfaces (keyboard and mouse). This research focuses on introducing a new input interface to VALET in the form of speech recognition, which allows the user to interact with the software without losing functionality. First an Application Program Interface (API) that was compatible with the VALET system was found and initial code scripts to test its functionality were written. Next, the code …


Using Data Visualization Software To Aid In The Analysis Of Geographical Data, Matthew R. Evers, Inzamam Rahaman Aug 2015

Using Data Visualization Software To Aid In The Analysis Of Geographical Data, Matthew R. Evers, Inzamam Rahaman

STAR Program Research Presentations

NASA Web World Wind (Web WW) is designed to visualize and manage geographical data. As a first implementation of visualization and analysis, we designed an application to map earthquake data onto the globe. Portions of this code were merged with application monitoring magnetic field anomalies possibly associated with earthquake precursor activity. Web WW enabled the visualization of the directional vectors from this data to point to the source location of the earthquake. We also developed a prototype urban management application which utilizes OpenStreetMaps to provide simple features such as route navigation, geographical and services information in an area of interest. …


In Need Of A Domain-Specific Language Modeling Notation For Smartphone Applications With Portable Capability, Hamza Ghandorh, Luiz Fernando Capretz Dr., Ali Bou Nassif Dr. Aug 2015

In Need Of A Domain-Specific Language Modeling Notation For Smartphone Applications With Portable Capability, Hamza Ghandorh, Luiz Fernando Capretz Dr., Ali Bou Nassif Dr.

Electrical and Computer Engineering Publications

The rapid growth of the smartphone market and its increasing revenue has motivated developers to target multiple platforms. Market leaders, such as Apple, Google, and Microsoft, develop their smartphone applications complying with their platform specifications. The specification of each platform makes a platform-dedicated application incompatible with other platforms due to the diversity of operating systems, programming languages, and design patterns. Conventional development methodologies are applied to smartphone applications, yet they perform less well. Smartphone applications have unique hardware and software requirements. All previous factors push smartphone developers to build less sophisticated and low-quality products when targeting multiple smartphone platforms. Model-driven …