Industry guide · ERP

State Corrections Offender Management Systems: Building a Sentence Computation Engine That Can Show Its Work at a Hearing

Offender Management System software visual showing fingerprint, calendar clock, and calculator.
The short answer

A sentence computation engine built as a standalone service runs $150,000 to $350,000 across 5 to 9 months in Digital Heroes delivery experience, including the dated rule sets, the recomputation history and a time computation sheet a hearing officer can read. A full offender management replacement covering intake, classification, housing, movement, programming and release planning is a multi year program that runs into the millions, and if that is your path you should be talking to Marquis or Syscon rather than to a development firm. Build the computation engine yourself when your credit statutes have changed enough times that a cohort is being calculated by hand, when only one or two people in the records office can explain a release date, or when your vendor's configuration model cannot express a rule the legislature passed last session. Do not build if your sentencing structure is simple, determinate and stable, and your existing module reconciles cleanly against manual checks.

Why the offender record is a calculation, not a file

A state department of corrections runs one number that matters more than every other field it stores: the date a person walks out. Housing, classification, programming, visitation, property and medical scheduling all arrange themselves around it. That date is not entered by anyone. It is computed from a stack of judgments that arrived at different times from different counties, against credit statutes that were in force on the day each offense was committed, then adjusted by good time that is earned, forfeited and sometimes restored every month the person remains in custody.

Most states run this on a system built between the mid 1980s and the mid 2000s, frequently on a mainframe, with a time computation module that two people in the records office genuinely understand. Around it sits a classification spreadsheet, a keep separate list maintained by hand in each facility, a programming waitlist in Access, and a set of reports the legal division quietly recomputes before any hearing because it does not trust them. When one of those two records people retires, the department loses the ability to explain its own release dates.

Real products exist here. Marquis Software eOMIS, Syscon Justice Systems Elite and Tyler Technologies all sell full offender management suites with genuine corrections depth, and none of them is a bad product. The gap is narrower and harder than a feature comparison suggests, and it sits almost entirely inside the calculation.

Problem 1: the release date depends on law that has already changed

Credit and good time statutes move. Legislatures add earned time for program completion, change the accrual rate, carve out violent offenses, and occasionally make a change retroactive for one cohort and not another. Because applying a later and less favourable credit rule to an older offense raises an ex post facto question, a department generally has to keep computing an older sentence under the rules that existed on the offense date, indefinitely. Someone sentenced under a 2009 scheme is still being computed under the 2009 scheme in 2031.

So the engine is not one algorithm. It is a library of dated rule sets, all live at once, selected per sentence by offense date and offense class. Suite vendors address this through configuration, which holds until a new statute has a shape the configuration model cannot express. At that point the fix becomes a code change on a vendor roadmap shared with every other customer, and the records office computes that cohort by hand until it lands. Hand computation for a cohort is precisely where the constitutional exposure lives, because it scales the error.

What a custom build does: make each rule set a named, versioned, independently testable unit with its own fixture cases drawn from real sentences. Adding a 2027 statute means adding a rule set and its tests, not editing the one that governs 2009. Before anything ships, the department reruns the entire population against the change and inspects the diff, so a rule that misfires shows up as four hundred dates moving in the wrong direction rather than as a habeas petition eighteen months later.

Problem 2: consecutive, concurrent, and an aggregate nobody can reproduce

A person rarely has one sentence. They have three from two counties, one consecutive to the others, with presentence custody credit that overlaps between cases and must not be counted twice. A detainer sits behind them from another state. A parole revocation may or may not restore street time depending on your statute. Then an amended judgment arrives six months after intake because a court corrected the credit award, and everything has to be recalculated backwards.

Legacy modules typically store the computed dates and overwrite them on recalculation. That single design choice destroys the department's ability to answer the most common question in litigation, which is not what the date is now but what the date was in March and why it changed.

What a custom build does: treat each sentence as an object carrying its own source judgment, offense date, credit awards and governing rule set, then compute the aggregate as a deterministic function over that set. Every recomputation is stored as a new result with the trigger that caused it. An amended judgment produces a recompute and a diff naming which dates moved and by how many days. Nothing is overwritten, so the question of what the system believed on any past date has an answer that takes seconds rather than a records specialist rebuilding it from a file.

Problem 3: good time is a ledger, not a rate

Departments describe good time as a rate, and then spend their time handling everything that is not the rate. Days are awarded for completing education or treatment programming. Days are forfeited at a disciplinary hearing. Days are restored when that hearing is overturned on appeal, or after a defined period of clean conduct, or by an administrative act. Each of those is an event that moves a release date, sometimes months after the fact.

