scispace - formally typeset
Search or ask a question

Showing papers on "Application software published in 2011"


Journal ArticleDOI
TL;DR: To achieve efficient data dynamics, the existing proof of storage models are improved by manipulating the classic Merkle Hash Tree construction for block tag authentication, and an elegant verification scheme is constructed for the seamless integration of these two salient features in the protocol design.
Abstract: Cloud Computing has been envisioned as the next-generation architecture of IT Enterprise. It moves the application software and databases to the centralized large data centers, where the management of the data and services may not be fully trustworthy. This unique paradigm brings about many new security challenges, which have not been well understood. This work studies the problem of ensuring the integrity of data storage in Cloud Computing. In particular, we consider the task of allowing a third party auditor (TPA), on behalf of the cloud client, to verify the integrity of the dynamic data stored in the cloud. The introduction of TPA eliminates the involvement of the client through the auditing of whether his data stored in the cloud are indeed intact, which can be important in achieving economies of scale for Cloud Computing. The support for data dynamics via the most general forms of data operation, such as block modification, insertion, and deletion, is also a significant step toward practicality, since services in Cloud Computing are not limited to archive or backup data only. While prior works on ensuring remote data integrity often lacks the support of either public auditability or dynamic data operations, this paper achieves both. We first identify the difficulties and potential security problems of direct extensions with fully dynamic data updates from prior works and then show how to construct an elegant verification scheme for the seamless integration of these two salient features in our protocol design. In particular, to achieve efficient data dynamics, we improve the existing proof of storage models by manipulating the classic Merkle Hash Tree construction for block tag authentication. To support efficient handling of multiple auditing tasks, we further explore the technique of bilinear aggregate signature to extend our main result into a multiuser setting, where TPA can perform multiple auditing tasks simultaneously. Extensive security and performance analysis show that the proposed schemes are highly efficient and provably secure.

1,422 citations


Journal ArticleDOI
TL;DR: The notion of a system's attack surface is formalized and an attack surface metric is introduced to measure the attack surface in a systematic manner and is useful in multiple phases of the software development lifecycle.
Abstract: Measurement of software security is a long-standing challenge to the research community. At the same time, practical security metrics and measurements are essential for secure software development. Hence, the need for metrics is more pressing now due to a growing demand for secure software. In this paper, we propose using a software system's attack surface measurement as an indicator of the system's security. We formalize the notion of a system's attack surface and introduce an attack surface metric to measure the attack surface in a systematic manner. Our measurement method is agnostic to a software system's implementation language and is applicable to systems of all sizes; we demonstrate our method by measuring the attack surfaces of small desktop applications and large enterprise systems implemented in C and Java. We conducted three exploratory empirical studies to validate our method. Software developers can mitigate their software's security risk by measuring and reducing their software's attack surfaces. Our attack surface reduction approach complements the software industry's traditional code quality improvement approach for security risk mitigation and is useful in multiple phases of the software development lifecycle. Our collaboration with SAP demonstrates the use of our metric in the software development process.

634 citations


Patent
26 Jul 2011
TL;DR: In this paper, the authors present a program directory database, compiled automatically from information reported by network nodes that watch and identify content traffic passing into (and/or out of) networked computers.
Abstract: The present technology concerns cell phones and other portable devices, and more particularly concerns use of such devices in connection with media content (electronic and physical) and with other systems (e.g., televisions, digital video recorders, and electronic program directories). Some aspects of the technology allow users to easily transfer displayed content from cell phone screens onto a television screens for easier viewing, or vice versa for content portability. Others enable users to participate interactively in entertainment content, such as by submitting plot directions, audio input, character names, etc., yielding more engaging, immersive, user experiences. Still other aspects of the technology involve a program directory database, compiled automatically from information reported by network nodes that watch and identify content traffic passing into (and/or out of) networked computers. By identifying content resident at a number of different repositories (e.g., web sites, TV networks, P2P systems, etc.), such a directory allows cell phone users to identify the diversity of sources from which desired content can be obtained—some available on a scheduled basis, others available on demand. Depending on the application, the directory information may be transparent to the user—serving to identify sources for desired content, from which application software can pick for content downloading, based, e.g., on context and stored profile data. A great number of other features and arrangements are also detailed.

