[an error occurred while processing this directive]

Panel & Workshop Chair: Madhu Singh, Bellcore



Workshop1
Monday, August 3
11:15 A.M.-12:45 P.M.


Developer Testing Object-Oriented Software with Emphasis on Java
Moderator: Donald Firesmith, Storage Technology Corp., USA

This workshop will provide a forum for discussion of the techniques, tools, and responsibilities for performing class and package level testing. Participants will also discuss how current testing techniques should be modified in terms of Java. Specifically, participants will attempt to answer questions such as "How will testing be impacted by Java's support for encapsulation, interfaces, global optimization in light of web support, etc?" The workshop will also address the issue of Java test tool immaturity.



Workshop2
Monday, August 3
3:30 P.M.-5:00 P.M.


Java/CORBA Integration Issues
Moderator: Mitchell Goldstein, Virtual Partners, USA

This workshop will focus on issues related to the integration of the CORBA architecture with Java-based application, middleware and back-end code. Issues will include:



Workshop3
Wednesday, August 5
4:30 P.M.-6:00 P.M.


Java Virtual Machine - Present and Near Future
Moderator: Qiaoyun Li, Sony Corporation, Japan

At the heart of Java technology lies the Java Virtual Machine (JVM) - the abstract computer which makes Java's "write once, run anywhere" slogan a valid one. This workshop introduces Java's existing JVM features and the way they contributes to its overall portability. It also discusses the future direction of JVM as the characteristics of the overall system infrastructure are evolving rapidly with the emergence of JDK, PersonalJava, EmbeddedJava and CardJava.



Workshop4
Thursday, August 6
4:45 P.M.-6:15 P.M.


Component-Based Software Development: Is it the Next Silver Bullet?
Moderator: Gilda Pour, San Jose State University, USA

Rapid changes in business needs and requirements have created a fast growing demand for large-scale, complex, and highly maintainable software systems. This has introduced a major challenge for software community, and motivated the search for a new, efficient, and cost-effective software development paradigm. Component-based software development approach has been identified as the most promising solution. This new approach focuses on building component-based software systems by selecting from off-the-shelf software components and assembling the set of selected components within an appropriate software architecture. Component-based software development approach is based on the idea that there are so many similar components in different software systems that new systems can be built more rapidly and economically by assembling components rather than implementing each system from scratch. By promoting the use of components developed by commercial software vendors or in-house developers, component-based software development approach delivers the promise of software reuse. Consequently, component-based software development has a great potential for reducing development time and cost.

To build component-based software systems, several techniques are required for selecting an architecture that provides required level of quality in the resultant system; identifying the quality attributes that should be considered in evaluation of off-the-shelf components; and evaluating and analyzing software architectures. Lack of such techniques raises major technical issues. Furthermore, selecting off-the-shelf components that fit well together in a new system requires evaluating each candidate off-the-shelf component to ensure the component not only meets functional and quality requirements but also is compatible with other components in the system. Component evaluation requires information such as design assumptions and quality attributes of off-the-shelf components, and customization and integration tools for the components. However, off-the-shelf components, particularly commercial off-the-shelf (COTS) software are delivered as "black box" components; therefore, component interfaces are most often the only source of information available to systems developers. Due to the lack of sufficient information on off-the-shelf components, several key issues arise in the development as well as the maintenance of component-based software systems. This promotes the idea of providing a set of industry standard specifications and well-defined procedures, which can be used to ensure the availability, integrity, completeness, and accuracy of all the information required for selecting a right set of components for a new system.

Furthermore, several non-technical issues even more critical than technical issues are raised by the use of off-the-shelf components, particularly COTS software. Those are social, economical, and educational, marketing, legal, and licensing issues, for example:

The list of key questions regarding legal liability and licensing of COTS software components includes:

Many technical and non-technical issues need to be addressed for widespread adoption of component-based software development approach. For now, a strong opposition to component-based software development approach comes from those software developers who are deeply concerned about losing control of software systems they develop if they use off-the-shelf software components as the building blocks of their new systems. However, the advocates of the component-based software development approach believe that building new software systems by selecting, customizing, and assembling off-the-shelf software components not only provides an opportunity to develop large-scale and complex software systems more rapidly and economically, but also increases significantly the chance of having high-quality software systems developed by new and less-experienced software engineers.

The main purpose of this workshop is to explore the challenges of developing component-based software systems, and to promote the exchange of ideas on the issues critical to the success of component-based software development approach. Workshop participants will give short presentations. Then workshop attendees will have the opportunity to participate in making a list of the issues they find important and relevant to the workshop. After a list of significant issues is developed, smaller groups will be formed to further discuss and brainstorm those issues. The groups will then be merged, and each group will report on the results of their discussion and brainstorming to the entire workshop attendees. The collection of different group discussions and their suggested solutions will be made available to all attendees. This workshop is intended to encourage attendees to participate effectively in the workshop, and contribute by discussing the pitfalls and promises of the component-based software development approach and offering solutions to the related challenging problems. This workshop will also provide a forum for sharing the experiences of developing large-scale software systems using off-the-shelf components.


Refer to the Conference Schedule for more scheduling information


[an error occurred while processing this directive]