Вы находитесь на странице: 1из 68

REMOTE ADMINISTRATION 2012

TABLE OF CONTENTS
1. INTRODUCTION

1.1 PROJECT DEFINITION


1.2 OBJECTIVE DEFINITION
1.3 SOFTWARE AND HARDWARE REQUIREMENT

2. LITERATURE SUMMARY

2.1 STRATEGIES FOR PROJECT


2.2 TECHNOLOGY DESCRIPTION: WHAT IS .NET?
2.3 FRAMEWORK
2.4 FEATURES
2.5 INSTALLATION GUIDE
2.6 ABOUT SQL SERVER

3. METHODOLOGY

3.1 SOFTWARE DEVELOPMENT LIFE CYCLES


3.2 SOFTWARE PROCESS MODELS
3.3 E_R DIAGRAM
3.4 DATA FLOW DIAGRAM
3.5 STARE TRANSICTION DIAGRAM

4. IMPLEMENTATION

4.1 JUSTIFIACTION OF STUDY


4.2 CODING

5. TEST RESULTS

5.1 TESTING
5.2 SOFTWARE TESTING TECHNIQUES USED
5.3 SCREEN LAYOUT OR OUTPUT DATABASE

6. USER MANUAL (STEP TO INSTALL THE SOFTWARE)

7. SWOT ANALYSIS CONCLUSION & FUTURE SCOPE

7.1 CONCLUSIONS
7.2 FUTURE SCOPES

8. BIBLOGRAPHY
1
REMOTE ADMINISTRATION 2012

8.1 REFRENCES

CHAPTER 1:
INTRODUCTION

2
REMOTE ADMINISTRATION 2012

1.1 PROJECT DEFINITION

1.2 OBJECTIVE DEFINITION

Keeping the Server and Client information up-to-date with little efforts.
Maintaining the consistent Client information which is maintained in the database by
one field for each data.
Provision for Client, Directory and Files information about human aspects in concise
timely, accurate and objective manner for decision making purpose.
It also reduces the redundancy which is frequent case in manual system.
Paper work is less in the case of computerized system.
Facility for providing formatted Client Information pattern.
Provides the facility to access wanted information of a particular Server immediately.
Readiness to respond to ever increasing and always changing reporting requirements.
To provide data and their analysis for improving personnel administration.

3
REMOTE ADMINISTRATION 2012

1.3 SOFTWARE & HARDWARE REQUIREMENT

a) Hardware Requirement

PERSONAL COMPUTER IBM PC with minimum following configuration:-


Microprocessor Intel Pentium III (1 G. Hz.)
Primary Storage (RAM) 256 MB
Secondary Storage (Hard Disk) 10 GB
Flexible Disk Drive 1.44 MB
Compact disk d rive for software installation Video Display Unit (Monitor)
Color SVGA with 800 x 600 resolutions.
101 Key Enhanced Keyboard
Serial Mouse
Dot Matrix or Ink-Jet Printer

b) Software Requirement

Operating System Windows XP/2000/NT


VB.NET 2005 OR Newer Version
SQL-Server 2000 OR Newer Version

4
REMOTE ADMINISTRATION 2012

CHAPTER 2:
LITERATURE
SUMMARY

2.1 STRATEGIES FOR REMOTE ADMINISTRATION

5
REMOTE ADMINISTRATION 2012

2.2 TECHNOLOGY DESCRIPTION: WHAT IS .NET

The.net framework is a computing platform that simplifies application development in the


highly distributed environment of the internet. The .net framework is designed to fulfill the
following objectives:

To provide a consistent object oriented programming environment whether object


code is stored and executed locally but internet-distributed or executed remotely.
To provide a code-execution environment that minimizes software deployment and
versioning conflicts.
To provide a code execution environment that guarantees safe execution of code,
including code created by an unknown or semi trusted third party.
To provide a code-execution environment that the performance problems of scripted or
interpreted environments.
To make the developer experience constant across widely varying types of application,
such as windows-based application and web-based application.
To build all communication on industry standards to ensure that code based on the .net
framework can integrate with any other code.

2.2.1 .NET 2.0 IMPROVES ASP.NET BY ADDING SEVERAL NEW FEATURES.

a) Improvements in .NET 2.0

.NET 2.0 was designed to make web development easier and quicker.

b) Design goals for .NET 2.0:

Increase productivity by removing 70% of the code


Use the same controls for all types of devices
Provide a faster and better web server platform
Simplify compilation and installation
Simplify the administration of web applications

c) Whats new in .NET 2.0?


Master Pages, Themes, and Web Parts
Standard controls for navigation
Standard controls for security
Roles, personalization, and internationalization services
Improved and simplified data access controls
Full support for XML standards like, XHTML, XML, and WSDL

6
REMOTE ADMINISTRATION 2012

Improved compilation and deployment (installation)


Improved site management
New and improved development tools

THE NEW FEATURES ARE DESCRIBED BELOW.

Master Pages

.NET didn't have a method for applying a consistent look and feel for a whole web site.

Master pages in ASP.NET 2.0 solve this problem.

A master page is a template for other pages, with shared layout and functionality. The master
page defines placeholders for content pages. The result page is a combination (merge) of the
master page and the content page.

Themes

Themes are another feature of ASP.NET 2.0. Themes, or skins, allow developers to create a
customized look for web applications.

Design goals for ASP.NET 2.0 themes:

Make it simple to customize the appearance of a site


Allow themes to be applied to controls, pages, and entire sites
Allow all visual elements to be customized

Web Parts

.NET 2.0 Web Parts can provide a consistent look for a site, while still allowing user
customization of style and content.

New controls:

Zone controls - areas on a page where the content is consistent


Web part controls - content areas for each zone

Navigation

ASP.NET 2.0 has built-in navigation controls like

Dynamic HTML menus

7
REMOTE ADMINISTRATION 2012

Tree Views

Security

Security is very important for protecting confidential and personal information.

In ASP.NET 2.0 the following controls has been added:

A Login control, which provides login functionality


A Login Status control, to control the login status
A Login Name control to display the current user name
A Login View control, to provide different views depending on login status
A Create User wizard, to allow creation of user accounts
A Password Recovery control, to provide the "I forgot my password" functionality

Mobility Support

The problem with Mobile devices is screen size and display capabilities.

In ASP.NET, the Microsoft Mobile Internet Toolkit (MMIT) provided this support.

In ASP.NET 2.0, MMIT is no longer needed because mobile support is built into all controls.

Images

ASP.NET 2.0 has new controls for handling images:

The Image Map control - image map support


The Dynamic Image control - image support for different browsers

These controls are important for better image display on mobile devices, like hand-held
computers and cell phones.

Automatic Compilation

ASP.NET 2.0 provides automatic compilation. All files within a directory will be compiled on
the first run, including support for WSDL, and XSD files.

Compiled Deployment (Installation) and Source Protection

ASP.NET 2.0 also provides pre-compilation. An entire web site can be pre-compiled. This
provides an easy way to deploy (upload to a server) compiled applications, and because only
compiled files are deployed, the source code is protected.

8
REMOTE ADMINISTRATION 2012

Site Management

ASP.NET 2.0 has three new features for web site configuration and management:

New local management console


New programmable management functions (API)
New web-based management tool

Development Tools

With ASP.NET Visual Studio.NET was released with project and design features targeted at
corporate developers.

With ASP.NET 2.0, Visual Studio 2005 was released.

Key design features for Visual Studio 2005 include:

Support for the features described above


Upload files from anywhere (FTP, File System, Front Page....)
No project files, allowing code to be manipulated outside Visual Studio
Integrated Web Site Administration Tool

2.3 FRAMEWORK

The .NET Framework (pronounced dot net) is a software framework that runs primarily
on Microsoft Windows. It includes a large library and supports several programming
languages which allow language interoperability (each language can use code written in other
languages). The .NET library is available to all the programming languages that .NET
supports. Programs written for the .NET Framework execute in a software environment (as
contrasted to hardware environment), known as the Common Language Runtime (CLR), an
application virtual machine that provides important services such as security, memory
management, and exception handling. The class library and the CLR together constitute
the .NET Framework.

The .NET Framework's Base Class Library provides user interface, data access, database
connectivity, cryptography, web application development, numeric algorithms, and network
communications. Programmers produce software by combining their own source code with
the .NET Framework and other libraries. The .NET Framework is intended to be used by
most new applications created for the Windows platform. Microsoft also produces a popular
integrated development environment largely for .NET software called Visual Studio.

2.3.1 ARCHITECTURE

9
REMOTE ADMINISTRATION 2012

Visual overview of the Common Language Infrastructure (CLI)

Common Language Infrastructure (CLI)

The purpose of the Common Language Infrastructure is to provide a language-neutral


platform for application development and execution, including functions for Exception
handling, Garbage Collection, security, and interoperability. By implementing the core
aspects of the .NET Framework within the scope of the CLI, this functionality will not be tied
to a single language but will be available across the many languages supported by the
framework. Microsoft's implementation of the CLI is called the Common Language Runtime,
or CLR.

Assemblies

The CIL code is housed in .NET assemblies. As mandated by specification, assemblies are
stored in the Portable Executable (PE) format, common on the Windows platform for all DLL
and EXE files. The assembly consists of one or more files, one of which must contain the
manifest, which has the metadata for the assembly. The complete name of an assembly (not to
be confused with the filename on disk) contains its simple text name, version number,
culture, and public key token. The public key token is a unique hash generated when the
assembly is compiled, thus two assemblies with the same public key token are guaranteed to
be identical from the point of view of the framework. A private key can also be specified

10
REMOTE ADMINISTRATION 2012