557 citations


Journal ArticleDOI
TL;DR: This paper introduces two novel multi-objective formulations of the software module clustering problem, in which several different objectives are represented separately, and provides strong evidence to support the claim that the multi-Objective approach produces significantly better solutions than the existing single-objectives approach.
Abstract: Software module clustering is the problem of automatically organizing software units into modules to improve program structure. There has been a great deal of recent interest in search-based formulations of this problem in which module boundaries are identified by automated search, guided by a fitness function that captures the twin objectives of high cohesion and low coupling in a single-objective fitness function. This paper introduces two novel multi-objective formulations of the software module clustering problem, in which several different objectives (including cohesion and coupling) are represented separately. In order to evaluate the effectiveness of the multi-objective approach, a set of experiments was performed on 17 real-world module clustering problems. The results of this empirical study provide strong evidence to support the claim that the multi-objective approach produces significantly better solutions than the existing single-objective approach.

354 citations


Journal ArticleDOI
TL;DR: A macrolevel model is discussed to show the relation of the amount of computation and the total power consumption of multiple peer computers to perform Web types of application processes and algorithms for allocating a process to a computer so that the deadline constraint is satisfied and thetotal power consumption is reduced.
Abstract: Information systems are composed of various types of computers interconnected in networks. In addition, information systems are being shifted from the traditional client-server model to the peer-to-peer (P2P) model. P2P systems are scalable and fully distributed without any centralized coordinator. Here, it is getting more significant to discuss how to reduce the total electric power consumption of computers in addition to developing distributed algorithms to minimize the computation time and memory space. In this paper, we do not discuss microlevel models like the hardware specifications of computers like low-energy CPUs. We rather discuss a macrolevel model to show the relation of the amount of computation and the total power consumption of multiple peer computers to perform Web types of application processes. We also discuss algorithms for allocating a process to a computer so that the deadline constraint is satisfied and the total power consumption is reduced.

178 citations


Journal ArticleDOI
TL;DR: An empirical study reveals that the GUI and Web-based applications, when recast using the new model, show similar behavior, reinforcing the belief that these two subclasses of applications should be modeled and studied together.
Abstract: Event-Driven Software (EDS) can change state based on incoming events; common examples are GUI and Web applications. These EDSs pose a challenge to testing because there are a large number of possible event sequences that users can invoke through a user interface. While valuable contributions have been made for testing these two subclasses of EDS, such efforts have been disjoint. This work provides the first single model that is generic enough to study GUI and Web applications together. In this paper, we use the model to define generic prioritization criteria that are applicable to both GUI and Web applications. Our ultimate goal is to evolve the model and use it to develop a unified theory of how all EDS should be tested. An empirical study reveals that the GUI and Web-based applications, when recast using the new model, show similar behavior. For example, a criterion that gives priority to all pairs of event interactions did well for GUI and Web applications; another criterion that gives priority to the smallest number of parameter value settings did poorly for both. These results reinforce our belief that these two subclasses of applications should be modeled and studied together.

139 citations


Proceedings ArticleDOI
30 Mar 2011
TL;DR: SNAP is presented, a scalable network-application profiler that guides developers in identifying and fixing performance problems and has already helped developers uncover 15 major performance problems in application software, the network stack on the server, and the underlying network.
Abstract: Network performance problems are notoriously tricky to diagnose, and this is magnified when applications are often split into multiple tiers of application components spread across thousands of servers in a data center. Problems often arise in the communication between the tiers, where either the application or the network (or both!) could be to blame. In this paper, we present SNAP, a scalable network-application profiler that guides developers in identifying and fixing performance problems. SNAP passively collects TCP statistics and socket-call logs with low computation and storage overhead, and correlates across shared resources (e.g., host, link, switch) and connections to pinpoint the location of the problem (e.g., send buffer mismanagement, TCP/application conflicts, application-generated microbursts, or network congestion). Our one-week deployment of SNAP in a production data center (with over 8,000 servers and over 700 application components) has already helped developers uncover 15 major performance problems in application software, the network stack on the server, and the underlying network.

