I am guessing you doing this for impact analysis and that is why we have the dependency browser.
but if you want to still do this the dependency browser is a good start to learn the problems you will face. What dependency levels do you want to go to? functions dependent on the functions dependent on your views which are dependent on your entity.
I'd think of making it a Add-in tool instead of standalone tool which allows you to choose multiple entities at a time. Do you use existing list or create a new list.
download Downloads - Stella Tools (CA Plex Developer Tools) and look at:
Function: StellaTL/StellaTools.Tools.Data.Shunt.GetDependantsExpanded *involving recursive calls
Function: StellaTL/StellaTools.Tools.Data.Shunt.GetDependantsTopLevel
look at Function: StellaTL/StellaTools.Tools.UI.CreateList to recreate the list functionality
look at Function: StellaTL/StellaTools.Tools.Data.Object.Fetch.BlockFetchScoped to get views scoped to your entity