Monday, October 22, 2007

Assignment 2 - System Architecture of On-line Knowledged-based Anatomy Information System - Done by Esha Ramtahl & Seethiah L.D


This assignment is done by Esha Ramtahal (0700148) and Seetiah L.d (0700184)

System Architecture of On-line Knowledge-based Anatomy Information System


Introduction
Anatomical information is fundamental for biomedicine, not only because there is a large amount of it, but also because anatomy serves as a framework for organizing other kinds of data.
Increased multimedia capabilities, together with new data sources such as the Visible Human, have led to many CD-ROM based anatomy atlases and tutorials. The World Wide Web provides the potential for these and other anatomical resources to be delivered over the Internet. However, most Web-accessible resources have to-date been little more than advertisements for CD-ROM products. The availability of the Web, together with the new anatomical information resources, present opportunities and challenges, both technical and economic, for delivering on-demand anatomical information that is customized to a wide variety of users.
The atlases consist of annotated images through various body regions, as well as stored animations of 3-D graphics reconstructions. Given an annotated image, a user is able to click on regions to see structures, to take an online quiz, to retrieve an associated animation, or to generate a "pin diagram" showing the names of all the structures in the image.
The atlases are widely used throughout the world, receiving over 7000 hits per day. However, on-line surveys and student feedback show a need for additional features. These features include 1) content from more parts of the body, 2) links to additional symbolic information besides just the name, 3) more control over the navigation, 4) varying levels of detail depending on the user, and 5) direct manipulation of 3-D models.


Functional Requirements


The main characteristic of this system over current image-based approaches is that it is knowledge-based. A foundational model of anatomy is accessed by an intelligent agent that uses its knowledge about the available anatomy resources and the user types to generate customized interfaces. The goal is to build a single information system that can dynamically generate many types of interfaces, and can apply these interface styles to all structures in the body. We believe that the best architecture for achieving this goal is the evolving distributed framework, in which authoring and end-user programs access a set of structural information resources by means of one or more structural information servers. By separating the resources from the methods of delivery we can deliver the resources in multiple forms and can develop multiple means for accessing them.

Users include K-12 students, undergraduates, professional students such as medical students, postdoctoral fellows and residents, professionals such as cardiac surgeons, and the lay public.
The spatial information resources include 2-D annotated images, 3-D labeled image volumes, 3-D models, and stored animations.


The symbolic information resources include the knowledge base, which implements the foundational model of anatomy. The symbolic resources also include metadata, which will be used to locate, track and identify the spatial information, since spatial information comes in many forms and may be located in different locations on the Internet.


The authoring programs shown in the upper left are used to create these resources, and include a Knowledge Builder for creating the foundational model, a Model Builder for creating the 3-D models from 3-D image volumes, and an Annotator, for associating names from the knowledge base with regions on the images.


The Structural Information Servers provide network access to these resources. The Annotated Image Server delivers interactive images that respond to mouse clicks, as in our current Web atlas programs. The Knowledge Server provides access to the foundational model, and provides answers to queries such as "Find all the synonyms of aorta", or "List the branches of the aorta".

The Data Server consults the metadata to provide the filenames of spatial objects that are associated with a set of anatomical concepts indexed by terms in the knowledge base, and the Graphics Server combines these spatial objects into scenes that are delivered to the client. These scenes can take the form of dynamically generated annotated images, animations, or VRML descriptions.


The Digital Anatomist module is an intelligent agent that acts as an intermediary between the user and the set of resources. Eventually the Digital Anatomist should act like a real anatomist in presenting anatomical information to the end user.


End User Interfaces
Although the information should be organized around the foundational model, the end-user will not necessarily see this model unless he or she requests it. Instead the information should be presented in different ways depending on the type of user, the manner of use, and the category of information. The type of user determines the level of detail that is appropriate to present. The manner of use includes reference, tutorial and consultant modes. The category of information is spatial or symbolic.


