A six-month migration estimate can survive until the team finds a 14,000-line stored procedure, a COM+ component used by three services, and a reporting stack understood by one person. The expected Q4 savings then disappear behind remediation work, the timeline can double, and the budget request returns to finance. That failure exposes the central problem with conventional cloud readiness: a score can say that an organization looks prepared while leaving the migration plan untested.
The useful question is more demanding: “can this workload move to the cloud, under what conditions, at what cost, and with what risk?” Answering it requires evidence about each workload, its dependencies, the people who will operate it, and the financial and control model around it. A generic result such as “72% ready” cannot tell a CTO whether a workload should move first, spend six months in remediation, remain on-premises, or disappear entirely. Readiness becomes valuable when it changes the plan.
Cloud readiness must validate a migration plan
Migration planning often fixes the target before examining enough of the estate: move to a chosen cloud, finish in six months, and begin realizing savings in Q4. Under that approach, assessment becomes a confidence check on execution. Legacy systems require a different decision process because technical discoveries can invalidate the schedule, economics, sequence, or migration choice for an individual workload.
The opening example shows how quickly those assumptions can fail. A large stored procedure expands the expected data work, a shared COM+ component constrains application sequencing, and concentrated knowledge in a reporting stack raises operating risk beyond anything an infrastructure inventory reveals. Once those facts are visible, optimizing against the original six-month assumption can produce stalled work and a larger funding request.
A workload-level assessment conducted before major migration spending should produce that change in the plan. It evaluates applications, infrastructure, data, security, operations, skills, and cost controls deeply enough to support a go, remediate, retain, refactor, replace, or retire decision. A percentage can summarize some findings. The workload decision determines what happens next.
Fast vendor tools provide an initial baseline
AWS and Microsoft provide useful ways to establish an initial baseline, and both companies have a commercial interest in assessments that can lead organizations toward their cloud platforms. AWS Cloud Readiness Assessment Tool (CART) aligns with the AWS Cloud Adoption Framework and covers business, people, process, platform, operations, and security. Azure’s Strategic Migration Assessment and Readiness Tool (SMART) plays a similar early-alignment role, with these vendor assessments producing baseline results in a stated 5 to 15 minutes.
Automated discovery can strengthen that baseline. AWS Application Discovery Service and Azure Migrate can inventory infrastructure and expose basic dependencies across servers, databases, and network connections. For Windows and .NET estates, Azure Migrate can inventory virtual machines, map basic dependencies, and estimate Azure sizing; Microsoft also recommends Azure Monitor, Resource Graph, and Security Center as parts of readiness evaluation. These products likewise sit within cloud businesses that benefit when customers adopt their services.
Automated discovery reaches its boundary when legacy behavior requires interpretation. A “15-minute quiz” cannot establish the coupling inside an undocumented monolith, identify the migration significance of proprietary SQL, determine whether Windows-specific components depend on hidden behavior, judge analytics governance, prove that a team can operate Infrastructure as Code (IaC), infrastructure defined and managed through code, in production, or establish whether cost governance is mature enough for cloud spending. Any one of those findings can reverse a workload decision even when the baseline looks favorable.
That boundary between automation and judgment determines the practical division of work. Teams can automate infrastructure inventory and basic dependency discovery, then use structured interviews, code analysis, and operational review where interpretation is required. Greenfield and loosely coupled applications may need little beyond the baseline, while legacy monoliths, proprietary data components, regulated workloads, and inexperienced operating teams warrant deeper examination.
A project in mind?
Schedule a 30-minute meeting with us.
Senior experts helping you move faster across product, engineering, cloud & AI.
Six evidence dimensions expose workload risk
Deeper assessment works because several independent findings can change the answer for the same workload. Architecture may look portable while the data tier remains trapped behind proprietary procedures; infrastructure may be straightforward while compliance ownership is unclear; application code may be clean while the team lacks a production delivery model. The six dimensions interact, but each can expose a separate reason to change the migration plan.
Application architecture starts with an inventory of runtime, framework version, and hosting model. The distinction between .NET Framework 4.5 and .NET 6, or Java 8 and Java 17, matters because version and runtime constraints affect the viable target environment. IIS, Windows Service, and COM+ also belong in this inventory before a team maps service-to-service and service-to-data dependencies.
Those mapped dependencies must extend beyond the interfaces everyone remembers. Shared file shares, registry keys, hardcoded IP addresses, and scheduled tasks that launch other processes can create coupling without appearing in an architecture diagram. A loosely coupled service with documented APIs presents a very different migration risk from a shared-state monolith with undocumented integrations. Static analysis can test that boundary because unexpected calls to external services show that the team does not yet understand the application’s full migration scope.
Once the application boundary is understood, data and analytics require their own judgment because application portability does not establish data portability. The assessment should examine the database engine version, stored-procedure population, proprietary SQL extensions, extract-transform-load (ETL) pipelines that move and transform data, BI licensing and cloud compatibility, data lineage, and governance documentation. Migration feasibility and governance maturity need separate scores because technically movable data can still be blocked by weak ownership or controls.
A hypothetical warehouse containing 500 stored procedures written with vendor-specific syntax and no lineage documentation shows how those data risks surface. Its application tier may look clean while the warehouse remains high risk, because migration requires technical conversion as well as confidence about where data comes from and where it goes. SQL Server estates require this scrutiny at the data layer rather than inheriting the application’s readiness judgment.
Data findings lead into infrastructure and operations because a movable database or application still has to run reliably after migration. Infrastructure assessment starts with servers, operating-system versions, virtualization, storage dependencies, and network topology, then examines how well the team can see production behavior. Metrics, logs, traces, monitoring coverage, documented runbooks, and incident mean-time-to-resolution (MTTR), the average time required to restore service, show whether operators can diagnose the existing system. Weak visibility on-premises creates cloud operating risk because a new hosting environment does not create an understanding of the workload.
Legacy Windows components make that operating risk concrete. Task Scheduler jobs, DCOM dependencies, and MSMQ queues each require an explicit migration plan, while hosting through IIS or Windows Service must remain connected to the runtime inventory. An otherwise ordinary server move can fail when behavior hidden in the current machine or network environment disappears.
Operational feasibility still leaves security and compliance capable of blocking the move. Assessment starts by classifying data, including personally identifiable information (PII) and protected health information (PHI), and determining exposure to HIPAA, SOC 2, and PCI-DSS requirements. It then examines identity and access management, encryption at rest and in transit, secrets management, data-sovereignty requirements, documentation, and ownership of each control.
Those controls must also reflect how responsibilities change in the cloud. Clear, documented controls with named ownership indicate lower risk, while implicit controls require remediation because cloud changes who operates which part of the security system. Teams accustomed to an on-premises perimeter can carry those assumptions into the cloud even though the shared responsibility model divides security duties between provider and customer. A compliance review can expose that gap late enough to block deployment, making security readiness a sequencing constraint.
With technical and control constraints visible, team capability determines whether the chosen operating model is realistic. AWS or Azure certifications provide evidence of cloud knowledge, while hands-on project work provides another signal. Operating readiness is better tested through deployment frequency, lead time for changes, change-failure rate, container experience, CI/CD maturity, and actual IaC practice. Terraform, Bicep, and CloudFormation matter because infrastructure definitions have to remain reliable throughout the production lifecycle.
Those capability findings can change the architecture itself. A team unable to run IaC in production is poorly positioned to take on self-managed Kubernetes, regardless of how attractive that target appears on paper. Managed services combined with significant training may be the safer operating model, so the skills assessment can change both migration design and the investment required before migration.
After architecture, operations, controls, and skills establish what can be run, economics determines whether the migration path is worth pursuing. Total cost of ownership (TCO), the full cost of running a workload, should be modeled for each workload and migration path using compute, storage, data egress, licensing, and operating costs. Windows Server and SQL Server licensing can materially change the result depending on whether the plan uses bring-your-own-license arrangements or cloud-native alternatives.
The cost model must also remain controllable after migration. FinOps, the operating discipline for understanding and controlling cloud spending, uses existing cost baselines, tagging standards, budget alerts, rightsizing models, and named ownership for spend as signs of stronger readiness. An estate with no baseline, tagging, or spend ownership carries a high risk of unexpected post-migration bills. The economic output is a cost-versus-performance view for each workload and candidate path.
Because each dimension can constrain a workload differently, their scores should interact without receiving mechanically equal weights. A healthcare organization handling HIPAA-regulated data should give security and compliance substantially more influence than a media organization operating public-facing content. The weighting reflects the practical connection between organizational and technical readiness: skills, controls, operations, and economics can each veto an otherwise feasible architecture.
Turn evidence into workload risk, 6R disposition, and sequence
Those six dimensions become actionable when each workload receives dimension-level scores that roll into a portfolio view and a leadership risk heatmap. Three tiers keep the classification usable. Low-risk workloads are loosely coupled, documented, and supportable by the operating team; medium-risk workloads have identifiable gaps such as missing observability, a compliance issue, or unresolved licensing; high-risk workloads carry deep coupling, undocumented dependencies, regulatory exposure, or technical debt that makes a direct move dangerous.
The resulting risk classification feeds a 6R disposition, a framework that assigns each application one of six migration treatments. Risk alone cannot decide whether expensive remediation is worthwhile, so the choice also incorporates business value, complexity, and viable replacement options.
| Disposition | Workload decision |
|---|---|
| Rehost | Move a low-risk, low-complexity application onto cloud infrastructure with minimal changes. |
| Replatform | Make limited changes such as adopting a managed database or container runtime for a low-to-medium-risk workload. |
| Refactor | Rearchitect a complex application whose business value justifies the work. |
| Repurchase | Replace the custom system when a viable commercial SaaS product can serve the need. |
| Retain | Keep a high-risk workload on-premises when migration costs more than its value warrants. |
| Retire | Decommission a redundant or obsolete workload. |
Those dispositions preserve “don’t migrate this workload” as a valid outcome. A process that requires every workload to migrate has already constrained its answer, particularly for expensive low-value systems that belong in Retain or obsolete systems that belong in Retire. High risk can likewise push teams toward remediation, refactoring, retention, or retirement instead of an automatic lift-and-shift.
Once a disposition is selected, concrete artifacts preserve the reasoning behind it. Those artifacts include scores for every workload and dimension, a dependency map with risk-classified integration points, a 6R disposition for each application, a leadership heatmap, TCO scenarios by path, a sequenced roadmap with prerequisites, and workload-level go/no-go criteria. Together, they connect technical findings to investment and schedule decisions.
That connection changes leadership conversations because it turns broad descriptions into choices about time and money. “Our app estate is complex” gives decision-makers no action, while “here are the three workloads we can move in Q3 and the two that need six months of remediation first” ties risk to schedule and funding. The roadmap can then say: move these workloads first, remediate these before touching them, and retire those three.
A strong assessment finding can change migration order
Techstack’s “Analytics Subsystem for a Sales Engagement Platform” case shows how deeper evidence can challenge sequence. The initial approach assumed that the application and analytics tiers would migrate together. An audit of the legacy analytics subsystem exposed pipeline complexity, deep dependencies, and governance issues that made the joint move too risky.
Because those findings changed the dependency picture, they also changed the order of work. The analytics tier was decoupled and migrated to Amazon Redshift before the application tier, creating a working cloud-based analytics layer before the remainder of the estate moved and reducing risk for both workstreams. In this case, readiness produced a different sequence.
Techstack’s Software Audit service is designed to produce this kind of evidence through readiness scores across all six dimensions, dependency maps with risk-classified integration points, and a prioritized migration roadmap. Techstack has a commercial stake in organizations buying deeper assessment because it offers the service itself. Its case still demonstrates the specific planning effect at issue: discovering more about a workload can change migration order.
Match assessment depth to the estate
The Techstack case also shows why assessment depth should follow uncertainty in the estate. Self-assessment is most defensible when the estate is well documented, the team has previous cloud-migration experience, the scope contains fewer than 10 workloads, regulated data is absent, and the applications are predominantly greenfield or loosely coupled. Under those conditions, internal knowledge combined with vendor discovery and readiness tools may provide enough evidence to make workload decisions.
As uncertainty rises, external expertise becomes more useful. Undocumented monoliths, data regulated under HIPAA, PCI-DSS, or SOC 2, an absent DevOps practice, a previous failed migration, or an organization’s first cloud migration all increase the chance that internal assumptions will survive untested. Outside assessment can test those assumptions by looking for dependencies, control gaps, and operating constraints before migration work depends on them.
A mid-market SaaS company with a 12-year-old .NET Framework monolith, a SQL Server warehouse containing 800 stored procedures, and six engineers who have never deployed to AWS concentrates several of those risks in one estate. The engineers may know the workarounds that keep production running while lacking visibility into which assumptions fail in a different environment. Code analysis, dependency discovery, interviews, and operational evidence give those assumptions concrete tests.
For a mid-size legacy portfolio, the supplied working range for this kind of assessment is typically two to four weeks. The required depth still depends on the estate because each additional area of uncertainty can require more investigation. Assessment effort earns its place when the cost of an undiscovered dependency, compliance barrier, operating gap, or mistaken disposition is greater than the effort needed to expose it.
Run the assessment to produce decisions
Once the required depth is clear, execution starts with scoping and stakeholder interviews. These establish the portfolio boundary and identify the people who understand its application, data, operating, security, and financial behavior. The first practical task is an application inventory covering servers, databases, integrations, scheduled jobs, COM components, and reporting tools. That inventory fixes the scope that later scoring will evaluate.
With the scope fixed, automated discovery supplies infrastructure evidence and basic dependency information. Teams can then run a questionnaire across architecture, data, infrastructure and operations, security, team capability, and cost governance for each workload tier. Interviews, code analysis, and operational review deepen the areas automated tooling cannot judge, so each score is tied to specific findings.
Those findings then become low-, medium-, or high-risk classifications and a 6R disposition for each workload. Sequence follows risk and business criticality: low-risk, high-value workloads can move early, while high-risk workloads receive remediation plans, retention decisions, or another appropriate disposition. At this stage, the findings directly shape the migration program.
After viable paths have been shortlisted, TCO modeling compares rehosting, replatforming, and refactoring while including licensing, egress, and operational overhead. A technically feasible route can lose at this stage when its economics are weak. The final phase delivers the roadmap and leadership debrief, with dependencies, prerequisites, and go/no-go conditions attached to workload decisions. The resulting roadmap specifies which workloads move in Q1, which are deferred, and which are retired.
Final thoughts
For executives, cloud readiness is less a measure of whether the organization is prepared for cloud than a test of whether the migration plan deserves investment. The assessment should make workload-level uncertainty visible before budgets, deadlines, and target architectures become difficult to change.
That means leadership should expect more than a readiness score. The useful outputs are decisions: which workloads can move now, which require remediation, which should remain on-premises, which should be replaced or retired, and what each path means for cost, risk, skills, and sequence. When evidence changes those answers, the assessment is doing its job.
The strongest migration roadmap is therefore not the one that moves everything fastest. It is the one that exposes weak assumptions early enough for leadership to change the plan before those assumptions become expensive commitments.
A project in mind?
Schedule a 30-minute meeting with us.
Senior experts helping you move faster across product, engineering, cloud & AI.


