0% found this document useful (0 votes)
7 views57 pages

I-fact Solutions: IT Services Overview

I-fact Solutions is a leading provider of internet-based applications, emphasizing high-quality software solutions and IT services. The company aims to exceed customer expectations through innovative technology and a strong management team, while maintaining a commitment to human values and personal relationships. Their services include software development, ERP solutions, and managed services, all designed to enhance productivity and optimize IT investments.

Uploaded by

Peter
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views57 pages

I-fact Solutions: IT Services Overview

I-fact Solutions is a leading provider of internet-based applications, emphasizing high-quality software solutions and IT services. The company aims to exceed customer expectations through innovative technology and a strong management team, while maintaining a commitment to human values and personal relationships. Their services include software development, ERP solutions, and managed services, all designed to enhance productivity and optimize IT investments.

Uploaded by

Peter
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

1

CHAPTER 1

INTRODUCTION

1.1 COMPANY PROFILE

I-fact solutions proves to be a leading solution provider for Internet based


applications. The Company has been promoted by some highly experienced
Professionals dedicated to provide total IT solutions under one roof. It possesses
not only the latest technology gadgets but also the most knowledgeable.

1.1.1 Management Team

Our superior expertise is grouped with fifteen members who have


knowledge of the local market, and most of them have worked or studied abroad,
gaining familiarity with international management practices. By encouraging open
communications at all organizational levels, our team taps the professional
experience for more than five year.

The technical economy is built on close co-operation between our


professionals who serves as mentors to our growth towards success. The best-of-
class and innovative solutions and software products available to our clients and
end users. Poras Team comprises Solution and Technical engineers who are
focused on upcoming technologies research and trends to meet an organizations
business needs. Our Poras technologies an intentional management team is an
integrate of the following holdings which is being build in accordance with values
to provide technical innovations and comprehensive solutions for enterprise world.
A committed management team anchors the organization effectively to its goal of
2

providing high quality software solutions to its clients. Equipped with technical
expertise, excellent domain knowledge and extensive cross-functional experience.

1.1.2 Aim
To be competitive and proactive in providing software solutions to
customers by continuously strive to exceed their expectations.

1.1.3 Vision
Our vision is to be the leading provider of high quality software solutions
and IT services in this booming IT industry, to enable our customers build,
maintain, operate and continuously improve their communications infrastructure
and IT environment.

1.1.4 Company Goals

Our business goal is to lay emphasis on Human Values and Personal


Relations. Great stress is laid on proper communication, transparency and human
relations, which forms an integral part of the corporate culture.

1.1.5 Company Values

As a company, and as individuals, we are vision based & value driven.


Poras values integrity, personal excellence, continual self-improvement, and
mutual respect and these manifests itself in its engagements with all of their stake
holders, viz. the clients, the members and its investors. We are committed to our
customers and have a passion for technology. We take on big challenges, and
pride ourselves on seeing them through. We hold ourselves accountable to our
customers and our members by honoring our commitments, providing results, and
striving for the highest quality. We help clients manage the business and
technology complexities of today's economy.
3

1.1.6 Product &Services

Our software solutions are developed to provide our customers with


flexible, cost effective options that are web-based, developed on an open
architecture platform, and fully inheritable with other technology systems. We
make our clients company faster and better by using our advanced exchange
capability to quickly and easily connect you with the talents and capabilities of a
global pool of todays most prepared minds. We have established a reputation for
quality work and on-time performance.

1.1.7 IT Services

We create IT-enabled business solutions for our clients by leveraging our


domain and business expertise along with a complete range of services. We offer a
flexible and client driven approach and can provide you with a powerful and
unique delivery model.

1.1.8 Business Solutions

Our business solutions, Technology and services helps to increase


productivity, reduce costs, and optimize asset utilization, maximize value from
your IT investments, the ultimate aim of our company is to help you to reduce
your information technology costs, whilst provide you with the services to meet
your business needs. We at PORAS keep IT simple delivering business results
fast. Providing you with the right technology resources at the right time.

1.1.9 Managed Services

We define, design and deliver technology-enabled business solutions. We


take pride in building strategic long-term client relationships.
4

1.1.10 ERP Services

We are expertise in managing large IT applications in real time as well as in


providing high value services around packaged enterprise applications. Beyond
executing our projects, we build value for our customers by assisting them in
achieving their business goals through superior execution, best-of-breed solutions
and responsive service.

1.1.11 Quality Initiative

Quality is an all-pervasive commitment at PORAS. We translate this


commitment into seamless service delivery for our clients. The maturity of our
processes ensures we deliver on time, on budget, with minimum defects.

1.1.12 Services

Software Development
ERP Development
Web Development
Software Consultants

1.2 OBJECTIVE

Multimedia is, as described in Vaughan, a combination of various elements,


such as text, graphic art, animation, video, and sound. Moreover, with the demand
increasing tremendously for the Internet and the World Wide Web through the
past few years, for example in distance education, shopping, travelling, and
searching database engines, these multimedia elements have become essential part
of the Web design. In particular, the images, such as pictures, clip art, 3-D
graphics, and animation, are commonly used in designing for both multimedia and
5

the Web. Regardless of their forms, multimedia images are generated by the
computers in two ways: as vector-based graphics and bitmap images (Vaughan,
2001).

VLSI technology that is producing greater processing power;


broad-band networks (ISDN, ATM, etc) that are providing much
higher bandwidth for many practical applications, and
Multimedia compression standards (JPEG, H.263, MPEG, MP3, etc)
that enable efficient storage and communication.

The combination of these three advances is spurring the creation and processing of
increasingly high-volume multimedia data, along with its efficient compression
and transmission over high-bandwidth networks. This current trend towards the
removal of any conceivable bottleneck in using multimedia and its impact on a
whole spectrum of users, from advanced research organizations to home users, has
led to the explosive growth of visual information available in the form of digital
libraries and online multimedia archives
6

