66
ABSTRACT Humans have always felt very possessive of their belongings since ancient times. The technological revolution of modern age has resulted in concept of home security and maintenance. The market is demanding easier, more scalable, cost effective and more comprehensive solutions. In response to this need various consortia have developed suites of technology standards for home security and transactions. In addition when applied in a way tailored in the context of outsiders online gated community management system can enhance the existing adopted work channel unleashing the genius of the implementation of the technology . The purpose of the project is to develop a web application that targets to provide security across the gated communities. In the era of technological explosion and information society the pressures to enable security is not yet fully satisfied. The balance of protection of sensitive, high value maintenance, privacy and safety are imbalance in the diverse set of people across the gated communities. Online gated communities offer a reliable, efficient and scalable means of achieving this balance. Application Development: System Requirements

Final Gcms Doc Done

Embed Size (px)

Citation preview

ABSTRACT

Humans have always felt very possessive of their belongings since ancient times. The

technological revolution of modern age has resulted in concept of home security and

maintenance. The market is demanding easier, more scalable, cost effective and more

comprehensive solutions. In response to this need various consortia have developed suites

of technology standards for home security and transactions. In addition when applied in a

way tailored in the context of outsiders online gated community management system can

enhance the existing adopted work channel unleashing the genius of the implementation

of the technology .

The purpose of the project is to develop a web application that targets to provide security

across the gated communities. In the era of technological explosion and information

society the pressures to enable security is not yet fully satisfied. The balance of protection

of sensitive, high value maintenance, privacy and safety are imbalance in the diverse set

of people across the gated communities. Online gated communities offer a reliable,

efficient and scalable means of achieving this balance.

Application Development: System Requirements

Windows Operating System Front-end: Microsoft .Net Framework and Visual Studio (Express Edition) Back-end: SQL Server Database

CONTENTS

1. INTRODUCTION1.1. OVERVIEW1.2. ORGANISATION PROFILE1.3. STUDY OF THE EXISTING SYSTEM

2. LITERATURE SURVEY2.1. STUDY OF THE EXISTING SYSTEM2.2. PROBLEMS IN THE EXISTING SYSTEM2.3. SOLUTIONS TO THESE PROBLEMS2.4. ADVANTAGES

3. SYSTEM ANALYSIS 3.1. NUMBER OF MODULES 3.2. MODEL ANALYSIS 3.3. DATA FLOW DIAGRAMS 3.4 HARDWARE AND SOFTWARE REQUIREMENTS

4. SYSTEM DESIGN4.1. INTRODUCTION 4.2. UML DIAGRAMS4.3. E-R DIAGRAMS

5. DEVELOPMENT5.1 INTRODUCTION TO ASP.NET5.2 INTRODUCTION TO C#5.3 SQL SERVER

6. SYSTEM TESTING 6.1 UNIT TESTING6.2 TEST CASES 7. CONCLUSION

8. APPENDIX A. CODE B. DB TABLES C. SCREEN SHOTS

9. BIBLIOGRAPHY

1. INTRODUCTION

Humans have always felt very possessive of their belongings since ancient times. The

technological revolution of modern age has resulted in concept of home security and

maintenance. The market is demanding easier, more scalable, cost effective and more

comprehensive solutions. In response to this need various consortia have developed suites

of technology standards for home security and transactions.

In addition when applied in a way tailored in the context of outsiders online gated

community management system can enhance the existing adopted work channel

unleashing the genius of the implementation of the technology .

The purpose of the project is to develop a web application that targets to provide security

across the gated communities. In the era of technological explosion and information

society the pressures to enable security yet are not fully satisfied. The balance of

protection of sensitive, high value maintenance, privacy and safety are imbalance in the

diverse set of people across the gated communities. Online gated communities offer a

reliable, efficient and scalable means of achieving this balance.

2. LITERATURE SURVEY

2.1. STUDY OF THE EXISTING SYSTEM

GUI’S

The GUI’S at the top level have been categorized as

Administrative user interface : concentrates on the consistent information that is

practically, part of the organizational activities and which needs proper

authentication for the data collection. The interfaces help the administrations with

all the transactional states like Data insertion, Data deletion and Date updation

along with the extensive data search capabilities.

Operational or Generic user interface : The operational or generic user interface

helps the users upon the system in transactions through the existing data and

required services. The operational user interface also helps the ordinary users in

