rajanjoshe
Newbie level 3
Audio visual documentation of software: Need of time.
Dear all,
Every time I have to work on documentation of software, I always beat my head and search on Google if there is any effective documentation tool available. After doing some study and observation, I want to share my opinion with you by mean of this article.
When to start design of software?
Designing of software is inevitable part of any project and start when any project starts, provided developer knows all requirements and are clear to them. Once design is completed and you have documented it, developer can start writing the code(if he has all resources like compiler and debugger available ) as per design. Once written code is tested and found as per requirement a project should be declared as completed.
Then where it goes wrong. Why we feel documentation process tedious?
It is because developer always fail to visualize 100% requirements. Study says requirements get evolved the way project starts and take shape. So whatever we design needed to be reviewed and re-tuned over time and time to meet challenges and customer’s expectation. So design documentation never get completed in one go.
Difference in designing and documenting the design.
In the process of refining the design as per the changing requirements many times it happens that all changed requirements does not get reflected in design document. This always happen with customized project where one has to delivered exactly what customer wants. These requirements sometimes goes out of theme as customer changes some of the requirements on fly. Developer somehow manage to add patch in software but probability of those patches to be reflected in design documents are lessen.
So when project start there is always a need to take call that when to start fool proof design document? Does tool which developer using provide smoothness so that end level changes can be easily get reflected in design. If not then one can go with rough design document on rough papers and then after the end of testing developer can prepare design document using design tool. This method can save tremendous efforts that developer is putting in updating the design documentation.
Does software design document covers 100% details?
There are two types making a design document. First is logical design document which only covers theme or logic upon which you whole software is laid which does not cover all other coding details and design flow. And second is programmatic design document which only indicate software flow but never tells underlying theme or logic behind writing piece of software. There are many software tools available which convert your code into flowchart no need to spend extra effort on it.
It means just preparing logical design document going to end the problem, right? But even then how many times it happens that newly joined developer has to do some reverse engineering on software code (which has been written by x employee) to know what piece of code has been written even when design document of that software code is available?
It happen because no design document covers 100% details of code. I don’t find any such software tool and then it comes to my mind why we not making audiovisual documentary on code which will tell how piece of code is working with diagrams examples, describing functionality of a function or a variable or a macro, it self in code in developer’s own voice.
Advantages:
1) Every minute details will be covered as documentary will be just like a seminar where developer is explaining software code in all details.
2) One can show logical data along with software data flow for effectiveness.
3) Time required to view audio visual documentation is less than that textual and flowchart based design tool.
4) Improve developer’s presentation skills.
5) Remove burden of comments given in code. The comment part can be explained in audio-visual documentation very well.
Challenges:
1) Memory requirement of such audio-visual document can be maximum.
2) There is no such tool which allow audio-visual documentation of software so editing such documents will be difficult, specially in case of more version of software created.
3) Such documentation is difficult to upload on repository or may require larger space.
4) Need to find media format which consumes less memory storage.
Remedies:1) I used wink software(freely available) which generate swf/exe file which consume very low memory. You can also select frame capture rate to minimize storage. 2 frames/seconds are sufficient.
2)If you have large audio-visual documentation then convert it in low data format like(MPEG4-10fps-128x96-AAC-*3gp)
To convert in such media format one can use freecorder software tool which is freely available.
So may I know what all you think about it. Are you all agree that audiovisual documentation is need of time? Please vote your answer and give your valuable feedback.
Dear all,
Every time I have to work on documentation of software, I always beat my head and search on Google if there is any effective documentation tool available. After doing some study and observation, I want to share my opinion with you by mean of this article.
When to start design of software?
Designing of software is inevitable part of any project and start when any project starts, provided developer knows all requirements and are clear to them. Once design is completed and you have documented it, developer can start writing the code(if he has all resources like compiler and debugger available ) as per design. Once written code is tested and found as per requirement a project should be declared as completed.
Then where it goes wrong. Why we feel documentation process tedious?
It is because developer always fail to visualize 100% requirements. Study says requirements get evolved the way project starts and take shape. So whatever we design needed to be reviewed and re-tuned over time and time to meet challenges and customer’s expectation. So design documentation never get completed in one go.
Difference in designing and documenting the design.
In the process of refining the design as per the changing requirements many times it happens that all changed requirements does not get reflected in design document. This always happen with customized project where one has to delivered exactly what customer wants. These requirements sometimes goes out of theme as customer changes some of the requirements on fly. Developer somehow manage to add patch in software but probability of those patches to be reflected in design documents are lessen.
So when project start there is always a need to take call that when to start fool proof design document? Does tool which developer using provide smoothness so that end level changes can be easily get reflected in design. If not then one can go with rough design document on rough papers and then after the end of testing developer can prepare design document using design tool. This method can save tremendous efforts that developer is putting in updating the design documentation.
Does software design document covers 100% details?
There are two types making a design document. First is logical design document which only covers theme or logic upon which you whole software is laid which does not cover all other coding details and design flow. And second is programmatic design document which only indicate software flow but never tells underlying theme or logic behind writing piece of software. There are many software tools available which convert your code into flowchart no need to spend extra effort on it.
It means just preparing logical design document going to end the problem, right? But even then how many times it happens that newly joined developer has to do some reverse engineering on software code (which has been written by x employee) to know what piece of code has been written even when design document of that software code is available?
It happen because no design document covers 100% details of code. I don’t find any such software tool and then it comes to my mind why we not making audiovisual documentary on code which will tell how piece of code is working with diagrams examples, describing functionality of a function or a variable or a macro, it self in code in developer’s own voice.
Advantages:
1) Every minute details will be covered as documentary will be just like a seminar where developer is explaining software code in all details.
2) One can show logical data along with software data flow for effectiveness.
3) Time required to view audio visual documentation is less than that textual and flowchart based design tool.
4) Improve developer’s presentation skills.
5) Remove burden of comments given in code. The comment part can be explained in audio-visual documentation very well.
Challenges:
1) Memory requirement of such audio-visual document can be maximum.
2) There is no such tool which allow audio-visual documentation of software so editing such documents will be difficult, specially in case of more version of software created.
3) Such documentation is difficult to upload on repository or may require larger space.
4) Need to find media format which consumes less memory storage.
Remedies:1) I used wink software(freely available) which generate swf/exe file which consume very low memory. You can also select frame capture rate to minimize storage. 2 frames/seconds are sufficient.
2)If you have large audio-visual documentation then convert it in low data format like(MPEG4-10fps-128x96-AAC-*3gp)
To convert in such media format one can use freecorder software tool which is freely available.
So may I know what all you think about it. Are you all agree that audiovisual documentation is need of time? Please vote your answer and give your valuable feedback.