known only to the creator of the assembly and can be used for strong naming
and to guarantee that the assembly is from the same author when a new version
of the assembly is compiled (required adding an assembly to the Global
Assembly Cache).Security

.NET has its own security mechanism with two general features: Code Access Security
(CAS), and validation and verification. Code Access Security is based on evidence that is
associated with a specific assembly. Typically the evidence is the source of the assembly
(whether it is installed on the local machine or has been downloaded from the intranet or
Internet). Code Access Security uses evidence to determine the permissions granted to the
code. Other code can demand that calling code is granted a specified permission. The demand
causes the CLR to perform a call stack walk: every assembly of each method in the call stack
is checked for the required permission; if any assembly is not granted the permission a
security exception is thrown. However, has to split the application into sub domains; it is not
done by the CLR.

Class library

The .NET Framework includes a set of standard class libraries. The class library is organized
in a hierarchy of namespaces. Most of the built in APIs are part of either System.* or
namespaces. These class libraries implement a large number of common functions, such as
file reading and writing, graphic rendering, database interaction, and XML document
manipulation, among others. The .NET class libraries are available to all CLI compliant
languages. The .NET Framework class library is divided into two parts: the Base Class
Library and the Framework Class Library.

The Base Class Library (BCL) includes a small subset of the entire class library and is the
core set of classes that serve as the basic API of the Common Language Runtime.[8] The
classes in mscorlib.dll and some of the classes in System.dll and System.core.dll are
considered to be a part of the BCL. The BCL classes are available in both .NET Framework
as well as its alternative implementations including .NET Compact Framework, Microsoft
Silverlight and Mono.

The Framework Class Library (FCL) is a superset of the BCL classes and refers to the entire
class library those ships with .NET Framework. It includes an expanded set of libraries,
including Windows Forms, ADO.NET, ASP.NET, Language Integrated Query, Windows
Presentation Foundation, Windows Communication Foundation among others. The FCL is
much larger in scope than standard libraries for languages like C++, and comparable in scope
to the standard libraries of Java.

11
REMOTE ADMINISTRATION 2012

Memory management

The .NET Framework CLR frees the developer from the burden of managing memory
(allocating and freeing up when done); instead it does the memory management itself
even though there are no actual guarantees as to when the Garbage Collector will
perform its work, unless an explicit double-call is issue. To this end, the memory
allocated to instantiations of .NET types (objects) is done contiguously from the
managed heap, a pool of memory managed by the CLR. As long as there exists a
reference to an object, which might be either a direct reference to an object or via a
graph of objects, the object is considered to be in use by the CLR. When there is no
reference to an object, and it cannot be reached or used, it becomes garbage.
However, it still holds on to the memory allocated to it. .NET Framework includes a
garbage collector which runs periodically, on a separate thread from the
application's thread, that enumerates all the unusable objects and reclaims the memory
allocated to them.

2.4 FEATURES

Interoperability
Because computer systems commonly require interaction between new and
older applications, the .NET Framework provides means to access
functionality that is implemented in programs that execute outside the .NET environment.
Access to COM components is provided in the System Enterprise Services namespaces of the
framework; access to other functionality is provided using the P/Invoke feature.

Common Language Runtime Engine


The Common Language Runtime (CLR) is the execution engine of the .NET Framework.
All .NET programs execute under the supervision of the CLR, guaranteeing certain properties
and behaviors in the areas of memory management, security, and exception handling.

Language Independence
The .NET Framework introduces a Common Type System, or CTS. The CTS specification
defines all possible data types and programming constructs supported by the CLR and how
they may or may not interact with each other conforming to the Common Language
Infrastructure (CLI) specification. Because of this feature, the .NET Framework supports the
exchange of types and object instances between libraries and applications written using any
conforming .NET language.

Base Class Library


The Base Class Library (BCL), part of the Framework Class Library (FCL), is a library of
functionality available to all languages using the .NET Framework. The BCL provides classes
which encapsulate a number of common functions, including file reading and writing, graphic
rendering, database interaction, XML document manipulation and so on.

Simplified Deployment

12
REMOTE ADMINISTRATION 2012

The .NET Framework includes design features and tools that help manage the installation of
computer software to ensure that it does not interfere with previously installed software, and
that it conforms to security requirements.

Security
The design is meant to address some of the vulnerabilities, such as buffer overflows, that
have been exploited by malicious software. Additionally, .NET provides a common security
model for all applications.

Portability
The design of the .NET Framework allows it theoretically to be platform agnostic,
and thus cross-platform compatible. That is, a program written to use the framework should
run without change on any type of system for which the framework is implemented. While
Microsoft has never implemented the full framework on any system except Microsoft
Windows, the framework is engineered to be platform agnostic and cross-platform
implementations are available for other operating systems.

2.5 INSTALLATION GUIDE

Getting Started

There's a lot happening on the start page. But basically, this is where you can
start a new project, or open an existing one. The first Tab, Projects, is selected. At
the moment, the area labelled "Open an Existing Project" is blank. This is what you'll
see when you run the software for the first time (because you haven't created a
project yet). When you create a project, the Name you gave it will be displayed on
this page, as a hyperlink. Clicking the link will open the project.

At the bottom of the screen, there are two buttons: "New Project" and "Open
Project". To get started, click the "New Project" button. When you do, you'll see this
dialogue box appear in the version 2008:

13
REMOTE ADMINISTRATION 2012

As a beginner, you'll normally want the option selected: "Windows Application", in the
"Visual Basic Projects" folder. This means that you're going to be designing a
programme to run on a computer running the Microsoft Windows operating system.

If you look in the Name textbox at the bottom, you'll see it says
"WindowsApplication1". This is the default name for your projects. It's not a good
idea to keep this name. After all, you don't want all of your projects to be called
"WindowsApplication1", "WindowsApplication2", etc. So click inside this textbox and
change this Name to the following:

My First Project
Keep the Location the same as the default. This is a folder inside of your "My
Documents" folder called "Visual Studio Projects". A new folder will then be created
for you, and its name will be the one you typed in the "Name" textbox. All of your files
for your first project are then saved in this folder.

Click the OK button, and the ASP.NET design time environment will open. It
will look like the following (version 2008):

Web Pages

14
REMOTE ADMINISTRATION 2012

In the ASP.NET design time environment, the first thing to concentrate on is


that strange, big square in the top left. That's called a form. It's actually the pretty bit
of your programme, the part that others will see when they launch your masterpiece.
Granted, it doesn't look too attractive at the moment, but you'll soon discover ways to
lick it into shape.

To run the form, try this:

From the menu bar, click Debug


From the drop down menu, click Start
Alternatively, press the F5 key on your keyboard
Your programme is launched

Congratulations! You have now created your very first programme. It should look like
this:

Click the Red X on the form to stop it from running. You will then be returned to the
software environment.

If you compare the first form with the one above, you'll see that they look very similar.
But the one above is actually a real programme, something you could package and
sell to unsuspecting village idiots

So what's going on? Why the two different views? Well, Visual Basic has two distinct
environments, a Design environment and a Debug environment. Design Time is
15
REMOTE ADMINISTRATION 2012

where you get to play about with the form, spruce it up, add textboxes, and buttons,
and labels (and code, of course ); Debug is where you can test your programme and
see how well it performs. Or doesn't perform, as is usually the case.

But don't worry about the terminology, for the time being. Just be aware that there's a
two step process to VB programming: designing and debugging.

So, let's get on and do some designing! Before we can start designing a form,
though, we need some tools. And where are tools kept? In a toolbox!

Adding Controls

Things like buttons, textboxes, and labels are all things that you can add to
your Forms. They are know as Controls, and are kept in the Toolbox for ease of use.

The Toolbox can be found on the left of the screen. In the picture below, you
can see the toolbox icon next to Default1 (ASP.Net 2008):

To display all the tools, move your mouse over the toolbox icon. You'll see the
following automatically appear:

16
REMOTE ADMINISTRATION 2012

There are seven categories of tools available. The toolbox you'll be working
with first is the Common Controls toolbox. To see the tools, click on the plus symbol
next to Common Controls. You'll see a long list of tools:

As you can see, there are an awful lot of tools to choose from! For this first section,
we'll only be using the Button, the TextBox and the Label.

If you want to keep the toolbox displayed, click the Pin icon next to the X. To
close the toolbox, simply move your mouse away.

17
REMOTE ADMINISTRATION 2012

2.6 ABOUT SQL SERVER

2.5.1 What is
SQL?

SQL stands for Structured Query Language


18
REMOTE ADMINISTRATION 2012

SQL lets you access and manipulate databases


SQL is an ANSI (American National Standards Institute) standard

2.5.2 What Can SQL do?

SQL can execute queries against a database


SQL can retrieve data from a database
SQL can insert records in a database
SQL can update records in a database
SQL can delete records from a database
SQL can create new databases
SQL can create new tables in a database
SQL can create stored procedures in a database
SQL can create views in a database
SQL can set permissions on tables, procedures, and views

Keep in Mind That...


SQL is not case sensitive

2.5.3 Semicolon after SQL Statements

Some database systems require a semicolon at the end of each SQL statement.

Semicolon is the standard way to separate each SQL statement in database systems that allow
more than one SQL statement to be executed in the same call to the server.

We are using MS Access and SQL Server 2000 and we do not have to put a semicolon after
each SQL statement, but some database programs force you to use it.

2.5.4 SQL DML and DDL

SQL can be divided into two parts: The Data Manipulation Language (DML) and the Data
Definition Language (DDL).

The query and update commands form the DML part of SQL:

SELECT - extracts data from a database

UPDATE - updates data in a database

DELETE - deletes data from a database

INSERT INTO - inserts new data into a database