managing their own information in a customized manner as per the assisted

flexibilities.

2.2 PROBLEMS IN EXISTING SYSTEM

• Even in the technological era everything is paper based.

• Maintenance of the working staff has become a complicated task.

• The tracking of the visitors is manually done and hard to refer some time after.

• The billing is also manual which is a tedious task.

2.3 SOLUTIONS TO THESE PROBLEMS

• The development of the new system contains the following activities, which try to

automate the entire process keeping in view of the database integration approach.

• Minimal manual maintenance work involved.

• System is proposed to act as a single platform by automating the Manual work for

the Resource Management.

• Online gated communities offer a reliable, efficient, cost effective, and scalable

and elevate the easiness to the residents.

• Residents can generate their bill reports and visitors reports visited their residency,

status reports of the Complaints lodged by them.

2.4. ADVANTAGES

The project is identified by the merits of the system offered to the user. The merits of

this project are as follows

Rosting the Staff In charge At the Gate of the Gated Communities

Visitors, to meet the resident and has no scheduled appointment.

The Resident of the colony or community shall have the access to the

system, and the resident can lodge the complaints, suggestions.

Resident can also assign the access or Scheduled Appointments to go

through the gated community like Home tutors Etc.

3. SYSTEM ANALYSIS

3.1. NUMBER OF MODULES

The system after careful analysis has been identified to be presented with the

following modules:

Staff Roster Module

Visitors Module

Residents Module

Bill Management Module

3.2. MODEL ANALYSIS

The model that is basically being followed is the SOFTWARE DEVELOPMENT

LIFE CYCLE MODEL, which states that the phases are organized in a linear order. First,

the feasibility study is done. After, the requirement analysis and project planning begins.

The design starts after the requirement analysis is complete and the coding begins

after the design stage is finished. Once the programming is completed, the testing is done.

The sequence of activities performed in the software development project is:

Project Planning

Requirements Definition

Design

Development

Integration & Test

Installation & Acceptance

The relationship of each stage with the others can be roughly attributed to the

Waterfall model, where the outputs from a specific stage serve as the initial inputs for the

following stages.

3.3 DATA FLOW DIAGRAMS

A data flow diagram is graphical tool used to describe and analyze movement of data

through a system. The transformation of data from input to output, through processed, may be

described logically and independently of physical components associated with the system.

3.3.1 LEVEL 0

CONTEXT DIAGRAM

Fig3.1 Context Diagram

3.3.2 LEVEL 1

ADMIN

Fig 3.2 Level 1 Admin

GATED COMMUNITY ADMIN

Fig 3.3 Level 1 Gated Community Admin

GATED COMMUNITY USER

Fig 3.4 Level 1 Gated Community User

Gated Community Admin

Add Staff

Add Facility Bookings

Add Houses

Add Tenants

Add Visitors

Add Facility Types

Database

Add Service Types

Gated Community Users

Add Service Requests Database

Fig 3.5 Level 2 Admin

GATED COMMUNITY USERS

Fig 3.3 Level 2 Gated Community Users

System Admin

Setup Users

Gated Community Users

View Tenants

View Visitors

View Facility Types

View Facility Bookings

View Service Requests

Database

Add Service Requests

Setup GC

Database

GATED COMMUNITY ADMIN

Fig 3.6 Level 2 Gated Community Admin

Gated Community Admin

Add Service Types

Add Staff

View Houses

Add Facility Bookings

View Staff

View Service Types

Add Houses

Add Tenants

Add Visitors

Add Facility Types

Database

3.4. HARDWARE & SOFTWARE REQUIRMENTS

Requirement specification plays an important role to create quality software

solution; Requirements are refined and analyzed to assess the clarity.

Requirements are represented in a manner that ultimately leads to successful

software implementation. Each requirement must be consistent with the overall objective.

The development of this project deals with the following requirements:

Hardware Requirements

Software Requirements

3.4.1 HARDWARE REQUIREMENTS:

The selection of hardware is very important in the existence and proper working

of any software. In the selection of hardware, the size and the capacity requirements are

also important.

Content Description

HDD 20 GB Min

40 GB Recommended

RAM 1 GB Min

2 GB Recommended

3.4.2 SOFTWARE REQUIREMENTS:

The software requirements specification is produces at the culmination of the

analysis tasks. One of the most difficult tasks is that, the selection of the software, once

