Post-Mortem Analysis: Avoid Common Pitfalls in Software Development
This post-mortem analysis highlights critical mistakes made during the software development process, focusing on procrastination, inadequate communication, and inefficient meetings. Key insights include the necessity of early coding, better documentation practices, tools selection, modular coding, and collective commitment to learning. Recommendations emphasize early integration and testing of components, priority setting in tasks, and the importance of teaching team members how to effectively use shared tools. By learning from these mistakes, teams can improve efficiency and project outcomes.
Post-Mortem Analysis: Avoid Common Pitfalls in Software Development
E N D
Presentation Transcript
Start coding sooner – Procrastination • Write the documents for later use, not to “just get it done” • Very little code reuse, many people solving the same problems • When Alex decided the scheduler had to be restarted, we should have redesigned the scheduler, and split the tasks. Mistakes
Bad choice of tools (Java EE 6) • Didn’t consider a realistic deployment • Modular code • Better communication between members – don’t just communicate when you absolutely have to Mistakes cont.
Inefficient meetings • When we decided on a tool though, everyone should have committed to learning it • Don’t just assume everyone is going to get their part done • Prioritizing tasks More Mistakes
Don’t be afraid to search for open source solutions • Better communication between the development and testing groups – tell problems as they find them • Integrate earlier and test all components ahead of time • Unit test Mistakes
Problem with the scheduler – Make a unanimous educated decision… don’t have 4 people say “Doesn’t matter to me” and have one person declare some “perfect, idealistic solution” • Do the main task first. For scheduling, get something that schedules stupidly first (say, for instance, randomly). Then slowly add your educated decision making to it. • Don’t take 18 credits when taking this class • When you write general tools for everyone to use, actually teach people how to use it. Questions?