Software Engineering best practices we do ‘Not’ follow at our own risk
by
Rahul on February 17, 2012
Software engineers all over the world were at sometime or the other taught in their initial days some best practices to treat as the Bible while developing software and writing codes. But most of the time, we fail to undertake these steps. Due to lethargy, or time constraint, or taking things too easily, we skip the so very essential part of the best practices which can lead to some immense trouble and loss to others in the future. We will be discussing some of these serious issues now. And how we can focus on fixing our habits.
Commenting
Often we will see Oracle, Java, Unix or for that matter codes written in any technology, often named without following the convention and reveals little about the utility of the piece of code. A coder when looks at the file in the future will have little or no idea as to what it was written for until he goes through each an every line of the code. Imagine the amount of time lost for
the simple task of getting to know the functionality of a few hundred lines of code. Always include at least a few words of comment for each code block, naming conventions, snapshot of the code (with the author name, version history, purpose). A few seconds taken by you will save many people in the future from putting their brains out to figure out the purpose of a code.
Development team in UAT
The role of the development team should be up to code delivery and implementation. At most they can guide the user how to proceed with the testing. Rest scenarios should be entirely left in the hands of the user. For obvious reasons, if the developer is involved in his own work, he is bound to influence the testing scenarios of the user unintentionally on a subconscious level. This is not to blame anyone, but something pretty natural by human behavior.
Allocation of due time for each phase in SDLC
Each of the phases in SDLC must be given due weightage and time. It often happens due to strict timelines, the analysis and design phases are shortened. But this can lead to severe consequences as the solution approach might prove to be unsustainable on the long term. All sorts of feasibility, cost, adaptability, flexibility study should be completed with proper discussions and brain-storming which will also benefit in team-building.
These practices need to be strictly followed by budding engineers and experienced professionals alike. It’s ought to be like the untold rules of software engineering.
Read more...
Now coming to team work, people are really considered lucky here if they are in a good team. That is because there are many teams where people suffocate into and are forced to look for other options. A nice team to start with in your professional career is truly a boon. You get to learn a lot of things which will help you in your career in the long run. Things you learn not only helps in you current job role, but also to grow as a working professional. People get less tired mentally and even physically when they are into a good team. Productivity of an employee increases by leaps and bounds when colleagues around him are always ready to help and cooperative. The productivity of the team as a whole rises inevitably amidst such positive atmosphere.
good team also teaches you interpersonal skills which are vital in the service sector. 
Now coming to the odd ones who find it difficult to cope in a team. Their stress level undoubtedly rises. If he’s the good guy finding himself or herself surrounded by a sea of politics and work is being extracted out of him and passed on as other’s work and his visibility to his bosses is being reduced to the minimum so that everyone else gets the credit for his work, it is indeed a nightmare for him. He is the sole person working. He cannot raise his voice. This is when it gets out of hand. Because we cannot keep on accepting injustice forever. Everything has an end to it. The higher management would be informed about this sooner or later and actions are bound to be taken. If that is not the case, unfortunately and inevitably, the person will try to move someplace else. 