system requirement is known by determining whether a particular software package fits

the requirements.

4. SYSTEM DESIGN

4.1 INTRODUCTION

Content Description

OS Windows XP with SP2 or Windows Vista

Database MS-SQL server 2005

Technologies ASP.NET with C#.NET

IDE MS-Visual Studio .Net 2008

Browser Mozilla Firefox, IE 6.

Software design sits at the technical kernel of the software engineering process

and is applied regardless of the development paradigm and area of application. Design is

the first step in the development phase for any engineered product or system. The

designer’s goal is to produce a model or representation of an entity that will later be built.

Beginning, once system requirement have been specified and analyzed, system design is

the first of the three technical activities -design, code and test that is required to build and

verify software.

The importance can be stated with a single word “Quality”. Design is the place

where quality is fostered in software development. Design provides us with

representations of software that can assess for quality. Design is the only way that we can

accurately translate a customer’s view into a finished software product or system.

Software design serves as a foundation for all the software engineering steps that follow.

Without a strong design we risk building an unstable system – one that will be difficult to

test, one whose quality cannot be assessed until the last stage.

During design, progressive refinement of data structure, program structure, and

procedural details are developed reviewed and documented. System design can be viewed

from either technical or project management perspective. From the technical point of

view, design is comprised of four activities – architectural design, data structure design,

interface design and procedural design.

4.2 UML DIAGRAMS

4.2.1 CLASS DIAGRAM

tblMasterUsers

UserIDUserTypeFirstNameLastNamePhoneMobileEmailLoginIDPWDStatus

Add()View/Update()

tblMasterGCHouses

HouseIDGCIDHouseNumberBlockNumberFloorNumberOwnerNameOwnerDetailsStatus

Add()View/Update()

tblMasterServiceType

ServiceTypeIDGCIDServiceTypeNameDetailsStatus

Add()View/Update()

tblMasterServiceStaff

SatffIDGCIDServiceTypeIDFirstNameLastNamePhoneMobileEmailStatus

Add()View/Update()

tblServiceRequests

RequestIDTenentIDServiceTypeIDRequestDateSeviceCompletedDateStaffIDStatus

Add()View/Update()

tblFacililtyBookings

BookingIDTenentIDFacilityTypeIDBookingDateBookingStartTimeBookingEndTimeStatus

Add()View/Update()

tblVisitors

VisitorIDVisitorNameTenentIDVisitorDateAllowStatus

Add()View/Update()

tblMasterGCTenents

TenentIDHouseIDGCIDTenentNameOwnerDetailsStatus

Add()View/Update()

tblMasterFacilityType

FacilityTypeIDGCIDFacilityTypeNameDetailsStatus

Add()View/Update()

tblMasterGatedCommunities

userIDGCIDGCNameAddressDetailsContactDetailsStatus

Add()View/Update()

Fig 4.1 Class Diagram for Gated Communities Management System

4.2.2 USECASE DIAGRAM

View ServireRequests

Setup Gated Communities

Setup Users

Setup Service Types

Setup Staff

Setup Houses

Setup Tenents

Setup Visitors

Setup Facility Types

Setup Facility Bookings

View Service Types

View Staff

View Houses

Setup Service Requests

View Tenents

View visitors

View FacilityTypes

View FacilityBookings

System Admin

Gated Community Users

Login

My Profile

Gated Community Admin

Logout

Fig 4.2 Use case Diagram for Gated Communities Management System

4.2.3 SEQUENCE DIAGRAM

: System AdminLogin Gated

CommunitiesUsers Logout

login

Add

View/Update

Add

View/Update

Logout

Login

Fig 4.3 Sequence Diagram for Admin

: Gated Community Admin

Staff Houses LogoutLogin Facility Bookings

Facility TypesVisitorsTenentsService Types

login

Add

View/Update

Add

View/Update

Add

View/Update

Add

View/Update

Add

View/Update

Add

View/Update

Add

View/Update

Logout

Login

Fig 4.4 Sequence Diagram for Gated Community Admin

Facility Bookings

: Gated Community Users

Login Service Requests

Facility Types Tenents Visitors Logout

Login

Add

View/Update

View/Update View/Update View/Update

Logout

View/Update

Fig 4.5 Sequence Diagram for Gated Community Users

4.1.4 COLLABORATION DIAGRAM

