A simple variant of the BDDC preconditioner in which constraints are imposed on a selected set of subobjects (subdomain subedges, subfaces and vertices between pairs of subedges) is presented. We are able to show that the condition number of the preconditioner is bounded by , where is a constant, and and are the characteristic sizes of the mesh and the subobjects, respectively. As can be chosen almost freely, the condition number can theoretically be as small as . We will discuss the pros and cons of the preconditioner and its application to heterogeneous problems. Numerical results on supercomputers are provided.