Platform Evolution
Assessment run-2026-07-27-1 · 213 of 213 repos assessed
Repos / backoffice-customerrelations-ui

backoffice-customerrelations-ui

Internal ASP.NET MVC web UI for the Customer Relations team to manage customer relations cases against bookings and contacts, with an email reminders job.

26 · redhighloosely attachedOn-premZDD: not applicableweb-uidormantsecrets in source

Health score

26

0 to 100 across seven weighted factors; nothing is hidden. Green is 75 and above, amber 50 to 74, red below 50. How scoring works.


Runtime currency / 25
0
.NET Framework, out of mainstream support
Legacy transport / 15
6
Calls at least one legacy WCF endpoint
Test posture / 15
0
No tests
Security hygiene / 15
0
Credentials or keys committed to source
Dangerous coupling / 15
15
No dangerous coupling detected
Activity / 10
0
Dormant: no meaningful change for two years or more while still deployed
Deployment hygiene / 5
5
CI in place
Health over time
2026-07-24 (run-2026-07-24-1): 262026-07-27 (run-2026-07-27-1): 26
No change since 2026-07-24 (26 to 26).

Facts

Languagescsharp
FrameworksASP.NET MVC 5.2.3, LINQ to SQL
Runtimes.NET Framework 4.5.2
Tests / CInone / CI in place
Last commit2022-06-23
OwnerOwner unknown (mapping to be curated)
DomainContact centre and CRM (system generated; curate in repo-owners.json to override)
Product areaPhenix
HostedOn-prem Deployed to our own machines
  • Release "\ops\customerrelations\backoffice-customerrelations-ui CI": QA: deployment-group phase (agents on our own machines)
  • Release "\ops\customerrelations\backoffice-customerrelations-ui CI": Staging: deployment-group phase (agents on our own machines)
  • Release "\ops\customerrelations\backoffice-customerrelations-ui CI": Production: deployment-group phase (agents on our own machines)
  • Release "\ops\customerrelations\backoffice-customerrelations-ui CI": Production: deployment-group phase (agents on our own machines)
  • Release "\ops\customerrelations\backoffice-customerrelations-ui CI": Training: deployment-group phase (agents on our own machines)
Releases1 release pipeline(s): \ops\customerrelations\backoffice-customerrelations-ui CI
Integrationwcf, soap
SourceOpen in Azure DevOps

Risk flags

Each flag links to its glossary definition.

Dependencies in context

Laying out the graph…
greenamberreddata store (square, dashed link)Node size follows fan-in. Click any node to open it.

Entanglement

loosely attached Bound into the core by 1 mechanism(s).

  • Speaks WCF (client)

Detaches when its WCF surface gains a modern interface or its WCF calls move to one.

Depends on / used by

Depends on (1)
Used by (0)
No internal dependents.

Data stores
sqlserver:CustomerRelationssqlserver:MediaServer

Migration playbooks

Generated from this repo's assessment data: what is feasible, what blocks it, and the steps in order. Ratings: green means actionable now, amber means sequence other work first, red means blocked, grey means not applicable.

ZDD adoption

Not applicable

Not a deployed service (libraries, database definitions, desktop apps) or a retirement candidate not worth the investment. Retirement or consolidation candidate; do not invest in ZDD adoption.

SQL Server exit

Retire instead

This repo is a retirement or consolidation candidate. Do not invest in a database migration; execute the retirement and the SQL Server dependency disappears with it.

Containerisation

Retire instead

This repo is a retirement or consolidation candidate; containerising it would be investment in something we intend to switch off.

Recommended actions

Rotate the credentials committed to backoffice-customerrelations-ui

Risk flags indicate credentials or keys in source (credentials-in-config). Rotate now and enable secret scanning in CI; this is independent of all other work.

Impact: Closes a live security exposure at near-zero cost

proposed

Review backoffice-customerrelations-ui for retirement

Dormant (last commit 2022-06-23) yet still release-linked, and nothing depends on it. Confirm remaining use, then retire and disarm its pipeline.

Impact: Shrinks the estate before the expensive work begins

proposed

Assessment notes

backoffice-customerrelations-ui

Purpose

Internal web application for the Customer Relations team, built as ASP.NET MVC UI over a CustomerRelations database, linking cases to bookings and contact-centre records. A companion CustomerRelations.EmailReminders console project sends reminder emails.

Tech stack

C# on .NET Framework 4.5.2 throughout: ASP.NET MVC 5.2.3 web app (CustomerRelations.UI), a LINQ to SQL data model project (CustomerRelations.DataModel using System.Data.Linq), and the email reminders job. Old internal packages (TC.Phenix.ApplicationFramework 1.2.4, TC.Phenix.Services.Client 3.0.5, TC.ContactCentre.ServiceClient) restored via packages.config. Placeholder README only.

Deployment

Single build pipeline (backoffice-customerrelations-ui CI) and one release pipeline (\ops\customerrelations\backoffice-customerrelations-ui CI); release_count 1. No pipeline YAML in the repo, so the build is a classic Azure DevOps definition. Environment-specific Web.*.config transforms (Production, PreProduction, TestQA, Training, etc.) indicate on-premises IIS hosting.

Dependencies

Internal: calls the backoffice booking WCF service (/services/backoffice/bookingservice.svc/Phenix) and a contact-centre SOAP service (/services/contactcentre/ContactCentre.asmx, likely the phenix contact-centre estate) plus Phenix services via TC.Phenix.Services.Client. External: none identified.

Data stores

Direct SQL Server connections: CustomerRelations (primary, on phenixdata in production) and MediaServer (on Decimus) for media assets via a vendored MediaServer.Library.dll. Connection strings with plaintext SQL credentials are committed in Web.config transforms.

Integration points

WCF (wsHttpBinding, unsecured HTTP) to the backoffice booking service and legacy ASMX SOAP to the contact-centre service; both over internal HTTP endpoints. No REST APIs, messaging, or event streams.

Code health

No test projects at all. Last commit 2022-06-23 — dormant for roughly four years. Vendored binary dependency (MediaServer.Library.dll) and classic (non-YAML) build.

Modernisation risks

High priority: .NET Framework 4.5.2 is long past end of support; ASP.NET MVC 5 and LINQ to SQL are legacy; plaintext DB credentials in source; unsecured HTTP WCF/SOAP endpoints; no tests; dormant codebase still in production. Any change carries elevated risk, and a rewrite or platform migration should be evaluated.