"

Accelerators for Web API Integration Development
Austin Alkire & Jim Ladd
August 5, 2021
In this paper, we present a set of recommendations with the goal of accelerating the development of integrations with web-based interfaces. These accelerators were constructed over decades of system integration experience and recently re-validated on a real-world project. While the focus of this effort was on integration development, most of the accelerators can be applied on other types of software development.
See the publication

AWS Serverless Patterns – S3
Ivan Castanon & Jim Ladd
July 22, 2021
While the solution space for software development is constantly updated with new technologies, the requirements and artifacts of the problem space can appear to be timeless. Even with cutting edge technologies like the AWS serverless stack, software developers are still burden with vintage entities like document and image files. The patterns presented in this paper cover uploading documents to a private S3 bucket by multiple users, allowing read access to a subset of the user population, and manipulating the documents in a serverless realm.
See the publication

CAC in the Cloud
Jim Ladd
July 16, 2021
The Common Access Card (CAC) is a “smart” card and provides standard identification for active and reserve military personnel, Department of Defense civilian employees, and eligible contractors. The paper describes three cloud-based architectures that were developed to integrate the CAC in the security service of a web application. The first two versions relied on NGINX, Docker, and AWS Elastic Container Service (ECS). The latest version is based on AWS serverless stack including API Gateway, Lambda, and S3. All of the versions used GitLab and its CI/CD pipeline service.
See the publication

Heterogeneous Architecture for the Physiological Analysis Tool
Jim Ladd, Hansel Rios Torres, & Jason Young
May 20, 2021
The Physiological Analysis Tool (PAT) was a recent proof-of-concept project at SOFWERX that explored the limits of hosting multiple physiological and sentiment analysis systems on an on-body computing platform. Five different sentiment-based systems along with three physiological measurement tools were incorporated into a system that can concurrently analyze the same event. To accommodate this wide spectrum of technologies, a heterogeneous platform was developed that integrates Android, Ubuntu, and Windows computing environments with two point-to-point cable-based connections. The architecture of this system is presented in this document.
See the publication

Fast Path to AWS Serverless Applications
Sakina Shaikh & Jim Ladd
May 12, 2021
This project presents a serverless implementation of a notes management application. We started with the example from the Serverless Stack guide and evolved it to fit our requirements. The client project uses Nodejs, React, Amplify, and CloudFront while the service project utilizes Cognito, API Gateway, Lambda, DynamoDB, and Python. The two projects are maintained in GitLab and uses its CI/CD pipeline feature. This project deviated from the Serverless Stack guide in the use of GitLab instead of GitHub and Python instead of Nodejs for the Lambda language.
See the publication

React and Flask Stacks for Docker on the Raspberry Pi
Jim Ladd
January 12, 2021
The Clockwerx project started with the desire to program a set of wall mounted clocks via a web application. After a false start, the architecture was refactored to include a web application based on a React stack to provide a user interface. A web service based on a Flask stack was selected to provide the interface to the clock display mechanism. Both of these services are embedded in Docker containers and hosted on a Raspberry Pi computer. This document presents an overview of the architecture and several tips and details for building out a similar system.
See the publication

First Steps Toward CI/CD with WordPress, SiteGround, and GitHub
Lewis Morgan, Patrick Schippers, & Jim Ladd
December 29, 2020
Continuous Integration/Continuous Development (CI/CD) processes have been at the forefront of the software development industry for several years now. While CI/CD concepts are easy to grasp, they can be difficult to implement while maintaining schedules and achieving milestones. This paper describes our initial steps toward a CI/CD pipeline for our client facing websites that use WordPress and SiteGround. We incorporate GitHub’s repository to maintain our source code while using GitHub’s Actions service to automate the deployment to a staging environment hosted by SiteGround.
See the publication

Infrared Transmit Validation for the Raspberry Pi
Rob Simon & Jim Ladd
August 11, 2020
A recent project at SOFWERX relied on IR to remotely control a target device. In theory, the approach was attractive but, in practice, the original version proved to be unreliable. This paper describes an approach to increase the stability of this type of computer interface by validating the IR signal transmission using python custom code and the Linux Infrared Remote Control (LIRC) software.
See the publication

ATAK Low Latency Camera Platform (ALLCaP)
Jason Young & Jim Ladd
July 29, 2020
The ATAK Low Latency Camera Platform (ALLCaP) is a proof of concept that provides near real-time video display. The viewing device is an ATAK enabled tablet or phone while the video source is a USB-based camera or another ATAK enabled device. This approach does not rely on signaling, discovery, or intermediary servers and can be used with Wi-Fi or software defined radio (SDR) radios. The project uses the Android Team Awareness Kit, UV4L, and webrtc-streamer software.
See the publication

Integrating Finite State Models with React and Redux
Jim Ladd
June 29, 2020
This paper presents how Finite State Models (FSM) can be utilized to increase the knowledge and specification of the problem domain and drive the design of React/Redux-based software in the solution domain.
See the publication

Building a Zero Trust Network with Open Source and Community Version Software
Jim Ladd
May 13, 2020
Zero Trust Networks (ZTN) represent a new wave of network security technology. The mantra with this approach is “Never trust, always verify”. This paper describes a Zero Trust Network implementation constructed using a Service Oriented Architecture (SOA) with open source, community version, and custom software. The key components include Drools, XGBoost, NGINX, Mender, and WSO2 hosted on AWS EC2 instances.
See the publication