A component architecture for the Java programming language, developed initially by Sun, but now available from several other vendors. JavaBeans components are called "beans". JavaBeans allows developers to create reusable software components that can then be assembled together using visual application builder tools including Sybase's PowerJ, Borland's JBuilder, IBM's Visual Age for Java, SunSoft's Java Workshop and Symantec's Visual Cafe. JavaBeans support Introspection (a builder tool can analyze how a Bean works), Customisation (developers can customise the appearance and behaviour of a Bean), Events (Beans can communicate), Properties and Persistence (customised Beans can be stored and reused).