Scope, Budget, Schedule + 2
Jim Ladd
LinkedIn
September 8, 2024
This article describes two dimensions beyond scope, budget, and schedule for software project management.
Cosine of Progress
Jim Ladd
LinkedIn
August 5, 2024
This article presents two techniques to keep teams moving forward when faced with incomplete or missing information.
My Top 3 RTFMs
Jim Ladd
LinkedIn
July 26, 2024
This article presents my top three all-time reading recommendations.
Business Process Optimization Domain Analysis
Jim Ladd
Wazee Group, Inc.
May 26, 2022
The paper presents Business Process Optimization (BPO) as the
next phase in the evolution of process automation technologies. A definition is presented
along with a domain analysis that provides a path forward in the realm of process
automation.
Accelerators for Web API Integration Development
Austin Alkire & Jim Ladd
SOFWERX
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.
AWS Serverless Patterns – S3
Ivan Castanon & Jim Ladd
SOFWERX
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.
CAC in the Cloud
Jim Ladd
SOFWERX
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.
Heterogeneous Architecture for the Physiological Analysis Tool
Jim Ladd, Hansel Rios, & Jason Young
SOFWERX
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.
Fast Path to AWS Serverless Applications
Sakina Shaikh & Jim Ladd
SOFWERX
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.
React and Flask Stacks for Docker on the Raspberry Pi
Jim Ladd
SOFWERX
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.
First Steps Toward CI/CD with WordPress, SiteGround, and GitHub
Lewis Morgan, Patrick Schippers, & Jim Ladd
SOFWERX
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.
Infrared Transmit Validation for the Raspberry Pi
Rob Simon & Jim Ladd
SOFWERX
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.
ATAK Low Latency Camera Platform (ALLCaP)
Jason Young & Jim Ladd
SOFWERX
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.
Integrating Finite State Models with React and Redux
Jim Ladd
SOFWERX
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.
Building a Zero Trust Network with Open Source and Community Version Software
Jim Ladd
SOFWERX
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.
Taking the Pi for a Walk Through the AWS Greengrass
Jim Ladd
Wazee Group, Inc.
June 26, 2019
This is a consolidated step-by-step guide that configures a blank
Raspberry Pi to send a message to a service within the AWS cloud in a secure, reliable, and
widely acceptable fashion.
Light Detection Circuit for a 650nm Laser Diode
Jim Ladd
Wazee Group, Inc.
March 9, 2019
This paper presents a circuit for detecting a light source and the interruption
of that light source. Visual indication of the light source is provided by a LED. The circuit also signifies
when the light source is interrupted by illuminating a different LED for a few seconds before resetting.
A Modeling Approach For AWS DynamoDB
Jim Ladd
Wazee Group, Inc.
December 23, 2018
NoSQL databases represent a fascinating technology and Amazon Web Services
DynamoDB, with its performance features and extremely low cost, is a very interesting option. To
facilitate the evaluation and potential transition to DynamoDB, this document presents a modeling approach
that is straightforward and consistent. A sample problem is presented along with the logical view of the
data. The physical view of the table is created by following a set of design rules. The Python code used
to create and query the table is also presented.
Real World BPM Patterns
Jim Ladd
Wazee Group, Inc.
November 13, 2018
This paper presents several business process management (BPM) model patterns
that were identified and leveraged during client engagements. The objective of this document is to assist
someone new to BPM modeling to realize the same benefits that my clients did without the same learning curve.
Evaluating “Team of Teams” Concepts for Large Scale Software Development
Jim Ladd
Wazee Group, Inc.
October 22, 2018
This document examines the concepts presented in the “Team of Teams” book
by General Stanley McChrystal and evaluates them for large scale software development. In 2003, General
McChrystal took command of the Joint Special Operations Task Force. At that time, the Task Force was a
hierarchical, highly disciplined organization of thousands of men and women. To defeat Al Qaeda in Iraq,
the Task Force leadership had to transform this command and control structure based on decades of refinement
and principles to an agile, responsive, and adaptable network, a Team of Teams.
Putting Physhun To Work
Jim Ladd & Travis Alvey
The Server Side
August 1, 2008
Monitoring simple transaction processes is easy, but monitoring complex
processes is difficult. When the complex process spans multiple Commercial-Off The-Shelf (COTS) systems
that provide little support for interoperability, the monitoring tasks becomes very, very difficult.
This paper describes how the XML Transaction Monitor (XTM) project faced challenges related to
inter-system transaction monitoring, and how the Physhun framework proved an integral component in the
overall solution.
Implementing Finite State Machines with Physhun and Spring
Justin McCarter & Jim Ladd
The Server Side
July 18, 2008
Processes involving multiple steps that require decision points within
and outside of each step can be inordinately complex to program. But this type of process modeling
has long-established solutions in computing. This article presents the Physhun project, a
Spring-based framework for implementing complex processes through Finite State Machine models.
Physhun provides finite State Model persistence and transaction management with synchronous or
asynchronous behavior.
Boldly Automating Where No Automation Has Gone Before
Jim Ladd
Industry Week
April 28, 2008
This paper presents the unique way Wazee Group automated the processing of
grand format printers and dramatically raised the throughput of the nation's leading billboard printer.
Rebate Forecasting For The Construction Industry
Jim Ladd
Wazee Group, Inc.
April 10, 2005
Wazee Group has developed the Rebate Forecasting & Management (RFM) tool
that allows companies to easily and accurately manage their rebate programs. This software increases
the accuracy of the forecasts, simplifies the data entry tasks, and offers greater insight into the
rebate domain.
Turn Any Microsoft Windows® Application Into A Web Service
Jim Ladd
Wazee Group, Inc.
March 23, 2005
WinApp Navigator is a graphical development and maintenance environment
for complex integrations with Windows applications. WinApp Navigator is a powerful utility that
can be used to automate human user tasks within Windows applications in order to join them into
larger, integrated systems.
X Broker - A Web Services Platform
Jim Ladd
Wazee Group, Inc.
September 10, 2004
The architecture of the xBroker™ is based on a web services paradigm with a J2EE
architecture. The client applications can request for a service to be performed and the
xBroker™ system will carry out the required processing. At the completion of the
processing the xBroker™ will return a reply and any associated data to the client
application.
Graphical Development Environment for Complex, Terminal-based Integrations
Jim Ladd
Wazee Group, Inc.
April 4, 2002
Legacy Navigator enables development of robust, flexible integrations to
terminal based legacy systems through the original user interface. It consists of a graphical
development and maintenance environment and runtime libraries. It is a powerful utility that can
be used to automate integrations with terminal based applications in order to connect them into
larger, integrated systems. Additionally, Legacy Navigator can be leveraged to turn existing legacy
systems into Web Services, add modern user interfaces to legacy systems and otherwise extend the
lifetime and usefulness of existing legacy systems quickly, easily and at a low cost.
Developing a medical diagnostic system with OOA/RD
Jim Ladd
Object Magazine
November 15, 1994
This paper presents a view that software development should shift to
object-oriented programming (OOP), object-oriented analysis (OOA), and Recursive Design (RD).
Locomotion Emulator: A Robot Testbed For Navigation Research
Jim Ladd
CMU Field Robotics Center
July 1, 1988
The Locomotion Emulator (LE) is a mobile robot testbed that overcomes
limitations of previous testbeds. The LE consists of a locomotor, a mechanism capable of completely
general locomotion on a surface, and an emulator, a software environment that specializes this
mechanism to mimic the characteristics of different vehicles. The LE’s general locomotion can subtend
all the trajectories important to navigational research. This paper discusses the need for such a
vehicle and describes the LE mechanism and software.
Carnegie Mellon Leads in Real-Time Robots
Jim Ladd
Intel Innovator
March 1, 1988
The Field Robotics Center (FRC) at Carnegie-Mellon University develops mobile,
perceptive, forceful robots for duty in unpredictable environments such as unstructured work sites and
natural terrain. This paper presents an overview of those robots.
NAVLAB : An Autonomous Navigation Testbed
Jim Ladd, et al.
CMU Robotics Institute
November 1, 1987
The Field Robotics Center (FRC) at Carnegie-Mellon University develops mobile,
perceptive, forceful robots for duty in unpredictable environments such as unstructured work sites and
natural terrain. This paper presents an overview of those robots.