Dependency analysis