SmartApp: The Future of Application Development

An open-source application development accelerator that delivers federally compliant, secure application code in seconds.

What if—rather than coding these features by hand—a developer could simply select certain options from a prepopulated list, and have an application’s code automatically generated? Depending on the application, an automated process could save thousands of hours of labor, and would allow developers to focus on user integration.

This is the world of SmartApp. SmartApp is an application development accelerator that saves significant time in application stand-up and delivery. Combining modern technologies (HTML5, CSS3, JavaScript) with Java backends, SmartApp delivers responsive, mobile-friendly, and REST-based applications.

With SmartApp, developers select an application’s components from a list of menu items. These choices result in a secure, unit-tested, and standardized project structure automatically generated to their specifications. While traditional application development takes several weeks of concerted effort, with SmartApp the same code is automatically generated in mere seconds.

SmartApp Benefits:

Reduced Development Startup Time. SmartApp is distributed as a Vagrant-ready Docker image; once a developer loads the image on a laptop, they gain a fully configured system that is ready for immediate development.
Traditional startup time for a development project requires 2-3 weeks for a dedicated Team Lead. SmartApp startup averages 10-20 minutes; including the time it takes to download the initial image.

Decreased Project Creation Time. Traditional projects are created laboriously by the lead developer, who must define an initial project structure and populate it with a multitude of different libraries and components. Integrating and validating compatibility across these items can take weeks.
In 10 minutes with SmartApp, developers answer a set of guided questions that identify a choice of libraries, architectures, and database back-ends for a pre-validated and compliant solution.

The SmartApp development accelerator creates a standard project structure that supports:

  • Build Automation Scripting
  • User Authentication and Authorization
  • Automated Testing
  • Performance/Load Testing
  • Test Coverage Analysis
  • Code Quality Metrics
  • Caching
  • Monitoring and Metrics
  • ELK (ElasticSearch)

When a project is ready for additional functionality, SmartApp allows the developer to describe new entities and relationships via the command line. Scaffolding with SmartApp generates all associated code and configuration across the various tiers required for managing the entities:

  • Database Definition
  • Domain Code
  • RESTful Microservices
  • Unit Tests
  • User Interface to Create/Update/Delete (CRUD) entities and traverse related entities

Related Contents