Framework architecture is centered around component-oriented development. Components are pieces of self-describing software
that can be assembled like building blocks to create new applications.
This component-centric architecture solves many problems:
- Components normalize the data and features of heterogeneous protocols and networks so that they can be integrated seamlessly.
- Components along with the graphical tools provided by the framework allow applications to be assembled without requiring a
Java developer.
- Components provide unsurpassed visibility into applications. Since they are self-describing, tools can easily interrogate
how an application is assembled, configured, and what is occurring at any point in time. This aids debugging and application
maintenance.
- Components enable software reuse.
A set of Java APIs serve dual purposes: Developers can access them to write Java code, while non-programmers can use high-level
graphical programming and configuration tools to create custom applications. This vastly increases the scope of users capable
of building custom applications.