Monday, October 22, 2007

Architecturel Design of a Voice Browser System

Assignment 2
System Architectural Design
[Voice Browser System]
ID No : 0700165
==========================================================================
Description of the system

Voice Browser System - enable access to the web using spoken interaction

Two types of clients are illustrated: telephony and data networking. The fundamental telephony client is, of course, the telephone, either wireline or wireless. The handset telephone requires PSTN (Public Switched Telephone Network) interface, which can be either tip/ring, T1, or higher level, and may include hybrid echo cancellation to remove line echoes for ASR barge-in over audio output. A speakerphone will also require an acoustic echo canceller to remove room echoes. The data network interface will require only acoustic echo cancellation if used with an open microphone since there is no line echo on data networks. The IP interface is shown for illustration only. Other data transport mechanisms can be used as well.

Once data has passed the client interface, it can be processed in a similar manner. One minor difference may be speech endpointing. Endpointing will most likely be performed either in the telephony interface or at the front-end of the ASR processor for speech input from telephony interface. For speech via the IP interface endpointing can be performed at the client as well as the ASR front-end. The choice of where endpointing occurs is coupled with the choice for echo cancellation.

It is currently not clear how non-speech data will be handled at the telephony interface. This can include inputs such as pointing device input from a "smart phone," address books and other client resident file data, and eventually even data like video. These smart telephone devices are now on the drawing boards of many suppliers. Some this traffic can be handled by WAP/WML, but there are still open issues with regards to multi-modality. Therefore voice markup language specifications should provide means for extending the language features.

Data from the ASR/DTMF (etc.) recognizer must be in a format compatible with the NL (Natural Language) interpreter. Typically this would be text, but might include non-textual components for pointing device input, in which case pointing coordinates can be associated with text and/or semantic tags. If the recognizer has detected valid input while output is still being presented, the recognizer can signal the presentation component to stop output. Barge-in may not be desirable for certain types of multi-media output, and should primarily be considered important for interrupting speech output. In some cases it may also be undesirable to interrupt speech output, such as in the processing of commands to change speaking volume or rate.

The recognizer can produce multiple outputs and associated confidence scores. The NL interpreter can also produce multiple interpretations. Interpreted NL output is coordinated with other modes of input that may require interpretation in the current NL context or may alter or augment the interpretation of the NL input. It is the responsibility of the multi-media integration module to produce possibly multiple coordinated joint interpretations of the multi-modal input and present these to the dialog manager. Context information can also be shared with the dialog manager to further refine the interpretation, including resolution of anaphora and implied expressions. The dialog manager is responsible for the final selection of best interpretation.

The dialog manager is also responsible for responding to the input statement. This responsibility can include resolving ambiguity, issuing instructions and/or queries to the task manager, collecting output from the task manager, formation of a natural language expression or visual presentation of the task manager output, and coordination of recognizer context.

The task manager is primarily an Application Program Interface (API), but can also include pragmatic and application specific reasoning. The task manager can be an agent, or proxy, can possess state, and can communicate with other agents or proxies for services. The primary application interface for the task manager is expected to be web servers, but can be other API's as well.

Finally, the presentation manager, or output media "renderer," has responsibility for formatting multi-media output in a coordinated manner. The presentation manager should be aware of the client device capabilities.





Sunday, October 7, 2007

Different types of Software Application

Assignment 1
Software Application

ID No : 0700165
==================================================================================== Software can be split into two main types - system software and application software. System software is any software required to support the production or execution of application programs but which is not specific to any particular application.

Examples of system software would include the operating system, compilers, editors and sorting programs.

Examples of application programs would include an accounts package or a CAD program. Other broad classes of application software include real-time software, business software, scientific and engineering software, embedded software, personal computer software and artificial intelligence software.


System Software