CHAPTER 2

SYSTEM ANALYSIS

2.1 EXISTING SYSTEM

In existing system image morphing techniques can be classified into two


categories such as mesh-based and feature-based methods in terms of their ways
for specifying features. In mesh-based methods, the features on an image are
specified by a no uniform mesh. Feature-based methods specify the features with a
set of points or line segments.

One way of achieving the morphing effect is to transform one image into
another by creating a cross-dissolve between them. According to Claypoole, in
this method, the color of each pixel is interpolated over time from the first image
value to the corresponding second image value.

A second way to achieve morphing is feature interpolation, which is


performed by combining warps with the color interpolation. The features of two
images and their correspondences are specified by an animator with a set of points
or line segments. Then, warps are computed to distort the images so that the
features have intermediate positions and shapes. The color interpolation between
the distorted images finally gives an in- between image

2.1.1 Drawbacks

This is not very effective in portraying an actual metamorphosis.

The metamorphosis between faces does not look good if the two faces do not

have about the same shape.


7

This method also tends to wash away the features on the images.

2.2 PROPOSED SYSTEM

In proposed morphing is the most difficult task is the warping of one image
into another image. It is the stretching and pulling of the images that makes the
morphing effect so realistic. The actual morphing of the image can be
accomplished either by using morph points or morph lines. Morph points are the
markers that the user set up on the start image and the end image. The morphing
program then uses these markers to calculate how the initial image should
bend/warp to match the shape of the final image.

The second method uses lines (edges) instead of individual points. Both
methods produce very realistic morphing effects. One of the most time consuming
tasks in morphing is selecting the points or lines in the initial and final image so
that the metamorphosis is smooth and natural there are several useful tips to
remember when morphing objects. The first is to choose carefully those pictures to
morph (Morphing Software). For example, if the user wish to morph two animals,
it is best to use pictures that have the same general size and outline. If one picture
of the animal is a close up of the head then the other picture should also be a close
up of the head to obtain successful results. A second tip is to carefully select the
background (Morphing Software). If a single color background is used, the
morphing effect focuses on the object. Ideally, it is best to use the same
background for each picture.

2.3 ANIMATION

Animation is the state of being lively, brisk, vigorous quality. With one
click into the Internet domain, one is drawn to blinking text, waving banners . a
lively quality indeed. Such displays of animation are a result of the technique
made famous by Walt Disney in the 1930s. A series of progressively different
graphics on each frame of movie film would play 24 frames per second. An
8

inanimate drawing of a mouse became a much-loved personality once animated.


The terminology incorporating animation thus evolved from Disneys efforts.

2.4 CEL ANIMATION

The term cel derives from the clear celluloid sheets that were used for
drawing each frame. The series of frames in between the keyframes (first and last
frame of action) are drawn in a process called tweening. Tweening an action
requires calculating the number of frames between keyframes and the path the
action takes, and then actually sketching onto a cel with pencil the series of
progressively different outlines. Cel animation is the traditional method of eight
overlapping stages:

Storyboard (scripting)
Soundtrack
Exposure sheet (giant spreadsheet to log sound and direction for
animation)
Background painting
Drawing
Pencil testing
Inking and colouring
Compositing

Wagstaff recommends for low-end cel animation WebPainter, a simple cel


animation tool for the Macintosh that provides capable onionskinning and painting
tools. It can quickly add and delete frames in a window and quickly switch
onionskinning to show previous or subsequent frames. The other cel animation
paint tool for Windows called ProMotion is not as simple to use according to
Wagstaff.

2.5 KEYFRAME ANIMATION

Keyframe animation programs eliminate many of the traditional steps. The


keyframe tools offer automatic inbetweening - that is, the user set up the key
9

frames, and the program calculates and generates the inbetween frames for the
user. These programs are primarily used to animate the elements of graphic
design: type, photography, and individual pieces of hand-drawn art. Many of these
programs also work well with frames of video and film. Macromedia Director and
Macromedia Flash animate one frame at a time when they work with hand-drawn
cels, or they generate inbetween frames for objects moved from point to point or
rotated.

2.6 COMPUTER ANIMATION

Computer animation follows the same format by filming a sequence of


painted cels then using layers, keyframes, and tweening techniques. Layers
provide the capability to place one image on top of another and to allow all or part
of the underlying image show through. This capability allows the user to maintain
registration between multiple frames of animation and to see how various images
in an animation go together. Registration is a crucial concept in animation.
Registration points let the user know whether the users layers are aligned. When
the user work with Adobe Illustrator, Macromedia Freehand, or another program
that support layers, The user can copy and paste the registration point into every
layer in the drawing so that the points exactly overlap. (Vaughn p.156, 1998) On
the computer, paint is most often filled or drawn with tools using features such as
gradients and anti-aliasing (soft gray edges that make lines appear smooth). The
word inks, in computer animation terminology, usually means special methods for
computing RGB (red, green, blue) pixel values, providing edge detection, and
layering so that images can blend or otherwise mix their colors to produce special
transparencies, inversions, and effects.

2.7 RICH MEDIA

Rich Media refers to the utilization of various technologies to enhance a


recipient's experience. It uses advanced technology such as steaming video, flash
to interact instantly with the user, also the term of rich media is not easy to define,
all the rich media technologies generally exhibit at least some of the following
10

characteristics: They allow for advanced animations; They support audio/radio in


the advertisings and they make possible the instant user interactions. The defining
characteristic of rich media is that the media element exhibits dynamic motion.
This motion can occur over time or in response to an interaction with the user.

In the previous years, via creating the eyes-catching effects, associating


