For buyers contracting authority
Choose 72212517 when the contract's main output is custom-built software and no narrower sibling describes it better. A contracting authority reaches for it on general application builds, bespoke platforms, and order-written systems where the deliverable is the software itself.
The ambiguity to resolve is the parent and the siblings. The parent 72212500 is Communication and multimedia software development services, and the siblings under it are specific (communication, desktop communications, video conferencing, modem, remote access). If the work is genuinely about one of those, tag the specific sibling. 72212517 is where a general IT build belongs when none of the narrow leaves fit, which is why it carries far more awards than its specialised neighbours.
One boundary needs care. The generic Software development services code 72262000 lives in a different branch (72260000) and covers near-identical work; the split between it and 72212517 is largely which branch the authority enters from, not a crisp difference in scope. Where a build also bundles maintenance or support, set the primary CPV code by the dominant deliverable: the new build points here, ongoing upkeep points to maintenance (72267000).