Logout

: System Admin

Login Gated Communities

Users

1: login2: Add

3: View/Update

4: Add

5: View/Update

6: Logout

7: Login

Fig 4.6 Collaboration Diagram for Admin

: Gated Community Admin

Staff

Houses

Service Types

TenentsVisitors

Facility Types

Facility Bookings

Logout

Login

3: View/Update

5: View/Update

7: View/Update

9: View/Update11: View/Update

13: View/Update

15: View/Update

2: Add

4: Add

6: Add

8: Add10: Add

12: Add14: Add

16: Logout

17: Login

1: login

Fig 4.7 Collaboration Diagram for Gated Community Admin

: Gated Community Users

Login

Service Requests

Facility Bookings

Facility Types

Tenents

Visitors Logout

1: Login

2: Add

3: View/Update

4: View/Update

5: View/Update

7: View/Update

8: Logout

6: View/Update

Fig 4.8 Collaboration Diagram for Gated Community Users

4.2.5 OBJECT DIAGRAM

Fig 4.9 Object Diagram for Gated Community Management System

G:GatedCommunities

T:GCTenantsS:ServiceStaff

V:Visitors

F:FacilityType

T:ServiceTypeU:Users

R:ServiceRequests

H:GCHouses

B:FacilityBookings

4.2.6 ACTIVITY DIAGRAM

Is GC admin Is admin

Is GC user

Fig 4.10 Activity Diagram for Gated Community Management System

Setup/view service requests

Setup UsersSetup/view service types

Setup/view Staff Setup Gated Communities

Setup/view houses

Logout

Setup tenants

Setup visitors

Login Type

Login

Setup facility types

Setup facility bookings

4.2.7 STATECHART DIAGRAM

Fig 4.11 State Chart Diagram for Admin

Setup users

Logout

Setup Gated Communities

Login

Fig 4.12 State Chart Diagram for GC Admin

Setup visitors

Setup facility bookings

Setup/view staff

Logout

Setup tenants

Login

Setup/view houses

Setup/view service types

Setup facility types

Fig 4.13 State Chart Diagram for GC User

Setup service requests

View tenants

View visitors

Logout

View facility types

View facility bookings

View service requests

Login

4.3 ER DIAGRAMS

5. DEVELOPMENT

5.1 INTRODUCTION TO ASP.NET

ASP.NET is a programming framework built on the common

language runtime that can be used on a server to build powerful Web applications.

Server Application Development

Server-side applications in the managed world are implemented through runtime

hosts. Unmanaged applications host the common language runtime, which allows your

custom managed code to control the behavior of the server. This model provides you with

all the features of the common language runtime and class library while gaining the

performance and scalability of the host server.

The following illustration shows a basic network schema with managed code

running in different server environments. Servers such as IIS and SQL Server can

perform standard operations while your application logic executes through the managed

code.

Server-Side Managed Code

ASP.NET is the hosting environment that enables developers to use the .NET

Framework to target Web-based applications. However, ASP.NET is more than just a

runtime host; it is a complete architecture for developing Web sites and Internet-

distributed objects using managed code. Both Web Forms and XML Web services use IIS

and ASP.NET as the publishing mechanism for applications, and both have a collection

of supporting classes in the .NET Framework.

XML Web services, an important evolution in Web-based technology, are

distributed, server-side application components similar to common Web sites. However,

unlike Web-based applications, XML Web services components have no UI and are not

targeted for browsers such as Internet Explorer and Netscape Navigator. Instead, XML

Web services consist of reusable software components designed to be consumed by other

applications, such as traditional client applications, Web-based applications, or even other

XML Web services. As a result, XML Web services technology is rapidly moving

application development and deployment into the highly distributed environment of the

Internet.

If you have used earlier versions of ASP technology, you will immediately notice

the improvements that ASP.NET and Web Forms offers. For example, you can develop

Web Forms pages in any language that supports the .NET Framework. In addition, your

code no longer needs to share the same file with your HTTP text (although it can continue

to do so if you prefer). Web Forms pages execute in native machine language because,

like any other managed application, they take full advantage of the runtime. In contrast,

unmanaged ASP pages are always scripted and interpreted. ASP.NET pages are faster,

more functional, and easier to develop than unmanaged ASP pages because they interact

with the runtime like any managed application.

The .NET Framework also provides a collection of classes and tools to aid in

