Well subprojects are large tasks that can be worked on independently within a bigger project. For example, in a project for creating a web application, a subproject would be creating the design of the project (so the subproject will be a "design project").
Characteristics of subprojects are:
- They have a short duration (should be no longer than a month)
- They are part of a project (and not of a program, because if they are, then a subproject would be a project). In short, subprojects are a big task within a project.
- They don't have their own budget, but they do have their own schedule (they are actually scheduled twice: once as a task in the larger project, and once as a project)
- They can be managed by a person other than the project manager, and that person doesn't have to be a "real" project manager (he can be the team leader)
- Conflict management, risk management, and stakeholder management are done on the project level, and not on the subproject level
- They usually have very few resources allocated to them