Frame technology (software engineering)
FT is used to reduce the time, effort, and errors involved in the design, construction, and evolution of large, complex software systems.Fundamental to FT is its ability to stop the proliferation[2] of similar but subtly different components, an issue plaguing software engineering, for which programming language constructs (subroutines, classes, or templates/generics) or add-in techniques such as macros and generators failed to provide a practical, scalable solution.A substantial literature now exists[3][4][5][6][7][8][9][10] that explains how FT can facilitate most aspects of software's life-cycle, including domain modeling, requirements gathering, architecture and design, construction, testing, documentation, fine tuning and evolution.Independent comparisons of FT to alternative approaches[11] confirm that the time and resources needed to build and maintain complex systems can be substantially reduced.One reason: FT shields programmers from software's inherent redundancies: FT has reproduced COTS object-libraries from equivalent XVCL frame libraries that are two-thirds smaller and simpler;[2][6] custom business applications are routinely specified and maintained by Netron FusionSPC frames that are 5% – 15% of the size of their assembled source files.Not only do such variants tend to proliferate, causing unnecessary redundancy and complexity, but system evolution is also unnecessarily difficult and error-prone.The top–down approach combines domain expertise with iterative prototype refinement, constrained by application and architectural requirements, corporate standards, and the desire to evolve a set of reusable assets whose return greatly exceeds the investment.A mature frame library enhances cost-effectiveness because software project stakeholders can restrict their attention to a system's novelties, taking the bulk of its robust components and architecture for granted.