Certification and Funding
Hardware certification is something NASA and the FAA know how to do but both are constrained by their funding. Software certification is something neither of them really knows how to do and their funding doesn't allow them to build up a competent staff to do it. Plus, both are subject to political pressure and artificial deadlines.
Boeing, OTOH, has few funding constraints due to their Congressional support won by political donations and lobbyists reminding Congress that they or their subcontractors have a significant presence in almost every Congressional district.
Boeing could use a small portion of this largess to improve its software development process but it's cheaper for them to chop up the software and farm it out to subcontractors. Ultimately, this approach benefits the shareholders and that is management's top priority.
Besides, their contracts allow them to increase the price to fix the problems that they should have seen earlier.