prj_sourabh
TRANSCRIPT
-
7/29/2019 PRJ_SOURABH
1/117
SUBMITTED TO :: SUBMITTED BY ::
______________________ JATIN
KULSHRESHTRAMUKUND
MOLASARIYASOURABH PANDEY
MAKHANLAL RHASTRIYA PATRAKARITAVISHWAVIDHYALAYA
PROJECT REPORT
ON
iNDEX FURNITURES Ideas For Life
-
7/29/2019 PRJ_SOURABH
2/117
ACKNOWLEDGEMENT
Every passing day adds a new landmark to the
developmental history of technology. In such a
scenario the biggest challenge is to keep oneself
updated with the latest advancements in the
technology.
For me this Project has been a great opportunity to
polish our technical skills. It bestowed me a chance
to get an insight into different Areas of Web
Application Development.
I m extremely obliged to our Faculty for escorting
me all the way through this learning expedition.
(SOURABH PANDEY)
-
7/29/2019 PRJ_SOURABH
3/117
CERTIFICATE
This is to certify that project entitled IndexFURNITURES submitted in partial fulfillment ofthe degree of Bachelor of Computer Application tothe Makhanlal Chaturvedi Rashtriya PatrakaritaVishwavidyalaya,Bhopal through Victor College ofProfessional Studies done by SOURABH PANDEYunder my guidance. The matter embodied in thisproject has not been submitted earlier for award ofany degree or diploma to the best of myknowledge and belief.
(Signature Student)
(Signature Guide)
-
7/29/2019 PRJ_SOURABH
4/117
SELF CERTIFICATE
This is to certify that project entitled INDEXFURNITURES is done by me is an authentic workcarried out for the partial fulfillment of therequirements for the award of the degree ofBachelor of Computer Application under theguidance of Mr. XXX. The matter embodied in
this project work has not Been submitted earlierfor award of any degree or diploma to theBest of my knowledge and belief.
(SOURABH PANDEY)
-
7/29/2019 PRJ_SOURABH
5/117
CERTIFICATE
This is to certify that project entitled INDEXFURNITURESsubmitted in partial fulfillment of the degree ofBachelor of Computer Application to the MakhanlalChaturvedi Rashtriya PatrakaritaVishwavidyalaya,Bhopal through Victor Collegeof Professional Studies done by SOURABHPANDEY under my guidance. The matterembodied in this project has not been submittedearlier for award of any degree or diplomato the best of my knowledge and belief.
(Signature H.O.D.)
-
7/29/2019 PRJ_SOURABH
6/117
-
7/29/2019 PRJ_SOURABH
7/117
INDEX
INTRODUCTION
ECOMMERCE
OBJECTIVE
TECHNICAL DETAILS
TECHNOLOGY OVERVIEW
SYSTEM DEVELOPMENT METHODOLOGY
SDLC
USE CASES
DATABASE STRUCTURE
SCREEN SHOTS
SOURCE CODE
-
7/29/2019 PRJ_SOURABH
8/117
INTRODUCTION
INTRODUCTION
INDEX FURNITURE is a web based solution mainly
designed for customers to shop online for various
cateogaries of furniture items. This service has
been developed for helping people to take
advantage of internet revolution and its increased
use. Index furniture is focused on key procedures
that any E-commerce company uses to collect
sales orders , take online payments , interacting
with customers directly etc.
This internet service will allow its users to shop for
their desired furniture items and adds them to
their shopping cart and place an order with our
company. It will also enable them to make use of
keyword base search functionality while searching
for the designated item.
-
7/29/2019 PRJ_SOURABH
9/117
E-COMMERCE
Electronic Commerce, commonly known as(electronic marketing) e-commerce or eCommerce,consists of the buying and selling of products orservices over electronic systems such as theInternet and other computer networks. The amountof trade conducted electronically has grownextraordinarily with widespread Internet usage.The use of commerce is conducted in this way,spurring and drawing on innovations in electronic
funds transfer, supply chain management, Internetmarketing, online transaction processing,electronic data interchange (EDI), inventorymanagement systems, and automated datacollection systems. Modern electronic commercetypically uses the World Wide Web at least at somepoint in the transaction's lifecycle, although it can
encompass a wider range of technologies such ase-mail as well.
A large percentage of electronic commerce isconducted entirely electronically for virtual itemssuch as access to premium content on a website,
-
7/29/2019 PRJ_SOURABH
10/117
but most electronic commerce involves thetransportation of physical items in some way.Online retailers are sometimes known as e-tailers
and online retail is sometimes known as e-tail.Almost all big retailers have electronic commercepresence on the World Wide Web.
Electronic commerce that is conducted betweenbusinesses is referred to as business-to-business orB2B. B2B can be open to all interested parties (e.g.commodity exchange) or limited to specific, pre-
qualified participants (private electronic market).Electronic commerce that is conducted betweenbusinesses and consumers, on the other hand, isreferred to as business-to-consumer or B2C. This isthe type of electronic commerce conducted bycompanies such as Amazon.com.
Electronic commerce is generally considered to bethe sales aspect of e-business. It also consists ofthe exchange of data to facilitate the financing andpayment aspects of the business transactions.
-
7/29/2019 PRJ_SOURABH
11/117
OBJECTIVE
To help businesses like your own attract, select,develop, engage and retain the best and brightest.Our innovative solutions address both sellingstrategies and organizational effectiveness- peopleand performance.
The Internet provides a direct interface betweenbusinesses and their market for a wide variety ofservices, many of which we now use both in theoffice and in our homes. Our online services
provide a marketplace for customers to markettheir deals and detail their expectations and for usto market their needs.
-
7/29/2019 PRJ_SOURABH
12/117
TECHNICAL DETAILSTOOLS:
FRONT-END : ASP.NET(With C# 2.0)
BACK-END : SQL SERVER 2000
PLATFORM:
MICROSOFT WINDOWS
HARDWARE AND SOFTWARE ENVIRONMENT
HARDWARE ENVIRONMENT:
PROCESSOR : P-IV(1.80 GHZ)
RAM : 128 MB
STORAGE CAPACITY : 40 GB
DRIVERS : 52X24X
-
7/29/2019 PRJ_SOURABH
13/117
52X CD : 1.44 MB FDD
SOFTWARE ENVIRONMENT:
OPERATING SYSTEM : WINDOW XP PROFESSIONAL
RDBMS : SQL SERVER 2000
TECHNOLOGY OVERVIEW
.Net 2005 with c# 2.0
The Microsoft .NET Framework version 2.0 extendsthe .NET Framework version 1.1 with new features,
improvements to existing features, andenhancements to the documentation. This sectionprovides information about some key additions andmodifications.For more information about compatibility and for alist of the public API modifications to the classlibrary that might affect the compatibility of your
application.
64-Bit Platform Support
-
7/29/2019 PRJ_SOURABH
14/117
The new generation of 64-bit computers enablesthe creation of applications that can run faster andtake advantage of more memory than is available
to 32-bit applications. New support for 64-bitapplications enables users to build managed codelibraries or easily use unmanaged code libraries on64-bit computers. For more information, see 64-bitApplications.
Access Control List Support
An access control list (ACL) is used to grant orrevoke permission to access a resource on acomputer. New classes have been added to the.NET Framework that allows managed code tocreate and modify an ACL. New members that usean ACL have been added to the I/O, registry, andthreading classes.
ADO.NET
New features in ADO.NET include support for user-defined types (UDT), asynchronous database
operations, XML data types, large value types,snapshot isolation, and new attributes that allowapplications to support multiple active result sets(MARS) with SQL Server 2005.
-
7/29/2019 PRJ_SOURABH
15/117
ASP.NET
The Microsoft .NET Framework 2.0 includessignificant enhancements to all areas of ASP.NET.For Web page development, new controls make iteasier to add commonly used functionality todynamic Web pages. New data controls make itpossible to display and edit data on an ASP.NETWeb page without writing code. An improved code-
behind model makes developing ASP.NET pageseasier and more robust. Caching features provideseveral new ways to cache pages, including theability to build cache dependency on tables in aSQL Server database.You can now customize Web sites and pages in avariety of ways. Profile properties enable ASP.NET
to track property values for individual usersautomatically. Using Web Parts, you can createpages that users can customize in the browser.You can add navigation menus using simplecontrols.Improvements to Web site features allow you tocreate professional Web sites faster and moreeasily. Master pages allow you to create a
consistent layout for all the pages in a site, andthemes allow you to define a consistent look forcontrols and static text. To help protect your sites,you can precompile a Web site to produceexecutable code from source files (both code files
-
7/29/2019 PRJ_SOURABH
16/117
and the markup in .aspx pages). You can thendeploy the resulting output, which does not includeany source information, to a production server.
Enhancements to ASP.NET also include new toolsand classes to make Web site management easierfor Web site developers, server administrators, andhosters.ASP.NET accommodates a wide variety of browsersand devices. By default, controls render outputthat is compatible with XHTML 1.1 standards. Youcan use device filtering to specify differentproperty values on the same control for differentbrowsers.
Authenticated Streams
Applications can use the new Negotiate Stream
and SslStream classes for authentication and tohelp secure information transmitted between aclient and a server. These authenticated streamclasses support mutual authentication, dataencryption, and data signing. The NegotiateStream class uses the Negotiate security protocolfor authentication. The SslStream class uses the
Secure Socket Layer (SSL) security protocol forauthentication.
Console Class Additions
-
7/29/2019 PRJ_SOURABH
17/117
New members of the Console class enableapplications to manipulate the dimensions of theconsole window and screen buffer; to move a
rectangular area of the screen buffer, which isuseful for performing smooth, simple animation;and to wait while reading console input until a keyis pressed. Other new class members control theforeground and background colors of text, thevisibility and size of the cursor, and the frequencyand duration of the console beep.
Data Protection API
The new Data Protection API (DPAPI) includes fourmethods that allow applications to encryptpasswords, keys, connections strings, and so on,without calling platform invoke. You can also
encrypt blocks of memory on computers runningWindows Server 2003 or later operating systems.
Debugger Display Attributes
You can now control how Visual Studio displays aclass or member when an application is beingdebugged. The debugger's Display Attributes
feature enables you to identify the most usefulinformation to display in the debugger.
Debugger Edit and Continue Support
-
7/29/2019 PRJ_SOURABH
18/117
The .NET Framework 2.0 reintroduces the Edit andContinue feature that enables a user who is
debugging an application in Visual Studio to makechanges to source code while executing in Breakmode. After source code edits are applied, the usercan resume code execution and observe the effect.Furthermore, the Edit and Continue feature isavailable in any programming language supportedby Visual Studio.
Detecting Changes in NetworkConnectivity
The NetworkChange class allows applications toreceive notification when the Internet Protocol (IP)address of a network interface, also known as a
network card or adapter, changes. An interfaceaddress can change for a variety of reasons, suchas a disconnected network cable, moving out ofrange of a wireless local area network, or hardwarefailure. The NetworkChange class provides addresschange notification by raising events when achange is detected.
Distributed Computing
In the System.Net namespace, support has beenadded for FTP client requests, caching of HTTPresources, automatic proxy discovery, and
-
7/29/2019 PRJ_SOURABH
19/117
obtaining network traffic and statisticalinformation.The namespace now includes a Web server class
that you can use to create a simple Web server forresponding to HTTP requests. Classes thatgenerate network traffic have been instrumentedto output trace information for applicationdebugging and diagnostics. Security andperformance enhancements have been added tothe System.Net.Sockets.Socket and System.Uriclasses.In the System.Web.Services namespaces, supportfor SOAP 1.2 and nullable elements has beenadded.In the System.Runtime.Remoting.Channelsnamespaces, channel security features have beenadded. The TCP channel now supportsauthentication and encryption, as well as several
new features to better support load balancing.
FTP Support
Applications can now access File Transfer Protocolresources using the WebRequest, WebResponse,and WebClient classes.
Generics and Generic Collections
-
7/29/2019 PRJ_SOURABH
20/117
The .NET Framework 2.0 introduces generics toallow you to create flexible, reusable code.Language features collectively known as generics
act as templates that allow classes, structures,interfaces, methods, and delegates to be declaredand defined with unspecified, or generic typeparameters instead of specific types. Actual typesare specified later when the generic is used.Several namespaces, such as System Namespaceand System.Collections.Generic, provide genericclasses and methods. The newSystem.Collections.Generic namespace providessupport for strongly typed collections.System.Nullable is a standard representationof optional values. Generics are supported in threelanguages: Visual Basic, C#, and C++.Reflection has been extended to allow runtimeexamination and manipulation of generic types
and methods. New members have been added toSystem.Type and System.Reflection.MethodInfo,including IsGenericType to identify generic types(for example, class Gen {...}),GetGenericArguments to obtain type parameterlists, and MakeGenericType to create specific types(for example, new Gen()).
Globalization
Five new globalization features provide greatersupport for developing applications intended fordifferent languages and cultures.
-
7/29/2019 PRJ_SOURABH
21/117
Support for custom cultures enables you to defineand deploy culture-related information as needed.This feature is useful for creating minor
customizations of existing culture definitions, andcreating culture definitions that do not yet exist inthe .NET Framework. For more information, see theCultureAndRegionInfoBuilder class.Encoding and decoding operations map a Unicodecharacter to or from a stream of bytes that can betransferred to a physical medium such as a disk ora communication line. If a mapping operationcannot be completed, you can compensate byusing the new encoding and decoding fallbackfeature supported by several classes in theSystem.Text namespace.Members in the UTF8Encoding class, whichimplements UTF-8 encoding, are now several timesfaster than in previous releases. UTF-8 is the most
common encoding used to transform Unicodecharacters into bytes on computers.The .NET Framework now supports the latestnormalization standard defined by the UnicodeConsortium. The normalization process convertscharacter representations of text to a standardform so the representations can be compared for
equivalence.The GetCultureInfo method overload provides acached version of a read-only CultureInfo object.Use the cached version when creating a new
-
7/29/2019 PRJ_SOURABH
22/117
CultureInfo object to improve system performanceand reduce memory usage.
I/O EnhancementsImprovements have been made to the usabilityand functionality of various I/O classes. It is noweasier for users to read and write text files andobtain information about a drive.You can now use the classes in theSystem.IO.Compression namespace to read and
write data with the GZIP compression anddecompression standard, described in the IETF RFC1951 and RFC 1952 specifications, which areavailable at the IETF Request for Comments (RFC)search page. Note: search is limited to RFCnumbers.
Manifest-Based Activation
This feature provides new support for loading andactivating applications through the use of amanifest. Manifest-based activation is essential forsupporting ClickOnce applications. Traditionally,applications are activated through a reference toan assembly that contains the application's entrypoint. For example, clicking an application's .exefile from within the Windows shell causes the shellto load the common language runtime (CLR) andcall a well-known entry point within that .exe file'sassembly.
http://go.microsoft.com/fwlink/?LinkId=45286http://go.microsoft.com/fwlink/?LinkId=45286http://go.microsoft.com/fwlink/?LinkId=45286http://go.microsoft.com/fwlink/?LinkId=45286http://go.microsoft.com/fwlink/?LinkId=45286http://go.microsoft.com/fwlink/?LinkId=45286 -
7/29/2019 PRJ_SOURABH
23/117
The manifest-based activation model uses anapplication manifest for activation rather than anassembly. A manifest fully describes the
application, its dependencies, securityrequirements, and so forth. The manifest modelhas several advantages over the assembly-basedactivation model, especially for Web applications.For example, the manifest contains the securityrequirements of the application, which enables theuser to decide whether to allow the application toexecute before downloading the code. Themanifest also contains information about theapplication dependencies.
Manifest-based activation is provided by a set ofAPIs that allow managed hosts to activateapplications and add-ins described by a manifest.These APIs contain a mixture of both new classes
and extensions to existing classes.This activation model also invokes an entity calleda Trust Manager that performs the following tasks:
Determines whether an application is allowed to beactivated. This decision can be made by promptingthe user, querying policy, or by any other means
deemed appropriate for a given Trust Manager.
Sets up the security context to run an applicationin. Most commonly, this step involves setting upacode access security (CAS) policy tree on the
-
7/29/2019 PRJ_SOURABH
24/117
application domain in which the application willrun.
.NET Framework Remoting
.NET Framework remoting now supports IPv6addresses and the exchange of generic types. Theclasses in the
System.Runtime.Remoting.Channels.Tcpnamespace support authentication and encryptionusing the Security Support Provider Interface(SSPI). Classes in the newSystem.Runtime.Remoting.Channels.Ipcnamespace allow applications on the samecomputer to communicate quickly without usingthe network. Finally, you can now configure theconnection cache time-out and the number ofmethod retries, which can improve theperformance of network load-balanced remoteclusters.Using classes in theSystem.Net.NetworkInformation namespace,applications can access IP, IPv4, IPv6, TCP, and
UDP network traffic statistics. Applications can alsoview address and configuration information for thelocal computers network adapters. Thisinformation is similar to the information returnedby the Ipconfig.exe command-line tool.
-
7/29/2019 PRJ_SOURABH
25/117
PingThe Ping class allows an application to determinewhether a remote computer is accessible over the
network. This class provides functionality similar tothe Ping.exe command-line tool, and supportssynchronous and asynchronous calls.
Processing HTTP Requests from WithinApplications
You can use the HttpListener class to create a
simple Web server that responds to HTTP requests.The Web server is active for the lifetime of theHttpListener object and runs within yourapplication, with your application's permissions.This class is available only on computers runningthe Windows XP Service Pack 2 or Windows Server2003 operating systems.
Programmatic Control of Caching
Using the classes in the System.Net.Cachenamespace, applications can control the caching ofresources obtained using the WebRequest,WebResponse, and WebClient classes. You can usethe predefined cache policies provided by the .NET
Framework or specify a custom cache policy. Youcan specify a cache policy for each request anddefine a default cache policy for requests that donot specify a cache policy.
-
7/29/2019 PRJ_SOURABH
26/117
The .NET Framework is an integral Windowscomponent that supports building and running thenext generation of applications and XML Web
services. The .NET Framework is designed to fulfillthe following objectives:To provide a consistent object-orientedprogramming environment whether object code isstored and executed locally, executed locally butInternet-distributed, or executed remotely.To provide a code-execution environment thatminimizes software deployment and versioningconflicts.To provide a code-execution environment thatpromotes safe execution of code, including codecreated by an unknown or semi-trusted third party.To provide a code-execution environment thateliminates the performance problems of scripted orinterpreted environments.
To make the developer experience consistentacross widely varying types of applications, suchas Windows-based applications and Web-basedapplications.To build all communication on industry standardsto ensure that code based on the .NET Frameworkcan integrate with any other code.
The .NET Framework has two main components:the common language runtime and the .NETFramework class library. The common languageruntime is the foundation of the .NET Framework.You can think of the runtime as an agent that
-
7/29/2019 PRJ_SOURABH
27/117
manages code at execution time, providing coreservices such as memory management, threadmanagement, and remoting, while also enforcing
strict type safety and other forms of code accuracythat promote security and robustness. In fact, theconcept of code management is a fundamentalprinciple of the runtime. Code that targets theruntime is known as managed code, while codethat does not target the runtime is known asunmanaged code. The class library, the other maincomponent of the .NET Framework, is acomprehensive, object-oriented collection ofreusable types that you can use to developapplications ranging from traditional command-lineor graphical user interface (GUI) applications toapplications based on the latest innovationsprovided by ASP.NET, such as Web Forms and XMLWeb services.
The .NET Framework can be hosted by unmanagedcomponents that load the common languageruntime into their processes and initiate theexecution of managed code, thereby creating asoftware environment that can exploit bothmanaged and unmanaged features. The .NETFramework not only provides several runtime
hosts, but also supports the development of third-party runtime hosts.For example, ASP.NET hosts the runtime to providea scalable, server-side environment for managedcode. ASP.NET works directly with the runtime to
-
7/29/2019 PRJ_SOURABH
28/117
enable ASP.NET applications and XML Webservices, both of which are discussed later in thistopic.
Internet Explorer is an example of an unmanagedapplication that hosts the runtime (in the form of aMIME type extension). Using Internet Explorer tohost the runtime enables you to embed managedcomponents or Windows Forms controls in HTMLdocuments. Hosting the runtime in this way makesmanaged mobile code (similar to MicrosoftActiveX controls) possible, but with significantimprovements that only managed code can offer,such as semi-trusted execution and isolated filestorage.The following illustration shows the relationship ofthe common language runtime and the classlibrary to your applications and to the overallsystem. The illustration also shows how managed
code operates within a larger architecture.
.NET Framework in context
-
7/29/2019 PRJ_SOURABH
29/117
Features of the Common Language
RuntimeThe common language runtime manages memory,thread execution, code execution, code safetyverification, compilation, and other systemservices. These features are intrinsic to the
-
7/29/2019 PRJ_SOURABH
30/117
managed code that runs on the common languageruntime.With regards to security, managed components are
awarded varying degrees of trust, depending on anumber of factors that include their origin (such asthe Internet, enterprise network, or localcomputer). This means that a managed componentmight or might not be able to perform file-accessoperations, registry-access operations, or othersensitive functions, even if it is being used in thesame active application.The runtime enforces code access security. Forexample, users can trust that an executableembedded in a Web page can play an animationon screen or sing a song, but cannot access theirpersonal data, file system, or network. The securityfeatures of the runtime thus enable legitimateInternet-deployed software to be exceptionally
feature rich.The runtime also enforces code robustness byimplementing a strict type-and-code-verificationinfrastructure called the common type system(CTS). The CTS ensures that all managed code isself-describing. The various Microsoft and third-party language compilers generate managed code
that conforms to the CTS. This means thatmanaged code can consume other managed typesand instances, while strictly enforcing type fidelityand type safety.
-
7/29/2019 PRJ_SOURABH
31/117
In addition, the managed environment of theruntime eliminates many common software issues.For example, the runtime automatically handles
object layout and manages references to objects,releasing them when they are no longer beingused. This automatic memory managementresolves the two most common application errors,memory leaks and invalid memory references.The runtime also accelerates developerproductivity. For example, programmers can writeapplications in their development language ofchoice, yet take full advantage of the runtime, theclass library, and components written in otherlanguages by other developers. Any compilervendor who chooses to target the runtime can doso. Language compilers that target the .NETFramework make the features of the .NETFramework available to existing code written in
that language, greatly easing the migrationprocess for existing applications.While the runtime is designed for the software ofthe future, it also supports software of today andyesterday. Interoperability between managed andunmanaged code enables developers to continueto use necessary COM components and DLLs.
The runtime is designed to enhance performance.Although the common language runtime providesmany standard runtime services, managed code isnever interpreted. A feature called just-in-time (JIT)compiling enables all managed code to run in the
-
7/29/2019 PRJ_SOURABH
32/117
native machine language of the system on which itis executing. Meanwhile, the memory managerremoves the possibilities of fragmented memory
and increases memory locality-of-reference tofurther increase performance.Finally, the runtime can be hosted by high-performance, server-side applications, such asMicrosoft SQL Server and Internet InformationServices (IIS). This infrastructure enables you touse managed code to write your business logic,while still enjoying the superior performance of theindustry's best enterprise servers that supportruntime hosting.
.NET Framework Class Library
The .NET Framework class library is a collection ofreusable types that tightly integrate with the
common language runtime. The class library isobject oriented, providing types from which yourown managed code can derive functionality. Thisnot only makes the .NET Framework types easy touse, but also reduces the time associated withlearning new features of the .NET Framework. Inaddition, third-party components can integrateseamlessly with classes in the .NET Framework.For example, the .NET Framework collectionclasses implement a set of interfaces that you canuse to develop your own collection classes. Yourcollection classes will blend seamlessly with theclasses in the .NET Framework.
-
7/29/2019 PRJ_SOURABH
33/117
As you would expect from an object-oriented classlibrary, the .NET Framework types enable you toaccomplish a range of common programming
tasks, including tasks such as string management,data collection, database connectivity, and fileaccess. In addition to these common tasks, theclass library includes types that support a varietyof specialized development scenarios. Forexample, you can use the .NET Framework todevelop the following types of applications andservices:Console applications.Windows GUI applications (Windows Forms).ASP.NET applications.XML Web services.
Server Application Development
Server-side applications in the managed world areimplemented through runtime hosts. Unmanagedapplications host the common language runtime,which allows your custom managed code to controlthe behavior of the server. This model providesyou with all the features of the common languageruntime and class library while gaining theperformance and scalability of the host server.The following illustration shows a basic networkschema with managed code running in differentserver environments. Servers such as IIS and SQLServer can perform standard operations while your
-
7/29/2019 PRJ_SOURABH
34/117
application logic executes through the managedcode.Server-side managed code
ASP.NET is the hosting environment that enablesdevelopers to use the .NET Framework to targetWeb-based applications. However, ASP.NET ismore than just a runtime host; it is a completearchitecture for developing Web sites and Internet-distributed objects using managed code. Both WebForms and XMLWeb services use IIS and ASP.NETas the publishing mechanism for applications, andboth have a collection of supporting classes inthe .NET Framework.XML Web services, an important evolution in Web-based technology, are distributed, server-sideapplication components similar to common Websites. However, unlike Web-based applications,
XML Web services components have no UI and arenot targeted for browsers such as Internet Explorerand Netscape Navigator. Instead, XML Webservices consist of reusable software componentsdesigned to be consumed by other applications,
-
7/29/2019 PRJ_SOURABH
35/117
such as traditional client applications, Web-basedapplications, or even other XML Web services. As aresult, XML Web services technology is rapidly
moving application development and deploymentinto the highly distributed environment of theInternet.If you have used earlier versions of ASPtechnology, you will immediately notice theimprovements that ASP.NET and Web Forms offer.For example, you can develop Web Forms pages inany language that supports the .NET Framework.In addition, your code no longer needs to share thesame file with your HTTP text (although it cancontinue to do so if you prefer). Web Forms pagesexecute in native machine language because, likeany other managed application, they take fulladvantage of the runtime. In contrast, unmanagedASP pages are always scripted and interpreted.
ASP.NET pages are faster, more functional, andeasier to develop than unmanaged ASP pagesbecause they interact with the runtime like anymanaged application.The .NET Framework also provides a collection ofclasses and tools to aid in development andconsumption of XML Web services applications.
XML Web services are built on standards such asSOAP (a remote procedure-call protocol), XML (anextensible data format), and WSDL ( the WebServices Description Language). The .NET
-
7/29/2019 PRJ_SOURABH
36/117
Framework is built on these standards to promoteinteroperability with non-Microsoft solutions.For example, the Web Services Description
Language tool included with the .NET FrameworkSDK can query an XML Web service published onthe Web, parse its WSDL description, and produceC# or Visual Basic source code that yourapplication can use to become a client of the XMLWeb service. The source code can create classesderived from classes in the class library thathandle all the underlying communication usingSOAP and XML parsing. Although you can use theclass library to consume XML Web servicesdirectly, the Web Services Description Languagetool and the other tools contained in the SDKfacilitate your development efforts with the .NETFramework.If you develop and publish your own XML Web
service, the .NET Framework provides a set ofclasses that conform to all the underlyingcommunication standards, such as SOAP, WSDL,and XML. Using those classes enables you to focuson the logic of your service, without concerningyourself with the communications infrastructurerequired by distributed software development.
Finally, like Web Forms pages in the managedenvironment, your XML Web service will run withthe speed of native machine language using thescalable communication of IIS.
-
7/29/2019 PRJ_SOURABH
37/117
Common Language Runtime (CLR)
Compilers and tools expose the runtime'sfunctionality and enable you to write code thatbenefits from this managed executionenvironment. Code that you develop with alanguage compiler that targets the runtime is
called managed code; it benefits from featuressuch as cross-language integration, cross-languageexception handling, enhanced security, versioningand deployment support, a simplified model forcomponent interaction, and debugging andprofiling services.
To enable the runtime to provide services tomanaged code, language compilers must emitmetadata that describes the types, members, andreferences in your code. Metadata is stored withthe code; every loadable common languageruntime portable executable (PE) file containsmetadata. The runtime uses metadata to locateand load classes, lay out instances in memory,
resolve method invocations, generate native code,enforce security, and set run-time contextboundaries.
-
7/29/2019 PRJ_SOURABH
38/117
The runtime automatically handles object layoutand manages references to objects, releasing themwhen they are no longer being used. Objects
whose lifetimes are managed in this way are calledmanaged data. Garbage collection eliminatesmemory leaks as well as some other commonprogramming errors. If your code is managed, youcan use managed data, unmanaged data, or bothmanaged and unmanaged data in your .NETFramework application. Because languagecompilers supply their own types, such as primitivetypes, you might not always know (or need toknow) whether your data is being managed.The common language runtime makes it easy todesign components and applications whose objectsinteract across languages. Objects written indifferent languages can communicate with eachother, and their behaviors can be tightly
integrated. For example, you can define a classand then use a different language to derive a classfrom your original class or call a method on theoriginal class. You can also pass an instance of aclass to a method of a class written in a differentlanguage. This cross-language integration ispossible because language compilers and tools
that target the runtime use a common type systemdefined by the runtime, and they follow theruntime's rules for defining new types, as well asfor creating, using, persisting, and binding totypes.
-
7/29/2019 PRJ_SOURABH
39/117
As part of their metadata, all managedcomponents carry information about thecomponents and resources they were built against.
The runtime uses this information to ensure thatyour component or application has the specifiedversions of everything it needs, which makes yourcode less likely to break because of some unmetdependency. Registration information and statedata are no longer stored in the registry wherethey can be difficult to establish and maintain.Rather, information about the types you define(and their dependencies) is stored with the code asmetadata, making the tasks of componentreplication and removal much less complicated.Language compilers and tools expose theruntime's functionality in ways that are intended tobe useful and intuitive to developers. This meansthat some features of the runtime might be more
noticeable in one environment than in another.How you experience the runtime depends on whichlanguage compilers or tools you use. For example,if you are a Visual Basic developer, you mightnotice that with the common language runtime,the Visual Basic language has more object-orientedfeatures than before. Following are some benefits
of the runtime:Performance improvements.The ability to easily use componentsdeveloped in other languages.Extensible types provided by a class library.
-
7/29/2019 PRJ_SOURABH
40/117
New language features such as inheritance,interfaces, and overloading for object-orientedprogramming; support for explicit free threading
that allows creation of multithreaded, scalableapplications; support for structured exceptionhandling and custom attributes.If you use Microsoft Visual C++ .NET, you canwrite managed code using the ManagedExtensions for C++, which provide the benefits ofa managed execution environment as well asaccess to powerful capabilities and expressive datatypes that you are familiar with. Additional runtimefeatures include:Cross-language integration, especially cross-language Inheritance.Garbage collection, which manages objectlifetime so that reference counting isunnecessary.
Self-describing objects, which make usingInterface Definition Language (IDL)unnecessary.The ability to compile once and run on any CPUand operating system that supports the runtime.You can also write managed code using the C#language, which provides the following benefits:
Complete object-oriented design.Very strong type safety.A good blend of Visual Basic simplicity andC++ power.Garbage collection.
-
7/29/2019 PRJ_SOURABH
41/117
Syntax and keywords similar to C and C++.Use ofdelegates rather than functionpointers for increased type safety and
security.
Application Domains and Assemblies
This topic describes the relationship between
application domains and assemblies. You mustload an assembly into an application domainbefore you can execute the code it contains.Running a typical application causes severalassemblies to be loaded into an applicationdomain.If an assembly is used by multiple domains in aprocess, the JIT output from an assembly's code
can be shared by all domains referencing theassembly. The runtime host decides whether toload assemblies as domain-neutral when it loadsthe runtime into a process. For more information,see the LoaderOptimizationAttribute attribute andthe associated LoaderOptimization enumeration.For hosting, see the documentation for
CorBindToRuntimeEx in the common languageruntime Hosting Interfaces Specification found inthe .NET Framework SDK.There are three options for loading domain-neutralassemblies:
http://ms-help//MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_fxintro/html/d69ea3da-d2bb-4a54-a6b6-8d8e71b89b94.htmhttp://ms-help//MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_fxintro/html/d69ea3da-d2bb-4a54-a6b6-8d8e71b89b94.htmhttp://ms-help//MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_fxintro/html/d69ea3da-d2bb-4a54-a6b6-8d8e71b89b94.htm -
7/29/2019 PRJ_SOURABH
42/117
Load no assemblies as domain-neutral, exceptMscorlib, which is always loaded domain-neutral.This setting is called single domain because it is
commonly used when the host is running only asingle application in the process.Load all assemblies as domain-neutral. Use thissetting when there are multiple applicationdomains in the process, all of which run the samecode.Load strong-named assemblies as domain-neutral.Use this setting when running more than oneapplication in the same process.When you decide whether to load assemblies asdomain-neutral, you must make a tradeoffbetween reducing memory use and performance.The performance of a domain-neutral assembly isslower if that assembly contains static data orstatic methods that are accessed frequently.
Access to static data is slower because of the needto isolate assemblies. Each application domain thataccesses the assembly must have a separate copyof the static data, to prevent references to objectsin static fields from crossing domain boundaries.As a result, the runtime contains additional logic todirect a caller to the appropriate copy of the static
data or method. This extra logic slows down thecall.An assembly is not shared between domains whenit is granted a different set of permissions in eachdomain. This can occur if the runtime host sets an
-
7/29/2019 PRJ_SOURABH
43/117
application domain-level security policy.Assemblies should not be loaded as domain-neutral if the set of permissions granted to the
assembly is likely to be different in each domain.
Microsoft SQL Server 2000
Microsoft SQL Server 2000 extends theperformance, reliability, quality, and ease-of-use ofMicrosoft SQL Server version 7.0. Microsoft SQLServer 2000 includes several new features thatmake it an excellent database platform for large-scale online transactional processing (OLTP), datawarehousing, and e-commerce applications.The OLAP Services feature available in SQL Serverversion 7.0 is now called SQL Server 2000 AnalysisServices. The term OLAP Services has been
replaced with the term Analysis Services. AnalysisServices also includes a new data miningcomponent. For more information,The Repository component available in SQL Serverversion 7.0 is now called Microsoft SQL Server2000 Meta Data Services. References to thecomponent now use the term Meta Data Services.
The term repository is used only in reference to therepository engine within Meta Data Services.
Relational Database Enhancements
-
7/29/2019 PRJ_SOURABH
44/117
XML Support
The relational database engine can return data asExtensible Markup Language (XML) documents.Additionally, XML can also be used to insert,update, and delete values in the database. Formore information,
Federated Database Servers
SQL Server 2000 supports enhancements todistributed partitioned views that allow you topartition tables horizontally across multipleservers. This allows you to scale out one databaseserver to a group of database servers thatcooperate to provide the same performance levelsas a cluster of database servers. This group, orfederation, of database servers can support thedata storage requirements of the largest Web sites
and enterprise data processing systems.SQL Server 2000 introduces Net-Library support forVirtual Interface Architecture (VIA) system-areanetworks that provide high-speed connectivitybetween servers, such as between applicationservers and database servers.
User-Defined Functions
The programmability of Transact-SQL can beextended by creating your own Transact-SQLfunctions. A user-defined function can return eithera scalar value or a table.
-
7/29/2019 PRJ_SOURABH
45/117
Indexed Views
Indexed views can significantly improve theperformance of an application where queriesfrequently perform certain joins or aggregations.An indexed view allows indexes to be created onviews, where the result set of the view is storedand indexed in the database. Existing applicationsdo not need to be modified to take advantage ofthe performance improvements with indexed
views.
New Data Types
SQL Server 2000 introduces three new data types.bigint is an 8-byte integer type. sql_variant is atype that allows the storage of data values of
different data types. table is a type that allowsapplications to store results temporarily for lateruse. It is supported for variables, and as the returntype for user-defined functions.
INSTEAD OF and AFTER Triggers
INSTEAD OF triggers are executed instead of thetriggering action (for example, INSERT, UPDATE,DELETE). They can also be defined on views, inwhich case they greatly extend the types ofupdates a view can support. AFTER triggers fireafter the triggering action. SQL Server 2000
-
7/29/2019 PRJ_SOURABH
46/117
introduces the ability to specify which AFTERtriggers fire first and last.
Full-Text Search Enhancements
Full-text search now includes change tracking andimage filtering. Change tracking maintains a log ofall changes to the full-text indexed data. You canupdate the full-text index with these changes byflushing the log manually, on a schedule, or asthey occur, using the background update index
option. Image filtering allows you to index andquery documents stored in image columns. Theuser provides the document type in a column thatcontains the file name extension that thedocument would have had if it were stored as a filein the file system. Using this information, full-textsearch is able to load the appropriate document
filter to extract textual information for indexing.
Multiple Instances of SQL Server
SQL Server 2000 supports running multipleinstances of the relational database engine on thesame computer. Each computer can run one
instance of the relational database engine fromSQL Server version 6.5 or 7.0, along with one ormore instances of the database engine from SQLServer 2000. Each instance has its own set ofsystem and user databases. Applications canconnect to each instance on a computer similar to
-
7/29/2019 PRJ_SOURABH
47/117
the way they connect to instances of SQL Serversrunning on different computers. The SQL Server2000 utilities and administration tools have been
enhanced to work with multiple instances.
Index Enhancements
You can now create indexes on computed columns.You can specify whether indexes are built inascending or descending order, and if thedatabase engine should use parallel scanning and
sorting during index creation. For moreinformation,The CREATE INDEX statement can now use the
tempdb database as a work area for the sortsrequired to build an index. This results in improveddisk read and write patterns for the index creationstep, and makes it more likely that index pages will
be allocated in contiguous strips. In addition, thecomplete process of creating an index is eligiblefor parallel operations, not only the initial tablescan.
Net-Library Enhancements
The SQL Server 2000 Net-Libraries have beenrewritten to virtually eliminate the need toadminister Net-Library configurations on clientcomputers when connecting SQL Server 2000clients to instances of SQL Server 2000. The new
-
7/29/2019 PRJ_SOURABH
48/117
Net-Libraries also support connections to multipleinstances of SQL Server on the same computer,and support Secure Sockets Layer encryption over
all Net-Libraries. SQL Server 2000 introduces Net-Library support for Virtual Interface Architecture(VIA) system-area networks that provide high-speed connectivity between servers, such asbetween application servers and database servers.
Distributed Query Enhancements
SQL Server 2000 introduces a newOPENDATASOURCE function, which you can use tospecify ad hoc connection information in adistributed query. SQL Server 2000 also specifiesmethods that OLE DB providers can use to reportthe level of SQL syntax supported by the provider
and statistics on the distribution of key values inthe data source. The distributed query optimizercan then use this information to reduce theamount of data that has to be sent from the OLEDB data source. SQL Server 2000 delegates moreSQL operations to OLE DB data sources than earlierversions of SQL Server. Distributed queries alsosupport the other functions introduced in SQLServer 2000, such as multiple instances, mixingcolumns with different collations in result sets, andthe new bigint and sql_variant data types.SQL Server 2000 distributed queries add supportfor the OLE DB Provider for Exchange and the
-
7/29/2019 PRJ_SOURABH
49/117
Microsoft OLE DB Provider for Microsoft DirectoryServices.
Updatable Distributed Partitioned Views
SQL Server 2000 introduces enhancements todistributed partitioned views. You can partitiontables horizontally across several servers, anddefine a distributed partitioned view on eachmember server that makes it appear as if a fullcopy of the original table is stored on each server.
Groups of servers running SQL Server thatcooperate in this type of partitioning are calledfederations of servers. A database federation builtusing SQL Server 2000 databases is capable ofsupporting the processing requirements of thelargest Web sites or enterprise-level databases.
Kerberos and Security Delegation
SQL Server 2000 uses Kerberos to support mutualauthentication between the client and the server,as well as the ability to pass the securitycredentials of a client between computers, so thatwork on a remote server can proceed using the
credentials of the impersonated client. WithMicrosoft Windows 2000, SQL Server 2000 usesKerberos and delegation to support bothintegrated authentication as well as SQL Serverlogins.
-
7/29/2019 PRJ_SOURABH
50/117
Backup and Restore Enhancements
SQL Server 2000 introduces a new, more easilyunderstood model for specifying backup andrestore options. The new model makes it clearerthat you are balancing increased or decreasedexposure to losing work against the performanceand log space requirements of different plans. SQLServer 2000 introduces support for recovery tospecific points of work using named log marks inthe transaction log, and the ability to do partial
database restoresUsers can define passwords for backup sets andmedia sets that prevent unauthorized users fromaccessing SQL Server backups.
Scalability Enhancements for Utility Operations
SQL Server 2000 enhancements for utility
operations include faster differential backups,parallel Database Console Command (DBCC)checking, and parallel scanning. Differentialbackups can now be completed in a time that isproportional to the amount of data changed sincethe last full backup. DBCC can be run withouttaking shared table locks while scanning tables,
thereby enabling them to be run concurrently withupdate activity on tables. Additionally, DBCC nowtakes advantage of multiple processors, thusenabling near-linear gain in performance in
-
7/29/2019 PRJ_SOURABH
51/117
relation to the number of CPUs (provided that I/O isnot a bottleneck).
Text in Row Data
SQL Server 2000 supports a new text in row tableoption that specifies that small text, ntext, andimage values be placed directly in the data rowinstead of in a separate page. This reduces theamount of space used to store small text, ntext,
and image data values, and reduces the amount ofdisk I/O needed to process these values.
XML Integration of Relational Data
The Microsoft SQL Server 2000 relationaldatabase engine natively supports ExtensibleMarkup Language (XML).
You can now access SQL Server 2000 over HTTPusing a Universal Resource Locator (URL). You candefine a virtual root on a Microsoft InternetInformation Services (IIS) server, which gives youHTTP access to the data and XML functionality ofSQL Server 2000.You can use HTTP, ADO, or OLE DB to work with
the XML functionality of SQL Server 2000:You can define XML views of SQL Server 2000databases by annotating XML-Data Reduced (XDR)schemas to map the tables, views, and columnsthat are associated with the elements and
-
7/29/2019 PRJ_SOURABH
52/117
attributes of the schema. The XML views can thenbe referenced in XPath queries, which retrieveresults from the database and return them as XML
documents.The results of SELECT statements can be returnedas XML documents. The SQL Server 2000 Transact-SQL SELECT statement supports a FOR XML clausethat specifies that the statement results bereturned in the form of an XML document insteadof a relational result set. Complex queries, orqueries that you want to make secure, can bestored as templates in an IIS virtual root, andexecuted by referencing the template name.You can expose the data from an XML document asa relational rowset using the new OPENXML rowsetfunction. OPENXML can be used everywhere arowset function can be used in a Transact-SQLstatement, such as in place of a table or view
reference in a FROM clause. This allows you to usethe data in XML documents to insert, update, ordelete data in the tables of the database, includingmodifying multiple rows in multiple tables in asingle operation.
Graphical Administration Enhancements
Microsoft SQL Server 2000 introduces thesegraphical administration improvements and newfeatures:
Log Shipping
-
7/29/2019 PRJ_SOURABH
53/117
Log shipping allows the transaction logs from asource database to be continually backed up andloaded into a target database on another server.
This is useful for maintaining a warm standbyserver, or for offloading query processing from thesource server to a read-only destination server.
SQL Profiler Enhancements
SQL Profiler now supports size-based and time-
based traces, and includes new events for DataFile Auto Grow, Data File Auto Shrink, Log File AutoGrow, Log File Auto Shrink, Show Plan All, ShowPlan Statistics, and Show Plan Text.
SQL Query Analyzer Enhancements
SQL Query Analyzer now includes Object Browser,
which allows you to navigate through and getinformation (such as parameters anddependencies) about database objects, includinguser and system tables, views, stored procedures,extended stored procedures, and functions. TheObject Browser also supports generating scripts toeither execute or create objects. Otherenhancements include server tracing and clientstatistics that show information about the server-side and client-side impact of a given query.
Copy Database Wizard
-
7/29/2019 PRJ_SOURABH
54/117
Users can run the Copy Database Wizard toupgrade SQL Server version 7.0 databases to SQLServer 2000 databases. It can also be used to copy
complete databases between instances of SQLServer 2000.
Data Transformation ServicesEnhancements
New Custom Tasks
New DTS custom tasks, available through DTSDesigner or the DTS object model, allow you tocreate DTS packages that perform tasks or setvariables based on the properties of the run-timeenvironment. Use these tasks to:Import data from, and send data and completedpackages to, Internet and File Transfer Protocol
(FTP) sites.Run packages asynchronously.Build packages that send messages to each other.Build packages that execute other packages.
Join multiple package executions as part of a transaction.
Enhanced Logging Facilities
DTS package logs save information for each
package execution, allowing you to maintain acomplete execution history. You can also viewexecution information for individual processeswithin a task.
-
7/29/2019 PRJ_SOURABH
55/117
You can generate exception files for transformationtasks. When you log to exception files, you cansave source and destination error rows to a file
through the DTS OLE DB text file provider and re-process the error rows.
Using Parameterized Queries
You can now use parameterized source queries ina DTS transformation task and an Execute SQL
task. In addition, DTS includes an option for savingthe results of a parameterized query to a globalvariable, allowing you to perform functions such assaving disconnected Microsoft ActiveX DataObjects (ADO) recordsets in DTS.
Working with Named and MultipleInstances of SQL Server 2000
With Microsoft SQL Server 2000, you have theoption of installing multiple copies, or instances ofSQL Server on one computer. When setting up anew installation of SQL Server 2000 or maintainingan existing installation, you can specify it as:
A default instance of SQL Server.
This instance is identified by the network name ofthe computer on which it is running. Applicationsusing client software from earlier versions of SQLServer can connect to a default instance. SQL
-
7/29/2019 PRJ_SOURABH
56/117
Server version 6.5 or SQL Server version 7.0servers can operate as default instances. However,a computer can have only one version functioning
as the default instance at a time.
A named instance of SQL Server.
This instance is identified by the network name ofthe computer plus an instance name, in the format\. Applicationsmust use SQL Server 2000 client components to
connect to a named instance. A computer can runany number of named instances of SQL Serverconcurrently. A named instance can run at thesame time as an existing installation of SQL Serverversion 6.5 or SQL Server version 7.0. The instancename cannot exceed 16 characters.A new instance name must begin with a letter, an
ampersand (&), or an underscore (_), and cancontain numbers, letters, or other characters. SQLServer sysnames and reserved names should notbe used as instance names. For example, the term"default" should not be used as an instance namebecause it is a reserved name used by Setup.Single and multiple instances of SQL Server 2000
(default or named) are available using the SQLServer 2000 Personal Edition, the SQL Server 2000Standard Edition, or the SQL Server 2000Enterprise Edition.Default Instances
-
7/29/2019 PRJ_SOURABH
57/117
You cannot install a default instance of SQL Server2000 on a computer that is also running SQLServer 7.0. You must either upgrade the SQL
Server 7.0 installation to a default instance of SQLServer 2000, or keep the default instance of SQLServer 7.0 and install a named instance of SQLServer 2000.You can install a default instance of SQL Server2000 on a computer running SQL Server 6.5, butthe SQL Server 6.5 installation and the defaultinstance of SQL Server 2000 cannot be running atthe same time. You must switch between the twousing the SQL Server 2000 vswitch commandprompt utility.Multiple InstancesMultiple instances occur when you have more thanone instance of SQL Server 2000 installed on onecomputer. Each instance operates independently
from any other instance on the same computer,and applications can connect to any of theinstances. The number of instances that can run ona single computer depends on resources available.The maximum number of instances supported inSQL Server 2000 is 16.When you install SQL Server 2000 on a computer
with no existing installations of SQL Server, Setupspecifies the installation of a default instance.However, you can choose to install SQL Server2000 as a named instance instead by clearing theDefault option in the Instance Name dialog box.
-
7/29/2019 PRJ_SOURABH
58/117
A named instance of SQL Server 2000 can beinstalled at any time: before installing the defaultinstance of SQL Server 2000, after installing the
default instance of SQL Server 2000, or instead ofinstalling the default instance of SQL Server 2000.Each named instance is made up of a distinct setof services and can have completely differentsettings for collations and other options. Thedirectory structure, registry structure, and servicenames all reflect the specific instance name youspecify.Working with Instances and Versions of SQLServerMultiple instances in Microsoft SQL Server2000 offer enhanced ways to work with earlierversions of Microsoft SQL Server already installedon your computer. You can leave previousinstallations intact, and also install and run SQL
Server 2000. For example, you can run SQL Serverversion 7.0 and a named instance of SQL Server2000 at the same time, or you can run SQL Serverversion 6.5 in a version switch configuration withSQL Server 2000. If you need to have threedifferent versions of SQL Server installed on thesame computer, there are several ways to
accomplish this.In addition, users of all editions of SQL Server canhave more than one instance of SQL Server 2000installed and running at once (multiple instances),as well as one or more earlier versions.
-
7/29/2019 PRJ_SOURABH
59/117
Considerations for using SQL Server 2000 incombination with previous installations include:Using SQL Server 6.5 with the default instance or
named instances of SQL Server 2000.Running SQL Server 7.0 with a named instance ofSQL Server 2000.Working with three versions of SQL Server: SQLServer 6.5, SQL Server 7.0, and SQL Server 2000.
Fundamentals of SQL Server 2000Architecture
Microsoft SQL Server 2000 is a family ofproducts that meet the data storage requirementsof the largest data processing systems andcommercial Web sites, yet at the same time canprovide easy-to-use data storage services to anindividual or small business.The data storage needs of a modern corporation orgovernment organization are very complex. Someexamples are:Online Transaction Processing (OLTP) systemsmust be capable of handling thousands of ordersplaced at the same time.Increasing numbers of corporations areimplementing large Web sites as a mechanism for
their customers to enter orders, contact theservice department, get information aboutproducts, and for many other tasks that previouslyrequired contact with employees. These sites
-
7/29/2019 PRJ_SOURABH
60/117
require data storage that is secure, yet tightlyintegrated with the Web.Organizations are implementing off-the-shelf
software packages for critical services such ashuman resources planning, manufacturingresources planning, and inventory control. Thesesystems require databases capable of storing largeamounts of data and supporting large numbers ofusers.Organizations have many users who must continueworking when they do not have access to thenetwork. Examples are mobile disconnected users,such as traveling sales representatives or regionalinspectors. These users must synchronize the dataon a notebook or laptop with the current data inthe corporate system, disconnect from thenetwork, record the results of their work while inthe field, and then finally reconnect with the
corporate network and merge the results of theirfieldwork into the corporate data store.Managers and marketing personnel needincreasingly sophisticated analysis of trendsrecorded in corporate data. They need robustOnline Analytical Processing (OLAP) systems easilybuilt from OLTP data and support sophisticated
data analysis.Independent Software Vendors (ISVs) must be ableto distribute data storage capabilities withapplications targeted at individuals or smallworkgroups. This means the data storage
-
7/29/2019 PRJ_SOURABH
61/117
mechanism must be transparent to the users whopurchase the application. This requires a datastorage system that can be configured by the
application, and then tune itself automatically sothat the users do not need to dedicate databaseadministrators to constantly monitor and tune theapplicationSQL Server and XML SupportExtensible Markup Language (XML) is a hypertextprogramming language used to describe thecontents of a set of data and how the data shouldbe output to a device or displayed in a Web page.Markup languages originated as ways forpublishers to indicate to printers how the contentof a newspaper, magazine, or book should beorganized. Markup languages for electronic dataperform the same function for electronicdocuments that can be displayed on different
types of electronic gear.Both XML and the Hypertext Markup Language(HTML) are derived from Standard GeneralizedMarkup Language (SGML). SGML is a very large,complex language that is difficult to fully use forpublishing data on the Web. HTML is a moresimple, specialized markup language than SGML,
but has a number of limitations when working withdata on the Web. XML is smaller than SGML andmore robust than HTML, so is becoming anincreasingly important language in the exchange
-
7/29/2019 PRJ_SOURABH
62/117
of electronic data through the Web orintracompany networks.In a relational database such as Microsoft SQL
Server 2000, all operations on the tables in thedatabase produce a result in the form of a table.The result set of a SELECT statement is in the formof a table. Traditional client/server applicationsthat execute a SELECT statement process theresults by fetching one row or block of rows fromthe tabular result set at a time and mapping thecolumn values into program variables. Webapplication programmers, on the other hand, aremore familiar with working with hierarchicalrepresentations of data in XML or HTMLdocuments.SQL Server 2000 introduces support for XML.These new features include:The ability to access SQL Server through a URL.
Support for XML-Data schemas and the ability tospecify XPath queries against these schemas.The ability to retrieve and write XML data:Retrieve XML data using the SELECT statementand the FOR XML clause.Write XML data using the OpenXML rowsetprovider.
Enhancements to the Microsoft SQL Server 2000OLE DB provider (SQLOLEDB) that allow XMLdocuments to be set as command text and toreturn result sets as a streamDatabase Architecture
-
7/29/2019 PRJ_SOURABH
63/117
Microsoft SQL Server 2000 data is stored indatabases. The data in a database is organizedinto the logical components visible to users. A
database is also physically implemented as two ormore files on disk.When using a database, you work primarily withthe logical components such as tables, views,procedures, and users. The physicalimplementation of files is largely transparent.Typically, only the database administrator needs towork with the physical implementation.
Each instance of SQL Server has four systemdatabases (master, model, tempdb, and msdb) andone or more user databases. Some organizationshave only one user database, containing all thedata for their organization. Some organizationshave different databases for each group in their
organization, and sometimes a database used by asingle application. For example, an organizationcould have one database for sales, one for payroll,one for a document management application, andso on. Sometimes an application uses only onedatabase; other applications may access severaldatabases.
It is not necessary to run multiple copies of theSQL Server database engine to allow multipleusers to access the databases on a server. Aninstance of the SQL Server Standard or EnterpriseEdition is capable of handling thousands of users
-
7/29/2019 PRJ_SOURABH
64/117
working in multiple databases at the same time.Each instance of SQL Server makes all databasesin the instance available to all users that connect
to the instance, subject to the defined securitypermissions.When connecting to an instance of SQL Server,your connection is associated with a particulardatabase on the server. This database is called thecurrent database. You are usually connected to adatabase defined as your default database by thesystem administrator, although you can useconnection options in the database APIs to specifyanother database. You can switch from onedatabase to another using either the Transact-SQLUSE database_name statement, or an API functionthat changes your current database context.SQL Server 2000 allows you to detach databasesfrom an instance of SQL Server, then reattach
them to another instance, or even attach thedatabase back to the same instance. If you have aSQL Server database file, you can tell SQL Serverwhen you connect to attach that database file witha specific database name.English Query FundamentalsUsing English Query, you can turn your relational
databases into English Query applications, whichallow end users to pose questions in Englishinstead of forming a query with an SQL statement.The English Query Model Editor appears within theMicrosoft Visual Studio version 6.0
-
7/29/2019 PRJ_SOURABH
65/117
development environment. From there, you canchoose one of the English Query project wizards,the SQL Project Wizard or the OLAP Project Wizard,
to automatically create an English Query projectand model. After the basic model is created, youcan refine, test, and compile it into an EnglishQuery application (*.eqd), and then deploy it (forexample, to the Web).
Creating an English Query Project and ModelUsing the SQL Project Wizard or the OLAP Project Wizard, you incorporate thedatabase structure (table names, field names, keys, and joins) or cube information
of the database into a project and a model.
-
7/29/2019 PRJ_SOURABH
66/117
A model contains all the information needed for an English Query application,including the database structure, or schema, of the underlying SQL database orcube and the semantic objects (entities and relationships). You also defineproperties for an application and add entries to the English Query dictionary, as wellas manually add and modify entities and relationships while testing questions andset other options to expand the model.
Creating Entities and Relationships
With the wizards, semantic objects are automatically created for the model. Theseinclude entities and relationships (with phrasings such as customers buy products orCustomer_Names are the names of customers). Entities are usually represented bytables, fields, and OLAP objects.
-
7/29/2019 PRJ_SOURABH
67/117
An entity is a real-world object, referred to by a noun (person, place, thing, or idea),for example: customers, cities, products, shipments, and so forth. In databases,entities are usually represented by tables, fields, and Analysis Services objects.
Relationships describe what the entities have to do with one another, for example: customers
purchaseproducts. Command relationships are not represented in the database but refer to
actions to be executed. For example, a command to a compact disc player can allow requests
such as "Play the album with song X on it."
-
7/29/2019 PRJ_SOURABH
68/117
Deploying an English Query Application
You can deploy an English Query application in several ways, including within a Microsoft
Visual Basic or Microsoft Visual C++ application and on a Web page running on Microsoft
Internet Information Services (IIS). In the Web scenario, the interface of the application is with a
set of Active Server Pages (ASP).
-
7/29/2019 PRJ_SOURABH
69/117
Troubleshooting Overview
As a starting point to troubleshooting a problem inMicrosoft SQL Server 2000, you may find thesolution in one of the online troubleshooters fromSQL Server Product Support Services (PSS). Formore information, see Online Troubleshooters fromPSS. In addition, review current error logs forinformation that may pinpoint the problem. Othercurrent information about troubleshooting SQLServer 2000 can be found on the FAQs & Highlights
-
7/29/2019 PRJ_SOURABH
70/117
for SQL Server page, available atMicrosoft Website.Error Logs
The error log in SQL Server 2000 providescomplete information about events in SQL Server.You may also want to view the MicrosoftWindows 2000 or Windows NT 4.0 applicationlog, which provides an overall picture of eventsthat occur on the Windows NT 4.0 and Windows2000 operating systems, as well as events in SQLServer and SQL Server Agent. Both logs includeinformational messages (such as startup data),and both record the date and time of all eventsautomatically.SQL Server events are logged according to the wayyou start SQL Server.When SQL Server is started as a service under theWindows 2000 or Windows NT 4.0 operating
system, events are logged to the SQL Server errorlog, to the Windows 2000 or Windows NTapplication log, or to both logs.When SQL Server is started from the commandprompt, events are logged to the SQL Server errorlog and to standard output (typically the monitor,unless output has been redirected elsewhere)..
http://www.microsoft.com/isapi/redir.dll?prd=SQL&Sbp=FAQs%20and%20Highlights%20for%20SQL%20Serverhttp://www.microsoft.com/isapi/redir.dll?prd=SQL&Sbp=FAQs%20and%20Highlights%20for%20SQL%20Serverhttp://www.microsoft.com/isapi/redir.dll?prd=SQL&Sbp=FAQs%20and%20Highlights%20for%20SQL%20Serverhttp://www.microsoft.com/isapi/redir.dll?prd=SQL&Sbp=FAQs%20and%20Highlights%20for%20SQL%20Server -
7/29/2019 PRJ_SOURABH
71/117
SYSTEM DEVELOPMENTMETHODOLOGY
1. Initiation PhaseThe initiation of a system (or project) begins
when a business need or opportunity is identified.A Project Manager should be appointed to managethe project. This business need is documented in aConcept Proposal. After the Concept Proposal isapproved, the System Concept Development Phasebegins.
2. System Concept Development Phase
Once a business need is approved, theapproaches for accomplishing the concept arereviewed for feasibility and appropriateness. TheSystems Boundary Document identifies the scope
-
7/29/2019 PRJ_SOURABH
72/117
of the system and requires Senior Official approvaland funding before beginning the Planning Phase.
3. Planning Phase
The concept is further developed to describe howthe business will operate once the approvedsystem is implemented, and to assess how thesystem will impact employee and customerprivacy. To ensure the products and /or servicesprovide the required capability on-time and withinbudget, project resources, activities, schedules,tools, and reviews are defined. Additionally,security certification and accreditation activitiesbegin with the identification of system securityrequirements and the completion of a high levelvulnerability assessment.
4. Requirements AnalysisPhase Functional user requirements are formallydefined and delineate the requirements in terms ofdata, system performance, security, andmaintainability requirements for the system. Allrequirements are defined to a level of detailsufficient for systems design to proceed. Allrequirements need to be measurable and testableand relate to the business need or opportunityidentified in the Initiation Phase.
5. Design PhaseThe physical characteristics of the system aredesigned during this phase. The operatingenvironment is established, major subsystems andtheir inputs and outputs are defined, and
-
7/29/2019 PRJ_SOURABH
73/117
processes are allocated to resources. Everythingrequiring user input or approval must bedocumented and reviewed by the user. The
physical characteristics of the system are specifiedand a detailed design is prepared. Subsystemsidentified during design are used to create adetailed structure of the system. Each subsystemis partitioned into one or more design units ormodules. Detailed logic specifications are preparedfor each software module.
6. Development PhaseThe detailed specifications produced during thedesign phase are translated into hardware,communications, and executable software.Software shall be unit tested, integrated, andretested in a systematic manner. Hardware isassembled and tested.
7. Integration and Test PhaseThe various components of the system areintegrated and systematically tested. The usertests the system to ensure that the functionalrequirements, as defined in the functionalrequirements document, are satisfied by thedeveloped or modified system. Prior to installing
and operating the system in a productionenvironment, the system must undergocertification and accreditation activities.
8. Implementation Phase
-
7/29/2019 PRJ_SOURABH
74/117
Thesystem or system modifications are installedand made operational in a productionenvironment. The phase is initiated after the
system has been tested and accepted by the . Thisphase continues until the system is operating inproduction in accordance withthe defined userrequirements.
9. Operations and Maintenance PhaseThe system operation is ongoing. The system ismonitored for continued performance inaccordance with user requirements, and neededsystem modifications are incorporated. Theoperational system is periodically assessedthrough In-Process Reviews to determine how thesystem can be made more efficient and effective.Operations continue as long as the system can beeffectively adapted to respond to an organizationsneeds. When modifications or changes are
identified as necessary, the system may reenterthe planning phase.
10. Disposition PhaseThe disposition activities ensure the orderlytermination of the system and preserve the vitalinformation about the system so that some or all ofthe information may be reactivated in the future if
necessary. Particular emphasis is given to properpreservation of the data processed by the system,so that the data is effectively migrated to anothersystem or archived in accordance with applicable
-
7/29/2019 PRJ_SOURABH
75/117
records management regulations and policies, forpotential future access.
SDLC OBJECTIVES To reduce the risk of project failure
-
7/29/2019 PRJ_SOURABH
76/117
To consider system and data requirementsthroughout the entire life of the system
To identify technical and management issuesearly
To disclose all life cycle costs to guide businessdecisions
To foster realistic expectations of what thesystems will and will not provide
To provide information to better balanceprogrammatic, technical, management, andcost aspects of proposed system developmentor modification
To encourage periodic evaluations to identifysystems that are no longer effective
To measure progress and status for effectivecorrective action
To support effective resource management andbudget planning
To consider meeting current and future
business requirements Key Principles
This guidance document refines traditionalinformation system life cycle managementapproaches to reflect the principles outlined in thefollowing subsections. These are the foundationsfor life cycle management.
This SDLC describes an overall structuredapproach to information management. Primaryemphasis is placed on the information and systemsdecisions to be made and the proper timing ofdecisions. The manual provides a flexible
-
7/29/2019 PRJ_SOURABH
77/117
framework for approaching a variety of systemsprojects. The framework enables systemdevelopers, project managers, program/account
analysts, and system owners/users to combineactivities, processes, and products, as appropriate,and to select the tools and methodologies bestsuited to the unique needs of each project.
1. Support the use of an Integrated Product Team
The establishment of an Integrated Product Team
(IPT) can aid in the success of a project. An IPT is amultidisciplinary group of people who support theProject Manager in the planning, execution,delivery and implementation of life cycle decisionsfor the project. The IPT is composed of qualifiedempowered individuals from all appropriatefunctional disciplines that have a stake in the
success of the project. Working together in aproactive, open communication, team orientedenvironment can aid in building a successfulproject and providing decision makers with thenecessary information to make the right decisionsat the right time.
2. Each System Project must have a Program
Sponsor
To help ensure effective planning, management,and commitment to information systems, eachproject must have a clearly identified program
-
7/29/2019 PRJ_SOURABH
78/117
sponsor. The program sponsor serves in aleadership role, providing guidance to the projectteam and securing, from senior management, the
required reviews and approvals at specific points inthe life cycle. An approval from seniormanagement is required after the completion ofthe first seven of the SDLC phases, annually duringOperations and Maintenance Phase and six-monthsafter the Disposition Phase. Senior managementapproval authority may be varied based on dollarvalue, visibility level, congressional interests or acombination of these.
The program sponsor is responsible foridentifying who will be responsible for formallyaccepting the delivered system at the end of theImplementation Phase.
3. A Single Project Manager must be Selected for
Each System ProjectThe Project Manager has responsibility for
the success of the project and works through aproject team and other supporting organizationstructures, such as working groups or user groups,to accomplish the objectives of the project.Regardless of organizational affiliation, the Project
Manager is accountable and responsible forensuring that project activities and decisionsconsider the needs of all organizations that will beaffected by the system. The Project Managerdevelops a project charter to define and clearlyidentify the lines of authority between and within
-
7/29/2019 PRJ_SOURABH
79/117
the agencys executive management, programsponsor, (user/customer), and developer forpurposes of management and oversight.
4. A Comprehensive Project Management Plan isRequired for Each System Project
The project management plan is a pivotalelement in the successful solution of aninformation management requirement. The projectmanagement plan must describe how each lifecycle phase will be accomplished to suit thespecific characteristics of the project. The project
management plan is a vehicle for documenting theproject scope, tasks, schedule, allocated resources,and interrelationships with other projects. The planis used to provide direction to the many activitiesof the life cycle and must be refined and expandedthroughout the life cycle.5. Specific Individuals must be assigned to Perform
Key Roles throughout the Life Cycle Certain roles are considered vital to a successfulsystem project and at least one individual must bedesignated as responsible for each key role.Assignments may be made on a full- or part-timebasis as appropriate. Key roles includeprogram/functional management, qualityassurance, security, telecommunicationsmanagement, data administration, databaseadministration, logistics, financial, systemsengineering, test and evaluation, contractsmanagement, and configuration management. Formost projects, more than one individual should
-
7/29/2019 PRJ_SOURABH
80/117
represent the actual or potential users of thesystem (that is, program staff) and should bedesignated by the Program Manager of the
program and organization
FEASIBILITY STUDYA feasibility study is conducted to select the
best system that meets performance requirement.This entails an identification description, an
evaluation of candidate system and the selectionof best system for he job. The system requiredperformance is defined by a statement ofconstraints, the identification of specific systemobjective and a description of outputs.The key consideration in feasibility analysis are :
-
7/29/2019 PRJ_SOURABH
81/117
1. Economic Feasibility:2. Technical Feasibility :
3. Operational Feasibility:
Economical feasibility
It looks at the financial aspects of the project.It determines whether the management hasenough resources and budget to invest in theproposed system and the estimated time for therecovery of cost incurred. It also determineswhether it is worth while to invest the money in
the proposed project. Economic feasibility isdetermines by the means of cost benefitanalysis.The proposed system is economicallyfeasible because the cost involved in purchasingthe hardware and the software are withinapproachable. The personal cost like salaries ofemployees hired are also nominal, because
working in this system need not required a highlyqualified professional. The operating-environmentcosts are marginal. The less time involved alsohelped in its economical feasibility. It was observedthat the organization has already using computersfor other purpose, so that there is no additionalcost to be incurred for adding this system to itscomputers.The backend required for storing other details isalso the same database that is Sql. The computersin the organization are highly sophisticated anddont needs extra components to load thesoftware. Hence the organization can implement
-
7/29/2019 PRJ_SOURABH
82/117
the new system without any additionalexpenditure. Hence, it is economically feasibleThe result of the feasibility study is a formal
proposal. This is simply report-a formal documentdetailing the nature and the scope of the proposedsolution. The proposals summarize what is knownand what is going to be done. Three keyconsiderations are involved in the feasibilityanalysis: economic, technical and operationalbehavior.2.3.1 Economic Feasibility: Economic analysis isthe most frequently used method for evaluatingthe effectiveness of a candidate system. Moredetermine the benefits and the saving that areexpressed from a candidate system and comparethem costs. If benefits outweigh costs. Otherwise,further justification or alterations in the proposedsystem will have to be made if it is to have a
chance of being approved. This is an ongoing effortthat improves in accuracy at each phase of thesystem life cycle.2.3.2 Technical Feasibility: Technical feasibilitycenter around the existing computer systemhardware etc. and to what extent it can supportthe proposed addition. For example, if the current
computer is operating at 80% capacity - anarbitrary ceiling then running another applicationcould over load the system or require additionalhardware. This involves financial consideration toaccommodate technical enhancements. If the
-
7/29/2019 PRJ_SOURABH
83/117
budget is a serious constraint then the project isjudged not feasible.2.3.3 Operational Feasibility: It is common
knowledge that computer installations have something to do with turnover, transfers, retraining andchanges in employee job status. Therefore, it isunderstandable that the introduction of acandidate system requites special efforts toeducate, sell, and train the staff on new ways ofconducting business.
Technical FeasibilityIt is a measure of the practically of a specific
technical solution and the availability of technicalresources and expertiseThe proposed system uses Java as front-end andSql server 2003 as back-end tool.Oracle is a popular tool used to design and develop
database objects such as table views, indexes.The above tools are readily available, easy to workwith and widely used for developing commercialapplication.
Hardware used in this project are- p4processor 2.4GHz, 128 MB RAM, 40 GB hard disk,floppy drive. These hardware were already
available on the existing computer system. Thesoftware like Sql Server 2003, iis,.net frameworkand operating system WINDOWS-XP used werealready installed On the existing computersystem. So no additional hardware and softwarewere required to purchase and it is technically
-
7/29/2019 PRJ_SOURABH
84/117
feasible. The technical feasibility is in employingcomputers to the organization. The o