There is a concept in Eclipse called launch configuration - settings for launching projects from (within) the workspace. These launch configurations have different properties depending on the type of the application being launched (java application, Eclipse plugins, JUnit tests). It looks something like this:
What we can see here are several types of launch configurations and a free number of specific examples of these types.
Sometimes there is a need to launch several applications from (within) one workspace - for example, we are developing a client-server application and want to simultaneously launch/run both the server and the client. For such purpose it would be convenient to to have a new type of launch configuration - composite, which would allow to create a new configuration, linking (in)to existing ones. With the launch of this composite configuration all the configurations it's linking into should be launched as well.
Now to the task itself: implement / develop Eclipse Plugin(s) adding this new type of launch-configuration. The details of implementation, User Interface and error / exceptions handling are left to your own judgement / creativity. The important thing we would like to see is a finished, working convenient to use product.
The entry point to documentation for plug-in development in Eclipse is here: – Platform Plug-in Development Guide.
Information about how to add your launch-configurations in Eclipse can be found here – Program debug and launch support.