INTRODUCTION
PROJECT OVERVIEWThis is a network based intelligent multiple-choice-question examination system; namedNetwork based Intell...
view the result at the same time. Thus the purpose of the application is to provide asystem that saves the efforts and tim...
•   Can generate various reports almost instantly when and where required.SCOPE       This project would be very useful fo...
 Student Aspect:          1. Requesting registration          2.                       Logging into the system.          ...
3.               Invitations for the appearance for the new test will be           mailed.                       ORGANIZAT...
Chinmaya believes in inculcating the values of discipline, integrity and hard work in thestudents. The Chinmaya culture em...
The faculty is the principal driver of change through their direct involvement inevery aspect of the Institute: academics,...
vision.          The young Janchechi was attracted to the sublime beauty of Vedanta and theprinciples espoused by Poojya S...
benefit.       Over the years its students have done well in life. While in college they garneredAll India ranks, State ra...
SYSTEM ANALYSIS
System Analysis refers to the process of examining a situation with the intent ofimproving it through better process and m...
Information Gathering            Users of the system            Presentations an docume nts using organization          ...
After login:    They will enter exam details like number of questions, positive marks.    Then they will enter the quest...
Functional requirements capture the intended behavior of the system. This behavior maybe expressed as services, tasks or f...
c. Time/Space Bounds                     d. Reliability                     e. Security                     f. Survivabili...
These are the most common problems of manual quiz system that rotated eachand every time of quiz held. For these causes th...
that will be flexible and will provide ease of work and will reduce the time for reportgeneration and other paper works.  ...
1. Server OS should be Windows NT/2000/XP.   2. Client PC should be Windows 9X/NT/WorkStation or Windows 2000 with lates...
2008, porting the database to another database server would require some developmenteffort.Acceptance Criteria          Th...
•   A system can be given a mark by checking the students answers, and give the       result as soon as students finish hi...
FEASIBILITY STUDY
User needs a network-based system, which will remove all the above-mentionedproblems that, the user is facing. The user wa...
Compared to the existing system the proposed system will provide a betterworking environment in which their will be ease o...
modules and so the errors if found, can be debugged very well and all the bugs can beremoved. Since the system uses networ...
SOFTWARE SELECTION AND JUSTIFICATION
HARDWARE SPECIFICATIONThe selection of hardware is very important in the existence andproper working of any software. When...
A hard disk drive (HDD; also hard drive, hard disk, or disk drive is a datastorage device used for storing and retrieving ...
We use monitors which give use better quality of vision of the data that is beingdisplayed.KEYBOARD       In computing, a ...
integrated circuits in packages typically less than four centimeters square, with hundredsof connecting pins.       Two ty...
WINDOWS XP       Windows XP is an operating system produced by Microsoft for use on personalcomputers, including home and ...
near-zero downtime. SQL Server 2008 also includes support for structured and semi-structured data, including digital media...
projection zone "edges". Approximately 70 methods are available to represent spatialoperations for the Open Geospatial Con...
True to its name, Microsoft SQL Servers primary query languages are T-SQL and ANSISQL       Prior to version 7.0 the code ...
Microsoft makes SQL Server available in multiple editions, with different featuresets and targeting different users. These...
Introduced in SQL Server 2012 and focusing on Self Service and CorporateBusiness Intelligence. It includes the Standard Ed...
(1 MB DLL footprint), it has a markedly reduced feature set compared to the othereditions. For example, it supports a subs...
SQL Server Fast Track is specifically for enterprise-scale data warehousingstorage and business intelligence processing, a...
Data storage       The main unit of data storage is a database, which is a collection of tables withtyped columns. SQL Ser...
("uniform extent") or share an extent with up to 7 more objects ("mixed extent"). A rowin a database table cannot span mor...
I/O operation is done in a background thread so that other operations do not have to waitfor the I/O operation to complete...
transaction logging). This enables SQL Server to ensure integrity of the data, even if thesystem fails.       On failure t...
includes two more lightweight mutual exclusion solutions - latches and spin locks -which are less robust than locks but ar...
of actions necessary to execute a query is called a query plan. There might be multipleways to process the same query. For...
the client every time (as it can be accessed by name), it reduces network traffic andsomewhat improves performance. Execut...
also provides access to the XML features in SQL Server, including XQuery support.These enhancements are also available in ...
Transaction replication       Each transaction made to the publisher database (master database) is synced outto subscriber...
algorithm, Naive Bayes algorithm, time series analysis, sequence clustering algorithm,linear and logistic regression analy...
Integration ServicesSQL Server Integration Services is used to integrate data from different data sources. Itis used for t...
full text indexes) and the full text query processor. The indexer scans through textcolumns in the database. It can also i...
SQLCMD was introduced with SQL Server 2005 and this continues with SQLServer 2008. Its predecessor for earlier versions wa...
Business Intelligence Development Studio        Business Intelligence Development Studio (BIDS) is the IDE from Microsoftu...
features including the Tabular Data Stream implementation, support for mirrored SQLServer databases, full support for all ...
to create simple GUI applications, but to also develop complex applications.Programming in VB is a combination of visually...
combination box will automatically display its list and allow the user to select anyelement. An event handler is called wh...
•   Boolean constant True has numeric value −1. This is because the Boolean data    type is stored as a 16-bit signed inte...
•   Bankers rounding as the default behavior when converting real numbers to       integers with the Round function ? Roun...
link libraries containing additional controls (then called "gizmos"), which later becamethe VBX interface.Timeline   •   P...
programs were able to import programs written in Visual Basic 4.0 to Visual       Basic 5.0, and Visual Basic 5.0 programs...
•   Visual Basic for Applications (VBA) is included in many Microsoft applications       (Microsoft Office), and also in m...
having a runtime adds an additional layer of interpretation. However, small amounts ofcode and algorithms can be construct...
DATA FLOW DIAGRAM       A DFD also known as ‘bubble chart’ has the purpose of clarifying systemrequirements and identifyin...
The data flow is used to describe the movement of information from one part ofthe system to another part. Flows represent ...
LEVEL 0 DFD for Network based Quiz SystemLEVEL 1 DFD for Network Based Quiz System
SYSTEM DESIGN       The system which is in making is developed by working on two differentmodules and combining them to wo...
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation
Upcoming SlideShare
Loading in …5
×

Documentation