with proper sounds and providing user-participating, rich media has proven itself
as the very popular and efficient for enhances users on-line experience.
According to the data from Jupiter Research, over 60 percent of on- line
advertisers have used rich media elements to attractive users before 2002. More
and more attention has been paid to rich media. A summary about different rich
media types and their specified technology used, in order to provide those who are
interested in this field a jump-start.

Following gives some examples of rich media:

An ad for a new delivered Hollywood movie that includes a streaming video


sample of a few scenes from the movie.
A mouse cursor that is changed to a particular image on a particular Web site if
the user requests it.
A standard-size banner ad that includes an inquiry form about free magazine
subscription, capturing the user's filled- in personal information, and telling the
user they will be contacted by a company representative - all simply by
interacting with an ad on an online publisher's Web page .
An animated flashed played in website.

2.8 FEASIBILITY STUDY

The feasibility of the project is analyzed in this phase and business proposal
is put forth with a very general plan for the project and some cost estimates.
During system analysis the feasibility study of the proposed system is to be carried
out. This is to ensure that the proposed system is not a burden to the company.
11

For feasibility analysis, some understanding of the major requirements for the
system is essential. The process to make changes in the current system in order
to achieve new effective system. The feasibility study includes complete initial
analysis of all related system.

Feasibility study is the stage, which follows once the scope of the project is
identified. At this stage of project development user should be able to answer the
following question:

Can user build the software to meet this scope?


Is the project feasible?
In there a new and better way to do the job that will benefit the user?
What are the costs and savings involved to achieve the new system?

Three key considerations involved in the feasibility analysis are

Economical Feasibility

Technical Feasibility

Social Feasibility

2.8.1 Economical Feasibility

The economic impact that the system will have on the organization. The
amount of fund that the company can pour into the research and development of
the system is limited. The expenditures must be justified. Thus the developed
system as well within the budget and this was achieved because most of the
technologies used are freely available. Only the customized products had to be
purchased.
12

2.8.2 Technical Feasibility

The technical feasibility is the technical requirements of the system. Any


system developed must not have a high demand on the available technical
resources. This will lead to high demands on the available technical resources.
This will lead to high demands being placed on the client. The developed system
must have a modest requirement, as only minimal or null changes are required for
implementing this system.

2.8.3 Social Feasibility

The aspect of study is to check the level of acceptance of the system by the
user. This includes the process of training the user to use the system efficiently.
The user must not feel threatened by the system, instead must accept it as a
necessity. The level of acceptance by the users solely depends on the methods that
are employed to educate the user about the system and to make them familiar with
it. Their level of efficient must be raised so that he is also able to make some
constructive criticism, which is welcomed, as he is the final user of the system.
13

CHAPTER 3

SYSTEM SPECIFICATION

3.1 HARDWARE REQUIREMENTS

System : Pentium IV 2.8 GHz

Hard Disk : 20 GB

Monitor : 15.6 LCD VGA colour

RAM : 256 MB

Mouse : Logitech

Memory : 1 GB

Keyboard : 104 keys Standard Keyboard

3.2 SOFTWARE REQUIREMENTS

Operating System : Windows XP Professional.

Front End : Visual [Link] 2010,

Coding Language : Visual C# .Net.

.Net Framework : Version 3.5


14

CHAPTER 4

SOFTWARE DESCRIPTION

4.1 FRONT END

4.1.1 Features of .Net

Microsoft .NET is a set of Microsoft software technologies for rapidly


building and integrating XML Web services, Microsoft Windows-based
applications, and Web solutions. The .NET Framework is a language-neutral
platform for writing programs that can easily and securely interoperate. No language
barrier with .NET: there are numerous languages available to the developer
including Managed C++, C#, Visual Basic and Java Script. The .NET framework
provides the foundation for components to interact seamlessly, whether locally or
remotely on different platforms.

.NET is also the collective name given to various software components


built upon the .NET [Link] technology is a third generation component
model. This provides interoperability compared to COM technology. The .Net
contains three technologies:

Presentation Technologies
Component Technologies
Data Technologies
15

These will be both products (Visual [Link] and [Link] Server


for instance) and services (like Passport, .NET My Services, and so on). The .NET
integrated on single platform so enable to users to develop Internet application than
desktop system.

4.2 THE .NET FRAMEWORK

The .NET Framework has two main parts:

The Common Language Runtime (CLR).


A hierarchical set of class libraries.

The CLR is described as the execution engine of .NET. It provides the


environment within which programs run. The most important features are,

Conversion from a low-level assembler-style language, called Intermediate


Language (IL), into code native to the platform being executed on.
Memory management, notably including garbage collection.
Checking and enforcing security restrictions on the running code.
Loading and executing programs, with version control and other such features.
These following features of the .NET framework are also worth description.

4.2.1 Managed Data

Managed Data in CLR provides memory allocation and deal location


facilities, and garbage collection. Some .NET languages use Managed Data by
default, such as C#, Visual [Link] and [Link], whereas others, namely
C++, do not. Targeting CLR can, depending on the language youre using, impose
certain constraints on the features available. As with managed and unmanaged code,
16

one can have both managed and unmanaged data in .NET applications - data that
doesnt get garbage collected but instead is looked after by unmanaged code.

4.2.2 Common Type System

The CLR uses something called the Common Type System (CTS) to strictly
enforce type-safety. This ensures that all classes are compatible with each other, by
describing types in a common way. CTS define how types work within the runtime,
which enables types in one language to interoperate with types in another language,
including cross-language exception handling. As well as ensuring that types are only
used in appropriate ways, the runtime also ensures that code doesnt attempt to
access memory that hasnt been allocated.

4.2.3 Common Language Specification

The CLR provides built-in support for language interoperability. To ensure


that you can develop managed code that can be fully used by developers using any
programming language, a set of language features and rules for using them called
the Common Language Specification (CLS) has been defined. Components that
follow these rules and expose only CLS features are considered CLS-compliant.

