P. 1
Normalization in Database

Normalization in Database

|Views: 10|Likes:
Published by virendrak11

More info:

Published by: virendrak11 on Jan 05, 2013
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less








data source=TEST-SQL.SqlConnection ().password=pass.SqlClient.CONNECTIVITY STRING: public void ConnectToSql () { System. // TODO: Modify the connection string and include any // additional required properties for your database.Data.database=TESTDB"." + "user id=user." + "persist security info=False.SqlClient. try .ConnectionString = "integrated security=SSPI.SqlConnection conn = newSystem.Data. conn.

} DATA DICTIONARY:database: A collection of related information stored in a structured format. Such a multi-table database is called a relational database. Microsoft Access and FileMaker Pro. classes and classrooms. you could track all the information about the students in a school in a students table. uses the term database instead of table).Show(ex. So. data entry: The process of getting information into a database. If you then created separate tables containing details about teachers. Database is often used interchangeably with the term table (Lotus Approach. Technically. are all DBMSs. MessageBox. the . dbms: Database management system. for example.Message . // Insert code to process data. For instance. you could combine all four tables into a timetabling database. A program which lets you manage information in databases. although the term is often shortened to 'database'.Open(). for instance. usually done by people typing it in by way of data-entry forms designed to simplify the process. Lotus Approach.ex.Show("Hello".Number. they're different: A table is a single store of related information."Hello").ToString() ).{ conn. } catch (SqlException ex) { MessageBox. a database can consist of one or more tables of information that are related in some way.

in a database of thousands of records it will be a blessing. foreign key: A key used in one table to represent the value of a primary key in a related table. You can make indexes based on any information. and are called relational database managers. A database index works in a similar way. addresses and other details.student ID) will hold duplicate values. While primary keys must contain unique values. For instance. you'll find fields referred to as attributes. might contain a last name field. Lightweight database programs such as the database component in Microsoft Works are sometimes called 'flat-file managers' (or list managers) because they can only handle single-table databases. if we use student ID as the primary key in a Students table (each student has a unique ID). such as FileMaker Pro. of course. or RDBMSs. can handle multi-table databases. for example. flat file: A database that consists of a single table. More powerful programs. names. or postal code. last name + first name (a composite index based on more than one field). foreign keys may have duplicates. when you're searching for a particular customer or group of customers. Then. such as the customers' customer number. Think of how you use an index to a book: as a quick jumping off point to finding full information about a subject. we could use student ID as a foreign key in a Courses table: as each student may do more than one course. The values in each field vary from record to record. you have a customer table which contains customer numbers. you can use the index to speed up the search. a first name field. You can create an index on any field in a table. a date of birth field and so on. Approach and Paradox. for instance.same term is used to apply to the program you use to organise your data and the actual data structure you create with that program. All records have exactly the same structure. field: Fields describe a single aspect of each member of a table. Say. Access. This increase in performance may not be noticeable in a table containing a hundred records. so they contain the same fields. In some database systems. A student record. . index: A summary table which lets you quickly look up the contents of any record in a table. the student ID field in the Courses table (often shortened to Courses.

first name and birth dates to ensure you identify each student uniquely) as a key field. For instance. The database will locate the correct entry in the index and then display the full record. TESTING:What is Database Testing? Database testing involves the tests to check the exact values which have been retrieved from the database by the web or desktop application. in a students table you could use a combination of the last name and first name fields (or perhaps last name. health insurance which requires extensive database testing. The database program will create an index containing just the key field contents. . There are many projects like banking. Data should be matched correctly as per the records are stored in the database. finance. Below is the discussed point that how to test database: First of all.key field: You can sort and quickly retrieve information from a database by choosing one or more fields to act as keys. writing queries and procedures. How to Test Database? Database testing is one of the major testing which requires tester to expertise in checking tables. Key fields are also used in relational databases to maintain the structural integrity of your tables. Using the index. tester should make sure that he understands all the application totally and which database is being used with the testing application. you can quickly find any record by typing in the student's name. Testing can be performed in web application or desktop and database can be used in the application like SQL or Oracle. helping you to avoid problems such as duplicate records and conflicting values in fields (see primary key and foreign key).

Database is the spine of the application and tester should make sure to test very carefully. Tester should make sure that values have been added correctly after the implementation of the business rules. Actions can include deletion. Hence. Performance tests are often coupled with stress testing and often require both hardware and software infrastructure. Database testing is really a complex task and it should always be performed if tester is much experienced in this field. That is. Test each and every table carefully for the data added. Check the deleted record gets removed from the database. these are the above mentioned basic things that how and what to test in a database.Figure out all the tables which exist for the application and try to write all the database queries for the tables to execute since there are many things which are really complex. it is necessary to measure resource . DIFFERENT TYPES OF TESTING:Performance testing a. proficiency and sound knowledge. What to Test in a Database? Check all the functionality which is happening on every action performed in the application. It requires skill. If things are really complex then tester can obtain the query from the developer to test the appropriate functionality. These are major roles which need to be monitored seriously. Check whether the added record is added in the DB with the exact value. Nowadays database is getting more complex due to the business logic which plays an important role for the applications. addition or save options. Performance testing is designed to test run time performance of software within the context of an integrated system. It is not until all systems elements are fully integrated and certified as free of defects the true performance of a system can be ascertained b. it can be done for any application and it does not matter application is small or big. so you can take the assistance of developers and figure out the queries. This is the best process for the testers to perform the DB testing.

bogging down systems to a crawl. the tester can uncover situations that lead to degradations and possible system failure Security testing If your site requires firewalls.utilization in an exacting fashion. the software may not be in a ‘sane’ enough condition to warrant further testing in its current state Sanity testing Typically an initial testing effort to determine if a new software version is performing well enough to accept it for a major testing effort. this type of test or analysis is becoming more critical. For example. encryption. testers may be learning the software as they test it Benefits Realization tests With the increased focus on the value of Business returns obtained from investments in information technology. the software may not be in a ‘sane’ enough condition to warrant further testing in its current state . The analysis is usually conducted by the business user or client group who requested the project and results are reported back to executive management Mutation Testing Mutation testing is a method for determining if a set of test data or test cases is useful. For example. if the new software is crashing systems every 5 minutes. by deliberately introducing various code changes (‘bugs’) and retesting with the original test data/cases to determine if the ‘bugs’ are detected. or destroying databases. internal software test that is not based on formal test plans or test cases. if the new software is crashing systems every 5 minutes. External instrumentation can monitor intervals. Proper implementation requires large computational resources Sanity testing: Typically an initial testing effort to determine if a new software version is performing well enough to accept it for a major testing effort. you may need to test these and also test your site’s overall protection against unauthorized internal or external access Exploratory Testing Often taken to mean a creative. By instrument the system. or access to databases with sensitive data. log events. or destroying databases. The benefits realization test is a test or analysis conducted after an application is moved into production in order to determine whether the application is likely to deliver the original projected benefits. bogging down systems to a crawl. user authentication. financial transactions.

Some other database testing checking for mandatory fields. it check the data flow between front end back ends. If any Level 2 test case fails. These tests cases verify the major functionality a high level. will need to be regressed. .). If any Level 1 test case fails. or re-tested. checking for constraints and rules applied on the table . The approach is as follows: While adding a record there’ front-end check back-end that addition of record is effected or not. which can’t be broken. The objective is to determine if further testing is possible. some time check the procedure using SQL Query analyzer Functional Testing (or) Business functional testing All the functions in the applications should be tested against the requirements document to ensure that the product conforms with what was specified. Each business function has certain rules. Once the smoke test is completed. Business functions are generally defined in the requirements Document. All components should be touched. These test cases simply ensure that the application can be built and installed successfully. and every major feature should be tested briefly by the Smoke Test. update. It should take between 5 minutes to 1 hour to regress most bugs Database Testing Database testing done manually in real time. etc. all resolved bugs need to be regressed. Observing that operations. the build is returned to developers un-tested Smoke Tests Smoke Tests should be automated and take less than 2-3 hours (20 minutes is typical). So same for delete. These test cases should emphasize breadth more than depth. but marked as “Fixed. the build is returned to developers un-tested Bug Regression Testing Every bug that was “Open” during the previous build.(They meet functional requirements)Verifies the crucial business functions are working in the application. which are operated on front-end is effected on back-end or not. Needs Re-Testing” for the current build under test.Build Acceptance Tests Build Acceptance Tests should take less than 2-3 hours to complete (15 minutes is typical). The objective is to determine if further testing is possible. Other related test cases ensure that Testing received the proper Development Release Document plus other build related information (drop point.

so simply testing that all windows and menus can be used is not enough to verify the business functions.Whether they applied to the user interface behavior or data behind the applications. Both levels need to be verified. Checks for the consistency or duplication of accelerator key letters and examines the positions and alignments of window objects Volume Testing Testing the applications with voluminous amount of data and see whether the application produces the anticipated results (Boundary value analysis) Stress Testing Testing the applications response when there is a scarcity for system resources Load Testing It verifies the performance of the server under stress of many clients requesting data at the same time Installation testing . You must verify the business functions as discrete units of your testing * Study SRS * Identify Unit Functions * For each unit function * Take each input function * Identify Equivalence class * Form Test cases * Form Test cases for boundary values * From Test cases for Error Guessing * Form Unit function v/s Test cases. Cross Reference Matrix User Interface Testing (or) structural testing It verifies whether all the objects of user interface design specifications are met. It examines the spelling of button test. window title test and label test. Business functions may span several windows (or) several menu options.

The tester should install the systems to determine whether installation process is viable or not based on the installation guide Configuration Testing The system should be tested to determine it works correctly with appropriate software and hardware configurations Compatibility Testing The system should be tested to determine whether it is compatible with other systems (applications) that it needs to interface with Documentation Testing It is performed to verify the accuracy and completeness of user documentation 1. which black box is testing. however. it must be verified as part of documentation testing Recovery/Error Testing Testing how well a system recovers from crashes. The Test Team will work with the client to develop the acceptance criteria Alpha Testing . hardware failures. This testing is done to verify whether the documented functionality matches the software functionality 2. or other catastrophic problems Comparison Testing Testing that compares software weaknesses and strengths to competing products Acceptance Testing Acceptance testing. comprehensive and well edited If the application under test has context sensitive help. The documentation is easy to follow. The acceptance test will be the responsibility of the client. it will be conducted with full support from the project team. will give the client the opportunity to verify the system functionality and usability prior to the system being moved to production.

Integration test will be termed complete when actual results and expected results are either in line or differences are explainable/acceptable based on client input System Testing . Test sets will be developed with the express purpose of exercising the interfaces between the components.Testing of an application when development is nearing completion. Beta Testing is typically done by end-users or others. problems need to be found before the final release. This type of testing may be performed by programmers or by testers Usability Testing Testing for ‘user-friendliness’ clearly this is subjective and will depend on the targeted end-user or customer. video recording of user sessions. Expected results from the baseline are compared to results of the software being regression tested. User interviews. A baseline set of data and scripts will be maintained and executed to verify changes introduced during the release have not “undone” any previous code. This may require various aspects of an application’s functionality be independent enough to work separately before all parts of the program are completed. All discrepancies will be highlighted and accounted for. and other techniques can be used. before testing proceeds to the next level Incremental Integration Testing Continuous testing of an application as new functionality is recommended. which is black box testing. not by programmers or testers Regression Testing The objective of regression testing is to ensure software remains intact. Programmers and testers are usually not appropriate as usability testers Integration Testing Upon completion of unit testing. The purpose is to ensure distinct components of the application still work in accordance to customer requirements. Alpha Testing is typically performed by end-users or others. not by programmers or testers Beta Testing Testing when development and testing are essentially completed and final bugs. surveys. will begin. This activity is to be carried out by the Test Team. or that test drivers are developed as needed. Minor design changes may still be made as a result of such testing. integration testing.

During system testing. the Test Team will begin system testing. It is important for higher level testing efforts to understand unresolved problems from the lower testing levels. The system test will simulate production in that it will occur in the “production-like” test environment and test all of the functions of the system that will be required in production. the complete system is configured in a controlled environment to validate its accuracy and completeness in performing the functions as designed. System testing is deemed complete when actual results and expected results are either in line or differences are explainable/acceptable based on client input Parallel/Audit Testing Testing where the user reconciles the output of the new system to the output of the current system to verify the new .Upon completion of integration testing. Prior to the system test. The Test Team will complete the system test. the unit and integration test results will be reviewed by SQA to ensure all problems have been resolved. which is a black box test.

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->