EDE is the Emacs Development Environment, which means that it manages projects, and can build Makefiles, track distribution and web sites associated with your GNU project.
EDE has several types of projects it can manage with varying degrees of development support. An EDE centric project will generate Makefiles or Automake files, and provides menus and keybindings for compiling any target, debugging programs by providing the arguments to your debugger, and will make sure you don't forget to include some file in your targets. It will help you build distribution files, and post them to the web (such as with SourceForge). EDE will track revision numbers and make sure they are updated in multiple places.
Projects that are merely wrapped with EDE can support a small subset of the above. All project provide an API to other programs that need to know the scope of a project, such as which files belong together, where include directories might be, how to find documentation, and details of that nature. You can even create project-local variables, which are Emacs variables with specific values within the scope of an EDE controlled project.
Read more about it in the see EDE reference manual.