130 citations


Patent
14 Dec 2011
TL;DR: In this article, a method for converting a mobile web application into a native application and an apparatus using the method are disclosed, which may include: the steps of receiving at least one of a web implementation document that implements the mobile Web application and a uniform resource locator (URL) for a local file.
Abstract: A method for converting a mobile web application into a native application (the term “app” has the same meaning as the native application) and an apparatus using the method are disclosed. The method for converting a mobile web application into a native application may include: the steps of receiving at least one of a web implementation document that implements the mobile web application and a uniform resource locator (URL) for a local file; separating and analyzing a user interface element of the mobile web application based on the at least one of the web implementation document and the local file; and converting the mobile web application into the native application by mapping the analyzed user interface element to a native control that implements the native application.

104 citations


Journal ArticleDOI
TL;DR: A recent survey of organizations with experience using cloud applications and platforms reveals that they are more bullish on the technology and more aggressive in their adoption plans than the overall market.
Abstract: A recent survey of organizations with experience using cloud applications and platforms reveals that they are more bullish on the technology and more aggressive in their adoption plans than the overall market.

87 citations


Patent
03 Oct 2011
TL;DR: In this paper, a seamless cross-environment workflow is provided in a multi-operating system computing environment, which includes a mobile operating system and a desktop operating system running concurrently and independently on a mobile computing device.
Abstract: A seamless cross-environment workflow is provided in a multi-operating system computing environment. The multi-operating system computing environment may include a mobile operating system and a desktop operating system running concurrently and independently on a mobile computing device. Two or more application programs, running in independent operating systems, share user interaction state information including user data, user settings, and/or application context information. Interaction state information may be shared for applications that are used primarily to access and edit local user content as well as applications that communicate to a remote server or access and navigate other remote content (e.g., Internet-based application, browser, etc.). The mobile computing device may be a smartphone running the Android mobile operating system and a full desktop Linux distribution on a modified Android kernel.

83 citations


Patent
Graeme John Rimmer1
24 Jan 2011
TL;DR: In this paper, a mobile application is downloaded from a server to a mobile device using a web browser and the web browser cookies associated with the mobile application are stored on the mobile device.
Abstract: Described are systems and methods for adding information to a mobile application. A mobile application is downloaded from a server to a mobile device using a web browser. A web browser cookie associated with the mobile application is stored on the mobile device. A request is sent from the mobile application to the server, where the request includes information from the stored web browser cookie. Mobile application data associated with the stored web browser cookie from the server is received by the mobile application in response to the request. The mobile application is then provided with access to the mobile application data.

Journal ArticleDOI
TL;DR: An evaluation methodology to validate the performance of a UML model, representing a software architecture, based on open and well-known standards and specifying a mapping process based on a compositional approach based on the ArgoPerformance tool.
Abstract: In this paper, we present an evaluation methodology to validate the performance of a UML model, representing a software architecture. The proposed approach is based on open and well-known standards: UML for software modeling and the OMG Profile for Schedulability, Performance, and Time Specification for the performance annotations into UML models. Such specifications are collected in an intermediate model, called the Performance Context Model (PCM). The intermediate model is translated into a performance model which is subsequently evaluated. The paper is focused on the mapping from the PCM to the performance domain. More specifically, we adopt Petri nets as the performance domain, specifying a mapping process based on a compositional approach we have entirely implemented in the ArgoPerformance tool. All of the rules to derive a Petri net from a PCM and the performance measures assessable from the former are carefully detailed. To validate the proposed technique, we provide an in-depth analysis of a web application for music streaming.

