Systems & Software Development Primer for Public Officials
Intended to provide a clear, civic-minded perspective for understanding modern software systems and their governance implications:
1. Understanding SQL: Getting Data In and Out of Systems
Structured Query Language (SQL) is the foundation for interacting with databases — the systems that store your agency’s information. SQL allows you to create, read, update, and delete data — often abbreviated as CRUD (see below).
In government systems, SQL might:
- Pull data for a monthly performance report (
SELECTstatements) - Add a new case record (
INSERT) - Update contact information (
UPDATE) - Archive or remove outdated records (
DELETE)
The key takeaway: SQL provides visibility and control. Even if you never write SQL directly, understanding it ensures you can ask the right questions about where data lives, who controls it, and how it flows between systems.
2. CRUD: The Basic Functions of Data and Interfaces
Every modern application — from budget tracking tools to permit systems — is built on CRUD operations:
- Create: Add a new record
- Read: Retrieve and display data
- Update: Edit existing information
- Delete: Remove data
Front-end interfaces (web pages, dashboards, or mobile apps) are just friendly wrappers for these operations. When staff “enter data” or “pull a report,” they’re performing CRUD actions.
This framing helps leaders assess vendors and projects:
“What data can we create, read, update, and delete — and who has permission to do so?”
3. Open Data and the Public Mandate
Government data is public by default unless protected for privacy or security reasons. Open data is not just good practice — it’s often the law:
- Sunshine Laws ensure transparency in records and decisions.
- Open Data Acts (federal, state, and local) encourage the publication of machine-readable datasets.
Benefits of open data:
- Builds public trust through transparency
- Enables innovation by allowing reuse and integration
- Reduces duplicate requests and FOIA workload
As a public steward, the data you oversee outlives any single application or vendor contract. Systems should be designed to export, preserve, and reuse that data easily.
4. Test-Driven Development (TDD): Ensuring Intended Behavior
Test-Driven Development (TDD) is a modern practice where developers write small, automated tests before writing the actual code. Each test defines an expected behavior (“this system should…”) and runs every time the software changes.
For public systems, tests:
- Reduce defects and regressions
- Document intent (“how it’s supposed to work”)
- Build confidence in compliance and correctness
TDD aligns perfectly with the public duty of accountability — it ensures systems behave as promised, even as staff, vendors, and requirements change.
5. Smart Procurement: Start Small, Stay Focused
Software projects succeed when they begin small and focused. A good vendor can deliver more value when the scope is narrow and measurable.
- Positive coordination: Teams align around a clear goal.
- Negative coordination: Too many committees or stakeholders slow progress and increase costs.
Prefer iterative delivery over “big bang” projects. Small, modular systems are easier to maintain, replace, and integrate — and they make it easier to change vendors later.
Big systems often fail not because of bad technology, but because of coordination overhead and unclear ownership.
6. Software Is Never “Done” — But Data Endures
Every system is temporary. Technology evolves; policies change; contracts expire.
But data persists — and as a public official, you are its steward. Plan for data longevity:
- Use open formats (CSV, JSON, XML)
- Maintain clear documentation and data dictionaries
- Ensure export capability before procurement
The real legacy of a system is the data it curates for the next generation of public servants and citizens.
7. Wardley Maps: Where to Innovate vs. Where to Standardize
Wardley Mapping is a strategic tool that helps leaders distinguish between:
- Commodity components (well-understood, standardized tools like hosting, databases, or CRM software)
- Custom innovation (new, uncertain ideas that differentiate your agency or deliver unique value)
Use Wardley Maps to guide investment:
- Don’t reinvent commodities — adopt open standards or cloud solutions.
- Focus innovation on services unique to your mission, where learning and experimentation yield the most public value.
Understanding this distinction helps reduce risk, prevent vendor lock-in, and allocate public funds wisely.
8. The Public Official’s Role in Modern Software
You don’t need to write code to lead digital transformation. You need to:
- Ask the right questions about data, tests, and accountability
- Recognize when a project is exploratory versus routine
- Value open standards and small, iterative delivery
- Understand that data stewardship is a lasting public duty
Modern software leadership is about clarity, stewardship, and humility — knowing when to innovate and when to standardize.