development and consumption of XML Web services applications. XML Web services

are built on standards such as SOAP (a remote procedure-call protocol), XML (an

extensible data format), and WSDL ( the Web Services Description Language). The .NET

Framework is built on these standards to promote interoperability with non-Microsoft

solutions.

For example, the Web Services Description Language tool included with the .NET

Framework SDK can query an XML Web service published on the Web, parse its WSDL

description, and produce C# or Visual Basic source code that your application can use to

become a client of the XML Web service. The source code can create classes derived

from classes in the class library that handle all the underlying communication using

SOAP and XML parsing. Although you can use the class library to consume XML Web

services directly, the Web Services Description Language tool and the other tools

contained in the SDK facilitate your development efforts with the .NET Framework.

If you develop and publish your own XML Web service, the .NET Framework

provides a set of classes that conform to all the underlying communication standards,

such as SOAP, WSDL, and XML. Using those classes enables you to focus on the logic

of your service, without concerning yourself with the communications infrastructure

required by distributed software development.

Finally, like Web Forms pages in the managed environment, your XML Web

service will run with the speed of native machine language using the scalable

communication of IIS.

Active Server Pages.NET

ASP.NET is a programming framework built on the common language

runtime that can be used on a server to build powerful Web applications. ASP.NET offers

several important advantages over previous Web development models:

Enhanced Performance. ASP.NET is compiled common language runtime code

running on the server. Unlike its interpreted predecessors, ASP.NET can take

advantage of early binding, just-in-time compilation, native optimization, and caching

services right out of the box. This amounts to dramatically better performance before

you ever write a line of code.

World-Class Tool Support. The ASP.NET framework is complemented by a

rich toolbox and designer in the Visual Studio integrated development environment.

WYSIWYG editing, drag-and-drop server controls, and automatic deployment are

just a few of the features this powerful tool provides.

Power and Flexibility. Because ASP.NET is based on the common language

runtime, the power and flexibility of that entire platform is available to Web

application developers. The .NET Framework class library, Messaging, and Data

Access solutions are all seamlessly accessible from the Web. ASP.NET is also

language-independent, so you can choose the language that best applies to your

application or partition your application across many languages. Further, common

language runtime interoperability guarantees that your existing investment in COM-

based development is preserved when migrating to ASP.NET.

Simplicity. ASP.NET makes it easy to perform common tasks, from simple form

submission and client authentication to deployment and site configuration. For

example, the ASP.NET page framework allows you to build user interfaces that

cleanly separate application logic from presentation code and to handle events in a

simple, Visual Basic - like forms processing model. Additionally, the common

language runtime simplifies development, with managed code services such as

automatic reference counting and garbage collection.

Manageability. ASP.NET employs a text-based, hierarchical configuration

system, which simplifies applying settings to your server environment and Web

applications. Because configuration information is stored as plain text, new settings

may be applied without the aid of local administration tools. This "zero local

administration" philosophy extends to deploying ASP.NET Framework applications

as well. An ASP.NET Framework application is deployed to a server simply by

copying the necessary files to the server. No server restart is required, even to deploy

or replace running compiled code.

Scalability and Availability. ASP.NET has been designed with scalability in

mind, with features specifically tailored to improve performance in clustered and

multiprocessor environments. Further, processes are closely monitored and managed

by the ASP.NET runtime, so that if one misbehaves (leaks, deadlocks), a new process

can be created in its place, which helps keep your application constantly available to

handle requests.

Customizability and Extensibility. ASP.NET delivers a well-factored

architecture that allows developers to "plug-in" their code at the appropriate level. In

fact, it is possible to extend or replace any subcomponent of the ASP.NET runtime

with your own custom-written component. Implementing custom authentication or

state services has never been easier.

Security. With built in Windows authentication and per-application configuration,

you can be assured that your applications are secure.

DATASETS AND DATAADAPTERS

DataSets:

The DataSet object is similar to the ADO Recordset object, but more powerful,

and with one other important distinction: the DataSet is always disconnected. The

DataSet object represents a cache of data, with database-like structures such as tables,

columns, relationships, and constraints. However, though a DataSet can and does behave

much like a database, it is important to remember that DataSet objects do not interact

directly with databases, or other source data. This allows the developer to work with a

programming model that is always consistent, regardless of where the source data resides.