Journal ArticleDOI
TL;DR: A controlled experiment examining the relationship between coupling in service-oriented designs, as measured using a recently proposed suite of SOC-specific coupling metrics and software maintainability in terms of the specific subcharacteristics of analyzability, changeability, and stability indicates a statistically significant causal relationship.
Abstract: One of the goals of Service-Oriented Computing (SOC) is to improve software maintainability as businesses become more agile, and thus underlying processes and rules change more frequently. This paper presents a controlled experiment examining the relationship between coupling in service-oriented designs, as measured using a recently proposed suite of SOC-specific coupling metrics and software maintainability in terms of the specific subcharacteristics of analyzability, changeability, and stability. The results indicate a statistically significant causal relationship between the investigated coupling metrics and the maintainability of service-oriented software. As such, the investigated metrics can facilitate coupling related design decisions with the aim of producing more maintainable service-oriented software products.

Patent
22 Apr 2011
TL;DR: A mobile electronic device such as a mobile phone includes wallet application software for receiving, storing, encrypting, and transmitting selected payment card data as mentioned in this paper, such as credit card data.
Abstract: A mobile electronic device such as a mobile phone includes wallet application software for receiving, storing, encrypting, and transmitting selected payment card data. A tab including a programmable magnetic stripe is associated with a controller for receiving transmitted payment card data and programming the stripe with selected data. The tab is mounted directly to the electronic device or to an attachment device removably coupled to the electronic device. The attachment device may comprise a case for the mobile electronic device that allows access to a user interface and display of the mobile electronic device.

Patent
27 Apr 2011
TL;DR: In this paper, the authors describe a system, method, and/or machine readable medium including a set of stored instructions that, if executed by a processor, may cause one or more computers to receive user input via a platform independent web-based interface.
Abstract: A system, method, and/or machine readable medium including a set of stored instructions that, if executed by a processor, may cause one or more computers to receive user input via a platform independent web-based interface, wherein the user input is to identify application logic and one or more data repositories. The instructions can also cause one or more computers to generate a reusable web service based at least in part on the user input, and construct an application workflow based at least in part on the reusable web service. As a result of usage of such a web-based application development platform, users can create/assemble/generate both traditional & non-traditional software applications/services to perform a specific business functions or operations. Moreover, non-traditional software components are sharable web services, which can be used to create/generate a composite application.

Journal ArticleDOI
TL;DR: An architecture of reconfigurable multiagent systems is defined, where a reconfiguration agent modeled by nested state machines is affected to each device of the execution environment to apply local automatic reconfigurations, and a coordination agent is proposed for any coordination between devices in order to guarantee safe and adequate distributed reconfigurements.
Abstract: This paper deals with distributed multiagent reconfigurable embedded-control systems following the component-based International Industrial Standard IEC61499 in which a function block (FB) is an event-triggered software component owning data and a control application is a distributed network of FBs. We define an architecture of reconfigurable multiagent systems, where a reconfiguration agent modeled by nested state machines is affected to each device of the execution environment to apply local automatic reconfigurations, and a coordination agent is proposed for any coordination between devices in order to guarantee safe and adequate distributed reconfigurations. A communication protocol is proposed in our research to handle coordinations between agents by using well-defined coordination matrices. We define, in addition, Extensible Markup Language (XML) based implementations for both kinds of agents, where XML code blocks are exchanged between devices. The contributions of the paper are applied to two benchmark production systems available in our laboratory.

Patent
29 Jun 2011
TL;DR: In this article, a method for deploying an application in a virtual platform and a VMs manager is presented, which comprises the following steps of: pre-making an operating system mirror image of a virtual machine and installation scripts of an application software packet, wherein an automatically executed application deployment program is installed in the operating system mirrors image; generating an application request number and a virtual machines number according to a deployment request of application, and storing the application software packets and the installation scripts corresponding to the deployment request to a storage position corresponding to application request numbers after a physical machine is distributed to
Abstract: The invention provides a method for deploying application in a virtual platform and a virtual platform manager. The method comprises the following steps of: pre-making an operating system mirror image of a virtual machine and installation scripts of an application software packet, wherein an automatically executed application deployment program is installed in the operating system mirror image; generating an application request number and a virtual machine number according to a deployment request of application, and storing the application software packet and the installation scripts corresponding to the deployment request to a storage position corresponding to the application request number after a physical machine is distributed to the application; copying the operating system mirror image on the physical machine, wherein the operating system mirror image is used as virtual disk start of the virtual machine on the physical machine; and after the virtual machine is started, acquiring the application request number and the virtual machine number corresponding to the virtual machine by the application deployment program in the operating system mirror image, and then automatically executing the application. According to the method and the virtual platform manager, automatic dynamic configuration and deployment can be performed on the application, and difficulty and workload of application deployment are reduced.