System software refers to the files and programs that make up your computer's operating system. System files include libraries of functions, system services, drivers for printers and other hardware, system preferences, and other configuration files. The programs that are part of the system software include assemblers, compilers, file management tools, system utilities, and debuggers. The system software is installed on your computer when you install your operating system. You can update the software by running programs such as "Windows Update" for Windows or "Software Update" for Mac OS X. Unlike application programs, however, system software is not meant to be run by the end user. For example, while you might use your Web browser every day, you probably don't have much use for an assembler program (unless, of course, you are a computer programmer).

Since system software runs at the most basic level of your computer, it is called "low-level" software. It generates the user interface and allows the operating system to interact with the hardware. Fortunately, you don't have to worry about what the system software is doing since it just runs in the background. It's nice to think you are working at a "high-level" anyway.


Real time Software



Predator MDC is a real time software.

Click here to read more












A real time system is a software system where the correct functioning of the system depends on the results produced by the system and the time at which these results are produced.

In short, any situation where the time at which a result is produced is as important as the result itself. Producing the right answer too late is as bad as producing the wrong answer or no answer at all! Avionics, robotics and process control are all examples of real-time software applications. At present real-time software is difficult, and thus expensive, to produce. Programmers are forced to work with low-level machine languages because conventional programming aids hinder, rather than help, the ability to guarantee timing predictability. An optimizing compiler, for instance, may rearrange the object code it generates to improve performance.

However this makes it difficult for the programmer to accurately predict the timing behavior of a program from its source code. Also real-time systems must undergo an unusually long testing phase to increase confidence in their timing behavior. Yet even this is not always sufficient because the system may not have exactly the same real-time behavior under test conditions as it does `in the field'.


Business Software



Officenet Workplace™ is the complete IT solution for any busy office

Click here to read more













Business software is generally any software program that helps a business increase productivity or measure their productivity. The term covers a large variation of uses within the business environment, and can be categorized by using a small, medium and large matrix:
The small business market generally consists of home accounting software, and office suites such as Microsoft Office.

The medium size has a broader range of software applications, ranging from accounting, groupware, customer relationship management, human resources software, loan origination software, shopping cart software, field service software, and other productivity enhancing applications.

The last segment covers enterprise level software applications, such as those in the fields of enterprise resource planning, enterprise content management, business process management and product lifecycle management. These applications are extensive in scope, and often come with modules that either add native functions, or incorporate the functionality of third-party software programs. Now, technologies that have previously only existed in peer-to-peer software applications, like Kazaa and Napster, are starting to feature within business applications.


Scientific Software


The ADAM Interactive Anatomy (AIA4) software provides visual human anatomy capabilities.

Click Here to read more











Scientific software is powerful specialized software that scientists and engineers develop allowing users to calculate very complex expressions in an analytic form; Behavioral and social sciences (such as psychology, sociology, psychiatry, criminal science, family studies, political science, developmental research, anthropology, or social work) Medical research ,Education (in administration, test analysis, counseling) ,Business research (marketing, management, economics, organization) and Environmental science.


Embedded Software






Click here
to read more







An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions. It is usually embedded as part of a complete device including hardware and mechanical parts.Its principal role is not the transformation of data, but rather the interaction with the physical world. It executes on machines that are not, first and foremost, computers. They are cars, airplanes, telephones, audio equipment, robots, appliances, toys, security systems, pacemakers, heart monitors, weapons, television sets, printers, scanners, climate control systems, manufacturing systems, and so on.


AI Software














Corneal Mapping of the eye using AI Software.

Click here to read more.


Artificial Intelligence Software can be thought as a 'human brain machine' since the particular AI software can process the simulation of a human brain. These processes include learning (the acquisition of information and rules for using the information), reasoning (using the rules to reach approximate or definite conclusions), and self-correction. Particular applications of AI include expert systems, speech recognition, and image recognition.


Web Application




This amazing software is a web application.

Click here to read more













Web application is an application that is accessed through web over a network such as the internet or an intranet. It is really important to note that the ability to update and maintain Web applications without distributing and installing software on potentially thousands of client computers is a key reason for their popularity.Webmail, online retail sales, online auctions, discussions & Weblogs are common examples.