Data coming from a database, an XML file, from code, or user input can all be placed into

DataSet objects. Then, as changes are made to the DataSet they can be tracked and

verified before updating the source data. The GetChanges method of the DataSet object

actually creates a second DataSet that contains only the changes to the data. This

DataSet is then used by a DataAdapter (or other objects) to update the original data

source.

The DataSet has many XML characteristics, including the ability to produce

and consume XML data and XML schemas. XML schemas can be used to describe

schemas interchanged via WebServices. In fact, a DataSet with a schema can actually be

compiled for type safety and statement completion.

DataAdapters (OLEDB/SQL):

The DataAdapter object works as a bridge between the DataSet and the source

data. Using the provider-specific SqlDataAdapter (along with its associated

SqlCommand and SqlConnection) can increase overall performance when working with

a Microsoft SQL Server databases. For other OLE DB-supported databases, you would

use the OleDbDataAdapter object and its associated OleDbCommand and

OleDbConnection objects.

The DataAdapter object uses commands to update the data source after changes

have been made to the DataSet. Using the Fill method of the DataAdapter calls the

SELECT command; using the Update method calls the INSERT, UPDATE or DELETE

command for each changed row. You can explicitly set these commands in order to

control the statements used at runtime to resolve changes, including the use of stored

procedures. For ad-hoc scenarios, a CommandBuilder object can generate these at run-

time based upon a select statement. However, this run-time generation requires an extra

round-trip to the server in order to gather required metadata, so explicitly providing the

INSERT, UPDATE, and DELETE commands at design time will result in better run-time

performance.

ADO.NET is the next evolution of ADO for the .Net Framework.

ADO.NET was created with n-Tier, statelessness and XML in the forefront. Two

new objects, the DataSet and DataAdapter, are provided for these scenarios.

ADO.NET can be used to get data from a stream, or to store data in a cache for

updates.

. Remember, you can execute a command directly against the database in order to

do inserts, updates, and deletes. You don't need to first put data into a DataSet in

order to insert, update, or delete it.

Also, you can use a DataSet to bind to the data, move through the data, and

navigate data and relationships.

5.2 INTRODUCTION TO C#

C#, pronounced c sharp, is a computer language used to give instructions

that tell the computer what to do, how to do it, and when to do it. This is a universal language

that is used on many operating systems, including Microsoft Windows. C# is one of the

languages used in the Microsoft .NET Framework. The Microsoft .NET Framework is a library

of objects that create or draw things on the computer.

The programs we write are meant to give instructions to the computer about what to do,

when to do something, and how to do it. You write these instructions in an easy to understand

English format, using words we study. This means that a regular instruction uses normal text

with alphabetic characters, numbers, and non-readable symbols. Normally, you can write your

instructions using any text editor such as Notepad, WordPad, WordPerfect, or Microsoft Word,

etc. When writing your instructions, there are rules you must follow and suggestions you

should observe..

5.3 SQL SERVER

A database management, or DBMS, gives the user access to their data and helps them

transform the data into information. Such database management systems include dBase, paradox,

IMS, SQL Server and SQL Server. These systems allow users to create, update and extract

information from their database.

A database is a structured collection of data. Data refers to the characteristics of people,

things and events. SQL Server stores each data item in its own fields. In SQL Server, the fields

relating to a particular person, thing or event are bundled together to form a single complete unit

of data, called a record (it can also be referred to as raw or an occurrence). Each record is made

up of a number of fields. No two fields in a record can have the same field name.

During an SQL Server Database design project, the analysis of your business needs

identifies all the fields or attributes of interest. If your business needs change over time, you

define any additional fields or change the definition of existing fields.

Gated Community Management Systems 33

PRIMARY KEY

Every table in SQL Server has a field or a combination of fields that uniquely identifies

each record in the table. The Unique identifier is called the Primary Key, or simply the Key.

The primary key provides the means to distinguish one record from all other in a table. It allows

the user and the database system to identify, locate and refer to one particular record in the

database.

RELATIONAL DATABASE

Sometimes all the information of interest to a business operation can be stored in one

table. SQL Server makes it very easy to link the data in multiple tables. Matching an employee

to the department in which they work is one example. This is what makes SQL Server a

relational database management system, or RDBMS. It stores data in two or more tables and

enables you to define relationships between the tables and enables you to define relationships

between the tables.

FOREIGN KEY