Non Functional Requirements
Non-Functional Requirements (NFRs) presents a systematic and pragmatic approach to `building quality into' software systems. Systems must exhibit software quality attributes, such as accuracy, performance, security and modifiability. However, such non-functional requirements (NFRs) are difficult to address in many projects, even though there are many techniques to meet functional requirements in order to provide desired functionality. This is particularly true since the NFRs for each system typically interact with each other, have a broad impact on the system and may be subjective.
Emergent Properties

The correctness of the system – Extent to which the system satisfies and fullfils the user’s specification

The overall weight – This is known only after all the modules are put together

The reliability – Extent to which the system can be expected to perform its intended function with required precision when subjected to the environment in which it was intended to use

The usability – Effort required learning, operating and interpreting the output of the system

Efficiency – The amount of computing resources and code required by the system to perform a function

Integrity (Robustness/Security) – Extent to which access to software or data by unauthorized person can be controlled

Maintainability – Effort required locating and fixing error in the operational product

Testability – Effort required testing the product to ensure it performs the intended functions

Flexibility – Effort required modifying the operational program

Portability – Effort required transferring the product from one hardware configuration and/or software system environment to another

Reusability – Extent to which the system or part of it can be used in other applications
Interoperability – Effort required coupling the system with another

Performance – The number of processes the system can handle in unit time

Sunday, October 7, 2007

Assignment 1-Software Application - Done by Esha Ramtahal (Id: 0700148) & Seethiah L.D

This assignment is Done By Esha Ramtahal(0700148) & Seethiah L.D(0700184)
SOFTWARE APPLICATIONS

According to what we have learnt and understood, software is a collection of instructions that enables a user to interact with the computer or have the computer perform specific tasks for them. Without any type of software the computer would be useless.

For a computer to be functional, most computers will include a software operating system and a collection of different software programs. Below is a listing of different software applications that may be included on a computer:

System Software

As per to our research, system software is a generic term referring to any computer program or library whose purpose is to help run the computer system (including low-level software implementing lots of computer networks), as opposed to application software which helps solve user problems directly).

At the foundation of all system software, an operating system performs basic tasks such as controlling and allocating memory, prioritizing system requests, controlling input and output devices, facilitating networking and managing file systems. Most operating systems come with an application that provides a user interface for managing the operating system, such as a command line interpreter or graphical user interface. The operating system forms a platform for other system software and for application software. Linux and Mac OS (or any other BSD-derivative) are popular UNIX-like operating systems. Windows takes a different approach to operating systems, derived upon a historic single-user model.


Real-Time Software

Many things can be said about real time software, but we are presenting you just some important points. A system is said to be real-time if the total correctness of an operation depends not only upon its logical correctness, but also upon the time in which it is performed.

From the point of view of temporal performance, two types of real-time systems can be distinguished:
o Soft real-time systems: these are systems where a failure to meet a specified deadline reduces the utility of the result, but does not lead to a significant financial loss. An example of such a system is a letter sorting machine: If a letter is dropped into the wrong box because of a timing failure of the computer, no serious consequences will result.

o Hard real-time systems: these are systems where a failure to meet a specified deadline can lead to catastrophic consequences. An example of a hard real time application is a computer system controlling a railway-shunting yard: If a wagon is released to the wrong track because of a timing failure of the computer, a serious accident may occur.


Business Software

From the term itself anyone can guess that business software is generally any software program that helps a business to 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:

o The small business market generally consists of home accounting software and office suites such as Microsoft Office and OpenOffice.org.

o 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.

o The last segment covers enterprise level software applications, such as those in the field of enterprise resource planning, enterprise content management (ECM), 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.


Engineering/Scientific Software

We are sorry that we could not get a well-structured definition from our research for this type of software but from what we grasped is that Engineering/Scientific software has simulation and modeling capabilities.

Some examples are:

o Mathematica
All internal representations of dates within the computational kernel are in the form of high level expression structures which are capable of representing arbitrary dates.
Certain aspects of the software make use of the host operating system's real time clock, for example in order to learn the current date and time. Mathematica is therefore limited by the operating system it is running on, but these limitations are inherent to the operating system, not Mathematica.
o Matlab
Matlab is a matrix programming language and programming environment - Used more by engineers but increasingly by economists.


Embedded Software

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.

A router is an example of embedded software. Labeled parts include a microprocessor (4), RAM (6), and flash memory (7).


Artificial Intelligence(AI) software

From what we know, anything that is artificial means that it cannot be natural; it is created by us and is applied in such a way to get a meaningful outcome. AI is the science of making machines do tasks that humans can do or try to do.

The modern definition of AI is “the study and design of intelligent agents” where an intelligent agent is a system that perceives its environment and takes actions which maximizes its chances of success.

AI research uses tools and insights from many fields, including computer science, psychology, philosophy, neuroscience, cognitive science, linguistics, operation research, economics, control theory, probability, optimization and logic. AI research also overlaps with tasks such as robotics, control systems, scheduling, data mining, logistics, speech recognition, facial recognition and many others.


Web Applications Software

The word ‘web’ itself indicates that this software is an application that is accessed via web. It can be over a network such as the internet or an intranet.

Web applications are popular due to the ubiquity of a client, sometimes called a thin client. 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. Web applications are used to implement Web mails, online retail sales, online auctions, wikis, discussion boards, Weblogs and many other functions.


Source of information:

Ø http://www.computerhope.com/asoftwar.htm
Ø http://en.wikipedia.org/wiki/Real-time_computing
Ø http://www.techweb.com/encyclopedia/defineterm.jhtml?term=business+software
Ø http://en.wikipedia.org/wiki/Business_software
Ø http://en.wikipedia.org/wiki/Category:System_software
Ø http://en.wikipedia.org/wiki/Operating_system
Ø http://www.technion.ac.il/guides/tcc-guides/Guides/math2000.html
Ø http://www.realtimesoft.pdf/
Ø http://www.eventhelix.com/RealtimeMantra/Basics/
Ø http://www.webopedia.com/TERM/s/systems_software.html
Ø http://findarticles.com/p/articles/mi_m0PIL/is_2006_Nov_6/ai_n16820033
Ø http://en.wikipedia.org/wiki/Business_software
Ø http://en.wikipedia.org/wiki/Embedded_software
Ø http://en.wikipedia.org/wiki/Embedded_system
Ø http://en.wikipedia.org/wiki/Artificial_intelligence

We are grateful to our lecturer, Mr Sood, if not for him may be we would not know what a blog is. This assignment has surely increased our knowledge.