Proceedings ArticleDOI
15 Aug 2011
TL;DR: The challenges encountered in globally dispersed software projects are presented and a proposal to exploit cloud computing characteristics and privileges both as a product and as a process to improve GSD is proposed.
Abstract: With the expansion of national markets beyond geographical limits, success of any business often depends on using software for competitive advantage. Furthermore, as technological boundaries are expanding, projects distributed across different geographical locations have become a norm for the software solution providers. Nevertheless, when implementing Global Software Development (GSD), organizations continue to face challenges in adhering to the development life cycle. The advent of the internet has supported GSD by bringing new concepts and opportunities resulting in benefits such as scalability, flexibility, independence, reduced cost, resource pools, and usage tracking. It has also caused the emergence of new challenges in the way software is being delivered to stakeholders. Application software and data on the cloud is accessed through services which follow SOA (Service Oriented Architecture) principles. In this paper, we present the challenges encountered in globally dispersed software projects. Based on goals mutually shared between GSD and the cloud computing paradigm, we propose to exploit cloud computing characteristics and privileges both as a product and as a process to improve GSD.

Book ChapterDOI
01 Jan 2011
TL;DR: The System Power Optimization Tool (SPOT) is described, which is a model-driven tool that automates power consumption emulation code generation and simplifies analysis and empirically demonstrates how SPOT can estimate power consumption to within ∼3-4% of actual power consumption for representative smartphone applications.
Abstract: Smartphones are mobile devices that travel with their owners and provide increasingly powerful services. The software implementing these services must conserve battery power since smartphones may operate for days without being recharged. It is hard, however, to design smartphone software that minimizes power consumption. For example, multiple layers of abstractions and middleware sit between an application and the hardware, which make it hard to predict the power consumption of a potential application design accurately. Application developers must therefore wait until after implementation (when changes are more expensive) to determine the power consumption characteristics of a design. This paper provides three contributions to the study of applying model-driven engineering to analyze power consumption early in the lifecycle of smartphone applications. First, it presents a model-driven methodology for accurately emulating the power consumption of smartphone application architectures. Second, it describes the System Power Optimization Tool (SPOT), which is a model-driven tool that automates power consumption emulation code generation and simplifies analysis. Third, it empirically demonstrates how SPOT can estimate power consumption to within ∼3-4% of actual power consumption for representative smartphone applications.


Patent
04 Nov 2011
TL;DR: In this article, an application generation system configured to automatically generate an application having a desired function is disclosed, which includes a mobile terminal including computation means for performing predetermined computation processing, image capture means for capturing an information code, decoding means for decoding the information code to extract character information, display means for displaying predetermined information, and first communication means for communicating character information.
Abstract: An application generation system configured to automatically generate an application having a desired function is disclosed. The application generation system has a mobile terminal including computation means for performing predetermined computation processing, image capture means for capturing an information code, decoding means for decoding the information code to extract character information, display means for displaying predetermined information, and first communication means for communicating character information. The system includes a server having second communication means for communicating with the first communication means, an assessment database storing assessment rules, a program component database storing program components, and analysis means which analyzes character information received by the second communication means to determine results of the analysis based on the assessment rules stored in the assessment database to determine information related to attributes and configuration of an application to be generated as well as program components configuring the application.