A system that stores an accrual rate and a running balance can tell you the balance. It cannot tell you why the date moved, which is the only question anyone actually asks. Officers, counsel and the incarcerated person all want the same thing: the specific event, its date, and the authority behind it.

What a custom build does: keep good time as an append only ledger where every award, forfeiture and restoration is an entry carrying its authority, effective date and reference to the hearing or program completion that caused it. The release date is derived from the ledger rather than stored beside it. When a disciplinary appeal succeeds four months later, restoration posts as an entry, the date recomputes, and the notification to the facility and to the person happens because the recompute fired, not because someone remembered.

Problem 4: classification and keep separates are safety, not paperwork

Classification produces a custody level from a scored instrument, with overrides that need a documented reason and an approving authority. Sitting alongside it are keep separate relationships: codefendants, documented rivals, a victim or witness housed in the same system, and staff members. Housing assignment has to respect all of that at once, plus medical and mental health designations, plus the screening obligations that come with the Prison Rape Elimination Act, plus the fact that there are only so many beds in the right unit tonight.

In most departments the keep separate list is printed and taped inside a housing unit office. That is how two people who should never share a dayroom end up sharing one during a movement nobody cross checked at 9pm.

What a custom build does: make keep separate a two way relationship on the record itself so it cannot be satisfied on one side only, and enforce it at the moment of assignment rather than in a nightly report. When a housing move is proposed, the system evaluates the full constraint set and refuses with a stated reason, which also gives the department a defensible record that the check ran. The same engine drives transport and program scheduling, because two people who cannot share a unit also cannot share a van.

Problem 5: show your work, because someone will ask

The output that matters most is a time computation sheet that an incarcerated person, their counsel, a hearing officer and an assistant attorney general defending a habeas petition can all read without a records specialist translating. It should lay out each sentence, the rule set applied and why that rule set governs, the credits awarded with their sources, every good time entry, and the arithmetic that produces the date.

If your current answer is a fixed width printout that only two people can interpret, you are not merely inefficient. You are conceding time and credibility in every proceeding, and you are one retirement away from not being able to explain your own numbers at all.

What this costs and how long it takes

From the justice and public sector work Digital Heroes has delivered, a sentence computation engine built as a standalone service, meaning dated rule sets, aggregate calculation, the good time ledger, full recomputation history and a readable computation sheet, runs $150,000 to $350,000 across 5 to 9 months. That range assumes your legal division can produce a written statement of the current and historic rules, which is itself often the longest pole.

What drives cost up in corrections: the number of distinct historic rule regimes, since a state that has amended credit law six times since 1990 is carrying six live calculators. Mainframe data extraction, particularly where sentence structure was encoded into fixed fields with local conventions. Interfaces to the courts, the state repository, jails and parole board systems, each of which arrives in its own format. And parole, because a discretionary release date and a mandatory one are different calculations that interact.

Full offender management replacement is a different conversation entirely. Those programs run multi year and into the millions, and our honest advice is that a boutique development firm should not bid one alone. Where a firm like ours belongs is the computation engine, the integration layer, and the read models that let the department finally answer questions without a report request.

Build versus buy for a department of corrections

Buy the suite if you are replacing a system that is failing across the board and you need intake, classification, movement, programming, health scheduling, commissary and release planning at once. eOMIS and Elite exist because that is a real need and building it from zero would be reckless with public money.

Our position on where to build. Build the computation engine when your credit law has changed enough that a cohort is calculated manually, when only one or two staff can explain a release date, or when your vendor's configuration cannot express a statute that is already in force. Build the integration and reporting layer when every question from the legislature, a monitor or a federal court takes weeks because the data lives in a system that answers only in its own reports. In both cases you are not replacing the suite. You are taking back the parts where being wrong has constitutional consequences and putting them under your own change control.

The strangler approach works here better than in most domains. The engine runs beside the legacy system, both compute, and the department reconciles daily until the new one is provably right on the full population. Only then does it become the source of truth.

How to choose a developer for offender management software

Ask them to model a person with three sentences from two counties, one consecutive, overlapping presentence credit, a disciplinary forfeiture, and an amended judgment arriving later. A team that has done this will immediately separate the sentence, the rule set and the credit ledger, and will ask which of your statutes is retroactive. A team that proposes a sentences table with a start date and an end date has not understood the problem and will discover it during acceptance testing.

Ask how they preserve computation history. If recalculation overwrites the prior result, walk away. The whole value of the build is being able to explain a date that changed.