19
REMOTE ADMINISTRATION 2012

The DDL part of SQL permits database tables to be created or deleted. It also defines indexes
(keys), specify links between tables, and impose constraints between tables. The most
important DDL statements in SQL are:

CREATE DATABASE - creates a new database

ALTER DATABASE - modifies a database

CREATE TABLE - creates a new table

ALTER TABLE - modifies a table

DROP TABLE - deletes a table

CREATE INDEX - creates an index (search key)

DROP INDEX - deletes an index

The SQL language and relational database systems based on it are one of the most
important foundation technologies in the computer industry. Over the last two decades, SQL
has grown from its first commercial use into a computer product and services market segment
worth tens of billions of dollars per year, and SQL stands today as the standard computer
database language. Literally hundreds of database products now support SQL, running on
computer systems from mainframes to personal computers and even handheld devices. An
official international SQL standard has been adopted and expanded twice. Virtually every
major enterprise software product relies on SQL for its data management, and SQL is at the
core of the database products from Microsoft, Oracle, and IBM, the three largest software
companies in the world. SQL is also at the heart of open-source database products that are
helping to fuel the popularity of Linux and the open-source movement. From its obscure
beginnings as an IBM research project, SQL has leaped to prominence as both an important
computer technology and a powerful market force.

20
REMOTE ADMINISTRATION 2012

CHAPTER 3:
METHODOLOGY
3.1 SOFWARE DEVELOPMENT LIFE CYCLE

A software development process, also known as a software development life cycle (SDLC), is
a structure imposed on the development of a software product. Similar terms include software
life cycle and software process. It is often considered a subset of systems development life
cycle. There are several models for such processes, each describing approaches to a variety of
tasks or activities that take place during the process. Some people consider a lifecycle model
a more general term and a software development process a more specific term. For example,
there are many specific software development processes that 'fit' the spiral lifecycle model.
ISO 12207 is an ISO standard for software lifecycle processes. It aims to be the standard that
defines all the tasks required for developing and maintaining software.

3.1.1 Overview
The largest and growing body of software development organizations implements process
methodologies. Many of them are in the defense industry, which in the U.S. requires a rating
based on 'process models' to obtain contracts.

The international standard for describing the method of selecting, implementing and
monitoring the life cycle for software is ISO 12207.

A decades-long goal has been to find repeatable, predictable processes that improve
productivity and quality. Some try to systematize or formalize the seemingly unruly task of
writing software. Others apply project management techniques to writing software. Without
project management, software projects can easily be delivered late or over budget. With large
numbers of software projects not meeting their expectations in terms of functionality, cost, or
delivery schedule, effective project management appears to be lacking.

Organizations may create a Software Engineering Process Group (SEPG), which is the focal
point for process improvement. Composed of line practitioners who have varied skills, the
group is at the center of the collaborative effort of everyone in the organization who is
involved with software engineering process improvement.

3.1.2 Software development activities

21
REMOTE ADMINISTRATION 2012

Planning

An important task in creating a software product is extracting the requirements or


requirements analysis. Customers typically have an abstract idea of what they want as an end
result, but not what software should do. Incomplete, ambiguous, or even contradictory
requirements are recognized by skilled and experienced software engineers at this point.
Frequently demonstrating live code may help reduce the risk that the requirements are
incorrect.

Once the general requirements are gathered from the client, an analysis of the scope of the
development should be determined and clearly stated. This is often called a scope document.

Certain functionality may be out of scope of the project as a function of cost or as a result of
unclear requirements at the start of development. If the development is done externally, this
document can be considered a legal document so that if there are ever disputes, any
ambiguity of what was promised to the client can be clarified.

Implementation, testing and documenting

Implementation is the part of the process where software engineers actually program the code
for the project.

Software testing is an integral and important phase of the software development process. This
part of the process ensures that defects are recognized as soon as possible.

Documenting the internal design of software for the purpose of future maintenance and
enhancement is done throughout development. This may also include the writing of an API,
be it external or internal. It is very important to document everything in the project.

Deployment and maintenance

Deployment starts after the code is appropriately tested, is approved for release and sold or
otherwise distributed into a production environment.

Software Training and Support is important and a lot of developers fail to realize that. It
would not matter how much time and planning a development team puts into creating
software if nobody in an organization ends up using it. People are often resistant to change
and avoid venturing into an unfamiliar area, so as a part of the deployment phase, it is very
important to have training classes for new clients of your software.

Maintaining and enhancing software to cope with newly discovered problems or new
requirements can take far more time than the initial development of the software. It may be
necessary to add code that does not fit the original design to correct an unforeseen problem or
it may be that a customer is requesting more functionality and code can be added to
accommodate their requests. If the labor cost of the maintenance phase exceeds 25% of the
prior-phases' labor cost, then it is likely that the overall quality of at least one prior phase is
poor. In that case, management should consider the option of rebuilding the system (or
portions) before maintenance cost is out of control.

22
REMOTE ADMINISTRATION 2012

3.2 SOFTWARE PROCESS MODELS

The software process model maybe defined as a simplified description of a software


process, presented from a particular perspective. In essence, each stage of the software
process is identified and a model is then employed to represent the inherent activities
associated within that stage. Consequently, a collection of local models may be utilised in
generating the global picture representative of the software process. Examples of models
include the workflow model, the data-flow model, and the role model.
The workflow model shows the sequence of activities in the process along with their
inputs, outputs and dependencies. The activities in the model represent human actions.
The dataflow model represents the process as a set of activities each of which carries
out some data transformation. It shows how the input to the process such as specification
is transformed to an output such as design. The activities here maybe lower than in a
workflow model. They may represent transformations carries out by people or computers.
The role model represents the roles of people involved in the software process and
the activities for which they are responsible.
In this section of the course focuses on the traditional generic software process models to
highlight them effectively demonstrate the different approaches to software development.
Such models include the:

3.2.1 Build-And-Fix model

This model, shown in Fig. 3.1, is the worst model for developing a project. The product is
built without proper specifications and design steps. In essence, the product is built and
modified as many times as possible until it satisfies the client. The cost of using this
approach is greater than its specifications.

23
REMOTE ADMINISTRATION 2012

3.2.2 The Waterfall model

The waterfall model derives its name due to the cascading effect from one phase to
the other as is illustrated in Figure 3.2. In this model each phase well defined starting and
ending point, with identifiable deliveries to the next phase.

Note that this model is sometimes referred to as the linear sequential model or the software
life cycle

24
REMOTE ADMINISTRATION 2012

The model consists of six distinct stages, namely:


1. in the requirements analysis phase
(a) The problem is specified along with the desired service objectives (goals)
(b) The constraints are identified
2. In the specification phase the system specification is produced from the detailed
definitions of (a) and (b) above. This document should clearly define the product function.
Note that in some text, the requirements analysis and specifications phases are
combined and represented as a single phase.
3. In the system and software design phase, the system specifications are translated into a
software representation. The software engineer at this stage is concerned with:
Data structure
Software architecture
Algorithmic detail and
Interface representations

The hardware requirements are also determined at this stage along with a picture
of the overall system architecture. By the end of this stage should the software
engineer should be able to identify the relationship between the hardware, software
and the associated interfaces. Any faults in the specification should ideally not be
passed down stream

4. In the implementation and testing phase stage the designs are translated into the
software domain
Detailed documentation from the design phase can significantly reduce
the coding effort.
Testing at this stage focuses on making sure that any errors are identified
and that the software meets its required specification.

5. In the integration and system testing phase all the program units are integrated and
tested to ensure that the complete system meets the software requirements. After this
stage the software is delivered to the customer [Deliverable The software product
is delivered to the client for acceptance testing.]

6. The maintenance phase the usually the longest stage of the software. In this phase the
software is updated to:
Meet the changing customer needs.
Adapted to accommodate changes in the external environment.

25
REMOTE ADMINISTRATION 2012

Correct errors and oversights previously undetected in the testing phases.


Enhancing the efficiency of the software.

Observe that feed back loops allow for corrections to be incorporated into the model. For
example a problem/update in the design phase requires a revisit to the specifications phase.
When changes are made at any phase, the relevant documentation should be updated to
reflect that change.

Advantages
Testing is inherent to every phase of the waterfall model.
It is an enforced disciplined approach.
It is documentation driven, that is, documentation is produced at every stage.

Disadvantages

The waterfall model is the oldest and the most widely used paradigm.
However, many projects rarely follow its sequential flow. This is due to the inherent problems
associated with its rigid format. Namely:
It only incorporates iteration indirectly, thus changes may cause considerable
confusion as the project progresses.
As The client usually only has a vague idea of exactly what is required from
the software product, this WM has difficulty accommodating the natural
uncertainty that exists at the beginning of the project.
The customer only sees a working version of the product after it has been
coded. This may result in disaster any undetected problems are precipitated to
this stage.

3.2.3 Formal Systems Development Model

The formal systems development model, shown below in Figure 2.1, utilises a development
process that is based on formal mathematical transformation of system models to executable
programs. Similar to the waterfall model, the formal approach has clearly defined (cascading)
phase boundaries. The critical distinctions between the two models are:
1. The software requirements and specification phases are refined into a detailed formal
specification, which is expressed mathematically.
2. The design, implementation and unit testing (NB: to be covered later in semester) are
replaced by a single formal transformation phase as illustrated in Figure 3.3

26
REMOTE ADMINISTRATION 2012

3.2.4 Prototyping Model

Definition: A prototype is a working model that is functionally equivalent to a component of


the product