When a field in one table matches the primary key of another field is referred to as a

foreign key. A foreign key is a field or a group of fields in one table whose values match those

of the primary key of another table.

REFERENTIAL INTEGRITY

Not only does SQL Server allow you to link multiple tables, it also maintains consistency

between them. Ensuring that the data among related tables is correctly matched is referred to as

maintaining referential integrity.

DATA ABSTRACTION

A major purpose of a database system is to provide users with an abstract view of the

data. This system hides certain details of how the data is stored and maintained. Data abstraction

is divided into three levels.

Gated Community Management Systems 34

Physical level: This is the lowest level of abstraction at which one describes how the data are

actually stored.

Conceptual level: At this level of database abstraction all the attributed and what data are

actually stored is described and entries and relationship among them.

View level: This is the highest level of abstraction at which one describes only part of the

database.

ADVANTAGES OF RDBMS

Redundancy can be avoided

Inconsistency can be eliminated

Data can be Shared

Standards can be enforced

Security restrictions ca be applied

Integrity can be maintained

Conflicting requirements can be balanced

Data independence can be achieved.

DISADVANTAGES OF DBMS

A significant disadvantage of the DBMS system is cost. In addition to the cost of

purchasing of developing the software, the hardware has to be upgraded to allow for the

extensive programs and the workspace required for their execution and storage. While

centralization reduces duplication, the lack of duplication requires that the database be

adequately backed up so that in case of failure the data can be recovered.

Gated Community Management Systems 35

6. TESTING

6.1 UNIT TESTING

WHITEBOX TESTING

This is a unit testing method where a unit will be taken at a time and tested thoroughly at

a statement level to find the maximum possible errors. I tested step wise every piece of code,

taking care that every statement in the code is executed at least once. The white box testing is

also called Glass Box Testing. I have generated a list of test cases, sample data which is used to

check all possible combinations of execution paths through the code at every module level.

BLACKBOX TESTING

This testing method considers a module as a single unit and checks the unit at interface

and communication with other modules rather getting into details at statement level. Here the

module will be treated as a black box that will take some input and generate output. Output for a

given set of input combinations are forwarded to other modules.

Gated Community Management Systems 36

6.2 TEST CASES

6.1.1 TESTCASE FOR VERIFYING AUTHENTICATIONTest Case#: 1

Project Title: Gated Community Management System

Test Objective: Authorizing Gated Community admin and Tenant/Visitor Information.

Test Description: Service Requests are provided to the Gated Community admin and Tenant/Visitor data-base maintained for Security.

Requirements Verified: Yes

Test Environment: SQL Server, ASP.NET, Microsoft - Visual Studio.Net

Test Case Functional Input Variations

Actions Expected Results

Authorizing Database Respective Internal Operations are done for Security.

Actions Actual Results

Authorizing Database Expected output is observed

Priority: High

Status: Pass

Problems / Issues: Nil

Gated Community Management Systems 37

6.1.2 TESTCASE FOR SETUP

Test Case#: 2

Project Title: Gated Community Management System

Test Objective: Authorizing Tenant/Visitor Information

Test Description: Provides the details to the Tenant and helps in claiming the protection from Gated Com-munity.

Requirements Verified: Yes

Test Environment: SQL Server, ASP.NET, Microsoft -Visual Studio.Net

Test Case Functional Input Variations

Actions Expected Results

Logins and Updates the Patient Database Daily modifications are being done and Ten-ant/Visitor information track is maintained.

Actions Actual Results

Logins and Updates the Patients Database Expected output is observed

Priority: High

Status: Pass

Problems / Issues: Nil

6.1.3 TESTCASE FOR VIEW

Gated Community Management Systems 38

Test Case#: 3

Project Title: Gated Community Management System

Test Objective: Registration Process

Test Description: To Check the Registration Data is valid or not

Requirements Verified: Yes

Test Environment: SQL Server, ASP.NET, Microsoft -Visual Studio.Net

Test Case Functional Input Variations

Actions Expected Results

Registers into the Hospital Registration should be done successfully and re-spective data should be provided.

Actions Actual Results

Registers into the Hospital Expected output is observed

Priority: High

Status: Pass

Problems / Issues: Nil

Gated Community Management Systems 39

7. CONCLUSION

The project “Gated Community Management Systems” has been highly beneficial