Patent
19 Jan 2011
TL;DR: In this article, a mobile terminal and an application server are used to dynamically process application requests and matches application software in the area determined by the position area information according to the pre-stored geographical position information corresponding to application software and pushes the essential information of the matched application software to the mobile terminal.
Abstract: The invention provides a method, a mobile terminal and an application server for dynamically processing application. The method comprises the following steps that: after receiving an instruction of a user, the mobile terminal acquires first geographical position information of the mobile terminal, sets position area information related to the first geographical position information and sends application request information to the application server, wherein the application request information carries the position area information; and after receiving the application request information, the application server matches application software in the area determined by the position area information according to the pre-stored geographical position information corresponding to application software and pushes the essential information of the matched application software to the mobile terminal. By the method, whether the application is provided for the user is automatically determined according to the geographical position of the user, so that the user can check the information in a specified area and interact with the application.

Journal ArticleDOI
Yousef A. Khalidi1
TL;DR: The cloud represents a drastic shift, not only in terms of the new economics it brings to bear, but also in termsOf the new possibilities it enables, the full benefits of this new paradigm requires re thinking the way applications are built.
Abstract: The cloud represents a drastic shift, not only in terms of the new economics it brings to bear, but also in terms of the new possibilities it enables. Realizing the full benefits of this new paradigm requires re thinking the way we build applications.

Journal ArticleDOI
TL;DR: A feasibility study of the proposed infra structure on a scaled-down three-substation power system laboratory setup is described and performance metrics are provided that quantify total time latencies on IEC61850 implementation.
Abstract: We propose an autonomous state estimation based on robotic concepts and advanced state estimation methods. An autonomous, intelligent monitoring infrastructure is proposed that reliably and automatically detects devices as they are plugged-in or -out; it identifies changes in system state and automatically updates the real-time model of the system. The real-time model is used for control, operation, and optimization of the system via application software that are not addressed in this paper. The proposed infrastructure uses modern intelligent electronic devices (IEDs) named universal monitoring protection and control units (UMPCUs) that are capable of handling three key data sets for the component that they are attached to: 1) connectivity, 2) device model, and 3) measurements. The connectivity data represent the connecting points where a device is connected to the power grid, the device model data provide the mathematical model of the device as an object, and the measurements provide the numeric values of physical quantities such as voltages and currents captured by the data acquisition system. This paper describes a feasibility study of the proposed infra structure on a scaled-down three-substation power system laboratory setup. Performance metrics are provided that quantify total time latencies on IEC61850 implementation.

Patent
30 Dec 2011
TL;DR: In this article, a remote control system and a method for a multi-media device (12), such as a television (16), is provided, where the user interface elements are relevant to the initiated application software program.
Abstract: A remote control system (10) and method (100) for a multi-media device (12), such as a television (16), is provided. The remote control device (14) includes a display (42). The remote control device (14) can be a tablet computer (44), a laptop computer or a smart phone. When an application software program is initiated on the multi-media device (12), one or more user interface elements are presented on the display (42) of the remote control device (14). The user interface elements are relevant to the initiated application software program. One or more of the user interface elements can be manipulated such that the application software program adjusts in response. The system (10) and method (100) can provide an adaptive and/or customizable user interface that is appropriate for the application software that is initiated, thereby enhancing user interaction.

Journal ArticleDOI
TL;DR: Empirical results show that open-source office suites were consistently perceived to be superior in meeting ease of customization and cost criteria, whereas traditional software models were superior in fulfilling functionality, ease of use, and support requirements.
Abstract: Until recently, organizations planning to acquire application software (AS) have had no choice but to adopt proprietary, on-premises software. With the advent of open-source and on-demand solutions, new models for developing and distributing software have entered the stage providing IS managers with more options in AS selection. On the basis of an Analytic Hierarchy Process model, we propose a framework including software package and implementation attributes on different hierarchy levels to examine how IS managers evaluate the relative fulfilment of key selection criteria by traditional, open-source, and on-demand office suites. By testing the framework with a random sample of 254 IS managers of 166 smaller and 88 mid-sized/larger firms, we validate its validity and usefulness in evaluating different software delivery models. Our empirical results show that open-source office suites were consistently perceived to be superior in meeting ease of customization (i.e., extensibility and adaptability) and cost criteria (i.e., acquisition and maintenance cost), whereas traditional software models were superior in fulfilling functionality, ease of use, and support requirements. On-demand office suites excelled in the fulfilment of time-to-value and data recoverability. We discuss further results of the comparison of the three software models, and derive practical and research implications for office suite selection.