In many instances the client only has a general view of what is expected from the software
product. In such a scenario where there is an absence of detailed information regarding the
input to the system, the processing needs and the output requirements, the prototyping model
may be employed. This model reflects an attempt to increase the flexibility of the
development process by allowing the client to interact and experiment with a working
representation of the product. The developmental process only continues once the client is
satisfied with the functioning of the prototype. At that stage the developer determines the
specifications of the clients real needs.
The following sections examine two (2) version of the prototyping model:
Version I: Prototyping is used as a requirements technique.
Version II: Prototype is used as the specifications or a major part thereof.

Version I
This approach, as illustrated in Fig 3.4, uses the prototype as a means of quickly determining
the needs of the client; it is discarded once the specifications have been agreed on. The
emphasis of the prototype is on representing those aspects of the software that will be visible

27
REMOTE ADMINISTRATION 2012

to the client/user (e.g. input approaches and output formats). Thus it does not matter if the
prototype hardly works.
Note that if the first version of the prototype does not meet the clients needs, then it must be
rapidly converted into a second version.

Version II
In this approach, as illustrated in Fig 3.5, the prototype is actually used as the specifications
for the design phase. This advantage of this approach is speed and accuracy, as not time is
spent on drawing up written specifications. The inherent difficulties associated with that
phase (i.e. incompleteness, contradictions and ambiguities) are then avoided.
28
REMOTE ADMINISTRATION 2012

Disadvantages of prototyping

1. Often clients expect that a few minor changes to the prototype will more than suffice
their needs. They fail to realise that no consideration was given to the overall quality
of the software in the rush to develop the prototype.
2. The developers may lose focus on the real purpose of the prototype and compromise
the quality of the product. For example, they may employ some of the inefficient
algorithms or inappropriate programming languages used in developing the prototype.
A prototype will hardly be acceptable in court in the event that the client does not
agree that the developer has discharged his/her obligations. For this reason using the
prototype as the software specification is normally reserved for software development
within an organisation.

To avoid the above problems the developer and the client should both establish a protocol,
which indicates the deliverables to the client as well as contractual obligations.

29
REMOTE ADMINISTRATION 2012

In both versions the prototype is discarded early in the life cycle. However, one way of
ensuring that the product is properly designed and implemented is to implement the prototype
in a different programming language from that of the product.

3.2.5 RAD Model

Rapid Application Development (RAD) is an incremental software development process


model that emphasises a very short development cycle [typically 60-90 days]. The RAD
model, shown in Fig. 3.6, is a high-speed adaptation of the waterfall model, where the
result of each cycles a fully functional system.

RAD is used primarily for information systems applications; the RAD approach encompasses
the following phases:

Business modelling

The information flow among business functions is modeled in a way that answers the
following questions:
30
REMOTE ADMINISTRATION 2012

What information drives the business process?


What information is generated?
Who generates it?
Where does the information go?
Who processes it?

Data modelling

The information flow defined as part of the business modeling phase is refined into a set of
data objects that are needed to support the business. The characteristics (called attributes) of
each object are identified and the relationships between these objects are defined.

Process modelling

The data objects defined in the data-modeling phase are transformed to achieve the
information flow necessary to implement a business function. Processing descriptions are
created for adding, modifying, deleting, or retrieving a data object.

Application generation

RAD assumes the use of the RAD fourth generation techniques and tools like VB, VC++,
Delphi etc rather than creating software using conventional third generation programming
languages. The RAD works to reuse existing program components (when possible) or create
reusable components (when necessary). In all cases, automated tools are used to facilitate
construction of the software.

Testing and turnover

Since the RAD process emphasizes reuse, many of the program components have already
been tested. This minimizes the testing and development time.

If a business application can be modularized so that each major function can be completed
within the development cycle then it is a candidate for the RAD model. In this case, each
team can be assigned a model, which is then integrated to form a whole.

Disadvantages

For Large (but scalable) projects, RAD requires sufficient resources to create the right
number of RAD teams.

RAD projects will fail if there is no commitment by the developers or the clients to rapid-
fire activities necessary to get a system complete in a much abbreviated time frame.

If a system cannot be properly modularized, building components for RAD will be


problematic

RAD is not appropriate when technical risks are high, e.g. this occurs when a new application
makes heavy use of new technology.

31
REMOTE ADMINISTRATION 2012

Evolutionary Process Models


3.2.6 Incremental Model (IM)

This model, illustrated in Fig. 3.7, derives its name from the way in which the software is
built. More specifically, the model is designed, implemented and tested as a series of
incremental builds until the product is finished. A build consists of pieces of code from
various modules that interact together to provide a specific function.

At each stage of the IM a new build is coded and then integrated into the structure, which is
tested as a whole. Note that the product is only defined as finished when it satisfies all of its
requirements.

This model combines the elements of the waterfall model with the iterative philosophy of
prototyping. However, unlike prototyping the IM focuses on the delivery of an operational
product at the end of each increment.

An example of this incremental approach is observed in the development of word processing


applications where the following services are provided on subsequent builds:
1. Basic file management, editing and document production functions
2. Advanced editing and document production functions

32
REMOTE ADMINISTRATION 2012

3. Spell and grammar checking


4. Advance page layout

The first increment is usually the core product which addresses the basic requirements of the
system. This maybe either be used by the client or subjected to detailed review to develop a
plan for the next increment. This plan addresses the modification of the core product to better
meet the needs of the customer, and the delivery of additionally functionality. More
specifically at each stage
Client assigns a value to each build not yet implemented.
Developer estimates cost of developing each build.
Resulting value-to-cost ratio is the criterion used for selecting which build is delivered
next.

Essentially the build with the highest value-to-cost ratio is the one that provides the client
with the most functionality (value) for the least cost. Using this method the client has a usable
product at all of the development stages.

3.2.7 The Spiral Model

The spiral model, illustrated in Fig. 3.8, combines the iterative nature of prototyping with the
controlled and systematic aspects of the waterfall model, therein providing the potential for
rapid development of incremental versions of the software. In this model the software is
developed in a series of incremental releases with the early stages being either paper models
or prototypes. Later iterations become increasingly more complete versions of the product.

As illustrate in Fig 3.8, the model is divided into a number of task regions.
Depending on the model it may have 3-6 task regions (/framework activities) our case
will consider a 6-task region model.
These regions are:

33
REMOTE ADMINISTRATION 2012

1. The customer communication task to establish effective communication between


developer and customer.
2. The planning task to define resources, time lines and other project related
information..

3. The risk analysis task to assess both technical and management risks.

4. The engineering task to build one or more representations of the application.

5. The construction and release task to construct, test, install and provide user
support (e.g., documentation and training).

6. The customer evaluation task to obtain customer feedback based on the evaluation
of the software representation created during the engineering stage and implemented
during the install stage.

The evolutionary process begins at the centre position and moves in a clockwise direction.
Each traversal of the spiral typically results in a deliverable. For example, the first and second
spiral traversals may result in the production of a product specification and a prototype,
respectively. Subsequent traversals may then produce more sophisticated versions of the
software.
An important distinction between the spiral model and other software models is the explicit
consideration of risk. There are no fixed phases such as specification or design phases in the
model and it encompasses other process models. For example, prototyping may be used in
one spiral to resolve requirement uncertainties and hence reduce risks. This may then be
followed by a conventional waterfall development.

Note that each passage through the planning stage results in an adjustment to the
project plan (e.g. cost and schedule are adjusted based on the feedback from the
customer, project manager may adjust the number of iterations required to complete
the software.).
Each of the regions is populated by a set of work tasks called a task set that are
adapted to characteristics of the project to be undertaken. For small projects the
number of tasks and their formality is low. Conversely, for large projects the reverse is
true.

Advantages of the Spiral Model


The spiral model is a realistic approach to the development of large-scale software
products because the software evolves as the process progresses. In addition, the
developer and the client better understand and react to risks at each evolutionary level.
The model uses prototyping as a risk reduction mechanism and allows for the
development of prototypes at any stage of the evolutionary development.

34
REMOTE ADMINISTRATION 2012

It maintains a systematic stepwise approach, like the classic life cycle model, but
incorporates it into an iterative framework that more reflect the real world.
If employed correctly, this model should reduce risks before they become
problematic, as consideration of technical risks are considered at all stages.

Disadvantages of the Spiral Model


Demands considerable risk-assessment expertise
It has not been employed as much proven models (e.g. the WF model) and hence may
prove difficult to sell to the client (esp. where a contract is involved) that this model
is controllable and efficient. [More study needs to be done in this regard]

35
REMOTE ADMINISTRATION 2012

3.3 ER DIAGRAM

36
REMOTE ADMINISTRATION 2012

3.4 DATA FLOW DIAGRAM

37
REMOTE ADMINISTRATION 2012

3.5 STATE TRANSICTION DIAGRAM

38
REMOTE ADMINISTRATION 2012

CHAPTER 4:
IMPLEMEN-
TATION

39
REMOTE ADMINISTRATION 2012

4.1 JUSTIFICATION OF STUDY

4.2 CODING

4.2(A) SERVER SIDE


4.2. (A).1 MODULE1
Module Server
Dim clientsList As New Hashtable
Sub Main()
Dim ServerSocket As New TcpListener(8888)
Dim ClientSocket As TcpClient
Dim infiniteCounter As Integer
Dim intCounter As Integer

ServerSocket.Start()
Msg("Chat server Executed...")
intCounter = 0
infiniteCounter = 0

For infiniteCounter = 1 To 2
infiniteCounter = 1
intCounter += 1
ClientSocket = ServerSocket.AcceptTcpClient()

Dim bytesFrom(10024) As Byte


Dim dataFromClient As String

Dim networkStream As NetworkStream = ClientSocket.GetStream()