4.3 THE CLASS LIBRARY

.NET provides a single-rooted hierarchy of classes, containing over 7000


types. The root of the namespace is called System; this contains basic types like
Byte, Double, Boolean, and String, as well as Object. All objects derive from
System. Object. As well as objects, there are value types. Value types can be
allocated on the stack, which can provide useful flexibility. There are also efficient
means of converting value types to object types if and when necessary.
17

The set of classes is pretty comprehensive, providing collections, file, screen,


and network I/O, threading, and so on, as well as XML and database connectivity.
The class library is subdivided into a number of sets, each providing distinct areas of
functionality, with dependencies between the namespaces kept to a minimum.

4.4 LANGUAGES SUPPORTED BY .NET

The multi-language capability of the .NET Framework and Visual Studio


.NET enables developers to use their existing programming skills to build all types
of applications and XML Web services. The .NET framework supports new
versions of Microsofts old favorites Visual Basic and C++ , but there are also a
number of new additions to the family.
Visual Basic .NET has been updated to include many new and improved
language features that make it a powerful object-oriented programming language.
These features include inheritance, interfaces, and overloading, among others.
Visual Basic also now supports structured exception handling, custom attributes and
also supports multi-threading.

Visual Basic .NET is also CLS compliant, which means that any CLS
compliant language can use the classes, objects, and components you create in
Visual Basic .NET. Managed Extensions for C++ and attributed programming are
just some of the enhancements made to the C++ language. Managed Extensions
simplify the task of migrating existing C++ applications to the new .NET
Framework.

C# is Microsofts new language. Its a C-style language that is essentially C++ for
Rapid Application Development. C# specification is just the grammar of the
language. It has no standard library of its own, and instead has been designed with
the intention of using the .NET libraries as its own.
18

Microsoft Visual J# .NET provides the easiest transition for Java language
developers into the world of XML Web Services and dramatically improves the
interoperability of Java-language programs with existing software written in a
variety of other programming languages. Active State has created Visual Perl and
Visual Python, which enable .NET aware applications to be built in either Perl or
Python. Both products can be integrated into the Visual Studio .NET environment.
Visual Perl includes support for Active States Perl Dev Kit.

C#.NET is also compliant with CLS (Common Language Specification) and


supports structured exception handling. CLS is set of rules and constructs that are
supported by the CLR. It is the runtime environment provided by the .NET
Framework; it manages the execution of the code and also makes the development
process easier by providing services. CLS is defining as set of rules that enables the
interoperability on the .NET Platform.

The .NET is software for framework that includes everything required for
developing software for web services. C#.NET is a CLS-compliant language. Any
objects, classes, or components that created in C#.NET can be used in any other
CLS-compliant language. In addition, we can use objects, classes, and components
created in other CLS-compliant languages in C#.NET. The use of CLS ensures
complete interoperability among applications, regardless of the languages used to
create the application.

4.5 CONSTRUCTORS AND DESTRUCTORS

Constructors are used to initialize objects, the object to initialize itself when
it is created. The constructor name is same as the class name and it has no return
type, whereas destructors are used to destroy the objects. In other words, destructors
are used to release the resources allocated to the object. In C#.NET the sub finalize
procedure is available. The sub finalize procedure is used to complete the tasks that
19

must be performed when an object is destroyed. The sub finalize procedure is called
automatically when an object is destroyed. In addition, the sub finalize procedure
can be called only from the class it belongs to or from derived classes.

4.5.1 Garbage Collection

Garbage Collection is another new feature in C#.NET. The .NET Framework


monitors allocated resources, such as objects and variables. In addition, the .NET
Framework automatically releases memory for reuse by destroying objects that are
no longer in use. In C#.NET, the garbage collector checks for the objects that are
not currently in use by applications. When the garbage collector comes across an
object that is marked for garbage collection, it releases the memory occupied by the
object.

4.5.2 Overloading
Overloading is another feature in C#. Overloading enables us to define
multiple procedures with the same name, where each procedure has a different set of
arguments. Besides using overloading for procedures, we can use it for constructors
and properties in a class.

4.5.3 Multithreading

C#.NET also supports multithreading. An application that supports


multithreading can handle multiple tasks simultaneously. The convention of
multithreading to decrease the time taken by an application to respond to user
interaction.
4.5.4 Structured Exception Handling

C#.NET supports structured handling, which enables us to detect and remove


errors at runtime. In C#.NET, we need to use TryCatchFinally statements is to
20

create exception handlers. Using TryCatchFinally statements, user can create


robust and effective exception handlers to improve the performance of their
application.

4.6 THE .NET FRAMEWORK s

The .NET Framework is a new computing platform that simplifies


application development in the highly distributed environment of the Internet. The
.Net Framework is the tool provided by .Net infrastructure tools and component of
the .Net Platform. It is a new environment for creating and running robust,
distributed and scalable application on the web.

The .Net Framework provides the environment for building, deploying and
running the web services and other [Link] is heart and soul of the .Net
Framework. The .NET Framework contains Web services, Windows Forms, Base
Class Libraries, Common Language Runtime, and Operating System. The Common
Language Runtime is heart and soul of the .NET Framework.

CLR provide services for .NET Infrastructure and tools and other Web
services. The top layer contains a set of classes developing web services and to deal
with user interface. Base classes provide basic data types, collection classes and
general classes by using C# and .Net language. There are three distinct technologies
used are classified as:

Common Language Runtime


Framework Base Classes
User and Program Interface
21

Figure 4.6.1 .Net Framework

There are different types of application, such as Windows-based applications and


Web Based applications.
s
4.6.1 Objectives of. NET Framework

To provide a consistent object-oriented programming environment whether


object codes is stored and executed locally on Internet-distributed, or
executed remotely.
To provide a code-execution environment to minimizes software deployment
and guarantees safe execution of code.
Eliminates the performance problems.