Ask what they have done with mainframe extraction and whether they will profile your data before pricing. Sentence structure encoded across fixed fields with three decades of local convention is a serious analysis job, and anyone quoting it sight unseen is guessing with your budget.

Ask who owns the repository, the infrastructure accounts and the right to bring in another firm, and settle it in the contract before kickoff. At Digital Heroes the agency owns the code from the first commit. A department that computes release dates cannot accept a dependency it does not control, and the next step for most CIOs is simply to get the current rules written down before anyone builds anything.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. McKinsey estimates that digitizing the supply chain (Supply Chain 4.0) can cut lost sales by up to 75%, reduce inventories by up to 75%, and lower supply chain operational costs by up to 30%, with up to 30% lower transport and warehousing costs. Source: McKinsey & Company (2016) →
  2. The right combination of digital transformation actions can unlock as much as US$1.25 trillion in additional market capitalization across Fortune 500 companies, while the wrong combinations put more than US$1.5 trillion at risk; companies with all three core factors (strategy, aligned technology, and change capability) saw a 5% market-value lift relative to peers. Source: Deloitte (2023) →
  3. An independent Forrester Total Economic Impact study of OutSystems found a 363% three-year ROI with payback in under 6 months, illustrating that faster, lower-labor build approaches can materially shift the payback math. Source: Forrester Consulting (commissioned by OutSystems) (2024) →
  4. Median SaaS spend reached $9,455 per employee, and organizations leave an average of 36% of their SaaS licenses unused. Source: Zylo (2026) →
Khushi G. · Project Manager · Lucknow

