A method for migrating a non-object-oriented application to an object-oriented platform, the method comprising: receiving the non-object-oriented application, wherein receiving the non-object-oriented application comprises receiving a FORTRAN application; parsing the non-object-oriented application into elements of the non-object-oriented application, comprising parsing the FORTRAN application into at least one of FORTRAN modules, source files, subroutines, functions, common blocks, and variables; identifying dependencies between the elements, wherein a first element has a dependency with a second element when the first element uses or contains the second element; generating a design structure matrix representation that represents the elements and their dependencies; generating a final object model based on the DSM representation; and mapping, by a computer, the final object model to a code skeleton representation of an object-oriented development environment, wherein generating the final object model based on the DSM representation comprises: identifying, via a partitioning module, a plurality of partitions in the DSM representation by performing component-based partitioning on the DSM representation, wherein the partitioning module segregates elements in the DSM representation to identify layers such that each layer contains one or more groups of related elements based on their dependencies; identifying, via a clustering module, a plurality of clusters in the DSM representation by performing provider proximity clustering on the DSM representation, comprising clustering groups of the elements down one or more columns that have dependencies with other elements above on the same column; generating a target system object model based on the plurality of partitions and the plurality of clusters, wherein the target system object model is generated by reorganizing labels of the DSM representation in accordance with the clusters identified by the clustering module and includes rows and columns including a same listing of the identified clusters, wherein said listing of clusters is arranged in accordance with the layers identified by the partitioning module; identifying a plurality of packages in the target system object model by aggregating groups of the plurality of clusters; and generating the final object model based on the plurality of packages identified in the target system object model by aggregating the clusters into high-level modules, subsystems, or packages in an object-oriented framework. receiving the non-object-oriented application, wherein receiving the non-object-oriented application comprises receiving a FORTRAN application; parsing the non-object-oriented application into elements of the non-object-oriented application, comprising parsing the FORTRAN application into at least one of FORTRAN modules, source files, subroutines, functions, common blocks, and variables; identifying dependencies between the elements, wherein a first element has a dependency with a second element when the first element uses or contains the second element; generating a design structure matrix representation that represents the elements and their dependencies; generating a final object model based on the DSM representation; and mapping, by a computer, the final object model to a code skeleton representation of an object-oriented development environment, identifying, via a partitioning module, a plurality of partitions in the DSM representation by performing component-based partitioning on the DSM representation, wherein the partitioning module segregates elements in the DSM representation to identify layers such that each layer contains one or more groups of related elements based on their dependencies; identifying, via a clustering module, a plurality of clusters in the DSM representation by performing provider proximity clustering on the DSM representation, comprising clustering groups of the elements down one or more columns that have dependencies with other elements above on the same column; generating a target system object model based on the plurality of partitions and the plurality of clusters, wherein the target system object model is generated by reorganizing labels of the DSM representation in accordance with the clusters identified by the clustering module and includes rows and columns including a same listing of the identified clusters, wherein said listing of clusters is arranged in accordance with the layers identified by the partitioning module; identifying a plurality of packages in the target system object model by aggregating groups of the plurality of clusters; and generating the final object model based on the plurality of packages identified in the target system object model by aggregating the clusters into high-level modules, subsystems, or packages in an object-oriented framework.