The CLR is the core of the .Net Framework and is responsible for loading
and running C# program. Base Classes basic data types, collection classes and other
general classes for use of C# and other .NET language. The top layer contains a set
22

of classes for developing web services and to deal with the user interface. .NET
supplies library of base classes that we can to implement application quickly.

CLR is a runtime environment in which program written in C# and other .Net


language are executed. It also supports Cross Language Interoperability. CLR
contain Memory management, debugging, security, portability, Common Type
System, Intermediate [Link] provide services such as

Loading and executing the program.

Memory Isolation

Verification of type safety

Compilation of IL
23

CHAPTER 5

PROJECT DESCRIPTION

5.1 PROBLEM DEFINITION

Multimedia is, as described in Vaughan (2001), a combination of various


elements, such as text, graphic art, animation, video, and sound. Moreover, with
the demand increasing tremendously for the Internet and the World Wide Web
through the past few years, for example in distance education, shopping,
travelling, and searching database engines, these multimedia elements have
become essential part of the Web design. In particular, the images, such as
pictures, clip art, 3-D graphics, and animation, are commonly used in designing
for both multimedia and the Web. Regardless of their forms, multimedia images
are generated by the computers in two ways: as vector-based graphics and
bitmap images.

5.2 OVERVIEW OF THE PROJECT

GIF has been a lossless file format. That is, it loses no pixel data in the
compression process. However, lossy file formats such as JPEG, the
compression eliminate some pixel data in order to make a file size smaller.
Generally, when the user chooses between lossy and lossless, the users are
making some trade-off between file size and image quality. It means that lossy
gives smaller file size and lower quality, and vice versa. Recently, Adobe
ImageReady 2.0 includes the new GIF lossy slider. lossy GIF? This new
feature allows the user squeeze out a smaller GIF file with a sometimes
negligible loss in quality. Depending on the file, the user have seen lossy settings
as low as 5-10 percent reduces the file size by 5-40 percent without serious
degradation in the file quality.
24

The more colours our graphic uses, the more file space the colour
information will take up. GIFs can use as many as 256 colours, known as 8-bit
colour or as little as two colour (black and white), known as 1-bit colour. If the
user makes an image only 256 colours (8-bit colour) instead of 24-bit colour
image, the user can reduce the file size to 1/3.

The user can choose the colour palette when the user creates the image.
However, 256 colour system palettes are different between platforms. The 216
colour that are common to both Mac and Windows palettes are web-safe colour.
Using web-safe colour gives users two benefits. One is that the user can reduce
the file size, the other is that the user can display the image exactly the same on
both platforms. Either web or adaptive palette is usually selected for GIFs.

The computer screen typically displays data at 72 dpi, so it is not


necessary to work at a high resolution. Therefore, it is safe to stick to the lower
resolution so that the user will get the same quality for smaller file size.

Cropping can greatly enhance the images effectiveness. It also reduces


the file size. It is good to use cropping as much as possible. The user can often
see the well-cropped images on the web.

When the users reduce GIFs colour depth, the user can see gradients turn
into bands of colour. The user can use dithering to smooth the transitions.
However, dithering makes a graphics file size bigger. Therefore, if a non-
dithered image is acceptable, it is better not to use dithering to keep the file size
small. In order to avoid dithering, it is recommended to create images that use
the colours specified in the browsers default colour palette.

Using transparency is taking advantage of GIFs and reduces the file size a
bit. Transparent GIFs are great for banners, non-rectangular buttons, separator
bars, and accent images. The transparent colour is usually the background
colour. There is usually some ghosting around the edges of the foreground figure
in transparent GIFs. To minimize this effect, a background colour matches the
dominant colour of their pages background. The JPEG format does not support
25

transparency. Instead, a matte colour matches the web page background colour
on which the JPEG will appear.

When the user set the quality to low, while saving as a JPEG, the user
may see some coarseness in the image. Smoothing blurs the edges and creates a
more even transition between areas of high contrast. Smoothing removes small
amount of data from the image, and can reduce the file size. A higher smoothing
setting applies more smoothing and further reduces file size. However, too much
smoothing can cause blurring and loss of detail.

Anti-aliased graphics can add size to the graphics. In addition, their


appearance will vary more from system to system than aliased graphics will.

Interlaced GIFs and Progressive JPEGs are used to keep the users
interest and to give the user an idea about what the wait is for. Progressive
JPEGs often have smaller file sizes than their non-progressive counterparts. In
contrast, interlaced GIFs always larger than their non-interlaced counterparts.

5.3 MODULE DESCRIPTION

Path types
Scene Attributes
Actions
Path Attributes

5.3.1 Modules

Path types

In this module VLSI technology that is producing greater processing power.


Broad-band networks (ISDN, ATM, etc) that are providing much higher
26

bandwidth for many practical applications, and multimedia compression


standards (JPEG, H.263, MPEG, MP3, etc) that enable efficient storage and
communication.

Figure [Link] Path Types


Scene Attributes
In content-based retrieval, manual annotation of visual media is avoided and
indexing and retrieval is instead performed on the basis of media content itself.
There have been extensive studies on the design of automatic content-based
indexing and retrieval (CBIR) systems. For visual media these contents may
include, colour, shape, texture, motion, etc. For audio/speech data contents may
include phonemes, pitch, rhythm, cepstral coefficients, etc. Studies of human
visual perception indicate that there exists a gradient of sophistication in human
perception, ranging from seemingly primitive inferences of shapes, textures,
colours, etc. to complex notions of structures such as chairs, buildings,
affordances, and to cognitive processes such as recognition of emotions and
feelings.

The .NET Framework provides support for double buffering via the
protected SetStyle method of the Control class. Since the Form class indirectly
derives from Control it can also use the SetStyle method to enable double
buffered rendering for itself. When the user enable double buffering on a Form
(or any control), the Graphics object passed into its OnPaint method and Paint
event handler(s) will actually draw onto an in-memory buffer.

