Software projects rarely fail overnight. The warning signs show up months earlier: demos get postponed, the same features stay "almost done", and invoices keep arriving while nothing reaches real users. By the time someone says the word "failing" out loud, much of the budget is spent and trust is thin on both sides.
Many troubled projects can still be saved, just not by pushing harder on the same plan. To rescue a software project, you stop adding scope, get an independent picture of the code and the remaining work, and then choose deliberately between continuing with a smaller scope, repairing the foundation or rebuilding the parts that cannot be saved.
This guide lists the red flags worth acting on, the rescue steps in order, how to decide about your current vendor, and answers to the questions owners ask most when a project goes wrong.
Red flags that a project is in trouble
One red flag on its own can be noise. Two or three together, lasting more than a few weeks, are a pattern. Watch three areas.
Delivery signals
- No working demo in the last four weeks, only screenshots or slides
- Features reported as "90% done" for more than a month
- Releases go straight to production because there is no staging environment
- Fixed bugs keep coming back, and fixing one thing breaks another
Team and communication signals
- Your contact person relays messages but cannot answer technical questions
- Key developers have left, and one remaining person holds all the knowledge
- Status reports describe activity, such as hours and meetings, instead of features you accepted
- Bad news arrives only after a deadline has passed
Control signals
- You have no access to the source code repository, the cloud account or the domain
- There are no written acceptance criteria, and scope changes are agreed in WhatsApp chats without a record
- Payments are tied to calendar dates rather than accepted deliverables
Each flag points to a likely cause and a concrete first move:
| Red flag | What it often means | First action this week |
|---|---|---|
| Demo keeps slipping | Integration problems, or work that is not really done | Ask for a live demo on a staging server, in whatever state it is |
| "Almost done" for weeks | Hidden complexity or no shared definition of done | Request the full list of remaining tasks with estimates |
| No repository access | Lock-in risk and no way to verify progress | Request read access to code and cloud accounts in writing |
| Fixed bugs return | No automated tests, fragile design | Ask for a bug trend and a test coverage report |
| Scope argued in chat | No change control | Freeze scope and log every change request in one place |
Many of these trace back to how the project was set up. Our list of questions to ask before signing with a software house and our comparison of fixed price and time and materials contracts cover the prevention side.
The rescue plan, step by step
A rescue has a clear order. Skipping the assessment and jumping straight to "let's rebuild" or "let's add more developers" is how a second failure starts.
- Stabilize. Pause new feature work. Secure the assets: source code with full history, cloud and hosting accounts, domain and DNS, app store accounts, database backups and credentials for third-party services such as your payment gateway or the WhatsApp Business Platform. Make sure all of them sit in accounts your company controls
- Assess independently. Have someone outside the delivery team review code structure, test coverage, security, dependencies, infrastructure and the deployment process, then compare what exists against the original requirements. As a rough planning estimate, assuming a mid-size web or mobile application and full access, this takes about one to three weeks
- Re-scope. Define the smallest release that delivers real business value and move everything else to later phases. Our MVP guide explains how to cut scope without cutting value
- Choose the path. Decide whether to continue, repair or rebuild, using the table below
- Re-plan in short cycles. Work in two-week iterations, each ending with a demo on staging and written acceptance by your team
- Rebuild governance. Keep one backlog, one change request log, a weekly demo and a monthly steering meeting. Measure progress in accepted features and open critical bugs, not hours spent
Continue, repair or rebuild?
| Path | Choose it when | Watch out for |
|---|---|---|
| Continue with reduced scope | The code is reasonable and the problem was planning, scope or communication | Old habits return unless governance changes |
| Repair the foundation | The architecture is sound but quality problems sit in specific modules | Refactoring can expand endlessly, so time-box it |
| Rebuild part or all | The code is insecure or unmaintainable, or the technology no longer fits the requirements | A new build repeats old mistakes if requirements are not rewritten |
A full rebuild feels clean, but it throws away working parts along with broken ones. Rebuilding the worst module while keeping the rest is a common middle path. Our article on when to rebuild and when to refactor legacy systems walks through the same trade-off, and a clear software requirements document keeps any rebuild from repeating the original confusion.
Keep your current vendor or change?
Switching vendors mid-project is expensive. The new team must learn the code, and some work will be redone. It is still the right call in some cases, and the assessment usually makes the answer clearer.
Consider staying when the vendor is open during the assessment, the problems are mostly about scope and process, and the people who built the system are still on the team. Consider changing when the vendor resists giving access, the core developers are gone or the same promises have been broken repeatedly. Our look at the pros, cons and hidden costs of outsourcing is useful context for that choice.
Handover checklist
- Source code with full commit history, not a zip file of the latest version
- Deployment scripts, infrastructure configuration and environment settings, with secrets rotated after handover
- Database schema, migrations and a recent backup
- API documentation and details of every third-party integration
- Design files and requirement documents
- Every account transferred to your company's ownership
- Knowledge transfer sessions with the original developers, recorded if possible
Check the contract and IP first
Under Indonesia's Copyright Law (Law No. 28 of 2014), computer programs are protected works, and for commissioned work the party who made it is treated as the creator and copyright holder unless the agreement says otherwise. Check that your contract assigns the source code and related rights to your company. Have a lawyer review the termination, payment and handover clauses before you act.
FAQ
Can a failing software project really be saved?
Often, yes, because projects usually struggle with scope, planning and communication rather than because nothing usable was built. An independent assessment shows how much of the existing code and design can be kept. When the code is sound, a re-scoped plan with short iterations and real demos can recover the project. When it is not, you still keep the requirements, designs and lessons, which makes a rebuild safer than the first attempt.
How long does it take to rescue a software project?
As a rough planning estimate, stabilizing and assessing a mid-size application takes about two to four weeks, assuming full access to the code and infrastructure. Recovery after that depends on the path you choose. Continuing with a reduced scope can produce a usable release within a few iterations, while a rebuild resets much of the timeline. A good assessment should end with a re-plan you can track week by week.
Should we stop paying the current vendor?
Do not stop payments unilaterally before a lawyer has reviewed your contract, because that can put you in breach and complicate the handover. A better first step is to tie remaining payments to accepted deliverables and to secure written access to the code and accounts. If the relationship ends, negotiate a structured handover, ideally with the final payment linked to receiving the complete repository and documentation.
Who owns the source code if we change vendors?
It depends on your contract. Under Indonesia's Copyright Law, commissioned work belongs to its maker unless the agreement says otherwise, so a contract that does not assign rights to your company can leave you in a weak position. Check the intellectual property clause, ask for the full repository with history, and confirm that paid components and libraries are licensed in a way that lets you keep using them.
Is it cheaper to rebuild from scratch?
Sometimes, but less often than teams hope, because a rebuild discards working features along with broken ones and repeats integration, testing and data migration work. It makes sense when the code is insecure, unmaintainable or built on technology that cannot meet your requirements. Otherwise, rebuilding only the worst modules while keeping the rest is usually cheaper and lower risk. Base the decision on assessment findings, not frustration.
How Weaveward can build this for you
We would begin with an independent rescue assessment: secure read access to your repository, cloud accounts and backlog, rebuild the application from source in a clean staging environment, and review code quality, security, tests and infrastructure against your requirements. You would receive a written report covering what works, what is broken and what is missing, a continue, repair or rebuild recommendation, and a re-scoped plan with two-week milestones.
We would then validate that plan by delivering the first recovery milestone as a working demo on staging, accepted by your team against written criteria. Learn more about our IT consulting services, or talk to our team if your project is showing these red flags.
