Fileshare Report
-
Upload
akashchauhan6565 -
Category
Documents
-
view
26 -
download
5
Transcript of Fileshare Report
File Sharing Website
A PROJECT REPORT ON
File Sharing
DEVELOPED AT DATA SOFT IT- COMPUTER SOLUTION
FOR THE PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE AWARD OF DIPLOMA
ININFORMATION TECHNOLOGY
SUBMITTED BY
Koriya Mayur A. (096400316540)Chauhan Akash R. (096400316549)
SUBMITTED TO
DEPARTMENT OF INFORMATION TECHNOLOGYR.C. TECHNICAL INSTITUTE, SOLA, AHMEDABAD.
INTERNAL GUIDE EXTERNAL GUIDE
Ms. DEVIKA GHADHVI VASIM SEKHDEPT. OF INFO. TECH.
R.C.T.I., SOLA, AHMEDABAD (DATA SOFT IT COMPUTER SOLUTION)
R.C.T.I. Page 1
File Sharing Website
Candidate's Declaration
Name : Koriya Mayur A.Enrollment No.: 096400316540Department : I.T.Semester : 6th Student’s sign :
Name : Chauhan Akash R.Enrollment No.: 096400316549Department : I.T.Semester : 6th
Student’s sign :
R.C.T.I. Page 2
File Sharing Website
CERTIFICATE
RANCHHODLAL CHHOTALAL TECHNICAL INSTITUTEOpp. New High Court, Sola,
Ahmadabad
This is certifying that satisfactorily carried out of the project “ File Sharing Website” assigned. Hence the project document is bonfire work of,
Koriya Mayur A. [096400316540] Chauhan Akash R.[096400316549]
Of 6th semester of Diploma Information Technology during academic year 2011-2012.
DATE: 11th , May,2012
STAFF-INCHARGE: HEAD OF DEPARTMENT:Ms. DEVIKA GHADHVI MR. DINESH. V PATEL
R.C.T.I. Page 3
File Sharing Website
1.INTRODUCTION
1.1 PROJECT SUMMARY
• This project will handle various types of services related to File Sharing System where policy of Sharing system may be of different type. It will manage all members details,Suggestions,Requests,Category,Sharing Information.
• Creating a system to automate the task of File Sharing which is prime area of concern for any modern File Sharing Website. The features would be:
• Storing, editing and reporting user details.• Uploading the data of the user and generate the Details of The Uploads.• Managing User details for File Sharing.• Generate the report of the Shared Data as well as the Cuonts of Shared Data.
1.2 PURPOSE
This website provides facility to user that they can share their personal data/files with their friends or relatives.
Users can directly register in our File Sharing website and can Upload the data they want.
Users can also make his/her friends on our website and can create his/her own profile acount.
Users can change his/her profile with his/her login id and Password. Users can post comment as well as the description of the data they are
uploading. The only main thing of this website is that the users can share files only with
those users who have already registered in this site as well as they are given authority by the particular users from whom they want to receive files.
R.C.T.I. Page 4
File Sharing Website
1.3 TECHNOLOGY AND LITERATURE REVIEW
1.3.1 The .net framework
A frame work is commonly though of as a set of class libraries that aid in the
development of applications. The .net framework is more than just a set of classes.
The .net framework is targeted by compliers using a wide variety of applications.
Including everything from small components that run on handheld devices to large
Microsoft ASP.ET application that span web farms, where multiple web serves act
together to improve the performance fault tolerance of a web site. The .NET
framework is responsible for providing a basic platform that these applications can
share. This basic platform includes a runtimes set of services that oversee the
execution of applications. A key responsibility of the runtime is to manage execution
so that software written by different programming languages uses classes and other
types safely.
1.4.2 Microsoft .net framework architecture
Microsoft's .NET Framework is comprised of two main components - the Common
Language Runtime (CLR) and the .NET Framework class libraries. The CLR is the
real foundation of the .NET Framework. It is the execution engine for all .NET
applications. Every target computer requires the CLR to successfully run a .NET
application that uses the .NET Framework. The main features of CLR include:
Automatic Memory Management
Thread Management
Code Compilation & Execution
Code Verification
High level of security Remoting
Structured Exception Handling
Interoperability between Managed and Unmanaged code.
Integration with Microsoft Office System
R.C.T.I. Page 5
File Sharing Website
All .NET applications are compiled into Intermediate Language code (MSIL). When
executed on the CLR, MSIL is converted into native machine code specific to the
operating platform. This process is done by a Just in Time (JIT) compiler. The code
executed by the CLR is called as Managed Code. This code is type safe and
thoroughly checked by the CLR before being deployed. The .NET runtime also
provides a facility to incorporate existing COM components and DLL's into a .NET
application. Code that is not controlled by the CLR is called Unmanaged Code.
The .NET Framework is further comprised of Common Type System (CTS) and
Common Language Specification (CLS). The CTS defines the common data types
used by .NET programming languages. The CTS tells you how to represent characters
and numbers in a program. The CLS represents the guidelines defined by for the .NET
Framework. These specifications are normally used by the compiler developers and
are available for all languages, which target the .NET Framework.
Fig 1.1 .Net architecture
R.C.T.I. Page 6
File Sharing Website
1.4.3 Common Language Runtime
The Common Language Runtime (CLR) is the virtual machine component of
Microsoft's .NET initiative. It is Microsoft's implementation of the Common
Language Infrastructure (CLI) standard, which defines an execution environment for
program code. The CLR runs a form of byte code called the Microsoft Intermediate
Language (MSIL), Microsoft's implementation of the Common Intermediate
Language.
Developers using the CLR write code in a high level language such as C# or VB.Net.
At compile-time, a .NET compiler converts such code into MSIL (Microsoft
Intermediate Language) code. At runtime, the CLR's just-in-time compiler (JIT
compiler) converts the MSIL code into code native to the operating system.
Alternatively, the MSIL code can be compiled to native code in a separate step prior
to runtime. This speeds up all later runs of the software as the MSIL-to-native
compilation is no longer necessary.
Although some other implementations of the Common Language Infrastructure run on
non-Windows operating systems, the CLR runs on Microsoft Windows operating
systems.
The virtual machine aspect of the CLR allows programmers to ignore many details of
the specific CPU that will execute the program. The CLR also provides other
important services, including the following:
• Memory management
• Thread management
• Exception handling
• Garbage collection
• Security
R.C.T.I. Page 7
File Sharing Website
4.5 Introduction to ASP.NET
Although so Microsoft Visual Basic.NET is a powerful but simple language aimed
primarily at developers creating web applications for the Microsoft .NET platform. It
inherits many of the best features of C++ and Microsoft Visual Basic, but with some
of the inconsistencies and anachronisms removed, resulting in cleaner and logical
language. VB also contains a variety of useful new innovations that accelerate
application development, especially when used in conjunction with Microsoft Visual
Studio .NET.
The Common Language Runtime provides the services that are needed for executing
any application that’s developed with one of the .NET languages. This is possible
because all of the .NET languages compile to a common Intermediate Language. The
CLR also provides the common type system that defines that data types that are used
by all the .Net languages. That way, you can use same data types regardless of
what.NET language you’re using to develop your application.plementations.
ASP.NET: Microsoft, realizing that ASP does posses some significant
shortcomings, developed ASP.net. ASP.net is a set of components that provide
developers with a framework with which to implement complex functionality. Two of
the major improvements of ASP.net over traditional ASP are scalability and
availability. ASP.net is scalable in that it provides state services that can be utilized to
manage session variables across multiple web services in a server farm. Additionally,
ASP.net possesses a high performance process model that can detect application
failures and recover from them. We use the fundamentals of programming with VB
using Visual Studio .NET and .NET framework.
The project is the starting point for authoring applications, components & services in Visual Studio.NET 2005.It eats as a container that manages your source code, data connections & references. A project is organized as part of a solution, which can contain
R.C.T.I. Page 8
File Sharing Website
multiple projects that are independent of each other. C# project file has .asproj
extension where as solution file has .sln extension.
In order to write code against an external component, your project must first contain
a reference to it. A reference can be made to the following types of component.
(1) .NET class libraries or assemblies
(2) COM components
(3) Other class libraries of projects in the same solution
(4) XML web services
Features of ASP.NET:
(1) Component Infrastructure.
(2) Language Integration.
(3) Internet Interoperation.
(4) Simple Development.
(5) Simple Deployment.
(6) Reliability.
(7) Security
R.C.T.I. Page 9
File Sharing Website
1.4.6 SQL SERVER 2005
For implementation of database Microsoft SQL Server is used. A database contains
tables to handle users’ details like registration details; mail accounts details and
maintaining summary of different users. This tool is used as back end for application.
In September 2005, Microsoft officially announced its .NET Enterprise Server line
and its commitment to .NET as Microsoft’s application architecture model. The
fundamental goal behind this new release of the company’s popular server product
line, now labeled .NET Enterprise Servers, is to provide simplified management,
scalability, and availability throughout the enterprise, meeting the application goals of
every organization and offering extensive support for .NET applications. SQL Server
2005 is the first .NET Enterprise Server available for public implementation and
offers the data storage and management component of .NET services as well as a peek
into the Microsoft’s vision of .NET application capabilities.
Before we can see where the future will take us, it’s always good to understand
exactly where things came from. Microsoft SQL Server was first released as version
6.0 soon after Microsoft purchased and modified the code base to SQL Server from
Sybase Corporation in 1995. Through version 6.5, released in 1996, SQL Server was
accepted mainly as a departmental-scale database management system (DBMS) and
lacked much of the scalability and reliability of enterprise class solutions offered by
companies such as Oracle and Informix. Administration of the SQL Server 6.0 and
6.5 products required knowledgeable SQL Server database administrators committed
to monitoring server availability, activity, and performance. For SQL Server to have
the broad market reach that Microsoft aims for in most of its products and to make it a
fundamental component in its then-new Windows Distributed internet Applications
(DNA) Architecture Model, Microsoft needed to address the broad range of concerns
and downfalls that plagued SQL Server’s acceptance in both large and small
organizations.
R.C.T.I. Page 10
File Sharing Website
multiple projects that are independent of each other. C# project file has .asproj
extension where as solution file has .sln extension.
In order to write code against an external component, your project must first contain
a reference to it. A reference can be made to the following types of component.
(1) .NET class libraries or assemblies
(2) COM components
(3) Other class libraries of projects in the same solution
(4) XML web services
R.C.T.I. Page 11
File Sharing Website
SQL Server 2005
R.C.T.I. Page 12
File Sharing Website
2.PROJECT MANAGEMENT
2.1 FEASIBILITY STUDY
A feasibility study is a short and focused study of the proposed system,
which aims to answer a number of questions like:
Does the system contribute to the overall objective of the organization?
Can the system be implemented using current technology and within given
cost and schedule constraints?
Can the system be integrated with the systems which are already in place?
A. TECHNICAL FEASIBILITY
Technical feasibility tries to answer the following questions to make the software
feasible:
Does the softwares or tools necessary for building or running the application
are easily available or not?
Does the compatibility amongst software exists or not?
Are developers aware of these chosen technologies?
What about the alternatives of these chosen technologies?
Technology used in this project is JAVA, which is most feasible for this application
due to following reasons:
Java is platform independent so this feature gives extensibility to the program.
Java has OOPS structure so it offers many features, which are not present in
most of other languages.
The selected technology has greater advantages in handling the Graphics over
other challenger technologies.
JDK is freely available from the Sun MicroSystems as it is an open source. And
other technical requirements like NetBeans IDE 5.0 as editor are provided by BISAG.
R.C.T.I. Page 13
File Sharing Website
B. ECONOMICAL FEASIBILITY
Economical feasibility addresses to the following issues:
Is the organization having the suitable budget to develop the proposed system?
How much profit can be earned from the system by an organization?
Would it be cost-effective to develop the system or it is worthwhile to remain
with current system?
We would to give the answer the above question as below:
As development tools and software are free of cost, there isn’t any burden of
buying new system.
The organization does not have the same system, so it is certainly required for
them.
The profit will be remarkable according to our team, as far as market
concerned.
So, here we do not need to invest extra funds to develop the system. Only the human
effort is required to develop the system. Thus, system is economically feasible to the
Organization.
C. OPERATIONAL FEASIBILITY
Operational feasibility measures how well the solution will work in the organization
and how will end-user & management feels about the system? Proposed system is
helpful for Analyzing and decision making related to Geoprocessing through better
GUI provided by the system. On studying the operational feasibility of the project, the
following conclusion could be derived:
R.C.T.I. Page 14
File Sharing Website
Operationally the software will be most feasible due to its strong requirement
for the client company.
Due to good accuracy percentage of software, it can be easily deployed.
Due to its easy functionalities, the geologists who are not from IT background
can easily use the software.
Since the software is technically feasible it can be easily extended so these
features increase its operational feasibility.
If it can be installed within suitable environment, system will perform
operations with the use of limited resources.
Thus, it is operationally feasible to develop the proposed system
2.2 PROJECT PLANNING & SCHEDULING
CONCEPT
To ensure the success of the project, a project requires a special approach. We may
term this special approach as project management.
Success for a project means:
1. It must get completed.
2. It must be completed within budget.
3. It must get completed within allocated time.
4. It must satisfy user needs.
Project management meets these demands.
2.2.1 PROJECT DEVELOPMENT APPROACH
To solve actual problems in industry settings, software engineer or a team of
engineers must incorporate a development strategy that encompasses the process,
methods and tools layers and generic phases. This strategy is often referred to as
process model or a software engineering paradigm. A process model for software
engineering is chosen based on the nature of the project and application, the methods
and tools to be used, and the controls and deliverables that are required.
R.C.T.I. Page 15
File Sharing Website
The Incremental Model*
The incremental model combines elements of the linear sequential Model (applied
repetitively) with the iterative philosophy of prototyping. Referring the figure the
incremental model applies linear sequence produce in a staggered fashion as calendar
time progresses. Each linear sequence produces deliverable ‘increment’ of the
software.
When an incremental model is used, the first increment is often called product. That
is, basic requirements are addressed, but many supplementary features remain
undelivered. The customer uses the core product. As a result of use and or evolution, a
plan is developed for the next increment. The plan addresses the modification of the
core product to better meet the needs of the customer and the delivery of additional
features and functionality. This process is repeated following the delivery of each
increment, until the complete product is produced.
R.C.T.I. Page 16
File Sharing Website
The incremental process model is iterative in nature. But unlike prototyping, the
incremental model focuses on the delivery of an operational product with each
increment. Early increments are stripped down version of the final product, but they
provide capability that serves the user and also provide platform for evolution by the
user.
Incremental development is particularly useful when staffing is unavailable for a
complete implementation by the business deadline that has been established for the
project. Early increments can be implemented with fewer people. If core product is
well received, then additional staff can be added to implement the next increment.
Justification:
In our software we used this process model as we were assigned the work as we
complete the previously given task. So we had to analyze, design, code many times as
we were assigned the work in increment as new requirements were added in the
software. There was a need of adding new Geo-processing functions to the new
increment while core product is delivered to the customers. Any new Geo-processing
task like zooming, intersection, and union can be added in new increments of the
software. So, this Process Model is very convenient for the developers and developers
generally prefer this model over the other models those are available.
R.C.T.I. Page 17
File Sharing Website
2.2.2 PROJECT PLAN
STEPS IN PROJECT MANAGEMENT
Project management approach basically consists of the following 5 steps:
1. Grouping work in to packages, which acquires the property of the project.
These means that the work so grouped are related to each other, contribute to
the same goals and can be bound by definite time, cost and performance
targets.
2. Entrusting the whole project to a single responsibility center known as the
project manager, for coordinating, directing and controlling the project.
3. Supporting and servicing the project internally within the organization by
through total projectization, and external through vendors and contractors.
4. Building up a commitment through negotiation, coordinating and directing
towards goals through schedules, budgets and contracts.
5. Ensuring adherence to goals through continuous monitoring and control using
schedule budget and contracts as the basis.
R.C.T.I. Page 18
File Sharing Website
3.
SYSTEM
REQUIRENMET STUDY
3.1 USER CHARACTERISTICS
Although, the User Interface is implemented within the context of the problem domain, the interface itself represents a critically important subsystem for most modern application. Because a wide variety of user interface development environments already exist, the design of Event Organization Website is not necessary. Reusable classes (with appropriate attributes and operations) already exist for windows, icons, mouse operations and wide variety of other interaction functions. The implementer needs only instantiate objects that have appropriate characteristics for the problem domain.This Software has one types of users.
1. Application user
Application user is a user who knows how the software is working and how it is
useful for the present application. He only knows how to deal with GUI of the
software.
3.2 HARDWARE & SOFTWARE REQUIREMENTS
HARDWARE REQUIREMENTS
Standard Pentium Series Processor. (Recommended Pentium III or more).
Minimum 256 MB RAM. (Recommended 512 MB)
HDD Storage capacity of 20GB or more
SOFTWARE REQUIREMENTS
R.C.T.I. Page 19
File Sharing Website
Map Viewer
Shape Files
Operating System
Windows XP
Programming Tool
Asp.Net(c#)
Sql Server 2005
Documentation Tool
Microsoft Word 2007
Microsoft Visio 2003
4.SYSTEM
R.C.T.I. Page 20
File Sharing Website
ANALYSIS
4.1 REQUIREMENT OF NEW SYSTEM User Requirement Specification
R.C.T.I. Page 21
File Sharing Website
4.2 REQUIREMENTS VALIDATION
Requirements validation is concerned with showing that the requirements actually
define the system that user wants. If this validation is inadequate, errors in the
requirements will be propagated to the system design and implementation.
Requirements are checked to discover if they are complete, consistent and in
accordance with what users want from the projected system.
There are several aspects of the requirements, which must be checked:
Validity: -
A user may think that a system is needed to perform certain functions.
However, further thought and analysis may identify additional or different functions
that are required.
Consistency: -
Any one requirement should not conflict with any other. In the software any
other requirement is added in the new module that will not affect other.
Completeness: -
The definition should include all functions and constraints intended by the system user. The software provides all the user requirements.
4.3 DATA DICTIONARY
R.C.T.I. Page 22
File Sharing Website
Data dictionary is an integer component of structured analysis since data flow diagram by them does not fully describe the subject investigation. Data dictionary provides additional information about the system.
A data dictionary is a catalog-repository of the elements in a system. These elements center around data and way are structured to meet user requirement and organization needs. The major elements are data flows, data stores and process. The data dictionary stores details and description of these elements.
It is developed during data analysis & assists the analysis involved in determining the system requirements. Data dictionary is used by analysis for five reasons.
1. To manage the detail in large system.2. To communicate a common meaning for all system elements.3. To document the future of the detail in order to evaluate the characteristics and4. Determine where system changes should be made.5. To locate errors & omission in the system.
The dictionary contains two types of description for the data following through the system.
DATA DICTIONARY
R.C.T.I. Page 23
File Sharing Website
Registration Info Table:-
Field name Data Type Constraint Description
Reg_id int Primary Key Reg.Id Number
Login_id int Foreign Key Login Id Number
Gender Varchar(50) Not Null Gender of Person
Birthdate Varchar(50) Not Null Birthdate of User
Image Varchar(50) Allow Null Image of User
City Varchar(50) Allow Null City Name of User
State Varchar(50) Allow Null State Name of User
Country Varchar(50) Allow Null Country Name of User
Login Table:-
Field name Data Type Constraint Description
R.C.T.I. Page 24
File Sharing Website
Login_id Int Primary Key Login Id Number
Password Varchar(50) Not Null Password of User
UserName Varchar(50) Not Null UserName of User
RoleId Int Allow Null Role Id Number
File Sharing Table:-
Field name Data Type Constraint Description
Filesharing_id Int Primary Key Filesharing Id Number
Fileinfo_id Int Not Null Filesinfo Id Number
Login_id Int Not Null Login Id Number
File Sharing info Table:-
Field name Data Type Constraint Description
R.C.T.I. Page 25
File Sharing Website
Filesharing id Int Primary Key Filesharing.Id Number
Category id Int Foreign Key Category Id Number
Date Datetime Not Null Date of Filesharing
Filename Varchar(50) Not Null Name of Shared File
State Varchar(50) Not Null Status of Shared File
Count Varchar(50) Not Null Counts of Files Shared
Description Varchar(50) Not Null Description About Shared File
Login_id int Not Null Login Id Number
Category Info Table:-
Field name Data Type Constraint Description
Categoryid Int Primary Key Filesharing Id Number
Categoryname Varchar(50) Not Null Filesinfo Id Number
Login_id Int Not Null Login Id Number
Request Table:-
R.C.T.I. Page 26
File Sharing Website
Field name Data Type Constraint Description
Request_Id Int Primary Key Request Id Number
Fromlogin_id Int Not Null Id Number From File Shared
ToLogin_id Int Not Null Id Number Where File Shared
State Varchar(50) Not Null Status of Shared File
Roll Table:-
Field name Data Type Constraint Description
Roll_Id Int Primary Key Roll Id Number
Roll_name Varchar(50) Not Null Roll Name of User
Contactus Table:-
R.C.T.I. Page 27
File Sharing Website
Field name Data Type Constraint Description
Contactus_Id Int Primary Key Contact us Id Number
Fullname Varchar(50) Allow Null Full name of User
Emailid Varchar(50) Allow Null Email id of User
Description Varchar(250) Allow Null Description of Problem
Suggestion Table:-
Field name Data Type Constraint Description
Suggestion_Id Int Primary Key Suggestion Id Number
Login_Id Varchar(50) Allow Null Login Id Number
Description Varchar(250) Allow Null Description of Suggestion
4.4 DIAGRAM
E-R Diagram
E-R Diagram show the entity relation between the system
R.C.T.I. Page 28
File Sharing Website
Context Level
R.C.T.I. Page 29
File Sharing Website
First Level DFD For Visitor
R.C.T.I. Page 30
File Sharing Website
First Level DFD For Admin
R.C.T.I. Page 31
File Sharing Website
First Level DFD For User
R.C.T.I. Page 32
File Sharing Website
R.C.T.I. Page 33
File Sharing Website
5. Screen Layout
R.C.T.I. Page 34
File Sharing Website
Home page:
R.C.T.I. Page 35
File Sharing Website
Register page:
R.C.T.I. Page 36
File Sharing Website
6.IMPLEMENTATION
PLANNING
6.1 IMPLEMENTATION ENVIRONMENT
As far as our project is concerned, any person who is little bit aware of
application and those who are willing to get information can use this
project. As we are planning to carry this application to Live Add based
project. The application can be used by many users. If just a single user
uses application then the application will be bound to its personal needs.
But if application is carry forwarded to Internet then database can be
expanded to satisfy various users at a time. But due to shortage of time
we had tried to cover all information of single user. This application is
rich with Live media Live add, so it can be understand by naïve users
also.
Challenges identified for successful design and implementation of this
project are dominated by: complexity, reliability/availability, transparent
data access while respecting security, a high experiment data rate and
data volume, scientific exploitation from multiple sites.
R.C.T.I. Page 37
File Sharing Website
Implementation Planning
Implementation phase requires precise planning and monitoring
mechanism in order to ensure schedule and completeness. We developed
the software in various sub phases in Implementation Phase. These steps
are as follows:
Database Implementation
This phase involved creation of database table and specifying
relationships among them in ACCESS2003.
Core Class Implementation
First we decided to implement the core system classes which will
facilitate the further implementation and makes it smoother. These steps
involved Prototype development, Property implementation and Method
implementation.
Prototype Development: Creating syntax structure for each core
Class.
Property/ Attribute Coding: Code for Each Property or Attribute
Method Coding: Coding for each Method
R.C.T.I. Page 38
File Sharing Website
User Components Implementation
Motive behind this separate phase is to focus on the Reusability. In these
phase we have tried to develop reusable User Interface components like
Scrolling Form , Bottom and top paging of the form etc.
User Interface Implementation
This phase involves development of user form using Reusable
components in the above phase.
6.2 SECURITY FEATURES
Every sub module in this project is designed with the use of asp.net class
and so it has built in security. Moreover class members are not accessible
outside of the package. There are only a few entry and exit points in each
class. So there is no possibility of change to the data by an outside
function
Modification / Enhancement can be done easily.
Good readability of the code
Easily understandable logic and naming convention, scope of
variables and other parameters.
R.C.T.I. Page 39
File Sharing Website
7.TESTING
7.1 TESTING STRATEGY
A strategy for the software testing integrates software test case design
methods into a well planned series of steps that result in the successful
construction of software. The strategy provides a road map that describes
the steps to be conducted as part of testing. When these steps are planned
and then undertaken, very much efforts, time, and resources are required.
A software testing strategy should be flexible enough to promote a
customized testing approach. At that same time it must be rigid enough
to promote reasonable planning and management tracking as the project
progresses.
A software testing strategy has following characteristics
Testing begins at the component level and works outward towards
the integration of the entire computer based system.
Different testing techniques are appropriate at different points in
time.
R.C.T.I. Page 40
File Sharing Website
Testing & Debugging are different activities but debugging must
be accommodated in any testing strategy.
We had developed GUI using frame and in that we had placed
various components like menu bar, menu items, file chooser, panel and
canvas in which we have displayed the database. After placing each
component in the frame, we had tested each components working so that
they do not bring undesired result.
There after we had checked for appropriate retrieval of data from the database. The
records which were retrieved were checked whether it was correct or not and it was
plotted on the Panel. We checked the correctness by opening the same database in
ArcView, which is GIS software developed by ESRI.
7.2 TEST METHODS
STATISTICAL TESTING
Statistical Testing is used to test the program’s performance and
reliability and to check how it works under operational conditions. Tests
are designed to reflect the actual user inputs and their frequency.
The stages involved in the static analysis for this system are follows.
Control flow analysis
Unreachable code
Unconditional branches into loops
Data use analysis
Variable used before initialization
Variables declared but never used
Variables assigned twice but never used between assignments
R.C.T.I. Page 41
File Sharing Website
Possible array bound violations
Declared variables
Interface analysis
Parameter type mismatches
Parameter number mismatches
Non-usage of the results of functions
Uncalled functions and procedures
All the above issues were checked in the whole code and few minor
mistakes were found which were corrected and the resulting code was
tested again.
BLACK-BOX TESTING
In Black-Box Testing or Functional Testing, the output of the module and
software, is taken into consideration, i.e. whether the software gives
proper output as per the requirements or not. In another words, this
testing aim to test a program's behavior against it specification without
making any reference to the internal structure of the program or the
algorithms used. Therefore the source code is not needed, and so even
purchased modules can be tested. The program just gets a certain input
and its functionality is examined by observing the output.
This can be done in the following way:
Input Interface
Processing
Output Interface
The tested program gets certain inputs. Then the program does its
job and generates a certain output, which is collected by a second
R.C.T.I. Page 42
File Sharing Website
interface. This result is then compared to the expected output, which has
been determined before the test.
WHITE BOX TESTING
White Box testing is used as an important primary testing approach. Here
code is inspected to see what it does. Tests are designed to exercise the
code. Code is tested using code scripts, driver etc that are employed to
directly interface and drive the code.
The tester can analyze the code and use the knowledge about the structure
of a component to derive the test data. White box testing methods like
control testing and loop testing have been used to improve the reliability
of the software.*
STRUCTURAL TESTING
Path testing has been exercised i.e. every independent execution path
through a component or program has been tested. If every independent
path is executed then all statements in the components must have been
executed at least once. The structure of program has also been checked.
INTEGRATING TESTING
After the individual modules were tested out, the integration procedure is
done to create a complete system. This integration process involves
building the system and testing the resultant system for problems that
arise from component interactions.
The top-down strategy is applied to validate high-level components of a
system before design and implementations have been completed because
the development process is started with high-level components and work
is done down the component hierarchy.
R.C.T.I. Page 43
File Sharing Website
INTERFACE TESTING
Interface testing is integral part of Integration testing. Therefore it is
checked for the
Interface misuse
Interface misunderstanding
The code to be tested is examined and explicitly lists each call to an
external component. In the system, standards tests for GUIs have been
performed, which are as follows.
The position and related labels for all controls were checked.
All menu functions and sub functions were verified for correctness.
Validations for all inputs were done.
Each menu functions were tested, whether it invokes the
corresponding functionality properly.
Whether the non-editable text control is disabling and it was also
verified that it doesn’t exceed the maximum allowed length.
Whether the system prompts the user with appropriate message as
and when invalid information is entered.
OBJECT TESTING
Object testing is to test objects as individual components, which are often
larger than single functions. Here following activities have taken place.
Testing the individual operations associated with objects
Testing individual object classes
R.C.T.I. Page 44
File Sharing Website
7.Bibliography
BIBLIOGRAPHY
Books
ASP.NET Complete Reference.
Software engineering Concepts By Roger S.Presman
Web Sites
www.esnips.com www.codeguru.com
R.C.T.I. Page 45