A.4 Support Software and Tools
GoalsThe goals of Support Software and Tools activities are: the development of reliable and robust software for operating, managing, and simplifying the use of complex, distributed heterogeneous systems; improved methodology and environments for generating scalable and portable software components; and new tools and techniques for increasing the productivity of the software development process.
OpportunitiesBroad opportunities exist for joint government, industry, and university efforts to provide support software technology applicable to all of the CIC Strategic Focus Areas. For example, the software service layer of the NII will provide essential services to applications and will link them to a communications layer comprised of alternate bitways. Software advances to enable the effective scalability and interoperability of the service layer for the NII will enable U.S. industry to compete effectively in the emerging electronic information marketplace. In the area of scalable computing and networking, rapid advances in electronic components and computing systems provide vast opportunities for coordinated advances in operating systems, languages, compiler technology and other support software to enable the broad application of scalable systems to scientific, engineering and commercial applications. Currently, the development of software components remains highly labor intensive. Raising the productivity of the software industry through simplifying toolkits can yield significant dividends in the international marketplace and enable more rapid introduction of hardware advances into affordable production systems.
Ongoing ActivitiesActivities in this area are concerned with the development and application of software elements that are essential to implement and sustain effective usage of advanced information technology - elements ranging from operating systems and languages to distributed object libraries to human-computer interfaces. These encompass several areas of research and development: language and programming paradigms; compiler methodology and optimization techniques; operating systems; human-computer interfaces; software tools and libraries; frameworks for application development; runtime systems; and computing, communications and information environment infrastructure. Basic research in these areas seeks to provide improved understanding of the design, creation, and validation of complex software systems.
New EffortsNew efforts in software in support of the CIC Strategic Focus Areas are pervasive and rely on a broad spectrum of computer science and engineering sub-disciplines.
Operating system and runtime system support are required for: interoperability and scalability in support of information use; distributed and heterogeneous systems and network-based mass storage; distributed access and control in virtual environments; and demanding real-time communication exchange to support user-centered interfaces.
Scalable software tools and development environments are required: to support the creation and testing of complex software systems for improved system development productivity; for facilitating software component reuse; to provide information infrastructure services such as information creation, update, search, discovery, and retrieval; and to support models for debugging, performance analysis, and performance tuning.
Language and compiler developments are required: to support: distributed memory systems; for automatic detection of parallelism; for parallel input/output; compiler optimization techniques; for object-oriented paradigms; to support programming paradigms for multi-mode user-system communications; and for portable and collaborative work tools
Standardized protocol interfaces, application frameworks, and object libraries are required for intimate networked applications.
Significant development of new human-machine interfaces will be required to aid users in accessing and using information in a largely multi-media and connectivity-rich environment. User aids must be integrated at the systems level, automatically invoked, and as transparent as possible. Speech recognition, synthetic speech, visualization, and virtual reality techniques are required for more effective human assimilation of structured and unstructured information.
High confidence systems require advancements in: formal verification and validation, to provide tools for automating program correctness; security tools and frameworks for providing authentication, encryption, authorization, and anonymous access; reference implementations and reliability testbeds for conformance testing of high integrity and high reliability systems; and verification and validation tools, test suites, and testbeds for promoting timely and effective standards and protocols.
Computing and networking testbeds are required to support infrastructure development and evaluate robustness, scalability, performance, and interoperability.
ChallengesHistory has shown that the barrier to effective, affordable, and reliable use of computing systems has been the software barrier. With the convergence of computing, communications, and information technologies and their integration in support of the NII goals, the software barrier has become even more pervasive and can be considered a challenge of fundamental importance as we proceed with the Information Age in the remainder of this century and into the 21st Century.
A.5 Intelligent Systems
GoalsGoals of the Intelligent Systems activities are to construct intelligent systems that are sensitive and responsive to human needs and requirements.
OpportunitiesIn order to achieve the societal promises of a more complex and capable information-based society over the next decade, intelligent systems will be required that empower people, especially the vast number of ordinary citizens, to take advantage of high-end computing and communications resources. This can be done by reducing the existing barriers to accessing, developing, and using advanced software and applications. User-centered interfaces and tools must be developed to provide new opportunities for academia, industry, and the government working together to realize these opportunities.
Ongoing ActivitiesA common core of capabilities is being pursued including abilities to: reason about the task being performed and basic common sense facts that affect it; reason about the collaborative process as well as about the knowledge and capabilities of other systems and people participating in an interaction; communicate with users in human terms, producing and understanding combinations of spoken and written language, drawings, images, and gestures; perceive the physical environments of the world; coordinate perception, planning and action; and learn from previous experience and adapt behavior accordingly.
New EffortsWhile progress has been made in each of the above areas, new efforts must concentrate on two critical areas aimed at scaling up and scaling wide for the next generation intelligent systems.
Building large systems: In addition to developing radically new technologies to adapt to human capabilities, the challenges facing future systems are solutions that retain efficiency and robustness in large-scale, demanding environments or applications.
Integrated systems: To construct high-impact, human-responsive, end-user systems will require the integration of a variety of capabilities including those described above.
ChallengesThe integration of multiple intelligent capabilities (such as retrieving digital video material by content through the use of voice input, image processing, and query language analysis) into a more complex task domain is a large scale technology integration challenge, because each of these core capabilities typically is realized in a complex software system,
A.6 Information Management
GoalsThe goals of information management R&D activities are the development and demonstration of information management technology for accessing and maintaining very large, complex, distributed information resources.
OpportunitiesVirtual enterprises require new capabilities for geographically dispersed teams to easily access, integrate, and share vast amounts of heterogeneous information. Truly human-scaled information systems require intelligent databases to locate appropriate information sources, perform queries and updates, filter and integrate responses, and tailor the relevant information to fit the needs of a specific user performing a specific task.
Ongoing ActivitiesActivities in this area fall under the general categories of information storage and retrieval, and database management. Included in these general categories are: activities in content analysis and registration; dictionaries and indexes; data compression; data storage and organization; logical and physical design schemas; data description and manipulation languages; query languages and processing; and transaction processing and concurrency.
New EffortsNew thrusts are needed in three general areas: the transition from relational database technology to post- relational technology (including object bases and support for spatial data, temporal data, multimedia data, imprecise data, active rules, and explicit profiles of the information requirements of each class of users); the coexistence and interoperability of old and new heterogeneous information systems; and intelligent processing techniques (developed in cooperation with the Intelligent Systems area) to locate, filter, integrate, and summarize relevant information from vast data resources. Ultimately, we must aim to transition from database information management technology to knowledge-based information management techniques with a goal of producing more cognitive systems.
More specifically, tools and techniques are needed to design the schemas for efficient large-scale distributed databases composed of objects, relations, and legacy data. Logical designs should include appropriate, explicit constraints to ensure the integrity and security of the database. Specific applications or classes of data (e.g., geographic, temporal, multimedia, very large objects) may require specialized query and update operations. Advanced query languages and processing services are needed, including search refinement and optimization based on user profiles. Special transaction processing and concurrency controls are required for long-duration transactions.
Wrappers, translators, and interfaces with knowledge of semantics of data resources and user requirements are needed to integrate heterogeneous data sources, including legacy data. Enterprise modeling is needed to integrate data and process views. Information sharing and linking is needed to support collaborative enterprises. Configuration, consistency, and change management are needed to support the development and maintenance of shared information.
Information storage and retrieval activities will require services combining the Information Management and Intelligent Systems areas for automated content analysis and registration equal to or better than services of expert human librarians, including the ability to analyze and index large unstructured data resources (images, videos, etc.). Advanced data compression and storage services are needed to optimize retrieval or update of very large distributed databases, including management of tertiary storage.
ChallengesInformation management systems of the future must satisfy a host of operational requirements that are invisible to the user, including portability, scalability, extendibility, robustness, reliability, maintainability, efficiency, and controllability.
GoalsThe goals of the Applications activities are to support the fundamental underpinnings of computation-, communications-, and information-intensive applications, especially those needed for applications requiring local or wide-area distributed processing. In addition, a crucial goal is to provide testbeds populated with emerging technologies for applications development and demonstrations, particularly for Grand and National Challenge applications.
OpportunitiesApplications set the requirements directions for technology use and demand across the full scope of the other six areas. The choice of specific applications should be based on scientific, educational, technical, societal, industrial, governmental, and business importance. These select applications serve as drivers for investing in the underlying science and the technology development of the other CIC areas, set the technological challenges for new R&D, and are used to test, evaluate, and adopt technology.
Applications should be the major interface between CIC and other NSTC committees, not only in supplying the technology and infrastructure for those areas, but also in using those areas to drive the research in other CIC areas. CIC technologies can impact the goals of other NSTC activities, and will eventually allow new breakthroughs in those areas. It is envisioned, for example, that distributed database infrastructure will be fundamental to advances in areas of concern to other NSTC committees, such as Environmental and Natural Resources as well as Health, Safety, and Food. Also, the new CIC technology and infrastructure will have profound impact on activities considered by Education and Training.
Ongoing ActivitiesFundamental underpinning activities include: computational algorithms, techniques, and templates; computational geometry; computational and adaptive grids and data structures; symbolic and numeric computing; graphics and visualization techniques; new mathematical models of physical and biological systems for massive parallel processing; and massive information handling techniques.
Emerging technologies are being demonstrated on Grand Challenge applications and challenges in computational physics, biology, chemistry, materials, and large scale engineering. Some National Challenge applications activities are just being initiated including manufacturing, health care, education, environmental monitoring, digital libraries, and government information services
The infrastructure upon which the Applications activities rely are: metacenters and supercomputer centers; research networks; scientists and engineers trained in modern I&C areas; human resources; directory and locating services; software component and computational techniques libraries; and information data bases.
New EffortsActivities in support of National Challenges will be increased and will be broadened to include electronic commerce, public transportation and safety, and life long learning including arts, humanities and culture. Emerging technologies including interfaces and standards for heterogeneous, distributed systems, portable and plug compatible Information and Communications tools, science facility control and access systems, and data exchange standards. Client-server services and application-specific (individual) query systems will be demonstrated in applications-focused testbeds. Scalability, usability, reliability, and portability of these technologies will be assessed.
ChallengesThe R&D investment strategy should include: broad and rapid application of existing information and communications technological capability and expertise to the problems of the U.S. industrial, governmental, societal, and educational segments for near term benefit to the U.S. taxpayer; judicious investment in several nationally important scientific, engineering, and industrial applications in order to both directly enhance the I&C capability in the selected areas, and to exhibit, integrate, test, evaluate component system technologies for future broad cost-effective I&C solutions; leadership in fundamental I&C science and technology development to enable future generation breakthroughs and advancements; and, through use of advanced I&C capabilities, a vision for inspiring technology demonstrations that enable educational process improvements and access to information bases for learning.
President and First Lady | Vice President and Mrs. Gore