technologically, referring to the programming languages used like ASP.NET, C#.NET and the

database management system, SQL server. It is identified by the merits of the system, which

increase its efficiency, transparency and accuracy.

It’s a web-enabled project.

The project is highly user supportive as it enables the client to enter the desired data.

Data Validation is done at every stage, thus preventing the entry or updation of invalid data

by the user.

Data updation is allowed even in the later stages of the project. However restriction is

imposed on the updation of primary data field.

Data Monitoring by the user is enabled.

Every part of the project is interlinked, thus enabling the user to navigate through the project.

This makes the project highly user-friendly.

Data storage and retrieval will become faster and easier to maintain because data is stored in

a systematic manner and in a single database.

Decision making process is greatly enhanced because of faster processing of information

since data collection from information available on computer takes much less time then

manual system.

Allocating of sample results becomes much faster because the user can access previous

records.

Easier and faster data transfer through latest technology associated with the computer and

communication.

There are however, a few LIMITATIONS, which are:

Size of the database keeps on increasing every day, thus increasing the load on the database

backup and data maintenance activity. Training on simple computer operations is necessary for

the users working on the system.

Gated Community Management Systems 40

APPENDIX

A: SAMPLE CODE

LOGIN

using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Data.SqlClient;

public partial class RegistrationForm : System.Web.UI.Page{ SqlConnection con = new SqlConnection("user id=sa;pwd=sa123;server=.;database=GCMS"); SqlDataAdapter da = new SqlDataAdapter(); DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) {

} protected void btnregister_Click(object sender, EventArgs e) { da = new SqlDataAdapter("Insert into tblMasterUsers values('" + dd-lusertype.SelectedValue + "','" + txtbxfn.Text + "','" + txtbxln.Text + "','" + Txtbxphone.Text + "','" + txtbxmob.Text + "','" + txtbxemail.Text + "','" + txtbxlid.Text + "','" + txtbxpwd.Text + "','" + rblstatus.Selected-Value.ToString() + "')", con); ds = new DataSet(); da.Fill(ds, "tblMasterUsers"); Label1.Text = "Congrats! Your Registered"; }}

Gated Community Management Systems 41

B.TABLES

After carefully understanding the requirements of the client the entire data storage

requirements are divided into tables. The below tables are normalized to avoid any anomalies

during the course of data entry.

Table 4.5.1 Master Users

Table 4.5.2 Gated Communities

Table 4.5.3 Service Requests

Gated Community Management Systems 42

Table 4.5.4 Visitors

Table 4.5.5 Facility Bookings

Table 4.5.6 Facility Types

Gated Community Management Systems 43

Table 4.5.7 GC Houses

Table 4.5.8 GC Tenets

Table 4.5.9 Service Staff

Table 4.5.10 Service Types

Gated Community Management Systems 44

C: SCREEN SHOTS

LOGIN

Fig 6.1 Login Page

Description:

Home page contains ‘Login’ and ‘Registration’ links where a Gated Community User can

register through Registration page and logins into the Login page.

Gated Community Management Systems 45

REGISTRATION

Fig 6.2 Registration Page

Description:

Registration page allows the members to register to the concerned category and the data

will get stored permanently into the database. If the person skips any column without entering re-

spective data, then the registration gets failed and an error message is displayed on the page.

Gated Community Management Systems 46

Screen

Description:

This page allows the Gated Community Resident to add service requests by providing their Tenant ID. New Service requests can therefore be added according to the tenants requirements.

Gated Community Management Systems 47

Screen

Description:

This page shows the details of any Visitor who visits the Gated Community. The details of the visitors can be edited hence changing preference of his allowance.

11. BIBLIOGRAPHY

Gated Community Management Systems 48

Textbooks

1. Applying UML and Patterns

-By Craig Larman

2. Beginning ASP.NET 3.5 in C# 2008: From Novice to Professional

-By Matthew MacDonald

3. Beginning Microsoft Visual Basic 2

-By Thearon Willis, Bryan Newsome – 2009

4. Beginning SQL Server 2005 Programming

-By Robert Vieira

5. Microsoft SQL Server 2005:

-By Dusan Petkovic

6. Professional C# 2008

-By Bill Evjen, Christian Nagel, Jay Glynn, Karli Watson, Morgan Skinner

7. Software testing techniques

-By Boris Beizers

Gated Community Management Systems 49