This library absolutely requires double buffering, but it cannot rely on the
standard double buffering provided by the .NET Framework. It needs to be
27

double buffered because scenes repaint themselves hundreds of times per


second. It cannot use the standard .NET double buffering because a scene has no
idea who will be hosting it. Since a scene does not know who will be hosting it,
there is no way for it to be sure that its host supports double buffering. This
requires the animation library to implement custom double buffering which, as a
side benefit, frees a scene host from ever needing to explicitly support double
buffering. Actually, if a scene host were to support double buffering it would
need to jump through hoops to ensure that the scene renders into the correct
Graphics object.

The following diagram illustrates the basic idea of how double buffering
works in the animation library:

Figure [Link] Scene attributes

A scene has an off-screen buffer into which the movers in the scene
render. After all of the paths have finished rendering their movers, the buffer is
copied to a Graphics object provided by the scenes host. That Graphics object
then draws the newly generated image to the screen in an atomic operation.
28

Actions
In this module the multidisciplinary nature of the techniques for modelling,
indexing and retrieval of multimedia data, efforts from many different
communities of engineering, computer science and psychology have merged in
the advancement of CBIR systems. But the field is still in its infancy and calls
for more coherent efforts to make practical CBIR systems a reality.

Path Attributes
In particular, robust techniques are needed to develop semantically rich
models to represent data, computationally efficient methods to compress, index,
retrieve, and browse the information, and semantic visual interfaces integrating
the above components into viable multimedia systems.

Some of the controls in the Path Attributes GroupBox exist at design-


time; such as the TrackBar which indicates the mover diameter, the PictureBox
which displays the mover image, and others. Every path has a few settings in
common, so the controls for those settings are not added or removed at runtime.
The dynamically loaded controls are parented to a Panel in the Path Attributes
GroupBox.

The type of control created for a custom setting is based on the data type
of the setting (i.e. the type of the property). Boolean properties are given
CheckBoxes, Enum properties are given ComboBoxes, and everything else is
given a TextBox. Since it would be pointless to just display a control, Labels are
added alongside ComboBoxes and TextBoxes so that the user knows which
setting a control represents. The Labels display a settings friendly name, as
specified in the PathSetting attribute applied to the setting property. Below is a
screenshot of some dynamically loaded controls in the Path Settings
GroupBox when a SineWave path is selected:
29

Figure [Link] Path attributes

Below is the logic which creates and loads the path-specific controls:

5.4 UML DIAGRAMS

localization

Client Location based service BDM Engine

positioning

dynamic static

BDM movement

Figure 5.4.1 Usecase Diagram


30

positioning BDM engine location based


: Client : BDM Engine
service

client in static position

stored in the engine

asking for location service

accepting the service

dynamic movement

constant monitoring beacon movement

storing the movement coverage

maintainne client action

Figure 5.4.2 Sequence Diagram


31

: Client : BDM Engine


1: client in static position
5: dynamic movement

4: accepting the service


positioning 8: maintainne client action

2: stored in the engine


6: constant monitoring beacon movement
3: asking for location service
7: storing the movement coverage
BDM location based
engine service

Figure 5.4.3 Collaboration Diagram

beacon
positioning

client
beacon

BDM
engine

Figure 5.4.4 Component diagram


32

5.5 INPUT DESIGN

Input Design is the process of converting user-originated inputs to


computer-based format. In the system design phase, the expanded data flow
diagram identifies logical data flows, data stores, sources and destinations. A
systems flowchart specifies master files, transaction files and computer
programs. Input Data are collected and organized into groups of similar data.
Once identified, appropriate input media are selected for processing.

The input screens are designed for easy use of the users. The user should
enter the IP address first, then the beacon is traced each timed and then signal is
passed to the each network by default. The Label box is used to identify the
usage of labels. The text boxes are laid out to enable the user to logically follow
the data input. There are two buttons the first button is used to Move Left, the
beacon also moves to the left as the user aspects.

The second button is Move Right it used for the beacon movement in
right position as the user specified. The beacon is move for each input of user,
the system will detect the each and every position and said the beacon is inside
the network are move is left from the network.

The goal of designing input data is to make data entry as easy, logical and
free from errors as possible. In entering data, the operations included are the
allocated space for each field, field sequence that matches source document, the
format in which data fields are entered. The beacon is run first and then normally
the beacon is detected in the network and then enter the IP Address the client
pass the request to the server through the address and then Beacon Client will
track the Beacon position and response to the server.
33

5.6 OUTPUT DESIGN

Computer output is the most important and direct source of information to


the user. Efficient, intelligible output design should improve the systems
relationships with the user and help in decision making. A major form of output
is the hard copy from the printer. The output devices to consider depend on
factors such as compatibility of the device with the system, response time
requirements, expected print quality and number of copies needed. All nodes in
the network may depart or fail unpredictably.

The partition the continuously generated measurement data by time slots,


where a source block refers to the amount of the data generated in one time slot
on a node. Clearly, how many time slots of data can be cached depends on the
size of the node cache storage. The Beacon will broadcast a packet periodically;
each beacon will broadcast a packet.

To determine its own location, an object will collect packets from its
neighbouring beacons and send a signal strength vector to an external
positioning engine, before the first active sample on every line, and immediately
after the last active sample. The minimum signal strength and any signal strength
lower than this value is not detectable by a receiver. The positioning engine can
then estimate the objects location based on S which are moved out of their
tolerable regions.

The sizes of tolerable regions are application dependent, which is beyond


the work.A systems flowchart specifies master files, transaction files and
computer program. Input Data are collected and organized into groups of similar
data. Once identified, appropriate input media are selected for processing.

