Normally, when we draw SDLC diagram, we tend to show it as inter-related sequential block of requirements, design, testing etc... This tends to create an impression that each step in SDLC is sequential in nature. But this gives a wrong picture of sw life cycle process. It will be much better to consider each block as a business process which starts when precondition for specific process is satisfied and stop when post condition for specific process is met. The immediate question is when pre-condition or post condition can be considered as met. This can be done by asking the right questions. For example, we can consider pre-condition of for starting arch. Work if some of answer to following question is met
· Do I understand enough requirement to start work on architecture
· Can I add real value by making changes in my architecture at this stage
· Can I do anything to that other stake holder can understand it better
If answer to any of the above questions is yes, work on architecture can be started, some time even late in release
Post condition should be consider to be met if answer to following question are met
· Is my work ready for some feed back
· Have I done enough so that some body else can some value from my work
· Can I delay my work without affecting any related process
· Have I covered all requirements
· Can I seal my work in a given context which means that I have done everything which was suppose to be done in given context or projects or release?
This is just a list some of the question. It is possible to make a more detailed list of such questions for each of the process in a given context or project or release. It is important to check pre and post condition of one work periodically during the release. It is much more practical and realistic to consider each block as a set of inter-related, collaborative processes who can and should also run concurrently. This kind of approach or mindset will make software development much more flexible, faster and better.
| |
|
No comments:
Post a Comment