networkStream.Read(bytesFrom, 0,
CInt(ClientSocket.ReceiveBufferSize))
dataFromClient =
System.Text.Encoding.ASCII.GetString(bytesFrom)
dataFromClient = dataFromClient.Substring(0,
dataFromClient.IndexOf("$"))

clientsList(dataFromClient) = ClientSocket
broadcast(dataFromClient + " Joined ", dataFromClient, False)

Msg(dataFromClient + " Joined chat room ")


Dim Client As New handleClinet
Client.startClient(ClientSocket, dataFromClient, clientsList)

Next

ClientSocket.Close()
ServerSocket.Stop()
Msg("Exit")

40
REMOTE ADMINISTRATION 2012

Console.ReadLine()
End Sub

Sub Msg(ByVal message As String)


message.Trim()
Console.WriteLine(" >> " + message)
End Sub

Private Sub broadcast(ByVal msg As String, ByVal uName As String, ByVal


flag As Boolean)
Dim Item As DictionaryEntry
For Each Item In clientsList
Dim broadcastsocket As TcpClient
broadcastsocket = CType(Item.Value, TcpClient)
Dim broadcaststream As NetworkStream =
broadcastsocket.GetStream()
Dim broadcastBytes As [Byte]()

If flag = True Then


broadcastBytes = Encoding.ASCII.GetBytes(uName + " says : "
+ msg)
Else
broadcastBytes = Encoding.ASCII.GetBytes(msg)
End If

broadcaststream.Write(broadcastBytes, 0, broadcastBytes.Length)
broadcaststream.Flush()
Next
End Sub

Public Class handleClinet


Dim clientsocket As TcpClient
Dim clNo As String
Dim clientlist As Hashtable

Public Sub startClient(ByVal inClientSocket As TcpClient, ByVal


clineNo As String, ByVal cList As Hashtable)
Me.clientsocket = inClientSocket
Me.clNo = clineNo
Me.clientlist = cList
Dim ctThread As Threading.Thread = New
Threading.Thread(AddressOf doChat)
ctThread.Start()

End Sub

Private Sub doChat()


Dim requestCount As Integer
Dim bytesFrom(10024) As Byte
Dim dataFromClient As String
Dim rCount As String
requestCount = 0

While (True)
Try
requestCount = requestCount + 1
Dim NetworkStream As NetworkStream =
clientsocket.GetStream()

41
REMOTE ADMINISTRATION 2012

NetworkStream.Read(bytesFrom, 0,
CInt(clientsocket.ReceiveBufferSize))
dataFromClient =
System.Text.Encoding.ASCII.GetString(bytesFrom)
dataFromClient = dataFromClient.Substring(0,
dataFromClient.IndexOf("$"))
Msg("From client - " + clNo + " : " + dataFromClient)
rCount = Convert.ToString(requestCount)
broadcast(dataFromClient, clNo, True)
Catch ex As Exception
MsgBox(ex.ToString)
Exit While
End Try
End While
End Sub

End Class

End Module

42
REMOTE ADMINISTRATION 2012

4.2. (A).2 MAIN

4.2. (A).3 SERVICES

Imports System.Data.SqlClient
Public Class Resources1
Dim conn As New SqlConnection

Private Sub Resources1_FormClosed(ByVal sender As Object, ByVal e As


System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
End
End Sub
Private Sub b1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles b1.Click
Chatting.Show()
End Sub

Private Sub b2_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles b2.Click
ControlPanel.Show()
End Sub

Private Sub b3_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles b3.Click
Status.Show()
End Sub

Private Sub b4_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles b4.Click

End Sub

Private Sub b5_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles b5.Click
DriveAccessing.Show()
End Sub

Private Sub b6_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles b6.Click
Delete.Show()
End Sub

Private Sub b7_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles b7.Click
Database.Show()
End Sub

Private Sub b8_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles b8.Click
Extratasks.Show()
End Sub
End Class

43
REMOTE ADMINISTRATION 2012

4.2. (A).4 CONVERSATION WITH THE CLIENTS

Imports System
Imports System.IO
Imports System.Net
Imports System.Net.Sockets
Imports System.Text
Imports Microsoft.VisualBasic
Imports System.Data.SqlClient
Public Class Chatting
Dim clientSocket As New System.Net.Sockets.TcpClient()
Dim serverStream As NetworkStream
Dim readData As String
Dim infiniteCounter As Integer
Dim conn As New SqlConnection

Private Sub Button1_Click(ByVal sender As System.Object, _


ByVal e As System.EventArgs) Handles Button1.Click
Dim outStream As Byte() = _
System.Text.Encoding.ASCII.GetBytes(TextBox2.Text + "$")
serverStream.Write(outStream, 0, outStream.Length)
serverStream.Flush()
TextBox2.Text = ""
TextBox2.Focus()
End Sub

Private Sub msg()


If Me.InvokeRequired Then
Me.Invoke(New MethodInvoker(AddressOf msg))
Else
TextBox1.Text = TextBox1.Text + Environment.NewLine + " >> " +
readData
TextBox1.SelectionStart = TextBox1.TextLength
TextBox1.ScrollToCaret()
End If
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, _


ByVal e As System.EventArgs) Handles Button2.Click
On Error GoTo 1
readData = "Conected to Chat Server ..."
msg()
clientSocket.Connect(TextBox4.Text, TextBox5.Text)
serverStream = clientSocket.GetStream()

Dim outStream As Byte() = _


System.Text.Encoding.ASCII.GetBytes("Server " + "$")
serverStream.Write(outStream, 0, outStream.Length)
serverStream.Flush()

Dim ctThread As Threading.Thread = New Threading.Thread(AddressOf


getMessage)

44
REMOTE ADMINISTRATION 2012

ctThread.Start()
1:
MsgBox("Invalid Operation performed")
End Sub

Private Sub getMessage()


For Me.infiniteCounter = 1 To 2
infiniteCounter = 1
serverStream = clientSocket.GetStream()
Dim buffSize As Integer
Dim inStream(10024) As Byte
buffSize = clientSocket.ReceiveBufferSize
serverStream.Read(inStream, 0, buffSize)
Dim returndata As String = _
System.Text.Encoding.ASCII.GetString(inStream)
readData = "" + returndata
msg()
Next
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button3.Click
Me.Close()

End Sub
Private Sub TextBox2_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress
If e.KeyChar = Chr(13) Then 'Chr(13) is the Enter Key
'Runs the Button1_Click Event
Button1_Click(Me, EventArgs.Empty)
End If
End Sub

End Class

4.2. (A).5 CONTROL PANEL ACCESSING

Public Class ControlPanel

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button1.Click
Process.Start("access.cpl")
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button2.Click
Process.Start("appwiz.cpl")
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button3.Click
Process.Start("desk.cpl")
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button4.Click
Process.Start("hdwwiz.cpl")
End Sub

