Hacker News new | comments | ask | show | jobs | submit login

There are similar issues with this in Structural and Mechanical engineering. Engineers are expected to rely more and more on software to execute and document complex calculations to verify designs, but how can you be sure those underlying calculations/theorems/models are correctly implemented? Some packages are constantly patching particular edge cases that get sent to them from their users. Many issue announcements to warn of bugs that could cause an incorrect result.

If a result from software led to a critical failure in a design, the onus is most likely still on the Engineer.

I have seen cases where software is formally reviewed by independent verification bodies, much in the same way your ISO 9001 compliance is. I can't see why this wouldn't apply here. Have an independent party, who has signed an appropriate NDA, asses and certify that your product does what it says on the tin and audit it at regular periods.




> Have an independent party, who has signed an appropriate NDA, asses and certify that your product does what it says on the tin and audit it at regular periods.

This may work for safety standards or financial liability, but it doesn't work for the legal system, because "independent" parties are influenced by who pays them.


Yes, that's always a factor. Larger IVBs will tend to err on the side of their reputation in the marketplace (which may also be a factor).

One could envisage a (horrible) situation where both parties engage an IVB (a practice common in some areas of engineering) and then they both jointly engage another body to effectively vet their processes and pass that joint 50/50 cost into their fees back to you.

Or the court appoints one and you agree to share the costs (probably wouldn't fly in the US).


I wonder if it's possible/practical to model the mechanical properties using multiple different tools, and check for agreement, along the lines of N-version programming[1] for software.

It might get tricky where you're doing extremely specialised stuff where only a single implementation exists, but I suppose you'd have to assign some time to validating your tools personally for your use.

[1] https://en.wikipedia.org/wiki/N-version_programming




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: