ERP and SIS migrations

Move off a legacy SIS or ERP in weeks

We model your institution once, then project it onto the new platform, one area at a time.

Built for the CIO, the registrar, and the controller

The problem

Why migrations take years

The time goes to learning the institution, rebuilding mappings, and absorbing all the risk at one cutover.

Consultants start by learning your business

Months of interviews and workshops before anything moves.

Mappings live in spreadsheets

Errors surface at test loads, and every fix starts another cycle.

The new system dictates the process

Gaps turn into customizations, workarounds, or lost features.

Everything moves at once

One cutover weekend carries all of the risk.

Represent

Your institution, modeled once from the systems you run today

Legacy systems, spreadsheets, policies, and past decisions become one ontology of the institution: its objects, relationships, logic, and actions.

The institution as represented from legacy systems: people, students, employees, programs, courses, sections, holds, accounts, aid, positions, departments, and vendorsenrolls asworks aspursuesrequiresoffered astakesplaced onbillspays intotriggersfillssits inbuys fromAcademic operationsProgramdegreeenumcatalog_yearintegerAcademic operationsCoursesubjectstringnumberstringcreditsdecimalAcademic operationsSectioncapacityintegermodalityenumStudent financeHoldkindenumblocks_registrationbooleanRelease holdStudent lifecycleStudentstudent_idstringcredits_earneddecimalentry_termtermƒresidencyenumƒclass_standingenumInstitutionPersonlegal_namestringbirth_datedatelegacy_idslistsame_personpercentƒprimary_addressaddressMerge recordsWorkforceEmployeeemployee_idstringhire_datedateWorkforcePositiontitlestringftedecimalStudent financeAid awardamountmoneystatusenumStudent financeAccountchargesmoneypaymentsmoneyƒbalance_duemoneyInstitutional financeDepartmentcost_centerstringbudget_ownerstringInstitutional financeVendorlegal_namestringtax_statusenumduplicate_ofvendorML model · Personsame_personChance two legacy records describe thesame person.From student, employee, and the names,birth dates, addresses, and IDs onevery legacy recordLow scores go to a stewardƒExpression · Personprimary_addressstandardize(  latest(addresses where verified),  postal reference)Your systemsOutside dataPolicies and memoryLegacy SISLegacy ERPHR and payrollShadow databasesSpreadsheetsStandard code setsPostal address dataNational Student ClearinghouseCatalog and degree rulesData dictionaries and customizationsInstitutional policiesDecision log and workshop notes

A slice of the full model: the labeled objects are the ones this work runs on most.

Institution

Person

One person, resolved across every legacy record that describes them as a student, an employee, or both.

Properties and logic
legal_name
string
birth_date
date
legacy_ids
list
same_person
Chance two legacy records describe the same person. From student, employee, and the names, birth dates, addresses, and IDs on every legacy record.
ƒprimary_address
standardize( latest(addresses where verified), postal reference)
Relationships
  • enrolls asStudentmany
  • works asEmployeemany
Governed actions
Merge recordsWho: Records stewardApproval: Identity steward for any match below the thresholdWrites back: One person in the model, every legacy ID kept
Fed by
HR and payrollPostal address dataNational Student ClearinghouseDecision log and workshop notes

Project

Projected onto the new platform, property by property

Every field on the new platform comes from the model through a rule on file. Areas go live one at a time, every record is read back, and anything the platform lacks becomes a custom app.

The ontologyYour institution, modeled onceProjectionProperty by property, every rule on fileThe new platformConfigured and loaded from the modelsplitmapconvert codesderivecombinemaptranslate rulereconcilemapread liveStudentObjectlegal_namestringstudent_idstringresidencyenumƒclass_levelenumCourseObjectsubjectstringnumberstringcreditsdecimalprerequisitesruleAccountObjectƒbalance_duemoneyholdslistDegree planObjectplanned_courseslistƒon_trackbooleanStudent recordsLiveCurriculumLiveFinanceMovingAdvancementProjected from the same model when this area movesPlannedPersonfirst_namelast_nameStudentstudent_numberresidency_codeacademic_levelCourse definitioncourse_codeunitsrequisite_ruleCustomer accountbalanceholdsCustom app · For what the platform lacksDegree plannerplanon_trackRead backEvery projected record is read back and compared with the ontology.Both systems stay reconciled until the last area moves.Matchloaded and correctMismatchfix the projection once, re-sendUnknownchecked again, never assumed missing

What changes

Faster, and on your terms

Live in weeks

You map once, at the model. Every load, check, and reconciliation runs from it.

Your business, designed your way

Decide how you want to operate in the model, then configure the new platform to match.

No months of consultants learning your business

The model already holds your data, rules, and exceptions, read from your systems and documents.

Incremental go-live

The model reconciles both systems continuously, so areas can move one at a time.

Custom apps for any gap

If the new platform lacks something you need, we launch an app on the same model.

How it runs

Six steps, with every record verified

  1. 1Represent your institutionEvery system, spreadsheet, policy, and past decision is read into one model, with data quality profiled up front.
  2. 2Design how you want to runProcesses, codes, and structures are decided in the model, each with an owner, before anything is configured.
  3. 3Project to the new platformThe new platform's configuration and data are generated from the model, not rebuilt by hand.
  4. 4Load and verify in phasesRecords load through the platform's APIs, canary records first, and every one is read back against the model.
  5. 5Go live in incrementsOne area moves at a time while the model keeps the old and new systems reconciled.
  6. 6Fill gaps with custom appsAnything the new platform lacks becomes an app on the same model.

Plan your migration on the model

We scope the first area with your team and agree on how to measure it.