The output devices to consider depend on factors such as compatibility of


the device with the system, response time requirements, expected print quality
34

and number of copies needed. All nodes in the network may depart or fail
unpredictably.
35

CHAPTER 6

SYSTEM TESTING

Testing is the process of trying to discover every conceivable fault or


weakness in a work product System testing is an important phase without
which the system cannot be released to the users. Testing is vital for the
success of any system. It is aimed at ensuring that all processes function
accurately according to the specification. It provides a way to check the
functionality of components, sub assemblies, assemblies and/or a finished
product. It is the process of exercising software with the intent of ensuring
that the Software system meets its requirements and user expectations and
does not fail in an unacceptable manner. Testing is used to discover the
errors.

There are various types of test. Each test type addresses a specific
testing requirement. System testing makes logical assumption that if all parts
of the system are correct the goal will be successfully achieved. Inadequate
system testing or no system testing or no system testing may lead to errors
that may appear months later.

6.1 Unit Testing

Unit testing involves the design of test cases that validate that the
internal program logic is functioning properly, and that program inputs
produce valid outputs. All decision branches and internal code flow should
be validated.

It is the testing of individual software units of the application; it is


done after the completion of an individual unit before integration. This is a
structural testing, that relies on knowledge of its construction and is invasive.
This is known as Module Testing. This testing is carried out during
36

programming stage itself. In these testing steps, each module is found to be


working satisfactorily as regard to the expected output from the module.

Instead of testing the system as a whole unit testing focuses on the


modules that make up the system. Each module is taken up individually and
tested for correctness in coding and logic. Error resulting from interaction of
modules is initially avoided. Unit tests perform basic tests at component level
and test a specific business process, application, and/or system configuration.

Unit tests ensure that each unique path of a business process performs
accurately to the documented specifications and contains clearly defined
inputs and expected results. Unit testing is usually conducted as part of a
combined code and unit test phase of the software lifecycle, although it is not
uncommon for coding and unit testing to be conducted as two distinct phases.

6.2 Integration Testing

Integration tests are designed to test integrated software components


to determine if they actually run as one program. Testing is event driven and
is more concerned with the basic outcome of screens or fields. Integration
tests demonstrate that although the components were individually
satisfaction, as shown by successfully unit testing.

The combination of components is correct and consistent. Integration


testing is specifically aimed at exposing the problems that arise from the
combination of components. Software integration testing is the incremental
integration testing of two or more integrated software components on a single
platform to produce failures caused by interface defects. The task of the
integration test is to check that components or software applications, e.g.
components in a software system or one step up software applications at the
company level interact without error.
37

6.3 System Testing

System testing ensures that the entire integrated software system


meets requirements. It tests a configuration to ensure known and predictable
results. An example of system testing is the configuration oriented system
integration test. System testing is based on process descriptions and flows,
emphasizing pre-driven process links and integration points.

6.3.1 White Box Testing

White Box Testing is a testing in which in which the software tester


has knowledge of the inner workings, structure and language of the software,
or at least its purpose. It is used to test areas that cannot be reached from a
black box level. White-box testing sometimes-called glass-box testing case
design method that uses the control structure of the procedural design to
desire test cases.

6.3.2 Black Box Testing

Black Box Testing is testing the software without any knowledge of


the inner workings, structure or language of the module being tested. Black
box tests, as most other kinds of tests, must be written from a definitive
source document, such as specification or requirements document, such as
specification or requirements document. It is a testing in which the software
under test is treated, as a black box cannot see into it. The test provides
inputs and responds to outputs without considering how the software works.
It is sometimes called behavioral testing or partition testing. It attempts to
find errors in the following categories in correct or missing function
38

6.4 Acceptance Testing

User Acceptance Testing is a critical phase of any project and requires


significant participation by the end user. It also ensures that the system meets
the functional requirements.
39

CHAPTER 7

SYSTEM IMPLEMENTATION

7.1 IMPLEMENTATION

Implementation is the stage of the project when the theoretical design


is turned into a working system. Implementation Phase of the software
development is concerned with translating of design specification into source
code. The primary goal of implementation is to write source code and
internal documentation so that conformance of the code to its Specification
can be easily verified, and so that debugging documentation, and unit testing
and modification are eased.

7.1.1 Implementation Plan

Screen designing for each entry


Custom programming (coding)
Software testing for each module using sample data
Application using windows.
Integrating all processor and database
Planning documentation

The objective of the phase was to create input and output files
Compatible with users requirement to handle the operational phases through
program construction to test the implemented system and provide complete
documentation. Implementation is the stage of the project when the
theoretical design is turned out into a working system.
40

Thus it can be considered to be the most critical stage in achieving a


successful new system and in giving the user, confidence that the new system
will work and be effective. The implementation stage involves careful
planning, investigation of the existing system and its constraints on
implementation, designing of methods to achieve changeover and evaluation
of changeover methods.

7.2 MAINTENANCE

Provision must be made for environmental changes, which may affect


the computer or other parts of computer-based system. It includes both the
improvement of the existing system functions and the correction of faults,
which may arise during the operation of the system.

Maintenance activity may require the continuing involvement of large


proportions of computer resources. The main task for the organization would
be adopting the existing systems to changing environment. Perhaps a better
name to describe this activity is system evolution.

A major goal of this project is to improve the ease at which changes


can accommodated and reduce the amount of effort expended on
maintenance.
41

CHAPTER 8

CONCLUSION AND FUTURE ENCHANCEMENT

8.1 CONCLUSION

The net result of this work is that paths do not need to be associated
with a set of controls at design-time. In fact, paths know nothing about how
their settings are displayed in the configuration application and the
configuration application knows very little about the paths it displays the
settings of. When a new Path-derived class is created there is no need to
arrange a set of controls representing the customizable properties of that new
type at design-time. This automated approach to presenting path settings also
ensures that the user interface is consistent across all path types, thus making
it easier for users to learn and navigate the applications user interface.