Proceedings ArticleDOI
15 Nov 2011
TL;DR: This article compares existing Open Source cloud computing management platforms and provides specific recommendations for use, partly due to uncertainty and a lack of information about such possibilities.
Abstract: An increase in the development and use of Open Source (OS) has been observed in recent years, in particular in the fields of programming, operating systems, and application software. According to studies carried out by Gartner and Forrester however, OS is not yet used intensively for structuring and managing cloud computing platforms. This is all the more remarkable in that it is in this field in particular that it would be possible to structure cloud management platforms efficiently and cost-effectively using the OS systems available today. They are available as alternatives to commercial suppliers and enable private, hybrid and community cloud solutions to be implemented. However, many commercial enterprises, public administrations and other institutions do not take advantage of them, partly due to uncertainty and a lack of information about such possibilities. This article therefore examines this subject, compares existing Open Source cloud computing management platforms and provides specific recommendations for use.

Journal ArticleDOI
TL;DR: Experiments show that the derived detectors achieve low-overhead error detection while providing high coverage for errors that matter to the application.
Abstract: This paper presents a technique to derive and implement error detectors to protect an application from data errors. The error detectors are derived automatically using compiler-based static analysis from the backward program slice of critical variables in the program. Critical variables are defined as those that are highly sensitive to errors, and deriving error detectors for these variables provides high coverage for errors in any data value used in the program. The error detectors take the form of checking expressions and are optimized for each control-flow path followed at runtime. The derived detectors are implemented using a combination of hardware and software and continuously monitor the application at runtime. If an error is detected at runtime, the application is stopped so as to prevent error propagation and enable a clean recovery. Experiments show that the derived detectors achieve low-overhead error detection while providing high coverage for errors that matter to the application.

Patent
16 Mar 2011
TL;DR: In this article, an intelligent mobile phone blind-guiding device, comprising a mobile phone camera module, an embedded mobile phone processor, a software module, a wireless signal emitting and receiving module, and a back ground server, is presented.
Abstract: The invention discloses an intelligent mobile phone blind-guiding device, comprising a mobile phone camera module, an embedded mobile phone processor, a software module, a mobile phone wireless signal emitting and receiving module, an input and output interactive module and a back ground server, wherein the mobile phone camera module comprises a mobile phone pick-up lens and an image sensor; the embedded mobile phone processor and the software module comprise an embedded processor and an embedded operating system of a mobile phone as well as application software running on the embedded operating system; and the application software is blind-guiding software. Feature analysis is carried out on collected images through a machine vision technology, and the features of field images are matched with obstacle parameters in a background database by using an artificial intelligence technology, thereby achieving recognition and position interpretation of barriers and using voice and vibratory modes to prompt a blind person to move. The blind-guiding device of the invention is in common use and is low in cost, and has functional expansibility and upgrading capabilities.

Patent
09 Nov 2011
TL;DR: In this article, an application software construction platform is presented, which provides a wizard graphical prompt interface for a software user, automatically constructs application software according to a template on the basis of input information, and sends an access address of the application software to the software user.
Abstract: The invention discloses an application software construction platform and an application software construction method and relates to the technical fields of model driving, components and cloud computing. The application software construction platform provides a wizard graphical prompt interface for a software user, automatically constructs application software according to an application softwaretemplate on the basis of input information, and sends an access address of the application software to the software user; and the software user uses the application software by the access address andcan manage the application software. By the platform and the method provided by the invention, the development complexity of the application software is greatly reduced, and informatization construction cost and maintenance cost can be reduced.