45
REMOTE ADMINISTRATION 2012

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button5.Click
Process.Start("inetcpl.cpl")
End Sub

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button6.Click
Process.Start("intl.cpl")
End Sub

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button7.Click
Process.Start("joy.cpl")
End Sub

Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button8.Click
Process.Start("main.cpl")
End Sub

Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button9.Click
Process.Start("rundll32.exe", "shell32.dll,Control_RunDLL
main.cpl,@1")
End Sub

Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button10.Click
Process.Start("mmsys.cpl")
End Sub

Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button11.Click
Process.Start("ncpa.cpl")
End Sub

Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button12.Click
Process.Start("nusrmgr.cpl")
End Sub

Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button13.Click
Process.Start("powercfg.cpl")
End Sub

Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button14.Click
Process.Start("sysdm.cpl")
End Sub

Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button15.Click
Process.Start("telephon.cpl")
End Sub

Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button16.Click
Process.Start("timedate.cpl")
End Sub

46
REMOTE ADMINISTRATION 2012

Private Sub Button17_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button17.Click
Me.Hide()
Resources1.Show()
End Sub
End Class

4.2. (A).6 ADMIN TASKS

Public Class Extratasks

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button1.Click
System.Diagnostics.Process.Start("\\Yashika-VAIO\shutdown", "-s -t
00")
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button2.Click
System.Diagnostics.Process.Start("shutdown", "-r -t 00")
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button3.Click
System.Diagnostics.Process.Start("\\Yashika-VAIO\shutdown", "-l -t
00")
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button4.Click
Me.Close()
End Sub
End Class

4.2. (A).7 DELETE CLIENT ACCOUNT

Imports System.Data.SqlClient
Public Class Delete
Dim conn As New SqlConnection
Private Sub Delete_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
conn.ConnectionString = "user id = sa; initial catalog=Remote
Admin"
conn.Open()
If conn.State Then conn.Close()
conn.Open()
Dim cmd As New SqlCommand("Select Count(*) from remoteadmin1",
conn)
Dim i As Integer = cmd.ExecuteScalar()
cmd = Nothing
If conn.State Then conn.Close()
conn.Open()
Dim q As String
q = "Select * from remoteadmin1 where Status='R'"
Dim cmd1 As New SqlCommand(q, conn)
Dim dr As SqlClient.SqlDataReader = cmd1.ExecuteReader
If (dr.HasRows = True) Then
While dr.Read()
ListBox1.Items.Add(dr.GetValue(3).ToString.Trim(" "))
End While

47
REMOTE ADMINISTRATION 2012

End If
End Sub

Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As


System.EventArgs) Handles ListBox1.DoubleClick
Dim ans As String
ans = (MsgBox("Are you sure you want to delete this record from
database", vbYesNo) = vbYes)
If ans = True Then
If conn.State Then conn.Close()
conn.Open()
Dim p1 As String
p1 = "Delete from remoteadmin1 where us = '" &
ListBox1.SelectedItem & "'"
Dim cmd1 As New SqlCommand(p1, conn)
cmd1.ExecuteNonQuery()
If conn.State Then conn.Close()
conn.Open()
Dim q1 As String
q1 = "Delete from remoteadmin2 where us = '" &
ListBox1.SelectedItem & "'"
Dim cmd3 As New SqlCommand(q1, conn)
cmd3.ExecuteNonQuery()
If conn.State Then conn.Close()
conn.Open()
Dim q2 As String
q2 = "Delete from remoteadmin3 where Username = '" &
ListBox1.SelectedItem & "'"
Dim cmd4 As New SqlCommand(q2, conn)
cmd4.ExecuteNonQuery()
ListBox1.Items.Remove(ListBox1.SelectedItem)
MsgBox("Your Account has been Deleted ",
MsgBoxStyle.Information)

Else
MsgBox("Deletion aborted", MsgBoxStyle.Information)
End If
End Sub
Private Sub bt3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles bt3.Click
Me.Hide()
Resources1.Show()
End Sub
End Class

4.2. (A).8 DRIVE ACCESSING

Imports System.String
Imports System.io
Imports System.Data.SqlClient
Public Class DriveAccessing
Dim conn As New SqlConnection
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Me.Hide()
Resources1.Show()
End Sub

48
REMOTE ADMINISTRATION 2012

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As


System.Object, ByVal e As System.EventArgs) Handles
ComboBox1.SelectedIndexChanged
On Error GoTo 1
ListBox1.Items.Clear()
TextBox1.Text = ""
ListBox2.Items.Clear()
TextBox2.Text = ""
Dim path As String
path = "\\" & ComboBox2.Text & "\" & ComboBox1.Text & "\"
Dim basedir As New IO.DirectoryInfo(path)
Dim dir1 As IO.DirectoryInfo() = basedir.GetDirectories()
Dim dir As IO.DirectoryInfo
Dim di As New IO.DirectoryInfo(path)
Dim diar1 As IO.FileInfo() = di.GetFiles()
Dim dra As IO.FileInfo
Label1.Text = "\\" & ComboBox2.Text & "\" & ComboBox1.Text
'list the names of all files in the specified directory
For Each dir In dir1
' If (dir.Attributes And IO.FileAttributes.System) <>
IO.FileAttributes.System And (dir.Attributes And IO.FileAttributes.Hidden)
<> IO.FileAttributes.Hidden Then
ListBox1.Items.Add(dir)
' End If
Next
For Each dra In diar1
'If (dra.Attributes And IO.FileAttributes.System) <>
IO.FileAttributes.System And (dra.Attributes And IO.FileAttributes.Hidden)
<> IO.FileAttributes.Hidden Then
ListBox1.Items.Add(dra)
' End If
Next
Exit Sub
1:
MsgBox("Invalid Dir")
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click

Dim a As Integer, b As Integer, c As Integer


Dim d As Integer
d = ListBox2.Items.Count
If d = 0 Then
MsgBox(" List Over", MsgBoxStyle.Exclamation)
Else
TextBox2.Text = "\" & ListBox2.Items.Item(d - 1)
a = TextBox1.TextLength
b = TextBox2.TextLength
c = a - b
Dim literal As String
literal = TextBox1.Text
Dim substr As String
substr = literal.Substring(0, c)
TextBox1.Text = substr
Dim path As String
ListBox2.Items.RemoveAt(d - 1)
ListBox1.Items.Clear()
If ListBox2.Items.Count = 0 Then
path = "\\" & ComboBox2.Text & "\" & ComboBox1.Text & "\"
Label1.Text = "\\" & ComboBox2.Text & "\" & ComboBox1.Text
& "\"

49
REMOTE ADMINISTRATION 2012

Else
path = "\\" & ComboBox2.Text & "\" & ComboBox1.Text &
TextBox1.Text
Label1.Text = "\\" & ComboBox2.Text & "\" & ComboBox1.Text
& TextBox1.Text
End If

Dim basedir As New IO.DirectoryInfo(path)


Dim di As New IO.DirectoryInfo(path)
Dim dir1 As IO.DirectoryInfo() = basedir.GetDirectories()
Dim dir As IO.DirectoryInfo
Dim diar1 As IO.FileInfo() = di.GetFiles()
Dim dra As IO.FileInfo
Label1.Text = "\\" & ComboBox2.Text & "\" & ComboBox1.Text &
TextBox1.Text
For Each dir In dir1
' If (dir.Attributes And IO.FileAttributes.System) <>
IO.FileAttributes.System And (dir.Attributes And IO.FileAttributes.Hidden)
<> IO.FileAttributes.Hidden Then
ListBox1.Items.Add(dir)
' End If
Next
For Each dra In diar1
'If (dra.Attributes And IO.FileAttributes.System) <>
IO.FileAttributes.System And (dra.Attributes And IO.FileAttributes.Hidden)
<> IO.FileAttributes.Hidden Then
ListBox1.Items.Add(dra)
' End If
Next
End If
End Sub

Private Sub ListBox1_Click(ByVal sender As Object, ByVal e As


System.EventArgs) Handles ListBox1.Click
Dim p As String
p = ListBox1.Text
Dim extension As String = IO.Path.GetExtension(p)
t1.Text = extension
Dim extension1 As String = IO.Path.GetFileName(p)
t3.Text = extension1
t2.Text = "\\" & ComboBox2.Text & "\" & ComboBox1.Text &
TextBox1.Text & "\" & t3.Text

End Sub
Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As
System.EventArgs) Handles ListBox1.DoubleClick

If ListBox1.SelectedIndex = -1 Then
MsgBox("Please Select an Item from the List Given ",
MsgBoxStyle.Exclamation)

Else

If (t1.Text = ".doc" Or t1.Text = ".docx" Or t1.Text = ".doc")


Then
System.Diagnostics.Process.Start("winword", t2.Text)
Label1.Text = t2.Text
ElseIf (t1.Text = ".txt") Then
System.Diagnostics.Process.Start("notepad", t2.Text)

50
REMOTE ADMINISTRATION 2012

Label1.Text = t2.Text
ElseIf (t1.Text = ".avi" Or t1.Text = ".mp4" Or t1.Text =
".wmv" Or t1.Text = ".vob" Or t1.Text = ".flv") Then
System.Diagnostics.Process.Start("C:\Program
Files\VideoLAN\VLC\vlc.exe", t2.Text)
Label1.Text = t2.Text
ElseIf (t1.Text = ".mp3" Or t1.Text = ".rm") Then
System.Diagnostics.Process.Start("wmplayer.exe", t2.Text)
Label1.Text = t2.Text
Else
Dim path As String
ListBox2.Items.Add(ListBox1.Text)
TextBox1.Text = TextBox1.Text & "\" & ListBox1.Text
path = "\\" & ComboBox2.Text & "\" & ComboBox1.Text &
TextBox1.Text
ListBox1.Items.Clear()
Dim basedir As New IO.DirectoryInfo(path)
Dim di As New IO.DirectoryInfo(path)
Dim dir1 As IO.DirectoryInfo() = basedir.GetDirectories()
Dim dir As IO.DirectoryInfo
Dim diar1 As IO.FileInfo() = di.GetFiles()
Dim dra As IO.FileInfo
Label1.Text = "\\" & ComboBox2.Text & "\" & ComboBox1.Text
& TextBox1.Text
'list the names of all files in the specified directory
For Each dir In dir1
' If (dir.Attributes And IO.FileAttributes.System) <>
IO.FileAttributes.System And (dir.Attributes And IO.FileAttributes.Hidden)
<> IO.FileAttributes.Hidden Then
ListBox1.Items.Add(dir)
' End If
Next
For Each dra In diar1
' If (dra.Attributes And IO.FileAttributes.System) <>
IO.FileAttributes.System And (dra.Attributes And IO.FileAttributes.Hidden)
<> IO.FileAttributes.Hidden Then
ListBox1.Items.Add(dra)

' End If
Next

End If
End If
End Sub

Private Sub FolderAccessing_FormClosed(ByVal sender As Object, ByVal e


As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
ComboBox2.Items.Clear()
End
End Sub
Private Sub FolderAccessing_Load(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles MyBase.Load
'conn.ConnectionString = "Data Source=" & Connection.TextBox2.Text
& ";initial catalog=Remote Admin;connect timeout=600;user id =
sa;Password=;Trusted_Connection=False; "
conn.ConnectionString = "user id = sa; initial catalog=Remote
Admin"
conn.Open()
If conn.State Then conn.Close()
conn.Open()

51
REMOTE ADMINISTRATION 2012

Dim cmd As New SqlCommand("Select Count(*) from remoteadmin1",


conn)
Dim i As Integer = cmd.ExecuteScalar()
cmd = Nothing
If conn.State Then conn.Close()
conn.Open()
Dim q As String
q = "Select * from remoteadmin1 where Status='G'"
Dim cmd1 As New SqlCommand(q, conn)
Dim dr As SqlClient.SqlDataReader = cmd1.ExecuteReader
If (dr.HasRows = True) Then
While dr.Read()
ComboBox2.Items.Add(dr.GetValue(1).ToString.Trim(" "))
End While

End If

End Sub

Private Sub ComboBox2_SelectedIndexChanged(ByVal sender As Object,


ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged
Label1.Text = "\\" & ComboBox2.SelectedItem
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Button3.Click
Try
Directory.CreateDirectory(ComboBox3.Text & ":\" & "" &
TextBox3.Text)
Catch
End Try
If ComboBox3.Text = "Select" Then
MsgBox("Please Select the Folder Drive where you want to move
your file", MsgBoxStyle.Exclamation)
ElseIf TextBox3.Text = "" Then
MsgBox("Please Enter the Folder Name where you want to move
your file", MsgBoxStyle.Exclamation)
Else
Dim fileLoc As String = t2.Text
Dim fileLocCopy As String = (ComboBox3.Text & ":\" &
TextBox3.Text & "\" & t3.Text)
If File.Exists(fileLoc) Then
If File.Exists(fileLocCopy) Then
File.Delete(fileLocCopy)

End If
File.Copy(fileLoc, fileLocCopy)
MsgBox("File Copied", MsgBoxStyle.Information)
Else
MsgBox("File Not Found", MsgBoxStyle.Critical)
End If
End If
End Sub
End Class
4.2. (A).9 CLIENTS INFORMATION
Imports System.Data.SqlClient
Public Class Database
Dim conn As New SqlConnection
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click

52
REMOTE ADMINISTRATION 2012

RadioButton1.Enabled = False
RadioButton2.Enabled = False
MonthCalendar1.Visible = False
Dim message, title As String
Dim myValue As String
message = "Enter UserID"
title = "Database"
myValue = InputBox(message, title)
TextBox1.Text = myValue
DataGridView1.DataSource = GetData()
End Sub
Public Function GetData() As DataView
Dim SelectQry = "SELECT
Name,remoteadmin1.us,remoteadmin1.CompName,remoteadmin1.CompIP,Folder,Clien
t_Folder,logindt,Moved_File_dir,Moved_File_Folder FROM remoteadmin1 INNER
JOIN remoteadmin2 ON remoteadmin1.us = remoteadmin2.us where
remoteadmin1.us ='" & TextBox1.Text & "' AND remoteadmin2.us ='" &
TextBox1.Text & "'"
Dim SampleSource As New DataSet
Dim TableView As DataView
Try
Dim SampleCommand As New SqlCommand()
Dim SampleDataAdapter = New SqlDataAdapter()
SampleCommand.CommandText = SelectQry
SampleCommand.Connection = conn
SampleDataAdapter.SelectCommand = SampleCommand
SampleDataAdapter.Fill(SampleSource)
TableView = SampleSource.Tables(0).DefaultView
Catch ex As Exception
Throw ex
End Try
Return TableView
End Function

Private Sub Database_Load(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles MyBase.Load
conn.ConnectionString = "user id = sa; initial catalog=Remote
Admin"
conn.Open()
End Sub
Public Function GetData1() As DataView
Dim SelectQry = "SELECT
Username,Chatting,File_Accessing,Software_Accessing,Printer_Accessing,Folde
r_Accessing,External_Device,Client_Database,Internet_Sharing,Login_Time,Log
out_Time FROM remoteadmin3 "
Dim SampleSource As New DataSet
Dim TableView As DataView

Dim SampleCommand As New SqlCommand()


Dim SampleDataAdapter = New SqlDataAdapter()
SampleCommand.CommandText = SelectQry
SampleCommand.Connection = conn
SampleDataAdapter.SelectCommand = SampleCommand
SampleDataAdapter.Fill(SampleSource)
TableView = SampleSource.Tables(0).DefaultView

Return TableView
End Function
Public Function GetData2() As DataView

53
REMOTE ADMINISTRATION 2012

Dim SelectQry = "SELECT


Username,Chatting,File_Accessing,Software_Accessing,Printer_Accessing,Folde
r_Accessing,External_Device,Client_Database,Internet_Sharing,Login_Time,Log
out_Time FROM remoteadmin3 where Datenow='" & TextBox2.Text & "'"
Dim SampleSource As New DataSet
Dim TableView As DataView

Dim SampleCommand As New SqlCommand()


Dim SampleDataAdapter = New SqlDataAdapter()
SampleCommand.CommandText = SelectQry
SampleCommand.Connection = conn
SampleDataAdapter.SelectCommand = SampleCommand
SampleDataAdapter.Fill(SampleSource)
TableView = SampleSource.Tables(0).DefaultView

Return TableView
End Function
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
RadioButton1.Enabled = True
RadioButton2.Enabled = True
End Sub

Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged
If RadioButton1.Checked = True Then
MonthCalendar1.Visible = True
Else
MonthCalendar1.Visible = False
End If
End Sub

Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged
If RadioButton2.Checked = True Then
DataGridView1.DataSource = GetData1()
End If
End Sub

Private Sub MonthCalendar1_DateChanged(ByVal sender As System.Object,


ByVal e As System.Windows.Forms.DateRangeEventArgs) Handles
MonthCalendar1.DateChanged
MonthCalendar1.MaxSelectionCount = 1
TextBox2.Text = MonthCalendar1.SelectionRange.Start()
DataGridView1.DataSource = GetData2()
End Sub
End Class
4.2. (A).10 Online-Offline Status
Imports System.Data.SqlClient
Public Class Status
Dim conn As New SqlConnection
Private Sub Main_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
conn.ConnectionString = "user id = sa; initial catalog=Remote
Admin"
conn.Open()
End Sub
Public Function GetData() As DataView
Dim SelectQry = "SELECT us,CompName,CompIp FROM remoteadmin1 where
Status='G'"

54
REMOTE ADMINISTRATION 2012

Dim SampleSource As New DataSet


Dim TableView As DataView
Try
Dim SampleCommand As New SqlCommand()
Dim SampleDataAdapter = New SqlDataAdapter()
SampleCommand.CommandText = SelectQry
SampleCommand.Connection = conn
SampleDataAdapter.SelectCommand = SampleCommand
SampleDataAdapter.Fill(SampleSource)
TableView = SampleSource.Tables(0).DefaultView
Catch ex As Exception
Throw ex
End Try
Return TableView
End Function
Public Function GetData1() As DataView
Dim SelectQry = "SELECT us,CompName,CompIp FROM remoteadmin1 where
Status='R'"
Dim SampleSource As New DataSet
Dim TableView As DataView
Try
Dim SampleCommand As New SqlCommand()
Dim SampleDataAdapter = New SqlDataAdapter()
SampleCommand.CommandText = SelectQry
SampleCommand.Connection = conn
SampleDataAdapter.SelectCommand = SampleCommand
SampleDataAdapter.Fill(SampleSource)
TableView = SampleSource.Tables(0).DefaultView
Catch ex As Exception
Throw ex
End Try
Return TableView
End Function

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Timer1.Tick
If RadioButton1.Checked = True Then
DataGridView1.DataSource = GetData()
ElseIf RadioButton2.Checked = True Then
DataGridView1.DataSource = GetData1()
End If
End Sub

Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged
Timer1.Start()
End Sub

Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged
Timer1.Start()
End Sub

Private Sub bt3_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles bt3.Click
Me.Hide()
Resources1.Show()
End Sub
End Class

55
REMOTE ADMINISTRATION 2012

4.2(B) CLIENT SIDE

4.2.(B).1 CONNECTION TYPE

4.2.(B).2 LOGIN

4.2.(B).3 REGISTRATION

4.2.(B).4 PERMISSIONS

4.2.(B).4 RESOURCES
4.2.(B).5 CHATTING

4.2.(B).6 FILE OPERATION

4.2.(B).7 SOFTWARE ACCESSING

4.2.(B).8 PRINTER SHARING

4.2.(B).9 FOLDER ACCESSING

4.2.(B).10 USB ACCESSING

4.2.(B).11 USER INFORMATION

4.2.(B).12 CLIENT SETTINGS

56
REMOTE ADMINISTRATION 2012

CHAPTER 5:
TESTING
RESULTS
5.1 TESTING

The box approach

Software testing methods are traditionally divided into white- and black-box testing. These
two approaches are used to describe the point of view that a test engineer takes when
designing test cases.

5.1.1 White box testing

White box testing is when the tester has access to the internal data structures and algorithms
including the code that implement these.

Types of white box testing


The following types of white box testing exist:
API testing (application programming interface) - testing of the application
using public and private APIs
Code coverage - creating tests to satisfy some criteria of code coverage (e.g.,
the test designer can create tests to cause all statements in the program to be
executed at least once)
Fault injection methods - improving the coverage of a test by introducing
faults to test code paths

57
REMOTE ADMINISTRATION 2012

Mutation testing methods


Static testing - White box testing includes all static testing

Test coverage
White box testing methods can also be used to evaluate the completeness of a test
suite that was created with black box testing methods. This allows the software team
to examine parts of a system that are rarely tested and ensures that the most important
function points have been tested.
Two common forms of code coverage are:
Function coverage, which reports on functions executed
Statement coverage, which reports on the number of lines executed to
complete the test

5.1.2 Black box testing

Black box testing treats the software as a "black box"without any knowledge of internal
implementation. Black box testing methods include: equivalence partitioning, boundary value
analysis, all-pairs testing, fuzz testing, model-based testing, exploratory testing and
specification-based testing.

Specification-based testing: Specification-based testing aims to test the functionality


of software according to the applicable requirements. Thus, the tester inputs data into,
and only sees the output from, the test object. This level of testing usually requires
thorough test cases to be provided to the tester, who then can simply verify that for a
given input, the output value (or behavior), either "is" or "is not" the same as the
expected value specified in the test case.
Specification-based testing is necessary, but it is insufficient to guard against certain
risks.

Advantages and disadvantages: The black box tester has no "bonds" with the code,
and a tester's perception is very simple: a code must have bugs. Using the principle,
"Ask and you shall receive," black box testers find bugs where programmers do not.
On the other hand, black box testing has been said to be "like a walk in a dark
labyrinth without a flashlight," because the tester doesn't know how the software
being tested was actually constructed. As a result, there are situations when (1) a tester
writes many test cases to check something that could have been tested by only one
test case, and/or (2) some parts of the back-end are not tested at all.

5.1.3 Grey box


testing

Grey box testing (American spelling: gray box testing) involves having knowledge of
internal data structures and algorithms for purposes of designing the test cases, but testing at
the user, or black-box level. Manipulating input data and formatting output do not qualify as
grey box, because the input and output are clearly outside of the "black-box" that we are
calling the system under test. This distinction is particularly important when conducting
integration testing between two modules of code written by two different developers, where
only the interfaces are exposed for test. However, modifying a data repository does qualify as

58
REMOTE ADMINISTRATION 2012

grey box, as the user would not normally be able to change the data outside of the system
under test. Grey box testing may also include reverse engineering to determine, for instance,
boundary values or error messages.

Testing levels

Tests are frequently grouped by where they are added in the software development process, or
by the level of specificity of the test. The main levels during the development process as
defined by the SWEBOK guide are unit-, integration-, and system testing that are
distinguished by the test target without implying a specific process model. Other test levels
are classified by the testing objective.

5.1.4 Unit testing

Unit testing refers to tests that verify the functionality of a specific section of code, usually at
the function level. In an object-oriented environment, this is usually at the class level, and the
minimal unit tests include the constructors and destructors.

These types of tests are usually written by developers as they work on code (white-box style),
to ensure that the specific function is working as expected. One function might have multiple
tests, to catch corner cases or other branches in the code. Unit testing alone cannot verify the
functionality of a piece of software, but rather is used to assure that the building blocks the
software uses work independently of each other.

Unit testing is also called component testing.

5.1.5 Integration
testing

Integration testing is any type of software testing that seeks to verify the interfaces between
components against a software design. Software components may be integrated in an iterative
way or all together ("big bang"). Normally the former is considered a better practice since it
allows interface issues to be localized more quickly and fixed.

Integration testing works to expose defects in the interfaces and interaction between
integrated components (modules). Progressively larger groups of tested software components
corresponding to elements of the architectural design are integrated and tested until the
software works as a system

5.1.6 System testing

System testing of software or hardware is testing conducted on a complete, integrated


system to evaluate the system's compliance with its specified requirements. System testing
falls within the scope of black box testing, and as such, should require no knowledge of the
inner design of the code or logic. [1]

As a rule, system testing takes, as its input, all of the "integrated" software
components that have successfully passed integration testing and also the software system
itself integrated with any applicable hardware system(s). The purpose of integration testing is
to detect any inconsistencies between the software units that are integrated together (called
59
REMOTE ADMINISTRATION 2012

assemblages) or between any of the assemblages and the hardware. System testing is a more
limited type of testing; it seeks to detect defects both within the "inter-assemblages" and also
within the system as a whole.

5.1.7 Regression
testing

Regression testing focuses on finding defects after a major code change has occurred.
Specifically, it seeks to uncover software regressions, or old bugs that have come back. Such
regressions occur whenever software functionality that was previously working correctly
stops working as intended. Typically, regressions occur as an unintended consequence of
program changes, when the newly developed part of the software collides with the previously
existing code. Common methods of regression testing include re-running previously run tests
and checking whether previously fixed faults have re-emerged. The depth of testing depends
on the phase in the release process and the risk of the added features. They can either be
complete, for changes added late in the release or deemed to be risky, to very shallow,
consisting of positive tests on each feature, if the changes are early in the release or deemed
to be of low risk.

5.1.8 Acceptance testing

Acceptance testing can mean one of two things:

1. A smoke test is used as an acceptance test prior to introducing a new build to the main
testing process, i.e. before integration or regression.
2. Acceptance testing is performed by the customer, often in their lab environment on
their own hardware, is known as user acceptance testing (UAT). Acceptance testing
may be performed as part of the hand-off process between any two phases of
development.[citation needed]

5.1.9 Alpha testing

Alpha testing is simulated or actual operational testing by potential users/customers or an


independent test team at the developers' site. Alpha testing is often employed for off-the-shelf
software as a form of internal acceptance testing, before the software goes to beta testing.

5.1.10 Beta testing


Beta testing comes after alpha testing and can be considered a form of external user
acceptance testing. Versions of the software, known as beta versions, are released to a limited
audience outside of the programming team. The software is released to groups of people so
that further testing can ensure the product has few faults or bugs. Sometimes, beta versions
are made available to the open public to increase the feedback field to a maximal number of
future users.

5.2 SOFTWARES TESTING TECHNIQUES USED


Software testing is an investigation conducted to provide stakeholders with information
about the quality of the product or service under test. Software testing also provides an
objective, independent view of the software to allow the business to appreciate and
60
REMOTE ADMINISTRATION 2012

understand the risks of software implementation. Test techniques include, but are not limited
to, the process of executing a program or application with the intent of finding software bugs
(errors or other defects).
Software testing can also be stated as the process of validating and verifying that a software
program/application/product:
Meets the business and technical requirements that guided its design and development works
as expected and Can be implemented with the same characteristics.
Software testing, depending on the testing method employed, can be implemented at any time
in the development process. However, most of the test effort occurs after the requirements
have been defined and the coding process has been completed. As such, the methodology of
the test is governed by the software development methodology adopted.
Different software development models will focus the test effort at different points in the
development process. Newer development models, such as Agile, often employ test driven
development and place an increased portion of the testing in the hands of the developer,
before it reaches a formal team of testers. In a more traditional model, most of the test
execution occurs after the requirements have been defined and the coding process has been
completed.

5.3 SCREEN LAYOUT OR OUTPUT DATABASE

5.3.1START SQL SERVER

61
REMOTE ADMINISTRATION 2012

5.3.20 DATABASE CREATION

5.3.21 TABLE CREATION

5.3.22 TABLE DATA VIEW

62
REMOTE ADMINISTRATION 2012

CHAPTER 6:
USER MANUAL
(STEPS TO
INSTALL
SOFTWARE)
6.1. Attach the database to Server Side
Open the Sql server 2000 Enterprise manager.
Right click on the database all tasks select attach database
From attach option it asks for mdf file.
Browse to give the database (mdf) to specify its location. (The database is provided
with the Remote administration software in the database folder)
Click on file name and select the Remote Admin.mdf from the location where
Database folder is present

6.2. Install the .Net framework from the disk given by the project developer.

6.3. Installation of Remote Admin software for Server


Open the setup folder given by the project developer.
Again Open the debug folder and run setup.

63
REMOTE ADMINISTRATION 2012

Follow the instructions and just click on the finish for completing the installation.

6.4. Installation of Remote Admin software for client


Open the setup folder given by the project developer.
Again Open the debug folder and run setup.
Follow the instructions and just click on the finish for completing the installation.

6.5 Now you can run the .exe file of project from the following:
Desktop
All Programs
Or from the default folder C:\Program Files\setup1.

CHAPTER 7:
64
REMOTE ADMINISTRATION 2012

SWOT
ANALYSIS
Conclusions &
Future Scope

INTRODUCTION
SWOT analysis is a strategic planning method used to evaluate the Strengths, Weaknesses,
Opportunities, and Threats involved in a project or in a business venture. It involves
specifying the objective of the business venture or project and identifying the internal and
external factors that are favorable and unfavorable to achieve that objective. The technique is
credited to Albert Humphrey, who led a convention at Stanford University in the 1960s and
1970s using data from Fortune 500 companies.

65
REMOTE ADMINISTRATION 2012

A SWOT analysis must first start with defining a desired end state or objective. A SWOT
analysis may be incorporated into the strategic planning model. Strategic Planning has been
the subject of much research.
Strengths: characteristics of the business or team that give it an advantage over others
in the industry.
Weaknesses: are characteristics that place the firm at a disadvantage relative to others.
Opportunities: external chances to make greater sales or profits in the environment.
Threats: external elements in the environment that could cause trouble for the
business.
Identification of SWOTs is essential because subsequent steps in the process of planning for
achievement of the selected objective may be derived from the SWOTs.
First, the decision makers have to determine whether the objective is attainable, given the
SWOTs. If the objective is NOT attainable a different objective must be selected and the
process repeated.

7.1 CONCLUSIONS
COMPUTER PROJECT is quick and efficient to respond to the user. Proper validations and
messages are generated. Any user from any part of world can use the PROJECT. It can be
easily accessed by anybody.
We hereby conclude that this is a sincere and valiant effort, which we have input in the
development of this PROJECT.
Although there is always scope for innovation and functionalities to be added, we will
definitely put our best to implement in the near future.

7.2 FUTURE SCOPES


Remote administration software has recently started to appear on wireless devices such as the
BlackBerry, Pocket PC, and Palm devices, as well as some mobile phones.
Generally these solutions do not provide the full remote access seen on software such as
VNC or Terminal Services, but do allow administrators to perform a variety of tasks, such as
rebooting computers, resetting passwords, and viewing system event logs, thus reducing or
even eliminating the need for system administrators to carry a laptop or be within reach of the
office.
AetherPal and Netop Remote Control can be used for full wireless remote access and
administration on Smartphone devices.

66
REMOTE ADMINISTRATION 2012

CHAPTER 8:
BIBLOGRAPHY

67
REMOTE ADMINISTRATION 2012

8.1 REFERENCES

8.1.1 FOR VB .NET


1. PROFESSIONALS IN VB.NET
2. VB.NET WROX
3. VB.NET BLACK BOOK

8.1.2 FOR DATABASE


1. MS ACCESS (GULITY)
2. PROGRAMMING LANGUAGE ORACLE

8.1.3 INTERNET REFRENCES


1 www.wrox.com
2 www.w3school.com
3. www.planet-source.com

68

Вам также может понравиться