Software development needs to be supported at both the organisational process level (programming-for-thelarge) and the detailed coding level (programming-for-thesmall). It is critical to seal the gap in order to enable effective software integration at both levels in a uniform manner instead of in isolation now. This paper is aimed at addressing fundamental issues related to integration techniques for productive software development. In particular, we focus on tool interfacing mechanisms for universally accessible data integration and plug-and-play tool integration to support software development uniformly.