As a software engineer, what really software engineer do is to make sure that the system development process follow the real process of SDLC – Software Development Life Cycle :-
- Requirement gathering
Software programmer, the job just to program to adhere the software engineer requirements. Software engineer need to invovle in all the process from gathering the requirements, get the documentation ready and pass the requirements to software programmer. However, the software engineer, need to know how to code and create the system. This know-how, need to get the experience by becoming software programmer.
So, this week, 50% of my time is getting documentation ready. My self having three new incoming projects that need me to get the documentation ready. Proposal, flow chart, requirement analysis are part of the documentation. While my team mate doing another new incoming project, she completed the requirement analysis document yesterday.
Both of us understand, the documentation is a boring job. We dont really enjoy doing the documentation, typing, planning, analysis. We always want to jump into doing the codes. But the last 2 years experience, force me now to spend 25% of the project timeline for documentation. So that, at 80% of the projrct timeline, my team will not burden with new Variable Order (VO) from our client. We need to define the request, and get focus to deliver on what had been agreed upon during project initiallization and we do not want to waste time on new variable order on the project.
Im still working on a project that was started Nov 2016 – thats almost 2 years today because too many variable order or too many things / features that was not being defined during initial requirement gathering. My client told me that they want a car. OK. But both parties failed to defined the detail of the car, the tyre, the rim, the colour, the headlamp design, the location of the swithches. This really really waste my time. Some of the features only use once, but I still need to develop the sub-module. When told that this sub-module was not discuss earlier, they said, this is part of the car!
Im really tired about this. What I can do now, from the experience learnt – in a hard way, is to get the documentation done. Sleepy job, I know, but we really need to do this, else, we need to face problems later. I dont want to go into that mess again.
Everything need to be define early now. I did documentation job for 3 month while I was working with one Malaysian Government software house 8 years ago and I know how documentation able make software developer team to focus on the deliveribles and the features of the system. This will control teh develoment time and will make the both parties not to quarrel later on.
The drawing plan need to be deifn at the begining stage, so that toward the end, both parties happy with the deliverable.
— adam —