Khushi runs several client projects at once, which mostly means deciding whose problem gets solved first. She coordinates developers, designers and clients across time zones, tracks budget against work completed, and raises the difficult conversation early. Readers learn how an agency actually allocates attention when everything is urgent.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does it cost to build a sentence computation engine for a state corrections department?
A standalone engine covering dated rule sets, aggregate calculation across consecutive and concurrent terms, a good time ledger, full recomputation history and a readable time computation sheet runs $150,000 to $350,000 across 5 to 9 months in Digital Heroes delivery experience. The estimate assumes your legal division can produce a written statement of current and historic credit rules. If nobody has ever documented them, add two to three months and treat that write up as its own deliverable.
Should we replace eOMIS or Elite, or build something alongside it?
For a department needing intake, classification, movement, programming and release planning replaced at once, buy the suite. Marquis and Syscon exist because that need is real and rebuilding all of it would be reckless with public money. Build alongside when the specific failure is the calculation or the reporting, meaning a cohort is being computed by hand or every legislative data request takes weeks. You are not replacing the suite, you are taking back the parts where being wrong has constitutional consequences.
How do you handle credit statutes that changed after someone was sentenced?
Keep every historic rule regime alive as a separate named, versioned and independently tested rule set, then select the governing one per sentence by offense date and offense class. Applying a later and less favourable rule to an older offense raises an ex post facto question, which is why a 2009 scheme still has to compute correctly decades later. Adding a new statute should mean adding a rule set and its test fixtures, never editing the one that governs older sentences.
What happens when an amended judgment arrives months after intake?
The system should treat it as a trigger for full recomputation and store the new result alongside the old rather than overwriting it. What you need afterwards is a diff naming exactly which dates moved and by how many days, plus the ability to answer what the release date was in any prior month and why it changed. Modules that overwrite computed dates make that question unanswerable, which is the version most departments are living with now.
Can custom software handle good time forfeiture and restoration properly?
Yes, and the design that works is an append only ledger rather than a rate and a balance. Every award, forfeiture and restoration becomes an entry carrying its effective date, its authority and a reference to the disciplinary hearing or program completion behind it, and the release date is derived from the ledger. When a hearing is overturned on appeal four months later, restoration posts as an entry, the date recomputes and the notifications fire automatically.
How do we prove a release date calculation at a hearing?
Generate a time computation sheet written for a reader who is not a records specialist, showing each sentence, the rule set applied and why it governs, every credit with its source, each good time entry, and the arithmetic producing the date. Counsel, a hearing officer and an assistant attorney general defending a habeas petition should all be able to follow it unaided. A fixed width printout that two staff can interpret costs the department time and credibility in every proceeding.
How long does an offender management modernization project take?
The computation engine is 5 to 9 months. A full suite replacement covering the whole offender lifecycle is a multi year program measured in millions, and a boutique development firm should not bid one alone. Whichever path you take, plan a parallel period where the old and new calculations both run and are reconciled daily against the full population, because that reconciliation is the proof and no department should cut over without it.
Can we migrate decades of offender data off a mainframe?
Yes, but insist that any developer profiles a real extract before quoting. Sentence structure on legacy systems is frequently encoded across fixed fields using local conventions layered over thirty years, including statuses that no longer exist in statute and credit awards recorded as narrative text. Decide deliberately which history converts as structured data and which is preserved as an archived image, because not all of it needs to be queryable.
Who owns the code if a state agency hires a firm to build corrections software?
The agency should own the repository, the infrastructure accounts and the unrestricted right to bring in another firm, written into the contract before kickoff rather than negotiated at closeout. At Digital Heroes the client owns the code from the first commit. A department whose software computes release dates cannot responsibly accept a dependency it does not control, so raise this in the first meeting.
How long does it take to build a custom web or mobile app from scratch?
Plan on 8 to 16 weeks for a focused first version and 4 to 9 months for a larger platform, which is the typical spread across Digital Heroes builds. The first 2 to 3 weeks go to discovery and design before any production code ships. The two things that stretch timelines most are integrations with legacy systems and slow feedback from your side, not developer speed.
Is custom software more secure than off-the-shelf SaaS?
Neither is secure by default; security tracks the practices of whoever builds and operates the system, not the model. SaaS gives you the vendor's certifications and patching but puts your data in a shared multi-tenant platform on their terms, while custom gives you full control over data residency, access rules, and compliance requirements like HIPAA, with the responsibility sitting with you and your agency. Before hiring anyone for a system holding sensitive data, ask for their security checklist: encryption at rest and in transit, an OWASP Top 10 review, role-based access, and a penetration test before launch.
How many SaaS seats do we need before building custom becomes cheaper?
The crossover usually shows up between 20 and 50 seats on premium tiers. Salesforce Enterprise lists at $165 per user per month, so 40 users cost about $79,000 a year in subscriptions, which is real money against a custom system you would own outright. Run the comparison over three years: if subscription spend beats the build cost plus 15-20% annual maintenance, custom wins on price before you even count workflow fit.
Can we keep our current ERP and just build custom modules around it?
Often yes, and it is frequently the smartest first move. Digital Heroes regularly builds custom scheduling, quoting, or warehouse tools that sit on top of SAP, NetSuite, or Odoo through their APIs, which fixes the painful 20 percent without a risky replacement. The hybrid route costs a fraction of a full rebuild and tells you within months whether a bigger migration is even necessary.
Will an app built for 10 users survive growing to 500?
Yes, if it is built on standard cloud infrastructure with a sound data model, because moving from 10 to 500 users is a hosting configuration change, not a rebuild. The scaling decisions that actually hurt are made early and invisibly: how the database is structured, how accounts and permissions are modeled, and whether background work is queued properly. Ask your agency how the system would handle ten times the load; the right answer is boring and specific, and a promise to cross that bridge later means you will pay for the bridge twice.
What does it cost to maintain a custom ERP each year?
Budget 15 to 20 percent of the original build cost per year, so a $150,000 ERP needs roughly $22,000 to $30,000 annually for hosting, security patches, integration upkeep, and small improvements. Across Digital Heroes maintenance contracts, third-party APIs changing is the biggest recurring work item. That total still usually sits well under the license bill for a comparable NetSuite or Dynamics seat count.
Who owns the source code if an agency builds my ERP?
You should, in full, and it must be written into the contract as work for hire with IP assignment on payment. At Digital Heroes every client receives the complete repository, database schemas, and deployment documentation, so they could hand the system to another team tomorrow. Walk away from any ERP proposal built on the agency's proprietary platform with ongoing license fees, because that recreates the vendor lock-in you were escaping.
Can a freelancer build an ERP, or do I need an agency?
An ERP is too wide for one person: it needs backend, frontend, database design, integrations, QA, and someone mapping your business processes. A solo freelancer can extend an existing ERP or ship one small internal tool, but full ERP builds by single developers are the most common rescue scenario Digital Heroes takes on. If budget is tight, shrink the scope to one module rather than shrinking the team below three or four people.
Can a custom ERP meet compliance requirements like SOC 2 or GDPR?
Yes, and often more cleanly than a shared SaaS platform because you control exactly where data lives and who touches it. The build includes role-based access control, full audit logs, encryption at rest and in transit, and data residency in whatever region your regulator requires. If you need SOC 2 attestation, tell the agency before development starts, since audit logging is far cheaper to design in than to bolt on.
Who can build a custom ERP software system?

Digital Heroes builds custom ERP software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other ERP software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?