Algorithm for determining % complete of a program



Hello all,

I'm wondering if there someone could help me investigate an algorithm
for determining the progression status (% complete) of an application
that I'm currently working on. It currently has 4 phases where
different data can be obtained from the program to obtain this
progression status. The application is devided into the following sub
processes, with their corresponding data references.

1. Intialization of objects. (# of types of objects are known)
2. Reading and validating each member of a particular object from a
file. (# of bytes in file read)
3. Validating objects with common values (# of objects with common
values known)
4. Writing a file with the validity tags and addresses of objects (Same
as above)
5. Removing all objects and clearing memory (same as above)

If anyone could point me in a good direction, it would be appreciated.

Thanks

.