1,518 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,518
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
61
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Documentation

  1. 1. INTRODUCTION
  2. 2. PROJECT OVERVIEWThis is a network based intelligent multiple-choice-question examination system; namedNetwork based Intelligent Quiz System (NIQS), for assessing students. It is a system bywhich students can appear in a quiz where there is no interaction between pencil andpaper rather interaction between computer and human being. We use the term intelligenthere as the system generates questions intelligently. There are many definitions ofintelligence but we use the term intelligence in the sense that the system generates the anew question of a quiz by depending on the result of the question last answered and forthe same quiz of a subject it generates different questions for different students. Thequestions vary student to student for the same quiz while they are sitting in the quiz atthe same time. Teachers can use the NIQS for evaluating students effectively, efficientlyand perfectly. Any university, college, school or educational institute can use thissystem for their organization to take quizzes. Today it is the more efficient and effectivemethod of assessing students. One of the main benefits of our system is automatedmarking, that is, teachers do not need to check the answer script as they do in manualquiz. It saves valuable time of a teacher. On the other hand, students can score accordingto his/her merit level and it will give feedback about a student in which side he/she isweak. In recent years, the use of this type of quiz systems has become quite popular dueto pressures of increasing class sizes and the need for more efficient and effectivemethods of assessing students.PURPOSE Network Based Exams System fulfills the requirements of the institutes toconduct the exams in a network. Many students can give exam simultaneously. They can
  3. 3. view the result at the same time. Thus the purpose of the application is to provide asystem that saves the efforts and time of both the institutes and the students.What is Network Based Intelligent Quiz System all about? Network Based Intelligent Quiz System is an application that establishes anetwork between the institutes and the students. Institutes enter on the application thequestions they want in the exam. These questions are displayed as a test to the eligiblestudents. The answers entered by the students are then evaluated and their score iscalculated and saved. This score then can be accessed by the institutes to determine thepassed students or to evaluate their performance. The system entitled “Network Based Intelligent Quiz System” is applicationsoftware, which aims at providing services to the institutes and providing them with anoption of selecting the eligible students by themselves. It is developed by using VisualBasic 6.0 technology and related database. This project assesses students by conducting objective quiz. The tests would behighly customizable. This project will enable educational institutes to conduct test andhave automated checking of answers based on the response by the candidates. Theproject allows faculties to create their own tests. It would enable educational institutes toperform tests, quiz and create feedback forms. It asks faculty to create his/her set ofquestions. The result of the response would be available to the faculty of the questionset. Further the result would also be mailed to the student. This project would be helpfulfor creating practice tests, say for educational institutes and as a feedback form. • Responses by the candidates will be checked automatically and instantly. • Network examination will reduce the hectic job of assessing the answers given by the candidates. • Being an integrated Network Examination System it will reduce paper work.
  4. 4. • Can generate various reports almost instantly when and where required.SCOPE This project would be very useful for educational institutes where regularevaluation of students’ is required. Further it can also be useful for anyone who requiresfeedback based on objective type responses Required software is for conducting network based `objective’ type examinationand providing immediate results. The system should satisfy the following requirements:  Administrator Aspect 1. Taking backup of the database 2. Editing/Deleting/Creating the database. 3. Adding or deleting faculty 4. Changing the super password.  Faculty Aspect 1. Logging into the system. 2. Sending invitations to specific student by mail 3. Accepting registrations of candidates 4. Creating a test 5. Posting questions in the above test 6. Posting multiple options to respective question 7. Marking correct answer within the given options 8. Time limit of the test if any. 9. Whether to randomize the questions 10. Whether to randomize the options displayed 11. To allow the test to be taken in practice mode where the correct answer is shown immediately after the candidate selects an option.
  5. 5.  Student Aspect: 1. Requesting registration 2. Logging into the system. 3. Edit user information. 4. Selecting the test. 5. Selecting whether the test to be taken in practice mode where the correct answer is shown immediately after the candidate selects an option. 6. Appearing for the examination. 7. Printing the result at the end of the examination. 8. Reviewing the given responses. 9. Changing password. 10. Resetting of forgotten password  Analysis 1. Authenticating users based on username and password 2. Recording candidates’ responses to every question 3. Checking whether the given response is correct or not 4. Keeping history of test reports of all users  Mailing 1. The reports are required to be mailed to the candidates on the registered mail address. 2. Temporary password will be mailed to the user incase the user forgets the password.
  6. 6. 3. Invitations for the appearance for the new test will be mailed. ORGANIZATION PROFILE Chinmaya Vidyapeet was started in 1995 in keeping with the ideals of thegreat visionary and sage, Swami Chinmayananda. The college has been housed in theoriginal school building of the Ernakulam Chinmaya Vidyalaya, a reverse L-shapedstructure on Warriam Road. The building saw the metamorphosis of the school into acollege in 1995 when the Vidyalaya was moved to Vaduthala. Thence, the Vidyapeetendeavored to maintain the highest standards in the field of higher education. At theinception itself, Chinmaya Vidyapeet had a dual educational scheme - that is B.Comcum CA/ACS which attracted many students. Every year its students won laurels andeven All India ranks in the CA and ACS courses.For the last six years, students from the college have been winning university ranks inthe B. B. M. degree course. Several have done well in the university sports and culturalfestivals obtaining top sports and grace marks. Some have even represented theuniversity at the national level. Though there is an emphasis on discipline, students areencouraged to take part in diverse range of activities and develop themselves in apositive way. The Vidyapeet seeks to impart the finest education in the field of Commerce,Management and Economics. It takes great pride in its faculty, which is drawn froma diverse stream. It hopes to imbibe in the students a sense of community, seriouspurpose, social commitment and high academic achievement. It is its endeavor toprovide a worthwhile experience to the students.
  7. 7. Chinmaya believes in inculcating the values of discipline, integrity and hard work in thestudents. The Chinmaya culture embodied by the students can only benefit society andthe nation. There is a dress code which is followed by all the students. The college uniformhas been designed by the first batch of students in 1995-1996 and continues tobe worn till date. Girls are requested to wear salwar, half sleeved, Kameeze andblack slip on footwear. Boys have to wear trousers, half-sleeved shirts and blackshoes. They have to be cleanly shaven and neatly attired. Punctuality and regular attendance are also important habits to be followed bythestudents. As per Government Order No.318/10/H.Edn.Dept of 16.2.2010 and UniversityOrder Circular No. DSS/AC.A1/2/195/2010 MOBILE PHONES are banned from thecollege campus and possession of the same liable for punishment. The college willconfiscate the phone and report the matter.Ragging is similarly prohibited by law. The Supreme Court has passed aruling making it a cognizant offence without fail and the University Circular NoA1/2/1647/2007 makes this legally enforceable. The college encourages students to interact in a friendly manner.Disciplinary action will be taken against any kind of VIOLENCE on the campusand verbal abuse is also disallowed. SMOKING, DRUGS and ALCOHOL areall prohibited on the campus.
  8. 8. The faculty is the principal driver of change through their direct involvement inevery aspect of the Institute: academics, governance, research, and consultancy. Theycombine the very highest standards of teaching and mentoring with diverse backgroundsas eminent entrepreneurs, policy makers, researchers, theoreticians and consultants. Therich diversity of their backgrounds installs in the students a continuous desire to achieveexcellence. The staff of Chinmaya is a dedicated group, ably assisted by a loyal non-teachingstaff. Several teachers have been with the college since its very inception and have beenpart of the development process. All of them share a common interest - the individualdevelopment of the students and work in cohesion. The faculty comprises 24 membersand is able to give individualized attention to the students. The staff has formedcommittees to advise students on various matters. They are highly experienced and havebeen responsible for the success of many of the students.DEPARTMENTSChinmaya Vidyapeet accommodates the following departments:-1. Department of English2. Department of Hindi3. Department of Mathematics4. Department of Economics5. Department of Commerce6. Department of Management7. Department of Computer Science. The college, like the school, was founded by Janaki N. Menon, one of SwamiChinmayanandaji’s oldest and earliest disciples. She was inspired by Gurudev toestablish institutions in Cochin which would be world class and reflect his wonderful
  9. 9. vision. The young Janchechi was attracted to the sublime beauty of Vedanta and theprinciples espoused by Poojya Swami Chinmayanandaji. When Gurudev came to Cochinin 1954 she and her sister Meena Haridas were inspired to work tirelessly for theMission, setting up Balavihars and eventually the Vidyalaya and Vidyapeet. Each brick of these institutions told the story of how they were establishedwithout taxing the parents. This great work was achieved by Janchechi and her youngersister Kamakshi Balakrishna whose name has become synonymous with education inKochi. Both school and college have endeavored to become centre of excellence andhave established themselves as a brand. Janchechi, as she was fondly called, believed in selfless services and was a greatKarma yogi. She left us in April 2002 but continues to inspire us by her work and ideals. The Chinmaya Mission, a world wide organization, is headed by H. H. SwamiTejomayananda, a direct disciple of Poojya Swami Chinmayanandaji. SwamiTejomayanandaji took over as Supreme Head in 1993, after the Samadhi of Gurudev Chinmaya seeks to form a class comprising of students drawn from differentbackgrounds but who all have a common goal of excellence and achievement. It believesin enhancing the educational experience for the students. The school and 12th standard /HSC marks are important. Serious consideration is also given to an applicant’s promiseof making a contribution to the class by way of a particular attainment, unusualacademic achievement or non-academic performance. The faculty also relies on a face-to-face meeting to assess the student’s potential, as there is no complete dependence onjust marks alone to admit a candidate. The guiding principle for selection is to ensure aneffective learning environment for students so that eventually society and public will
  10. 10. benefit. Over the years its students have done well in life. While in college they garneredAll India ranks, State ranks and University ranks in the CA stream, ACS examinationsand the BBM examinations. Several have attained positions of importance in variousindustries and promise to become harbingers of change in the country. It is a matter ofpride that the Chinmaya name and stamp evoke respect for us. ORGANIZATION CHART MANAGEMENT PRINCIPAL HEAD of DEPARTMENTS NON-TEACHING STAFF TEACHERS STUDENTS
  11. 11. SYSTEM ANALYSIS
  12. 12. System Analysis refers to the process of examining a situation with the intent ofimproving it through better process and methods. System analysis is, therefore,the process of gathering and interpreting facts, diagnosing problem and using theinformation to recommend information in system or in other words, it means a detailedexplanation or description. Before computerizing a system under consideration, it has tobe analyzed. We need to study how it functions currently, what are problems and whatare requirements that proposed software should meet. The main components of makingsoftware are: • System and software requirements analys is • Design and implementation of software • Ensuring, verifying and maintaining software integrity REQUIREMENT ANALYSIS I have divided my project into two modules. The first module that is theadministrator module handles the duties of the administrator, like, adding teachers andstudents, deleting the users, preparing rank lists, etc. The second module which is thequiz module enables the teachers added by the administrator to add new questions to thedatabase and to set an exam for the students. The students on the other hand can take theexam and the result will be available to them in a very short time.
  13. 13. Information Gathering  Users of the system  Presentations an docume nts using organization  Prospectus, manuals and the rulebooks, which specify how various activities are carried out in the organization  Evolving a method of obtaining information from identified source  Using information from module of organization  C o m p u t e r P r e s e n t a t i o n o f e x i s t i n g s ys t e m.PROBLEM DEFINITION Software has to be designed to conduct tests. Unlike other examination systems thissoftware should not be just for the students; instead it should also provide facility toInstitutes to host Tests/Exams. This will help institutes as:  There will be no need to get new software every time to conduct a test.Also like other software, it will help students by:  Saving the extra time of going to far away Exam Centre.  Students need not wait for their results.Also this software will remove the flaws of existing Manual Systems like:  Reducing the manual labour (Decreases Overheads).  Avoiding Mistakes Due To Human Error (Accurate).  Will Increase Efficiency and Save Time.  Will Allow Neat Handling Of Data Rather Than Error Prone Records.The institutes will register themselves with a unique login name and password; theunique id will be issued to the institutes by the website.
  14. 14. After login:  They will enter exam details like number of questions, positive marks.  Then they will enter the questions along with the answers which can later be deleted and edited.  Also they will enter the list of eligible candidates with their id names which can also be edited later.  Institutes will be able to view the students list along with their respective results.Also for students:  They will be able to login with their id, name and institute id.  They will be able to give the exam as per the details entered by respective institutes.  Also they will be able to view their scores after test finishes.  If already given the test then they will just be able to view their scores.  Other users can take sample tests to get feel and look of how the tests are conducted.Other key points:  Different set of questions will be given to different students.  The questions will be selected randomly from the database.FUNCTIONAL REQUIREMENTS It deals with the functionalities required from the system which are as follows:The software will help the colleges/organizations/companies to conduct their exams.Functional Requirements
  15. 15. Functional requirements capture the intended behavior of the system. This behavior maybe expressed as services, tasks or functions the system is required to perform. This whitepaper layout important concepts and discusses capturing functional requirements in sucha way that they can drive architectural decisions and be used to validate the architecture.Functional Requirements contains:  Identification of inputs that the system should accept and under different conditions.  Identification of outputs that the system will produce under different conditions  Identification of the data that the system should store which other systems might use.  The computations the system should perform.  Only authorized person can access related details.  The organization will register themselves on the software for conducting their exams.  Organizations can change their information regarding themselves.  The students can login through TEST-ID and PASSWORD and give their exams.  Administrator will be responsible for updating the site.  The organization can change questions and test papers whenever they want.Non Functional Requirements A. Portability B. Reliability. C. Performance I. Types of Non Functional Requirements are: a. Interface Requirements b. Performance Requirements
  16. 16. c. Time/Space Bounds d. Reliability e. Security f. Survivability g. Operating Requirements EXISTING SYSTEM Existing system here is manual i.e. all the transaction or the informationis recorded in the registers and as simple text files on the computers. If the person is inneed of particular information has to go through the registers and the text files and thenprepare the information needed by him manually.MANUAL QUIZ SYSTEM In the early days it was the most popular methods of assessing student. Even nowthe system is quite popular to the students as well as to the teacher. In this system thereare several problems that we face in a common way. Some of those problems are: 1. Manual system requires pen/ pencils and paper. 2. Teacher needs to spend time to script checking. 3. Student needs to wait to get their result up to the teacher finishes the script checking
  17. 17. These are the most common problems of manual quiz system that rotated eachand every time of quiz held. For these causes the popularity of manual system decreasesday by day and intelligent quiz system is taking the place of the manual system.Bottlenecks Identified in Existing SystemThe first problem is that there are loads of hard copied documents being generated. Thisbrings us to the age-old discussion of keeping information in the form databases versuskeeping the same on sheets of paper. Keeping the information in the form of hard-copieddocuments leads to the following problems: 1) Lack of space – It becomes a problem in itself to find space to keep the sheets of paper being generated as a result of the ongoing discussion. The documents being generated are too important to be ill-treated. 2) Filing poses a problem – Filing the documents categorically is a time consuming and tedious exercise. 3) Filtering is not easy – It becomes hard to filter relevant documents for the irrelevant ones if the count of the same crosses a certain manageable number. 4) Reviewing becomes time-consuming – All the process done manually at the centers and all the records are maintained on the papers. So the maintenance of the record is very difficult in the departments and as well as it’s very difficult for the workers to check the record. The Existing system is paper based, time consuming, monotonous, less flexible and provides a very hectic working schedule. The chance of loss of records is high and also record searching is difficult. Maintenance of the system is also very difficult and takes lot of time. 5) Result Processing is slow due to paper work and requirement of staff.Need for the New System To solve these problems they required a computerized system to handle all theworks. They required a web based application that will provide a working environment
  18. 18. that will be flexible and will provide ease of work and will reduce the time for reportgeneration and other paper works. PROPOSED SYSTEM In recent years, the use of network based quiz systems has become quite populardue to pressures of increasing class sizes, and the need for more efficient methods ofassessing distances students. This thing motivates me to work with network based quizsystem. I have also tried to eliminate the problem with general web based quiz systemand decided to create a net work based intelligent quiz system. In my project, I havetried to develop a “Network Based Intelligent Quiz System” which will be popular withboth the students and teachers.Aims and Objective The main purpose behind the proposed system is to provide a comprehensivecomputerized system, which can capture, collate and analyze the data from these wardsand evaluate the impact of the program.Constraints, Assumptions, DependenciesConstraints As this system is based on client server technology, so for normal operationminimum of 64 MB RAM will be required on all clients.Assumptions In general it has been assumed that the user has complete knowledge of thesystem that means user is not a naïve user. Any data entered by him/her will be valid. Tomake the software as user friendly as possible but at the same time keeping in mindsuser requirements.
  19. 19. 1. Server OS should be Windows NT/2000/XP. 2. Client PC should be Windows 9X/NT/WorkStation or Windows 2000 with latest service pack.Dependencies It depends that the one should follow the international standards for thegenerating the User ID & should fill the related information in the proper format.Software System AttributesUsability: The links are provided for each form. The user is facilitated to view and makeentries in the forms. Validations are provided in each field to avoid inconsistent orinvalid entry in the databases. Reports screen contains text boxes and drop down lists, sothat reports can be produced.Security: Application will allow only valid users to access the system. Access to anyapplication resource will depend upon user’s designation. There are two types of usersnamely Administrator and Student. Security is based upon the individual user ID andPassword.Maintainability: The installation and operation manual of examination management system willbe provided to the user.Availability: System will be available around the clock except for the time required for theback up of data.Portability: The application is developed in VB 6.It would be portable to other operatingsystem provided VB6 is available for the OS. As the database is made in SQL SERVER
  20. 20. 2008, porting the database to another database server would require some developmenteffort.Acceptance Criteria The software should meet the functional requirement and perform thefunctionality effectively and efficiently.  A user-friendly interface with proper menus.   Data transfer should be accurate and with in a reasonable amount of time keeping  in mind the network traffic.  The system should not allow entry of duplicate key values.  System should have the ability to generate transactional Logs to avoid any accidental loss of data.  Log file should also be generated.Computerized vs. Manual Examination System Automated process of examination is much better than the manual system as ithas following advantages:  Time saving  Increased efficiency  Allows neat handling of data rather than error prone records.  Decreases overhead  AccurateThe user requirement for this system is to make the system fast, flexible, less prone toerror, reduce expenses and save time. • Time can be saved by scheduling the exams, if it is available a question bank to store questions for different subjects.
  21. 21. • A system can be given a mark by checking the students answers, and give the result as soon as students finish his exam. • A facility to generate a result chart as pre required without manual interface. • The system should have records of students and faculty that can be access to the system which can be used only by the authorized person. • The system should be more secure for management user records and more reliable to work at any conditions.The products and process features: This system must be designed as user required. So, the complete requirement must be found:  Quick scheduling: The system helps the faculty member to generate an automatic exam instead of using papers. Which save a time for writing, checking and for input marks. Also, student can see the exam when he login as an individual to the system.  Immediate results and solutions: When the student finishes his exam, the system checks his/her answers and compared with the correct answer. And the system saves the incorrect and correct answers and calculates the mark of correct answers. Then give the total mark. And send a report for student to see where he has gone wrong.  Easy to store and retrieve information: Rather to save the information on a papers or in separate sheets there are data base management to store and retrieve the information needed by the administrator or faculty member or student according report generated by the system.
  22. 22. FEASIBILITY STUDY
  23. 23. User needs a network-based system, which will remove all the above-mentionedproblems that, the user is facing. The user wants a network-based system, which willreduce the bulk of paper work, provide ease of work, flexibility, fast record finding,modifying, adding, removing and generating the reports. We proposed our perception of the system, in accordance with the problems ofexisting system by making a full layout of the system on paper. We tallied the problemsand needs by existing system and requirements. We were further updating in the layoutin the basis of redefined the problems. In feasibility study phase we had undergonethrough various steps, which are described as under:Cost: The cost required in the proposed system is comparatively less to the existingsystem.Effort:
  24. 24. Compared to the existing system the proposed system will provide a betterworking environment in which their will be ease of work and the effort required will becomparatively less than the existing system.Time: Also the time required generating a report or for doing any other work will becomparatively very less than in the existing system. Record finding and updating willtake less time than the existing system.Labor: In the existing system the number of staff required for completing the work ismore while the new system will require quite less number of staff Economic Feasibility In my project I make use of the existing systems which have Visual Basic 6installed on them along with the database which is SQL Server 2008. Though the cost ofbuying SQL Server is often high, once it is bought, there is no other maintenance costand we are not buying any other software specially for this project, so we can say thatthe project is economically feasible. The only possible fixed costs involved with the system would be paying forpeople to write the code. It is possible that faculty would be willing to write the code forfree, or students would be willing to work on it as a project. There are no variable costsassociated with this system- since it operates on the servers, the department does not payanything for each use of the system. The tangible benefits will mostly be in time savingsfor the current administrators, as well as a simplified process for activities. Theintangible benefits would be increased system involvement among faculty members anddecreased workload on the current administrators. Technical Feasibility The project can be said to be technically feasible because there will be lessnumber of errors actually no errors because the whole project will be divided into two
  25. 25. modules and so the errors if found, can be debugged very well and all the bugs can beremoved. Since the system uses network to implement, it is technically practical for allactors. The system can be implemented on the servers that the department currently hasaccess too. The system requires no special expertise to operate, although some expertisewill be required to code it. Behavioral Feasibility The proposed system can be easily accepted as it is very easy to understand andis very user-friendly. The organization will not be disturbed by the use of this systembecause, the users will be provided with prompts which will enable them to use thissoftware very easily. People are inherently resistant to change and computer has been known tofacilitate changes. An estimate should be made of how strong the user is likely to movetowards the development of computerized system. These are various levels of users inorder to ensure proper authentication and authorization and security of sensitive data ofthe organization. Therefore it is understandable that the introduction of a candidatesystem requires special efforts to educate and train the staff. The software that is beingdeveloped is user friendly and easy to learn. In this way, the developed software is trulyefficient and can work on any circumstances, tradition, locales. Behavioral study striveson ensuring that the equilibrium of the organization and status quo in the organizationneither are nor disturbed and changes are readily accepted by the users.
  26. 26. SOFTWARE SELECTION AND JUSTIFICATION
  27. 27. HARDWARE SPECIFICATIONThe selection of hardware is very important in the existence andproper working of any software. When selecting hardware, the size and capacityrequirements are also important.Below is some of the hardware that is required by the system 1. 40 GB hard disk 2. 256 MB RAM 3. Monitor 4. Keyboard 5. Processor- Pentium 4 or aboveHARD DISK
  28. 28. A hard disk drive (HDD; also hard drive, hard disk, or disk drive is a datastorage device used for storing and retrieving digital information from non-volatilememory (retaining its data even when powered off) in a random-access manner (data canbe retrieved in any order rather than just sequentially). An HDD consists of one or morerigid ("hard") rapidly rotating discs (platters) coated with magnetic material, withmagnetic heads arranged on a moving actuator arm to read and write data to the surfaces. We need a hard disk of greater storage capacity because we have a large amountof data to store and that can be done only if we have hard disk of higher capacity.RAM Random-access memory (RAM) is a form of computer data storage. A random-access device allows stored data to be accessed in very nearly the same amount of timefor any storage location, so data can be accessed quickly in any random order. Incontrast, other data storage media such as hard disks, CDs, DVDs and magnetic tape, aswell as early primary memory types such as drum memory, read and write data only in apredetermined order, consecutively, because of mechanical design limitations. Thereforethe time to access a given data location varies significantly depending on its physicallocation. We need at least 256 MB of RAM because we have to store a large amount ofdata in the primary memory which is to be accessed every now and then. This type ofmemory is volatile so data is erased when power goes off, so we need secondarymemory also which can store data permanently, so we use the hard disk.MONITOR A monitor or display (also called screen or visual display unit) is an electronicvisual display for computers. The monitor comprises the display device, circuitry and anenclosure. The display device in modern monitors is typically a thin film transistor liquidcrystal display (TFT-LCD) thin panel, while older monitors use a cathode ray tube(CRT) about as deep as the screen size.
  29. 29. We use monitors which give use better quality of vision of the data that is beingdisplayed.KEYBOARD In computing, a keyboard is a typewriter-style device, which uses anarrangement of buttons or keys, to act as mechanical levers or electronic switches.Following the decline of punch cards and paper tape, interaction via teleprinter-stylekeyboards became the main input device for computers. A keyboard typically has characters engraved or printed on the keys and eachpress of a key typically corresponds to a single written symbol. However, to producesome symbols requires pressing and holding several keys simultaneously or in sequence.While most keyboard keys produce letters, numbers or signs (characters), other keys orsimultaneous key presses can produce actions or computer commands.PROCESSOR A central processing unit (CPU), also referred to as a central processor unit,is the hardware within a computer system which carries out the instructions of acomputer program by performing the basic arithmetical, logical, and input/outputoperations of the system. The term has been in use in the computer industry at least sincethe early 1960s. The form, design, and implementation of CPUs have changed over thecourse of their history, but their fundamental operation remains much the same. On large machines, CPUs require one or more printed circuit boards. On personalcomputers and small workstations, the CPU is housed in a single silicon chip called amicroprocessor. Since the 1970s the microprocessor class of CPUs has almostcompletely overtaken all other CPU implementations. Modern CPUs are large scale
  30. 30. integrated circuits in packages typically less than four centimeters square, with hundredsof connecting pins. Two typical components of a CPU are the arithmetic logic unit (ALU), whichperforms arithmetic and logical operations, and the control unit (CU), which extractsinstructions from memory and decodes and executes them, calling on the ALU whennecessary. Not all computational systems rely on a central processing unit. An arrayprocessor or vector processor has multiple parallel computing elements, with no one unitconsidered the "center". In the distributed computing model, problems are solved by adistributed interconnected set of processors. In my project, the processor that is required is Pentium 4 or its higher versionsfor better performance in very small time consumption.SOFTWARE SPECIFICATION We require many different software to make the application which is in makingto work efficiently. It is very important to select the appropriate software so that thesoftware works properly.Below are the software that are required to make the new system. 1. Windows XP or higher versions 2. SQL Server Management Server 2008 3. Visual Basic 6.0
  31. 31. WINDOWS XP Windows XP is an operating system produced by Microsoft for use on personalcomputers, including home and business desktops, laptops and media centers. Firstreleased to computer manufacturers on August 24, 2001, it is the second most popularversion of Windows, based on installed user base. The name "XP" is short for"eXPerience", highlighting the enhanced user experience. Windows XP, the successor to Windows 2000 and Windows Me, was the firstconsumer-oriented operating system produced by Microsoft to be built on the WindowsNT kernel. Windows XP was released worldwide for retail sale on October 25, 2001,and over 400 million copies were in use in January 2006. It was succeeded by WindowsVista in January 2007. Direct OEM and retail sales of Windows XP ceased on June 30,2008. Microsoft continued to sell Windows XP through their System Builders (smallerOEMs who sell assembled computers) program until January 31, 2009. On April 10,2012, Microsoft reaffirmed that extended support for Windows XP and Office 2003would end on April 8, 2014 and suggested that administrators begin preparing to migrateto a newer OS. We make use of the latest OS because , now a days, all the users are friendly withthe latest technologies, so as latest the OS , that well the user will be able to handle thenew software. Moreover, SQL and VB 6.0 which are platform independent software areeasily available and can be used in these OS’s.SQL SERVER MANAGEMENT STUDIO 2008 SQL Server 2008 (formerly codenamed "Katmai") was released on August 6,2008 and aims to make data management self-tuning, self organizing, and selfmaintaining with the development of SQL Server Always On technologies, to provide
  32. 32. near-zero downtime. SQL Server 2008 also includes support for structured and semi-structured data, including digital media formats for pictures, audio, video and othermultimedia data. In current versions, such multimedia data can be stored as BLOBs(binary large objects), but they are generic bit streams. Intrinsic awareness of multimediadata will allow specialized functions to be performed on them. According to PaulFlessner, senior Vice President, Server Applications, Microsoft Corp., SQL Server 2008can be a data storage backend for different varieties of data: XML, email, time/calendar,file, document, spatial, etc as well as perform search, query, analysis, sharing, andsynchronization across all data types. Other new data types include specialized date and time types and a Spatial datatype for location-dependent data. Better support for unstructured and semi-structureddata is provided using the new FILESTREAM data type, which can be used to referenceany file stored on the file system. Structured data and metadata about the file is stored inSQL Server database, whereas the unstructured component is stored in the file system.Such files can be accessed both via Win32 file handling APIs as well as via SQL Serverusing T-SQL; doing the latter accesses the file data as a BLOB. Backing up andrestoring the database backs up or restores the referenced files as well. SQL Server 2008also natively supports hierarchical data, and includes T-SQL constructs to directly dealwith them, without using recursive queries. The Full-text search functionality has been integrated with the database engine.According to a Microsoft technical article, this simplifies management and improvesperformance. Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar)data type represents geospatial data which has been projected from its native, spherical,coordinate system into a plane. A "Round Earth" data type (GEOGRAPHY) uses anellipsoidal model in which the Earth is defined as a single continuous entity which doesnot suffer from the singularities such as the international dateline, poles, or map
  33. 33. projection zone "edges". Approximately 70 methods are available to represent spatialoperations for the Open Geospatial Consortium Simple Features for SQL, Version 1.1. SQL Server includes better compression features, which also helps in improvingscalability. It enhanced the indexing algorithms and introduced the notion of filteredindexes. It also includes Resource Governor that allows reserving resources for certainusers or workflows. It also includes capabilities for transparent encryption of data (TDE)as well as compression of backups. SQL Server 2008 supports the ADO.NET EntityFramework and the reporting tools, replication, and data definition will be built aroundthe Entity Data Model. SQL Server Reporting Services will gain charting capabilitiesfrom the integration of the data visualization products from Dundas Data Visualization,Inc., which was acquired by Microsoft. On the management side, SQL Server 2008includes the Declarative Management Framework which allows configuring policies andconstraints, on the entire database or certain tables, declaratively. The version of SQLServer Management Studio included with SQL Server 2008 supports IntelliSense forSQL queries against a SQL Server 2008 Database Engine. SQL Server 2008 also makesthe databases available via Windows PowerShell providers and managementfunctionality available as Cmdlets, so that the server and all the running instances can bemanaged from Windows PowerShell. Microsoft SQL Server is a relational database management system developedby Microsoft. As a database, it is a software product whose primary function is to storeand retrieve data as requested by other software applications, be it those on the samecomputer or those running on another computer across a network (including theInternet). There are at least a dozen different editions of Microsoft SQL Server aimed atdifferent audiences and for different workloads (ranging from small applications thatstore and retrieve data on the same computer, to millions of users and computers thataccess huge amounts of data from the Internet at the same time).
  34. 34. True to its name, Microsoft SQL Servers primary query languages are T-SQL and ANSISQL Prior to version 7.0 the code base for MS SQL Server was sold by Sybase SQLServer to Microsoft, and was Microsofts entry to the enterprise-level database market,competing against Oracle, IBM, and, later, Sybase. Microsoft, Sybase and Ashton-Tateoriginally teamed up to create and market the first version named SQL Server 1.0 forOS/2 (about 1989) which was essentially the same as Sybase SQL Server 3.0 on Unix,VMS, etc. Microsoft SQL Server 4.2 was shipped around 1992 (available bundled withIBM OS/2 version 1.3). Later Microsoft SQL Server 4.21 for Windows NT was releasedat the same time as Windows NT 3.1. Microsoft SQL Server v6.0 was the first versiondesigned for NT, and did not include any direction from Sybase. About the time Windows NT was released, Sybase and Microsoft parted waysand each pursued its own design and marketing schemes. Microsoft negotiated exclusiverights to all versions of SQL Server written for Microsoft operating systems. Later,Sybase changed the name of its product to Adaptive Server Enterprise to avoidconfusion with Microsoft SQL Server. Until 1994, Microsofts SQL Server carried threeSybase copyright notices as an indication of its origin. SQL Server 7.0 and SQL Server 2000 included modifications and extensions tothe Sybase code base, adding support for the IA-64 architecture. By SQL Server 2005the legacy Sybase code had been completely rewritten. In the ten years since release of Microsofts previous SQL Server product (SQLServer 2000), advancements have been made in performance, the client IDE tools, andseveral complementary systems that are packaged with SQL Server 2005. These include:an ETL tool (SQL Server Integration Services or SSIS), a Reporting Server, an OLAPand data mining server (Analysis Services), and several messaging technologies,specifically Service Broker and Notification Services.
  35. 35. Microsoft makes SQL Server available in multiple editions, with different featuresets and targeting different users. These editions are:Mainstream editionsDatacenter SQL Server 2008 R2 Datacenter is the full-featured edition of SQL Server and isdesigned for datacenters that need the high levels of application support and scalability.It supports 256 logical processors and virtually unlimited memory. Comes with StreamInsight Premium edition. The Datacenter edition has been retired in SQL Server 2012,all its features are available in SQL Server 2012 Enterprise Edition.Enterprise SQL Server Enterprise Edition includes both the core database engine and add-onservices, with a range of tools for creating and managing a SQL Server cluster. It canmanage databases as large as 524 petabytes and address 2 terabytes of memory andsupports 8 physical processors. SQL 2012 Edition supports 160 Physical ProcessorsStandardSQL Server Standard edition includes the core database engine, along with the stand-alone services. It differs from Enterprise edition in that it supports fewer active instances(number of nodes in a cluster) and does not include some high-availability functionssuch as hot-add memory (allowing memory to be added while the server is still running),and parallel indexes.Web SQL Server Web Edition is a low-TCO option for Web hosting.Business Intelligence
  36. 36. Introduced in SQL Server 2012 and focusing on Self Service and CorporateBusiness Intelligence. It includes the Standard Edition capabilities and BusinessIntelligence tools: Power Pivot, Power View, and the BI Semantic Model, Master DataServices, Data Quality Services and xVelocity in-memory analytics.Workgroup SQL Server Workgroup Edition includes the core database functionality but doesnot include the additional services. Note that this edition has been retired in SQL Server2012.Express SQL Server Express Edition is a scaled down, free edition of SQL Server, whichincludes the core database engine. While there are no limitations on the number ofdatabases or users supported, it is limited to using one processor, 1 GB memory and 4GB database files (10 GB database files from SQL Server Express 2008 R2). It isintended as a replacement for MSDE. Two additional editions provide a superset offeatures not in the original Express Edition. The first is SQL Server Express withTools, which includes SQL Server Management Studio Basic. SQL Server Expresswith Advanced Services adds full-text search capability and reporting services.Specialized editionsAzure Microsoft SQL Azure Database is the cloud-based version of Microsoft SQLServer, presented as software as a service on Azure Services Platform.Compact (SQL CE) The compact edition is an embedded database engine. Unlike the other editionsof SQL Server, the SQL CE engine is based on SQL Mobile (initially designed for usewith hand-held devices) and does not share the same binaries. Due to its small size
  37. 37. (1 MB DLL footprint), it has a markedly reduced feature set compared to the othereditions. For example, it supports a subset of the standard data types, does not supportstored procedures or Views or multiple-statement batches (among other limitations). It islimited to 4 GB maximum database size and cannot be run as a Windows service,Compact Edition must be hosted by the application using it. The 3.5 version includessupports ADO.NET Synchronization Services. SQL CE does not support ODBCconnectivity, unlike SQL Server proper.Developer SQL Server Developer Edition includes the same features as SQL Server 2012Enterprise Edition, but is limited by the license to be only used as a development and testsystem, and not as production server. This edition is available to download by studentsfree of charge as a part of Microsofts DreamSpark program.Embedded (SSEE) SQL Server 2005 Embedded Edition is a specially configured named instance ofthe SQL Server Express database engine which can be accessed only by certainWindows Services.Evaluation SQL Server Evaluation Edition, also known as the Trial Edition, has all thefeatures of the Enterprise Edition, but is limited to 180 days, after which the tools willcontinue to run, but the server services will stop.Fast Track
  38. 38. SQL Server Fast Track is specifically for enterprise-scale data warehousingstorage and business intelligence processing, and runs on reference-architecturehardware that is optimized for Fast Track.Parallel Data Warehouse (PDW) A massively parallel processing (MPP) SQL Server appliance optimized forlarge-scale data warehousing such as hundreds of terabytes.Datawarehouse Appliance Edition Pre-installed and configured as part of an appliance in partnership with Dell & HP base on the Fast Track architecture. This edition does not include SQL Server Integration Services, Analysis Services, or Reporting Services.ArchitectureThis architecture of MS SQL Server contains different layers and services.Protocol layer Protocol layer implements the external interface to SQL Server. All operationsthat can be invoked on SQL Server are communicated to it via a Microsoft-definedformat, called Tabular Data Stream (TDS). TDS is an application layer protocol, used totransfer data between a database server and a client. Initially designed and developed bySybase Inc. for their Sybase SQL Server relational database engine in 1984, and later byMicrosoft in Microsoft SQL Server, TDS packets can be encased in other physicaltransport dependent protocols, including TCP/IP, Named pipes, and Shared memory.Consequently, access to SQL Server is available over these protocols. In addition, theSQL Server API is also exposed over web services.
  39. 39. Data storage The main unit of data storage is a database, which is a collection of tables withtyped columns. SQL Server supports different data types, including primary types suchas Integer, Float, Decimal, Char (including character strings), Varchar (variable lengthcharacter strings), binary (for unstructured blobs of data), Text (for textual data) amongothers. The rounding of floats to integers uses either Symmetric Arithmetic Rounding orSymmetric Round Down (Fix) depending on arguments: SELECT Round(2.5, 0) gives3. Microsoft SQL Server also allows user-defined composite types (UDTs) to bedefined and used. It also makes server statistics available as virtual tables and views(called Dynamic Management Views or DMVs). In addition to tables, a database canalso contain other objects including views, stored procedures, indexes and constraints,along with a transaction log. A SQL Server database can contain a maximum of 2 31objects, and can span multiple OS-level files with a maximum file size of 2 60 bytes. Thedata in the database are stored in primary data files with an extension .mdf. Secondarydata files, identified with a .ndf extension, are used to store optional metadata. Log filesare identified with the .ldf extension. Storage space allocated to a database is divided into sequentially numberedpages, each 8 KB in size. A page is the basic unit of I/O for SQL Server operations. Apage is marked with a 96-byte header which stores metadata about the page including thepage number, page type, free space on the page and the ID of the object that owns it.Page type defines the data contained in the page - data stored in the database, index,allocation map which holds information about how pages are allocated to tables andindexes, change map which holds information about the changes made to other pagessince last backup or logging, or contain large data types such as image or text. Whilepage is the basic unit of an I/O operation, space is actually managed in terms of an extentwhich consists of 8 pages. A database object can either span all 8 pages in an extent
  40. 40. ("uniform extent") or share an extent with up to 7 more objects ("mixed extent"). A rowin a database table cannot span more than one page, so is limited to 8 KB in size.However, if the data exceeds 8 KB and the row contains Varchar or Varbinary data, thedata in those columns are moved to a new page (or possibly a sequence of pages, calledan Allocation unit) and replaced with a pointer to the data.For physical storage of a table, its rows are divided into a series of partitions (numbered1 to n). The partition size is user defined; by default all rows are in a single partition. Atable is split into multiple partitions in order to spread a database over a cluster. Rows ineach partition are stored in either B-tree or heap structure. If the table has an associatedindex to allow fast retrieval of rows, the rows are stored in-order according to their indexvalues, with a B-tree providing the index. The data is in the leaf node of the leaves, andother nodes storing the index values for the leaf data reachable from the respectivenodes. If the index is non-clustered, the rows are not sorted according to the index keys.An indexed view has the same storage structure as an indexed table. A table without anindex is stored in an unordered heap structure. Both heaps and B-trees can span multipleallocation units.Buffer management SQL Server buffers pages in RAM to minimize disc I/O. Any 8 KB page can bebuffered in-memory, and the set of all pages currently buffered is called the buffer cache.The amount of memory available to SQL Server decides how many pages will be cachedin memory. The buffer cache is managed by the Buffer Manager. Either reading from orwriting to any page copies it to the buffer cache. Subsequent reads or writes areredirected to the in-memory copy, rather than the on-disc version. The page is updatedon the disc by the Buffer Manager only if the in-memory cache has not been referencedfor some time. While writing pages back to disc, asynchronous I/O is used whereby the
  41. 41. I/O operation is done in a background thread so that other operations do not have to waitfor the I/O operation to complete. Each page is written along with its checksum when itis written. When reading the page back, its checksum is computed again and matchedwith the stored version to ensure the page has not been damaged or tampered with in themeantime.Logging and Transaction SQL Server ensures that any change to the data is ACID-compliant, i.e. it usestransactions to ensure that the database will always revert to a known consistent state onfailure. Each transaction may consist of multiple SQL statements all of which will onlymake a permanent change to the database if the last statement in the transaction (aCOMMIT statement) completes successfully. If the COMMIT successfully completesthe transaction is safely on disk.SQL Server implements transactions using a write-ahead log. Any changes made to any page will update the in-memory cache of the page,simultaneously all the operations performed will be written to a log, along with thetransaction ID which the operation was a part of. Each log entry is identified by anincreasing Log Sequence Number (LSN) which is used to ensure that all changes arewritten to the data files. Also during a log restore it is used to check that no logs areduplicated or skipped. SQL Server requires that the log is written onto the disc beforethe data page is written back. It must also ensure that all operations in a transaction arewritten to the log before any COMMIT operation is reported as completed. At a later point the server will checkpoint the database and ensure that all pagesin the data files have the state of their contents synchronized to a point at or after theLSN that the checkpoint started. When completed the checkpoint marks that portion ofthe log file as complete and may free it (see Simple transaction logging vs. Full
  42. 42. transaction logging). This enables SQL Server to ensure integrity of the data, even if thesystem fails. On failure the database log has to be replayed to ensure the data files are in aconsistent state. All pages stored in the roll forward part of the log (not marked ascompleted) are rewritten to the database, when the end of the log is reached all opentransactions are rolled back using the roll back portion of the log . The database engine usually checkpoints quite frequently. However, in a heavilyloaded database this can have a significant performance impact. It is possible to reducethe frequency of checkpoints or disable them completely but the roll forward during arecovery will take much longerConcurrency and locking SQL Server allows multiple clients to use the same database concurrently. Assuch, it needs to control concurrent access to shared data, to ensure data integrity - whenmultiple clients update the same data, or clients attempt to read data that is in the processof being changed by another client. SQL Server provides two modes of concurrencycontrol: pessimistic concurrency and optimistic concurrency. When pessimisticconcurrency control is being used, SQL Server controls concurrent access by usinglocks. Locks can be either shared or exclusive. Exclusive lock grants the user exclusiveaccess to the data - no other user can access the data as long as the lock is held. Sharedlocks are used when some data is being read - multiple users can read from data lockedwith a shared lock, but not acquire an exclusive lock. The latter would have to wait forall shared locks to be released. Locks can be applied on different levels of granularity -on entire tables, pages, or even on a per-row basis on tables. For indexes, it can either beon the entire index or on index leaves. The level of granularity to be used is defined on aper-database basis by the database administrator. While a fine grained locking systemallows more users to use the table or index simultaneously, it requires more resources.So it does not automatically turn into higher performing solution. SQL Server also
  43. 43. includes two more lightweight mutual exclusion solutions - latches and spin locks -which are less robust than locks but are less resource intensive. SQL Server uses themfor DMVs and other resources that are usually not busy. SQL Server also monitors allworker threads that acquire locks to ensure that they do not end up in deadlocks - in casethey do, SQL Server takes remedial measures, which in many cases is to kill one of thethreads entangled in a deadlock and rollback the transaction it started. To implementlocking, SQL Server contains the Lock Manager. The Lock Manager maintains an in-memory table that manages the database objects and locks, if any, on them along withother metadata about the lock. Access to any shared object is mediated by the lockmanager, which either grants access to the resource or blocks it. SQL Server also provides the optimistic concurrency control mechanism, whichis similar to the multiversion concurrency control used in other databases. Themechanism allows a new version of a row to be created whenever the row is updated, asopposed to overwriting the row, i.e., a row is additionally identified by the ID of thetransaction that created the version of the row. Both the old as well as the new versionsof the row are stored and maintained, though the old versions are moved out of thedatabase into a system database identified as Tempdb. When a row is in the process ofbeing updated, any other requests are not blocked (unlike locking) but are executed onthe older version of the row. If the other request is an update statement, it will result intwo different versions of the rows - both of them will be stored by the database,identified by their respective transaction IDs.Data retrieval The main mode of retrieving data from an SQL Server database is querying for it.The query is expressed using a variant of SQL called T-SQL, a dialect Microsoft SQLServer shares with Sybase SQL Server due to its legacy. The query declarativelyspecifies what is to be retrieved. It is processed by the query processor, which figures outthe sequence of steps that will be necessary to retrieve the requested data. The sequence
  44. 44. of actions necessary to execute a query is called a query plan. There might be multipleways to process the same query. For example, for a query that contains a join statementand a select statement, executing join on both the tables and then executing select on theresults would give the same result as selecting from each table and then executing thejoin, but result in different execution plans. In such case, SQL Server chooses the planthat is expected to yield the results in the shortest possible time. This is called queryoptimization and is performed by the query processor itself. SQL Server includes a cost-based query optimizer which tries to optimize on thecost, in terms of the resources it will take to execute the query. Given a query, then thequery optimizer looks at the database schema, the database statistics and the system loadat that time. It then decides which sequence to access the tables referred in the query,which sequence to execute the operations and what access method to be used to accessthe tables. For example, if the table has an associated index, whether the index should beused or not - if the index is on a column which is not unique for most of the columns(low "selectivity"), it might not be worthwhile to use the index to access the data.Finally, it decides whether to execute the query concurrently or not. While a concurrentexecution is more costly in terms of total processor time, because the execution isactually split to different processors might mean it will execute faster. Once a query planis generated for a query, it is temporarily cached. For further invocations of the samequery, the cached plan is used. Unused plans are discarded after some time. SQL Server also allows stored procedures to be defined. Stored procedures areparameterized T-SQL queries, which are stored in the server itself (and not issued by theclient application as is the case with general queries). Stored procedures can acceptvalues sent by the client as input parameters, and send back results as output parameters.They can call defined functions, and other stored procedures, including the same storedprocedure (up to a set number of times). They can be selectively provided access to.Unlike other queries, stored procedures have an associated name, which is used atruntime to resolve into the actual queries. Also because the code need not be sent from
  45. 45. the client every time (as it can be accessed by name), it reduces network traffic andsomewhat improves performance. Execution plans for stored procedures are also cachedas necessary.SQL CLR Microsoft SQL Server 2005 includes a component named SQL CLR ("CommonLanguage Runtime") via which it integrates with .NET Framework. Unlike most otherapplications that use .NET Framework, SQL Server itself hosts the .NET Frameworkruntime, i.e., memory, threading and resource management requirements of .NETFramework are satisfied by SQLOS itself, rather than the underlying Windows operatingsystem. SQLOS provides deadlock detection and resolution services for .NET code aswell. With SQL CLR, stored procedures and triggers can be written in any managed.NET language, including C# and VB.NET. Managed code can also be used to defineUDTs (user defined types), which can persist in the database. Managed code is compiledto CLI assemblies and after being verified for type safety, registered at the database.After that, they can be invoked like any other procedure. However, only a subset of theBase Class Library is available, when running code under SQL CLR. Most APIs relatingto user interface functionality are not available. When writing code for SQL CLR, data stored in SQL Server databases can beaccessed using the ADO.NET APIs like any other managed application that accessesSQL Server data. However, doing that creates a new database session, different from theone in which the code is executing. To avoid this, SQL Server provides someenhancements to the ADO.NET provider that allows the connection to be redirected tothe same session which already hosts the running code. Such connections are calledcontext connections and are set by setting context connection parameter to true inthe connection string. SQL Server also provides several other enhancements to theADO.NET API, including classes to work with tabular data or a single row of data aswell as classes to work with internal metadata about the data stored in the database. It
  46. 46. also provides access to the XML features in SQL Server, including XQuery support.These enhancements are also available in T-SQL Procedures in consequence of theintroduction of the new XML Data type (query,value,nodes functions).Services SQL Server also includes an assortment of add-on services. While these are notessential for the operation of the database system, they provide value added services ontop of the core database management system. These services either run as a part of someSQL Server component or out-of-process as Windows Service and presents their ownAPI to control and interact with them.Service Broker Used inside an instance, it is used to provide an asynchronous programmingenvironment. For cross instance applications, Service Broker communicates over TCP/IPand allows the different components to be synchronized together, via exchange ofmessages. The Service Broker, which runs as a part of the database engine, provides areliable messaging and message queuing platform for SQL Server applications.Replication Services SQL Server Replication Services are used by SQL Server to replicate andsynchronize database objects, either in entirety or a subset of the objects present, acrossreplication agents, which might be other database servers across the network, or databasecaches on the client side. Replication follows a publisher/subscriber model, i.e., thechanges are sent out by one database server ("publisher") and are received by others("subscribers"). SQL Server supports three different types of replication.
  47. 47. Transaction replication Each transaction made to the publisher database (master database) is synced outto subscribers, who update their databases with the transaction. Transactional replicationsynchronizes databases in near real time.Merge replication Changes made at both the publisher and subscriber databases are tracked, andperiodically the changes are synchronized bi-directionally between the publisher and thesubscribers. If the same data has been modified differently in both the publisher and thesubscriber databases, synchronization will result in a conflict which has to be resolved -either manually or by using pre-defined policies. rowguid needs to be configured on acolumn if merge replication is configured.Snapshot replication Snapshot replication publishes a copy of the entire database (the then-snapshot ofthe data) and replicates out to the subscribers. Further changes to the snapshot are nottracked.Analysis Services SQL Server Analysis Services adds OLAP and data mining capabilities for SQLServer databases. The OLAP engine supports MOLAP, ROLAP and HOLAP storagemodes for data. Analysis Services supports the XML for Analysis standard as theunderlying communication protocol. The cube data can be accessed using MDX andLINQ queries. Data mining specific functionality is exposed via the DMX querylanguage. Analysis Services includes various algorithms - Decision trees, clustering
  48. 48. algorithm, Naive Bayes algorithm, time series analysis, sequence clustering algorithm,linear and logistic regression analysis, and neural networks - for use in data mining.Reporting Services SQL Server Reporting Services is a report generation environment for datagathered from SQL Server databases. It is administered via a web interface. Reportingservices features a web services interface to support the development of customreporting applications. Reports are created as RDL files. Reports can be designed using recent versions of Microsoft Visual Studio (VisualStudio.NET 2003, 2005, and 2008) with Business Intelligence Development Studio,installed or with the included Report Builder. Once created, RDL files can be renderedin a variety of formats including Excel, PDF, CSV, XML, TIFF (and other imageformats), and HTML Web Archive.Notification Services Originally introduced as a post-release add-on for SQL Server 2000, NotificationServices was bundled as part of the Microsoft SQL Server platform for the first and onlytime with SQL Server 2005. SQL Server Notification Services is a mechanism forgenerating data-driven notifications, which are sent to Notification Services subscribers.A subscriber registers for a specific event or transaction (which is registered on thedatabase server as a trigger); when the event occurs, Notification Services can use one ofthree methods to send a message to the subscriber informing about the occurrence of theevent. These methods include SMTP, SOAP, or by writing to a file in the file system.Notification Services was discontinued by Microsoft with the release of SQL Server2008 in August 2008, and is no longer an officially supported component of the SQLServer database platform.
  49. 49. Integration ServicesSQL Server Integration Services is used to integrate data from different data sources. Itis used for the ETL capabilities for SQL Server for data warehousing needs. IntegrationServices includes GUI tools to build data extraction workflows integration variousfunctionality such as extracting data from various sources, querying data, transformingdata including aggregating, duplication and merging data, and then loading thetransformed data onto other sources, or sending e-mails detailing the status of theoperation as defined by the user.Full Text Search Service SQL Server Full Text Search service is a specialized indexing and queryingservice for unstructured text stored in SQL Server databases. The full text search indexcan be created on any column with character based text data. It allows for words to besearched for in the text columns. While it can be performed with the SQL LIKE operator,using SQL Server Full Text Search service can be more efficient. Full allows for inexactmatching of the source string, indicated by a Rank value which can range from 0 to 1000- a higher rank means a more accurate match. It also allows linguistic matching("inflectional search"), i.e., linguistic variants of a word (such as a verb in a differenttense) will also be a match for a given word (but with a lower rank than an exact match).Proximity searches are also supported, i.e., if the words searched for do not occur in thesequence they are specified in the query but are near each other, they are also considereda match. T-SQL exposes special operators that can be used to access the FTScapabilities. The Full Text Search engine is divided into two processes - the Filter Daemonprocess (msftefd.exe) and the Search process (msftesql.exe). These processesinteract with the SQL Server. The Search process includes the indexer (that creates the
  50. 50. full text indexes) and the full text query processor. The indexer scans through textcolumns in the database. It can also index through binary columns, and use iFilters toextract meaningful text from the binary blob (for example, when a Microsoft Worddocument is stored as an unstructured binary file in a database). The iFilters are hostedby the Filter Daemon process. Once the text is extracted, the Filter Daemon processbreaks it up into a sequence of words and hands it over to the indexer. The indexer filtersout noise words, i.e., words like A, And etc., which occur frequently and are not usefulfor search. With the remaining words, an inverted index is created, associating eachword with the columns they were found in. SQL Server itself includes a Gatherercomponent that monitors changes to tables and invokes the indexer in case of updates. When a full text query is received by the SQL Server query processor, it ishanded over to the FTS query processor in the Search process. The FTS query processorbreaks up the query into the constituent words, filters out the noise words, and uses aninbuilt thesaurus to find out the linguistic variants for each word. The words are thenqueried against the inverted index and a rank of their accurateness is computed. Theresults are returned to the client via the SQL Server process.SQLCMD SQLCMD is a command line application that comes with Microsoft SQL Server,and exposes the management features of SQL Server. It allows SQL queries to bewritten and executed from the command prompt. It can also act as a scripting languageto create and run a set of SQL statements as a script. Such scripts are stored as a .sqlfile, and are used either for management of databases or to create the database schemaduring the deployment of a database.
  51. 51. SQLCMD was introduced with SQL Server 2005 and this continues with SQLServer 2008. Its predecessor for earlier versions was OSQL and ISQL, which isfunctionally equivalent as it pertains to TSQL execution, and many of the command lineparameters are identical, although SQLCMD adds extra versatility.Visual Studio Microsoft Visual Studio includes native support for data programming withMicrosoft SQL Server. It can be used to write and debug code to be executed by SQLCLR. It also includes a data designer that can be used to graphically create, view or editdatabase schemas. Queries can be created either visually or using code. SSMS 2008onwards, provides intelligence for SQL queries as well.SQL Server Management Studio SQL Server Management Studio is a GUI tool included with SQL Server 2005and later for configuring, managing, and administering all components within MicrosoftSQL Server. The tool includes both script editors and graphical tools that work withobjects and features of the server. SQL Server Management Studio replaces EnterpriseManager as the primary management interface for Microsoft SQL Server since SQLServer 2005. A version of SQL Server Management Studio is also available for SQLServer Express Edition, for which it is known as SQL Server Management StudioExpress (SSMSE). A central feature of SQL Server Management Studio is the Object Explorer,which allows the user to browse, select, and act upon any of the objects within theserver. It can be used to visually observe and analyze query plans and optimize thedatabase performance, among others. SQL Server Management Studio can also be usedto create a new database, alter any existing database schema by adding or modifyingtables and indexes, or analyze performance. It includes the query windows whichprovide a GUI based interface to write and execute queries.
  52. 52. Business Intelligence Development Studio Business Intelligence Development Studio (BIDS) is the IDE from Microsoftused for developing data analysis and Business Intelligence solutions utilizing theMicrosoft SQL Server Analysis Services, Reporting Services and Integration Services. Itis based on the Microsoft Visual Studio development environment but is customizedwith the SQL Server services-specific extensions and project types, including tools,controls and projects for reports (using Reporting Services), Cubes and data miningstructures (using Analysis Services).ProgrammabilityT-SQL T-SQL (Transact-SQL) is the primary means of programming and managingSQL Server. It exposes keywords for the operations that can be performed on SQLServer, including creating and altering database schemas, entering and editing data in thedatabase as well as monitoring and managing the server itself. Client applications thatconsume data or manage the server will leverage SQL Server functionality by sending T-SQL queries and statements which are then processed by the server and results (orerrors) returned to the client application. SQL Server allows it to be managed using T-SQL. For this it exposes read-only tables from which server statistics can be read.Management functionality is exposed via system-defined stored procedures which canbe invoked from T-SQL queries to perform the management operation. It is also possibleto create linked Server using T-SQL. Linked server allows operation to multiple serveras one query.SQL Native Client (aka SNAC) SQL Native Client is the native client side data access library for Microsoft SQLServer, version 2005 onwards. It natively implements support for the SQL Server
  53. 53. features including the Tabular Data Stream implementation, support for mirrored SQLServer databases, full support for all data types supported by SQL Server, asynchronousoperations, query notifications, encryption support, as well as receiving multiple resultsets in a single database session. SQL Native Client is used under the hood by SQLServer plug-ins for other data access technologies, including ADO or OLE DB. The SQLNative Client can also be directly used, bypassing the generic data access layers.VISUAL BASIC 6.0 Visual Basic is a third-generation event-driven programming language andintegrated development environment (IDE) from Microsoft for its COM programmingmodel first released in 1991. Visual Basic is designed to be relatively easy to learn anduse. Visual Basic was derived from BASIC and enables the rapid applicationdevelopment (RAD) of graphical user interface (GUI) applications, access to databasesusing Data Access Objects, Remote Data Objects, or ActiveX Data Objects, and creationof ActiveX controls and objects. Scripting languages such as VBA and VBScript aresyntactically similar to Visual Basic, but perform differently. A programmer can put together an application using the components providedwith Visual Basic itself. Programs written in Visual Basic can also use the WindowsAPI, but doing so requires external function declarations. Though the program hasreceived criticism for its perceived faults, from version 3 Visual Basic was a runawaycommercial success, and many companies offered third party controls greatly extendingits functionality. The final release was version 6 in 1998. Microsofts extended support ended inMarch 2008 and the designated successor was Visual Basic .NET (now known simply asVisual Basic). Like the BASIC programming language, Visual Basic was designed to be easilylearned and used by beginner programmers. The language not only allows programmers
  54. 54. to create simple GUI applications, but to also develop complex applications.Programming in VB is a combination of visually arranging components or controls on aform, specifying attributes and actions of those components, and writing additional linesof code for more functionality. Since default attributes and actions are defined for thecomponents, a simple program can be created without the programmer having to writemany lines of code. Performance problems were experienced by earlier versions, butwith faster computers and native code compilation this has become less of an issue. Although VB programs can be compiled into native code executables fromversion 5 onwards, they still require the presence of runtime libraries of approximately 1MB in size. Runtime libraries are included by default in Windows 2000 and later,however for earlier versions of Windows, i.e. 95/98/NT, runtime libraries must bedistributed together with the executable. Forms are created using drag-and-drop techniques. A tool is used to placecontrols (e.g., text boxes, buttons, etc.) on the form (window). Controls have attributesand event handlers associated with them. Default values are provided when the control iscreated, but may be changed by the programmer. Many attribute values can be modifiedduring run time based on user actions or changes in the environment, providing adynamic application. For example, code can be inserted into the form resize eventhandler to reposition a control so that it remains centered on the form, expands to fill upthe form, etc. By inserting code into the event handler for a key press in a text box, theprogram can automatically translate the case of the text being entered, or even preventcertain characters from being inserted. Visual Basic can create executables (EXE files), ActiveX controls, or DLL files,but is primarily used to develop Windows applications and to interface database systems.Dialog boxes with less functionality can be used to provide pop-up capabilities. Controlsprovide the basic functionality of the application, while programmers can insertadditional logic within the appropriate event handlers. For example, a drop-down
  55. 55. combination box will automatically display its list and allow the user to select anyelement. An event handler is called when an item is selected, which can then executeadditional code created by the programmer to perform some action based on whichelement was selected, such as populating a related list. Alternatively, a Visual Basic component can have no user interface, and insteadprovide ActiveX objects to other programs via Component Object Model (COM). Thisallows for server-side processing or an add-in module. The runtime recovers unused memory using reference counting which dependson variables passing out of scope or being set to "Nothing", resulting in the verycommon problem of memory leaks. There is a large library of utility objects, and thelanguage provides basic object oriented support. Unlike many other programminglanguages, Visual Basic is generally not case sensitive, although it will transformkeywords into a standard case configuration and force the case of variable names toconform to the case of the entry within the symbol table. String comparisons are casesensitive by default. The Visual Basic compiler is shared with other Visual Studio languages (C, C++), but restrictions in the IDE do not allow the creation of some targets (Windows modelDLLs) and threading models.CharacteristicsVisual Basic has the following traits which differ from C-derived languages: • Statements tend to be terminated with keywords such as "End If", instead of using "{}"s to group statements. • Multiple variable assignments are not possible. A = B = C does not imply that the values of A, B and C are equal. The boolean result of "Is B = C?" is stored in A. The result stored in A would therefore be either false or true.
  56. 56. • Boolean constant True has numeric value −1. This is because the Boolean data type is stored as a 16-bit signed integer. In this construct −1 evaluates to 16 binary 1s (the Boolean value True), and 0 as 16 0s (the Boolean value False). This is apparent when performing a Not operation on a 16 bit signed integer value 0 which will return the integer value −1, in other words True = Not False. This inherent functionality becomes especially useful when performing logical operations on the individual bits of an integer such as And, Or, Xor and Not. This definition of True is also consistent with BASIC since the early 1970s Microsoft BASIC implementation and is also related to the characteristics of CPU instructions at the time.• Logical and bitwise operators are unified. This is unlike some C-derived languages (such as Perl), which have separate logical and bitwise operators. This again is a traditional feature of BASIC.• Variable array base. Arrays are declared by specifying the upper and lower bounds in a way similar to Pascal and FORTRAN. It is also possible to use the Option Base statement to set the default lower bound. Use of the Option Base statement can lead to confusion when reading Visual Basic code and is best avoided by always explicitly specifying the lower bound of the array. This lower bound is not limited to 0 or 1, because it can also be set by declaration. In this way, both the lower and upper bounds are programmable. In more subscript- limited languages, the lower bound of the array is not variable. This uncommon trait does exist in Visual Basic .NET but not in VBScript. OPTION BASE was introduced by ANSI, with the standard for ANSI Minimal BASIC in the late 1970s.• Relatively strong integration with the Windows operating system and the Component Object Model. The native types for strings and arrays are the dedicated COM types, BSTR and SAFEARRAY.
  57. 57. • Bankers rounding as the default behavior when converting real numbers to integers with the Round function ? Round(2.5, 0) gives 2, ? Round(3.5, 0) gives 4. • Integers are automatically promoted to reals in expressions involving the normal division operator (/) so that division of one integer by another produces the intuitively correct result. There is a specific integer divide operator () which does truncate. • By default, if a variable has not been declared or if no type declaration character is specified, the variable is of type Variant. However this can be changed with Deftype statements such as DefInt, DefBool, DefVar, DefObj, DefStr. There are 12 Deftype statements in total offered by Visual Basic 6.0. The default type may be overridden for a specific declaration by using a special suffix character on the variable name (# for Double, ! for Single, & for Long, % for Integer, $ for String, and @ for Currency) or using the key phrase As (type). VB can also be set in a mode that only explicitly declared variables can be used with the command Option Explicit.History VB 1.0 was introduced in 1991. The drag and drop design for creating the userinterface is derived from a prototype form generator developed by Alan Cooper and hiscompany called Tripod. Microsoft contracted with Cooper and his associates to developTripod into a programmable form system for Windows 3.0, under the code name Tripoddid not include a programming language at all. Microsoft decided to combine Ruby withthe Basic language to create Visual Basic. The Ruby interface generator provided the "visual" part of Visual Basic and thiswas combined with the "EB" Embedded BASIC engine designed for Microsoftsabandoned "Omega" database system. Ruby also provided the ability to load dynamic
  58. 58. link libraries containing additional controls (then called "gizmos"), which later becamethe VBX interface.Timeline • Project Thunder was initiated in 1990. • Visual Basic 1.0 (May 1991) was released for Windows at the Comdex/Windows World trade show in Atlanta, Georgia. • Visual Basic 1.0 for DOS was released in September 1992. The language itself was not quite compatible with Visual Basic for Windows, as it was actually the next version of Microsofts DOS-based BASIC compilers, QuickBasic and BASIC Professional Development System. The interface used a Text user interface, using extended ASCII characters to simulate the appearance of a GUI. • Visual Basic 2.0 was released in November 1992. The programming environment was easier to use, and its speed was improved. Notably, forms became instantiable objects, thus laying the foundational concepts of class modules as were later offered in VB4. • Visual Basic 3.0 was released in the summer of 1993 and came in Standard and Professional versions. VB3 included version 1.1 of the Microsoft Jet Database Engine that could read and write Jet (or Access) 1.x databases. • Visual Basic 4.0 (August 1995) was the first version that could create 32-bit as well as 16-bit Windows programs. It has three editions; Standard, Professional, and Enterprise. It also introduced the ability to write non-GUI classes in Visual Basic. Incompatibilities between different releases of VB4 caused installation and operation problems. While previous versions of Visual Basic had used VBX controls, Visual Basic now used OLE controls (with files names ending in .OCX) instead. These were later to be named ActiveX controls. • With version 5.0 (February 1997), Microsoft released Visual Basic exclusively for 32-bit versions of Windows. Programmers who preferred to write 16-bit
  59. 59. programs were able to import programs written in Visual Basic 4.0 to Visual Basic 5.0, and Visual Basic 5.0 programs can easily be converted with Visual Basic 4.0. Visual Basic 5.0 also introduced the ability to create custom user controls, as well as the ability to compile to native Windows executable code, speeding up calculation-intensive code execution. A free, downloadable Control Creation Edition was also released for creation of ActiveX controls. It was also used as an introductory form of Visual Basic: a regular .exe project could be created and run in the IDE, but not compiled. • Visual Basic 6.0 (Mid 1998) improved in a number of areas including the ability to create web-based applications. VB6 has entered Microsofts "non-supported phase" as of March 2008. Although the Visual Basic 6.0 development environment is no longer supported, the runtime is supported on Windows Vista, Windows Server 2008 and Windows 7. • Mainstream Support for Microsoft Visual Basic 6.0 ended on March 31, 2005. Extended support ended in March 2008. In response, the Visual Basic user community expressed its grave concern and lobbied users to sign a petition to keep the product alive. Microsoft has so far refused to change their position on the matter. Ironically, around this time (2005), it was exposed that Microsofts new anti-spy ware offering, Microsoft AntiSpyware (part of the GIANT Company Software purchase), was coded in Visual Basic 6.0. Its replacement, Windows Defender, was rewritten as C++ code.Derivative languages Microsoft has developed derivatives of Visual Basic for use in scripting. VisualBasic itself is derived heavily from BASIC, and subsequently has been replaced witha .NET platform version.Some of the derived languages are:
  60. 60. • Visual Basic for Applications (VBA) is included in many Microsoft applications (Microsoft Office), and also in many third-party products like Solid Works, AutoCAD, WordPerfect Office 2002, ArcGIS, Sage 300 ERP, and Business Objects Desktop Intelligence. There are small inconsistencies in the way VBA is implemented in different applications, but it is largely the same language as VB6 and uses the same runtime library. Although Visual Basic development ended with 6.0, in 2010 Microsoft introduced VBA 7 to provide extended features and 64-bit support for VBA. • VBScript is the default language for Active Server Pages. It can be used in Windows scripting and client-side web page scripting. Although it resembles VB in syntax, it is a separate language and it is executed by vbscript.dll as opposed to the VB runtime. ASP and VBScript should not be confused with ASP.NET which uses the .NET Framework for compiled web pages. • Visual Basic .NET is Microsofts designated successor to Visual Basic 6.0, and is part of Microsofts .NET platform. Visual Basic.Net compiles and runs using the .NET Framework. It is not backwards compatible with VB6. An automated conversion tool exists, but fully automated conversion for most projects is impossible. • StarOffice Basic is a Visual Basic compatible interpreter included in StarOffice suite, developed by Sun Microsystems. • Gambas is a Visual Basic inspired free software programming language. It is not a clone of Visual Basic, but it does have the ability to convert Visual Basic programs to Gambas.Performance and other issues Earlier versions of Visual Basic (prior to version 5) compiled the code to P-Codeonly. The P-Code is interpreted by the language runtime. The benefits of P-Code includeportability and smaller binary file sizes, but it usually slows down the execution, since
  61. 61. having a runtime adds an additional layer of interpretation. However, small amounts ofcode and algorithms can be constructed to run faster than compiled native code. Visual Basic applications require Microsoft Visual Basic runtimeMSVBVMxx.DLL, where xx is the relevant version number, either 50 or 60.MSVBVM60.dll comes as standard with Windows in all editions after Windows 98while MSVBVM50.dll comes with all editions after Windows 95. A Windows 95machine would however require inclusion with the installer of whichever dll was neededby the program. Visual Basic 5 and 6 can compile code to either native or P-Code but in eithercase the runtime is still required for built in functions and forms management.
  62. 62. DATA FLOW DIAGRAM A DFD also known as ‘bubble chart’ has the purpose of clarifying systemrequirements and identifying major transformations. It shows the flow of data through asystem. It is a graphical tool because it presents a picture. The DFD may be partitionedinto levels that represent increasing information flow and functional detail. Four simplenotations are used to complete a DFD. These notations are given below:-DATA FLOW:-
  63. 63. The data flow is used to describe the movement of information from one part ofthe system to another part. Flows represent data in motion. It is a pipe line throughwhich information flows. Data flow is represented by an arrow.PROCESS:- A circle or bubble represents a process that transforms incoming data to outgoingdata. Process shows a part of the system that transforms inputs to outputs.EXTERNAL ENTITY:- A square defines a source or destination of system data. External entitiesrepresent any entity that supplies or receive information from the system but is not a partof the system.DATA STORE:-The data store represents a logical file. A logical file can represent either a data storesymbol which can represent either a data structure or a physical file on disk. The datastore is used to collect data at rest or a temporary repository of data. It is represented byopen rectangle.
  64. 64. LEVEL 0 DFD for Network based Quiz SystemLEVEL 1 DFD for Network Based Quiz System
  65. 65. SYSTEM DESIGN The system which is in making is developed by working on two differentmodules and combining them to work as a single unit. That single unit is the one whichis known as the new software. We go through the different design strategies to designthe system we are talking about. In the input design we decide which type of input

×