Automatic Question Paper

Embed Size (px)

DESCRIPTION

very useful

Citation preview

IntroductionOur Project is Automatic Paper Generation System which will enable college authorities to automatically Generate Question Papers out of existing Question Bank in the Database.The system will have capability to process different unique sets of papers very automatically.CHAPTER 1SYSTEMDEVELOPMENTLIFE CYCLE1. System Development Life CycleThe basic idea of software development life cycle (SDLC) is that there is a well defined process by which an application is conceived, developed and implemented. The phases in the SDLC provide a basis for the management and control because they define segments of the flow of work, which can be identified for the managerial purpose and specifies the documents or other deliveries to be produced in each phase.System Development revolves around a life cycle that begins with the recognition of user needs. In order to develop good software, it has to go through different phases. There are various phases of the System Development Life Cycle for the project and different models for software development, which depict these phases. We decided to use waterfall model, the oldest and the most widely used paradigm for software engineering. The Various relevant stages of the System Life Cycle of this Application Tool are depicted in the following flow diagram.SYSTEM ANAYLSISSYSTEM DESIGNCODINGSYSTEM TESTINGSYSTEMSYSTEM MAINTENANCELet us have a look on each of the above activities:1. System AnalysisSystem Analysis is the process of diagnosing situations, done with a defiant aim, with the boundaries of the system kept in mind to produce a report based on the findings. Analysis is fact-finding techniques where problem definition, objective, system requirement specifications, feasibility analysis and cost benefit analysis are carried out. The requirement of both the system and the software are document and reviewed with the user.2. System DesignSystem Design is actually a multistep process that focuses on four distinct attributes of a program: data structures, software architecture, interface representations, and procedural (algorithmic) detail. System design is concerned with identifying the software components (Functions, data streams, and data stores), specifying relationships among components, specifying software structure, maintaining a record of design decisions and providing a blueprint for the implementation phase.3. CodingCoding step performs the translations of the design representations into an artificial language resulting in instructions that can be executed by the computer. It thus involves developing computer programs that meet the system specifications of design stage.4. System TestingSystem testing process focuses on the logical internals of the software, ensuring that all statements have been tested on the functional externals, that is conducting tests using various tests data to uncover errors that defined input will produce actual results that agree with required results.5. System ImplementationSystem Implementation is a process that includes all those activities that take place to convert an old system to a new system. The new system may be totally new system replacing the existing system or it may be major modification to the existing system. Coding performs the translations of the design representations into an artificial language resulting in instructions that can be executed by the computer. It thus involves developing computer programs that meet the system design specifications. System implementation involves the translation of the design specifications into source code and debugging, documentation and unit testing of the source code.6. System MaintenanceMaintenance is modification of a software product after delivery to correct faults to improve performance or to adopt the product to a new operating environment. Software maintenance canot be avoided due to ware & tear caused by users. Some of the reasons for maintaining the software are1. Over a period of time, software original requirements may change.Errors undetected during software development may be found during user & require correction. With time new technologies are introduced such as hardware, operating system etc. The software therefore must be modified to adapt new operating environment. Type of Software MaintenanceCorrective Maintenance: This type of maintenance is also called bug fixing that may observed while the system is in use i.e correct reported errors. Adaptive Maintenance: This type of maintenance is concern with the modification required due to change in environment. (i.e external changes like use in different hardware platform or use different O.S. Perfective Maintenance: Perfective maintenance refers to enhancement to the software product there by adding or support to new features or when user change different functionalities of the system according to customer demands making the product better, faster with more function or reports. Preventive Maintenance: This type of maintenance is done to anticipate future problems and to improve the maintainability to provide a better basis for future enhancement or business changes. SYSTEM ANAYLSIS1.1.1 Problem DefinitionOur Project is Automatic Paper Generation System which will enable college authorities to automatically Generate Question Papers out of existing Question Bank in the Database.The system will have capability to process different unique sets of papers veryautomatically., also the system will provide notifications regarding any file delete etc.1.1.2 Proposed SystemThe Proposed system will have the following module:Login Module: This module will enable users to login into the system and then based on the type of user, grant the user appropriate type of functionality. Basically the system will provide access to General Users(Faculty) and Administrative Users(Exam Section) Faculty Module: This module will alow teachers to create the questions in the Question Bank. The Teachers can enter questions into the system alongwith the chapters. The Teachers can set Topics/Chapters Weightage in the examination and then can enter different questions in a topic and set the maximum marks for that particular question. Exam Generation Module: This module will enable examination section i.e. admin to generate question apers frm the database that has been created by faculty. The examiner needs to provide maximum marks associated with paper of particular class and the system will automatically create the question paper taking in consideration the weightage of each and every topic and accordingly will select the questions without repeating any question. Export Wizard Module: This module will enable the administrator to export the generated question paper into PDF or Word Format. 1.1.3 Significance of ProjectThese days information technology has become a way of life thus there was a much need for automation of question paper setting process in colleges thats why we have chosen this project.1.1.4 Advantages of the Proposed SystemThe various advantages of the proposed System are:The Software will empower the College with a powerful tool to generate Question Papers in a very short span of time thus saving a lot of their precious time. The Authorities have the flexibility to generate class tests, unit tests, terminal tests, and final tests. The teachers can add / edit / delete the questions generated by this software as per their own requirements or parameters. Questions are generated dynamically, so College Authorities have variety of questions and without any repetition. Different Sets of Papers without Questions in Different Sequence Can be generated. The Question Papers are stored in Database so any time old question paper can be extracted 1.1.5 REQUIREMENT ANALYSISSoftware requirement analysis is a software-engineering task that bridges the gap between system level software allocation and software design. For Developing our Travel Portal in-depth analysis was deon. The analysis was divided into the following three Parts.Problem Recognition Evaluation and Synthesis Specification & Review Problem RecognitionThe aim of the poroject was understood and through research was done on internet to get a deep insight of how the proposed system will work, we went to different travel related sites and understood their working. We recorded what all features will be required when we build our website like for eg. We need to keep a database of destinations, Travel Agents and Hotels should be able to register and post their data online etc. All these features were noted down so that they could be incorporated in our application.Evaluation and SynthesisProblem evaluation and solution synthesis was the next major area of effort. It was in this step that all externally observable data objects, evaluation of flow and content of information was defined. It was decided in this phase that how our application will look and works, what parameters it will take and what it will return.Specification & ReviewThe main objective is to improve the quality of software that can be done by inspection or walkthrough of formal technical reviews. The main objective isTo uncover errors in function, logfics or implementation. Verify software under revies to meet requirement specification. Ensure that software has been represented according to predefined standards. Achive software development in uniform manner Make projexct more meaningfull. 1.1.6 FEASIBILITY STUDYThe feasibility study is carried out to test if the proposed system is worth being implemented. Given unlimited and infinite time, all projects are feasible. Unfortunately such resources and time are not possible in real life situations. Hence it becomes both necessary and prudent to evaluate the feasibility of the project at the earliest possible time in order to avoid unnecessarily wastage of time, effort and professional embarrassment over an ill conceived system. Feasibility study is a test of system proposed regarding its work ability, impact on the organization ability to meet the user needs and effective use of resources.The main objective of feasibility study is to test the technical, operational and economical feasibility of developing a computer system Application.The following feasibility studies were carried out for the proposed system:Economic Feasibility: An evaluation of development cost weighed against the income of benefit derived from the developed system. Here the development cost is evaluated by weighing it against the ultimate benefits derived from the new system. The proposed system is economically feasible if the benefits obtained in the long run compensate rather than overdo the cost incurred in designing and implementing. In this case the benefits outweigh the cost that makes the system economically feasible. Technical Feasibility: A study of function performance and constraints that may affect the ability to achieve the acceptable system. A system is technically feasible, if it can be designed and implemented within the limitations of available resources like funds, hardware, software etc. The considerations that are normally associated with technical feasibility include development risk, resources availability and technology. Management provides latest hardware and software facilities for successful completion of the project. The proposed system is technically feasible as the Technology we are using to implement the Project (i.e. ASP.NET) is fully capable to implement our projects requirement analysis that was performed in the analysis section. Operational Feasibility: The Project is Operationally Feasilbe as it can be implemented easily in the college computer Lab. Schedule Feasibility: Evaluates the time taken in the development of the project. The system had schedule feasibility. SYSTEM DESIGNDESIGN CONCEPTS 1.2.1The design of an information system produces the detail that state how a system will meet the requirements identified during system analysis. System specialists often refer to this stage as Logical Design, in contrast to the process of development program.software, which is referred to as Physical DesignSystem Analysis begins process by identifying the reports and the other outputs the system will produce. Then the specific on each are pin pointed. Usually, designers sketch the form or display as they expect it to appear when the system is complete. This may be done on a paper or computer display, using one of the automated system tools available. The system design also describes the data to be input, calculated or stored. Individual data items and calculation procedures are written in detail. The procedure.tells how to process the data and produce the outputDESIGN OBJECTIVES 1.2.2:The following goals were kept in mind while designing the system.To reduce the manual work required to be done in the existing systemTo avoid errors inherent in the manual working and hence make the outputs.consistent and correctTo improve the management of permanent information of the Computer center by keeping it in properly structured tables and to provide facilities to update this.information efficiently as possibleTo make the system completely menu-driven and hence user friendly, and hence user friendly, this was necessary so that even non-programmers could use the.system efficientlyTo make the system completely compatible i.e., it should fit in the total integrated.systemTo design the system in such a way that reduced future maintenance and.enhancement times and efforts.To make the system reliable, understandable and cost effectiveDESIGN MODULE 1.2.3Login Module: This module will enable users to login into the system and then based on the type of user, grant the user appropriate type of functionality. Basically the system will provide access to General Users(Faculty) and Administrative Users(Exam Section) Faculty Module: This module will alow teachers to create the questions in the Question Bank. The Teachers can enter questions into the system alongwith the chapters. The Teachers can set Topics/Chapters Weightage in the examination and then can enter different questions in a topic and set the maximum marks for that particular question. Exam Generation Module: This module will enable examination section i.e. admin to generate question apers frm the database that has been created by faculty. The examiner needs to provide maximum marks associated with paper of particular class and the system will automatically create the question paper taking in consideration the weightage of each and every topic and accordingly will select the questions without repeating any question. Export Wizard Module: This module will enable the administrator to export the generated question paper into PDF or Word Format. SYSTEM DESIGNThe design stage takes the final specification of the system from analysis stages and finds the best way of filing them, given the technical environment and previous decision on required level of automation.The system design is carried out in two phases:Architectural Design (High Level Design) Detailed Design (Low Level Design) 1.2.4 ARCHITECTURAL DESIGNThe high level Design maps the given system to logical data structure. Architectural design involves identifying the software component, decoupling and decomposing the system into processing modules and conceptual data structures and specifying the interconnection among components. Good notation can clarify the interrelationship and interactions if interest, while poor notation can complete and interfere with good design practice. A data flow-oriented approach was used to design the project. This includes Entity Relationship Diagram (ERD) and Data Flow Diagrams (DFD).Figure 1Figure 2Entity Relationship Diagram One of the best design approaches is Entity Relationship Method. This design approach is widely followed in designing projects normally known as Entity Relationship Diagram (ERD).ERD helps in capturing the business rules governing the data relationships of the system and is a conventional aid for communicating with the end users in the conceptual design phase. ERD consists of:Entity It is the term use to describe any object, place, person, concept, activity that the enterprise recognizes in the area under investigation and wishes to collect and store data. It is diagrammatically represented as boxes. Attribute They are the data elements that are used to describe the properties that distinguish the entities. Relationship It is an association or connection between two or more entities. They are diagrammatically represented as arrows. A Unary relationship is a relationship between instances of the same entity. A Binary relationship is a relationship between two entities.A N-ary relationship is a relationship among N entities. It is defined only when the relationship does have a meaning without the participation of all the N entities.Degree of Relationship An important aspect of relationship between two or more entities is the degree of relationship. The different relationships recognized among various data stores in the database are: One-to-One (1:1)It is an association between two entities. For example, each student can have only one Roll No.One-to-Many (1:M)It describes entities that may have one or more entities related to it. For example, a father may have one or many children.Many-to-Many (M:M)It describes entities that may have relationships in both directions. This relationship can be explained by considering items sold by Vendors. A vendor can sell many items and many vendors can sell each item.ERD representation of the project is given below. It follows Chens convention in which entities are represented as rectangles and relationships as diamonds.Figure 3Figure 4Entity Relationship DiagramContext Analysis Diagram Context Analysis Diagram (CAD) is the top-level data flow diagram, which depicts the overview of the entire system. The major external entities, a single process and the output data stores constitute the CAD. Though this diagram does not depict the system in detail, it presents the overall inputs, process and the output of the entire system at a very high level. The Context Analysis Diagram if the project is given ahead.Figure 5Context LevelData Flow DiagramData Flow Diagrams A Data Flow Diagram (DFD) is a graphical tool used to describe and analyze the movement of data through a system manual or automated including the processes, stores of data and delays in the system. They are central tools and the basis from which other components are developed. It depicts the transformation of data from input to output through processes and the interaction between processes.Transformation of data from input to output through processes logically and independent of physical components is called the DFD. The physical DFD shows the actual implementation and movement of data between people, departments and workstation.DFDs are an excellent mechanism of communicating with the customers during requirement analysis and are widely used for representing external and top-level internal design specification. In the Later situations, DFDs are quite valuable for establishing naming conventions and names of system components such as subsystems, files and data links.In a DFD there are four components:Sources or Destinations of data such as human, entities that interact with system, outside the system boundary, who form the source and the recipient of information are depicted in the form of a closed rectangle. Data flow is a packet of data. It identifies data flow. It is a pipeline through which information flows. It is depicted in DFD as an arrow with the pointer pointing in the direction of flow. This connecting symbol connects an entity, process and data stores. This arrow mark also specifies the sender and the receiver. Process depicts procedure, function or module that transform input data into output data. It is represented as a circle or a bubble with the procedure name and a unique number inside the circle. Data stores are the physical areas in the computers hard disk where a group of related data is stored in the form of files. They are depicted as an open-ended rectangle. The Data store is used either for storing data into the files or for reference purpose. Figure 6Figure 71.2.5 DETAILED DESIGNThe Low Level Design maps the logical model of the system to a physical database design. Tables created for the system Entities and Attributes were mapped into Physical tables. The name of the entity is taken as the table name.During detailed design phase, the database if any and programming modules are designed and detailed user procedures are documented. The interfaces between the System users and computers are also defined.1.2.5.1 APPLICATION DESIGNAfter the detailed problem definition and system analysis of the problem, it was thought of designing web based Computer designing. Simplicity is hard to design. It is difficult to design something that is technically sophisticated but appears simple to use. Any software product must be efficient, fast and functional but more important it must be user friendly, easy to learn and use. For designing good interface we should use the following principles.Clarity and consistency Visual feedback. Understanding the people. Good response. WORKING ENVIRONMENT2.1 Technical SpecificationsHARDWARE ENVIRONMENTPC with the following ConfigurationProcessor-Pentium-IV 3.0 GHzRAM-256 DDR 2 RAMHARD DISK-80 GBSOFTWARE ENVIRONMENTOperating System-Microsoft Windows XP.Backend-Microsoft AccessFrontend-ASP.NETCase Tool-Say Microsoft Word 2003, Ms Front PageTechnology Used: ASP.NETWe have used the Latest Technology from Microsoft: The ASP.NET to develop our Application.What are Web Applications?These applications provide content from a server to client machines over the Internet. Users view the Web application through a Web browser.How Web Applications WorkWeb applications use a client/server architecture. The Web application resides on a server and responds to requests from multiple clients over the Internet, as shown in Figure 1-1.Figure 1-1. ASP.NET Web application architectureOn the client side, the Web application is hosted by a browser. The applications user interface takes the form of Hypertext Markup Language (HTML) pages that are interpreted and displayed by the clients browser.On the server side, the Web application runs under Microsoft Internet Information Services (IIS). IIS manages the application, passes requests from clients to the application, and returns the applications responses to the client. These requests and responses are passed across the Internet using Hypertext Transport Protocol (HTTP). A protocol is a set of rules that describe how two or more items communicate over a medium, such as the Internet. Figure 1-2 shows how the client and server interact over the Internet.Figure 1-2. Client/server interaction in a Web applicationThe Web application composes responses to requests from resources found on the server. These resources include the executable code running on the server (what we traditionally think of as the application in MicrosoftWindows programming), Web forms, HTML pages, image files, and other media that make up the content of the application.Web applications are much like traditional Web sites, except that the content presented to the user is actually composed dynamically by executable, rather than being served from a static page stored on the server. Figure 1-3 shows how a Web application composes the HTML returned to a user.Figure 1-3. An ASP.NET Web application response from server resourcesThe executable portion of the Web application enables you to do many things that you cant do with a static Web site, such as:Collect information from the user and store that information on the server Perform tasks for the user such as placing an order for a product, performing complex calculations, or retrieving information from a database Identify a specific user and present an interface that is customized for that user Present content that is highly volatile, such as inventory, pending order, and shipment information This is only a partial list. Basically, you can do anything with a Web application that you can imagine doing with any client/server application.What makes a Web application special is that the client/server interaction takes place over the Internet.What ASP.NET ProvidesASP.NET is the platform that you use to create Web applications and Web services that run under IIS. ASP.NET is not the only way to create a Web application. Other technologies, notably the CGI, also enable you to create Web applications. What makes ASP.NET special is how tightly it is integrated with the Microsoft server, programming, data access, and security tools.ASP.NET provides a high level of consistency across Web application development. In a way, this consistency is similar to the level of consistency that Microsoft Office brought to desktop applications. ASP.NET is part of the .NET Framework and is made up of several components.Visual Studio .NET Web development tools. These include visual tools for designing Web pages and application templates, project management, and deployment tools for Web applications. The System.Web namespaces. These are part of the .NET Framework and include the programming classes that deal with Web-specific items such as HTTP requests and responses, browsers, and e-mail. Server and HTML controls. These are the user-interface components that you use to gather information from and provide responses to users. In addition to the preceding components, ASP.NET also uses the following, more general programming components and Windows tools. These items arent part of ASP.NET. However, they are key to ASP.NET programming.Microsoft Internet Information Services (IIS). As mentioned in the previous section, IIS hosts Web applications on the Windows server. The Microsoft Visual Basic .NET, Microsoft Visual C#, and Microsoft Visual J# programming languages. These three languages have integrated support in Visual Studio .NET for creating Web applications.The .NET Framework. This is the complete set of Windows programming classes, including the ASP.NET classes as well as classes for other programming tasks such as file access, data type conversion, array and string manipulation, and so on. Microsoft ADO.NET database classes and tools. These components provide access to Microsoft SQL Server and ODBC databases. Data access is often a key component of Web applications. Microsoft Application Center Test (ACT). This Visual Studio .NET component provides an automated way to stress-test Web applications. ASP.NET is the most complete platform for developing Web applications that run under IIS. However, it is important to remember that ASP.NET is not platform-independent. Because it is hosted under IIS, ASP.NET must run on Windows servers. To create Web applications that run on non-Windows/IIS servers, such as Linux/Apache, you must use other toolsgenerally CGI.Advantages of ASP.NETASP.NET has many advantages over other platforms when it comes to creating Web applications. Probably the most significant advantage is its integration with the Windows server and programming tools. Web applications created with ASP.NET are easier to create, debug, and deploy because those tasks can all be performed within a single development environmentVisual Studio .NET.ASP.NET delivers the following other advantages to Web application developers:Executable portions of a Web application compiled so they execute more quickly than interpreted scripts On-the-fly updates of deployed Web applications without restarting the server Access to the .NET Framework, which simplifies many aspects of Windows programming Use of the widely known Visual Basic programming language, which has been enhanced to fully support object-oriented programming Introduction of the new Visual C# programming language, which provides a type-safe, object-oriented version of the C programming language Automatic state management for controls on a Web page (called server controls) so that they behave much more like Windows controls The ability to create new, customized server controls from existing controls Built-in security through the Windows server or through other authentication/authorization methods Integration with ADO.NET to provide database access and database design tools from within Visual Studio .NET Full support for Extensible Markup Language (XML), cascading style sheets (CSS), and other new and established Web standards Built-in features for caching frequently requested Web pages on the server, localizing content for specific languages and cultures, and detecting browser capabilities Parts of a Web ApplicationA Web application consists of three parts: content, program logic, and Web configuration information. Table 1-2 summarizes these parts and gives examples of where they reside in an ASP.NET Web application.Table 1-2. Parts of an ASP.NET Web ApplicationPartTypes of filesDescriptionContent files determine the appearance of a WebWebforms,HTML, application. They can contain static text and imagesContentimages,audio, as well as elements that are composed on the fly byvideo, other datathe program logic (as in the case of a databasequery).The program logic determines how the applicationExecutablefiles, responds to user actions. ASP.NET Web applicationsProgram logic scriptshave a dynamic-link library (DLL) file that runs on theserver, and they can also include scripts that run onthe client machine.Webconfiguration The configuration files and settings determine howConfiguration file, style sheets, IIS the application runs on the server, who has access, settings how errors are handled, and other details.The Web form is the key element of a Web application. A Web form is a cross between a regular HTML page and a Windows form. It has the same appearance as and similar behavior to an HTML page, but it also has controls that respond to events and run code, like a Windows form.In a completed Web application, the executable portion of the Web form is stored in an assembly (.dll) that runs on the server under the control of the ASP.NET worker process (asp_wp.exe), which runs in conjunction with IIS.The content portion of the Web form resides in a content directory of the Web server, as shown in Figure 1-4.Figure 1-4. ASP.NET Web application parts on a Web serverWhen a user navigates to one of the Web forms from his or her browser, the following sequence occurs:IIS starts the ASP.NET worker process if it is not already running. The ASP.NET worker process loads the assembly associated with the Web form. The assembly composes a response to the user based on the content of the Web form that the user requested and any program logic that provides dynamic content. IIS returns the response to the user in the form of HTML. Once the user gets the requested Web form, he or she can enter data, select options, click buttons, and use any other controls that appear on the page. Some controls, such as buttons, cause the page to be posted back to the server for event processing, and the sequence repeats itself, as shown in Figure 1-5. Figure 1-5. How the parts interactThis cycle of events is described in greater detail in Lesson 2 of Chapter 2, Creating Web Forms Applications.Web Form ComponentsWeb forms can contain several different types of components, as summarized in Table 1-3.Table 1-3. Components on a Web FormComponentExamplesDescriptionThese controls respond to user events byServerTextBox,Label,Button, runningevent procedureson theserver.Server controls have built-in features forcontrolsListBox,DropDownList, savingdata thatthe userentersbetweenDataGridpage displays. You use server controls todefine the user interface of a Web form.TheserepresentthestandardvisualHTMLText Area, Table,Image, elements provided in HTML. HTML controlscontrolsSubmitButton,Reset are useful when the more complete featureButtonset provided by server controls is not needed.SqlConnection,Data controls provide a way to connect to,Data controlsSqlCommand,perform commands on, and retrieve dataOleDbConnection,from SQL and OLE databases and XML dataOleDbCommand, DataSet files.SystemFileSystemWatcher,These components provide access to variousTable 1-3. Components on a Web FormComponentExamplesDescriptioncomponentsEventLog, MessageQueuesystem-level events that occur on the server.You use the server and HTML controls to create the user interface on a Web form. The data controls and system components appear on the Web form only at design time to provide a visual way for you to set their properties and handle their events. At run-time, data controls and system components do not have a visual representation. Figure 1-6 shows a Web form containing components.Figure 1-6. A Web form with componentsChapter 4, Creating a User Interface, provides more detail about using server and HTML controls on a Web form.The .NET FrameworkASP.NET is an important part of the .NET Framework, but it is just one part. Understanding what else the .NET Framework provides will help you program your ASP.NET application effectively and avoid writing new code to perform tasks that are already implemented within the .NET Framework.First, a little background. The .NET Framework is the new Microsoft programming platform for developing Windows and Web software. It is made up of two parts:An execution engine called the common language runtime (CLR) A class library that provides core programming functions, such as those formerly available only through the Windows API, and application-level functions used for Web development (ASP.NET), data access (ADO.NET), security, and remote management .NET applications arent executed the same way as the traditional Windows applications you might be used to creating. Instead of being compiled into an executable containing native code, .NET application code is compiled into Microsoft intermediate language (MSIL) and stored in a file called an assembly. At run time, the assembly is compiled to its final state by the CLR. While running, the CLR provides memory management, type-safety checks, and other run-time tasks for the application. Figure 1-7 shows how this works.Figure 1-7. How a .NET application runsApplications that run under the CLR are called managed code because the CLR takes care of many of the tasks that would have formerly been handled in the applications executable itself. Managed code solves the Windows programming problems of component registration and versioning (sometimes called DLL hell) because the assembly contains all the versioning and type information that the CLR needs to run the application. The CLR handles registration dynamically at run time, rather than statically through the system registry as is done with applications based on the Component Object Model (COM).The .NET class library provides access to all the features of the CLR. The.NET class library is organized into namespaces. Each namespace contains a functionally related group of classes. Table 1-4 summarizes the .NET namespaces that are of the most interest to Web application programmers.