Conclusion
Follow above model and guidelines...
...but nearly all software needs to be redone or reworked.