8.2 FUTURE ENCHANCEMENT

The animation library is able to display scenes through any object,


provided that the object implements the ISceneHost interface. The object
which implements the ISceneHost interface is referred to as the scenes
host. A host provides several pieces of information needed for its scene to
operate. The two most important members of the interface are SceneGraphics
and Size. A scene draws to the Graphics object exposed through the
SceneGraphics property. The Size property is used to determine the physical
dimensions of the scene. However since the animation library should be
reusable in a wide variety of contexts, it was necessary to abstract the
relationship between a scene and its host into a formal contract, which can be
implemented as the host sees fit. The enhancement of animation
configuration to the real time environment is the future work.
42

CHAPTER 9

APPENDIX

9.1 SOURCE CODE

// This code is from the get method

// of the CustomSettings property in the PathTypeWrapper

class.

ArrayList propsWithAttribute = new ArrayList();

foreac h( Type type in [Link] )

PropertyInfo[] propInfos = [Link](

[Link] |

[Link] |

[Link] );

foreach( PropertyInfo pi in propInfos )

object[] objArr =[Link](

typeof(PathSettingAttribute),true );

if( [Link] > 0 )

PathSettingAttribute pathSetting = objArr[0] as


43

PathSettingAttribute;

[Link]( new PathSettingInfo( pi,

pathSetting ) );

// Helper property in PathTypeWrapper class.

private Type[] TypeHierarchy

get

ArrayList typeHierarchy = new ArrayList();

Type t = [Link];

while( t != null )

[Link]( t );

t = [Link];

[Link]();

return [Link]( typeof(Type) ) as

Type[];

// An example of a custom setting


44

// on the SineWavePath class using the PathSetting attribute.

// The arguments to the PathSetting constructor

// are the friendly name of the setting, the

// minimum value, and the maximum value.

[PathSetting("Number of Wave Peaks", 0, 40)]

public int NumPeaks

{ get { //... }

set { //... }

private void LoadControlsForPreviewPath()

PathTypeWrapper wrapper =

[Link] as PathTypeWrapper;

Path path = [Link];

if( wrapper == null || path == null ) return;

// First remove the existing controls that

// were loaded for the previous Preview Path.

[Link]();

const int GAP = 6;

Control ctrl = null;

int tabIdx =

[Link];

Point pt = new Point(

[Link].X,
45

[Link].Y +

[Link] + GAP );

foreach( PathSettingInfo settingInfo in

[Link] )

if( [Link] == typeof(bool) )

#region Create CheckBox

CheckBox chkBox = new CheckBox();

[Link] = [Link];

[Link] = (bool)[Link]( path );

[Link] +=

new EventHandler( OnCheckBoxCheckedChanged );

[Link] = [Link];

ctrl = chkBox;

#endregion // Create CheckBox

else if( [Link] )

#region Create ComboBox

ComboBox combo = new ComboBox();

[Link] = [Link];

string[] names = [Link](

[Link] );
46

string currentValue =

[Link]( path ).ToString();

foreach( string name in names )

int idx = [Link]( name );

if( name == currentValue )

[Link] = idx;

[Link] +=

new EventHandler( OnComboBoxSelectedIndexChanged );

ctrl = combo;

#endregion // Create ComboBox

else

#region Create TextBox

TextBox txt = new TextBox();

[Link] = [Link]( path ).ToString();

[Link] += new EventHandler( [Link] );

[Link] += new KeyPressEventHandler(

[Link] );

[Link] += new EventHandler(

[Link] );

[Link] += new EventHandler( [Link] );


47

ctrl = txt;

#endregion // Create TextBox

if( ctrl is CheckBox == false )

#region Add Label To Panel

Label lbl = new Label();

[Link]( lbl );

[Link] = [Link];

[Link] = [Link];

[Link] = true;

[Link] = pt;

[Link]( 0, [Link] + 1 );

#endregion // Add Label To Panel

#region Add Control To Panel

[Link]( ctrl );

[Link] = settingInfo;

[Link] = [Link];

[Link] = pt;

[Link] = tabIdx++;

[Link]( ctrl );

[Link]( 0, [Link] + GAP );

#endregion // Add Control To Panel }}


48

SCREEN SHOTS
Archives1 Animation

9.2.1. Archives1 Animation


49

AnimationArchives2

9.2.2. Animation Archives2

.
50

AnimationArchives3

9.2.3. Animation Archives3


51

AnimationArchives4

9.2.4. Animation Archives4


52

Animation Archives5

9.2.5. Animation Archives5


53

AnimationArchives6

9.2.6. Animation Archives6


54

AnimationArchives7

9.2.7. Animation Archives7


55

Animation Archives8

9.2.8. Animation Archives8


56

Animation Archives9

9.2.9. Animation Archives9


57

CHAPTER 10

REFERENCES

BOOKS

1.F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, A Survey on


Sensor Networks, IEEE Comm. Magazine, vol. 40, no. 8, pp. 102-114, Aug. 2002.
2. M. Brunato and R. Battiti, Statistical Learning Theory for Location
Fingerprinting in Wireless LANs Computer Networks, vol. 47, no. 6, pp. 825-
845, 2005.
3. A. Cerpa, J. Elson, D. Estrin, L. Girod, and M. Hamilton, Habitat Monitoring:
Application Driver for Wireless Communications Technology, Proc. ACM
SIGCOMM Workshop Data Comm., Apr 2001
4. Applied Microsoft .NET Framework Programming (Pro-Developer) by Jeffrey
Richter.
5. Practical .Net2 and C#2: Harness the Platform, the Language, and the Framework
by Patrick Smacchia.

WebSites

[Link]
[Link]
[Link]
[Link]

You might also like