Computer-Aided Process and Tools for Mobile Software Acquisition

Abstract

Mobile devices have, in many ways, replaced traditional desktops in usability, usefulness, and availability. Many companies are scrambling to develop enterprise strategies to provide mobile devices and application support for their employees, and the DoD is taking the lead in the federal government's campaign to deploy mobile devices. A successful DoD mobile software acquisition program requires efficient and effective means to assure the proper functioning of the applications. As the majority of future mobile apps will be developed by small companies (or crowdsourcing individuals) and have relatively short development cycles, a traditional software verification process that relies on the testing of source code is not effective for vetting mobile apps. This paper presents a new approach for vetting mobile software. It allows subject matter experts to specify desirable and undesirable behaviors of the mobile apps as executable statecharts, and to verify the target software by running the automatically generated statechart code against the execution trace of the mobile apps using log file-based runtime verification. A case study of formally specifying, validating, and verifying a set of requirements for an iPhone application that tracks the movement of the iPhone user is used to demonstrate the new approach.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Apr 01, 2013
Accession Number
ADA586422

Entities

People

  • Christopher Bonine
  • Man-tak Shing
  • Thomas W. Otani

Tags

Communities of Interest

  • Cyber
  • Energy and Power Technologies
  • Materials and Manufacturing Processes
  • Weapons Technologies

DTIC Thesaurus Topics

  • Acquisition
  • Case Studies
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Computing Devices
  • Mobile Application Software
  • Mobile Devices
  • Mobile Operating Systems
  • Mobile Phones
  • Mobile Software
  • Operating Systems
  • Smartphones
  • Software Testing
  • Systems Engineering
  • Verification

Fields of Study

  • Computer science
  • Engineering

Readers

  • Agent-Based Social Robotics and Mobile-Assisted Learning in Virtual Environments.
  • Software Engineering.