24
AMERICAN INTERNATIONAL UNIVERSITY- BANGLADESH (AIUB) Online Judge Database DATABASE PROJECT GROUP NAME: SUBMITTED TO: NASHIA ISLAM NABILA 12/22/2013

Data Base project

Embed Size (px)

Citation preview

AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH (AIUB)

DATABASE PROJECTGROUP NAME:

SUBMITTED TO:

NASHIA ISLAM NABILA12/22/2013

ONLINE JUDGE DATABASE

A REPORT SUBMITED TO DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING, AIUB IN PART –FULFILLMENT OF THE REQUIREMENTS OF THE FINAL

EXAMINATION IN INRTODUCTION TO DATABASE, FALL SEMESTER 2013-14

PREPARED & SUBMITTED BY

GROUP NAME:

SECTION:

ISLAM, MD. IMADUL

(12-21719-2)

ASHAN, A.S.M SANZIDUL

(12-21848-2)

AHMED, TANVEER

(12-21825-2)

ISLAM, MD. SAIFUL

(12-21963-2)

COURSE ISTRUCTOR:

NASHIA AHMED NABILA

PREFACE1 | P a g e

ONLINE JUDGE DATABASE IS A UNIQUE DATABASE SYSTEM THAT HELPS

INSTRUCTORS TO VIEW HOW MANY PROBLEMS SOLVED AND TOUCHED BY CONTESTENTS.

IT IS THE BEST WAY THAT ENHANCE OUR KNOWLEDGE ABOUT PROGRAMMING.

IT IS THE ONLY WAY TO ARRANGE AN INTERNATIONAL PROGRAMMING CONTEST.

2 | P a g e

ACKNOWLEDGEMENT

FIRST AND FOREMOST, WE WOULD LIKE TO THANK OUR COURSE INSTEUCTOR

OF THIS INTRODUCTION TO DATABASE COURSE TEACHER NASHIA AHMED NABILA FOR THE VALUABLE GUIDANCE AND ADVICE.SHE INSPIRED US GREATLY TO WORK IN THIS TEAM PAPER.HER WILLINGNESS TO MOTIVATE US CONTRIBUTED TREMENDOUSLY TO OUR WORK.WE ALSO WOULD LIKE TO THANK HER FOR HER VALUABLE TIME BY HELPING US FOR THIS TERM PAPER.

FINALLY, AN HONORABLE MENTION GOES TO OUR FAMILIES AND FRIENDS FOR THEIR UNDERSTANDINGS SUPPORTS ON US IN COMPLETING THIS REPORT.WITHOUT HELPS OF THE PARTICULAR THAT MENTIONED ABOVE, WE WOULD FACE MANY DIFFICULTIES WHILE DOING THIS PROJECT.

TABLE OF CONTENT3 | P a g e

TITLE PAGE ---------------------------------------------------------------------------------- 01

PREFACE ----------------------------------------------------------------------------------02

ACKNOWLEDGEMENT ----------------------------------------------------------------------------------03

TABLE OF CONTENT ----------------------------------------------------------------------------------04

ABSTRACT -------------------------------------------------------------------------------- 05

PREVIOUS SYSTEM -------------------------------------------------------------------------------- 06

IDENTIFICATION NEED -------------------------------------------------------------------------------- 06

DEVELOPED SYSTEM -------------------------------------------------------------------------------- 06

PROBLEM ANALYSIS -------------------------------------------------------------------------------- 07

FUNCTION REQUIREMEMT -------------------------------------------------------------------------------- 08

ER-DIAGRAM -------------------------------------------------------------------------------- 09

MAPING -------------------------------------------------------------------------------- 10

SCHEMA DIAGRAM ---------------------------------------------------------------------------------11

DESCRIPTION --------------------------------------------------------------------------------- 12

TABLE ---------------------------------------------------------------------------------- 13

QUERY ----------------------------------------------------------------------------------16

VIEW --------------------------------------------------------------------------------- 18

CONCLUSION ---------------------------------------------------------------------------------- 19

ABSTRACT

4 | P a g e

ONLINE JUDGE DATABASE IS A UNIQUE DATABASE SYSTEM THAT HELPS

INSTRUCTORS TO VIEW HOW MANY PROBLEMS SOLVED AND TOUCHED BY CONTESTENTS.

IT IS THE BEST WAY THAT ENHANCE OUR KNOWLEDGE ABOUT PROGRAMMING.

IT IS THE ONLY WAY TO ARRANGE AN INTERNATIONAL PROGRAMMING CONTEST.

PREVIOUS SYSTEM

5 | P a g e

PREVIOUS SYSTEM REQUIRE HUMAN INTERFACR FOR JUDGEING THE

PROBLEMS. IT IS ALMOST IMPOSSIBLE TO CHECK MILLIONS OF PROBLEM BY HUMAN. BUT THIS ADVANCED DATABASE SYSTEM CHANGES EVERYTHING. IT CAN CHECK MILLIONS OF PROBLEMS WITHIN FEW MOMENTS.

IDENTIFICATION NEED

ONLINE JUDGE DATABASE SYSTEM IS USE TO STORE INFORMATION ABOUT

MILLIONS OF USER, PROBLEMS, PROBLEM SETTER, AND STATUS OF SUBMITTED PROBLEM AND MOST IMPORTANTLY ARRANGE PROGRAMMING CONTAST. THIS KIND OF DATABASE NOW MOSTLY NEEDED FOR MAKING OUR LIFE EASIER.

DEVELOPED SYSTEM

THIS DATABASE SYSTEM ARE ABLE TO KEEP ALL USERS, PROBLEMS, PROBLEM

SETTER, AND MOST IMPORTANTLY IT’S CONTAINS HUGE COMPILER WHICH CAN USED MULTIPLE PROGRAMMING LANGUAGE AND its TASKING CAPACITY 24×365.

6 | P a g e

PROBLEM ANALYSIS

PROBLEM STATEMENT:THE OBJECTIVE OF THIS PORJECT IS TO

REDESIGN AND DEVELOP ONLINE JUDGE MANAGEMENT

DATABASE SYSTEM.

TECHNOLOGIES:Oracle Database 11g Express Edition IS USED TO SUCESSFULLY DO THIS PROJECT.

FUNCTIONAL REQUIREMENT

7 | P a g e

PERTAINING TO USER: INDIVIDUAL USER DETAILS PEOBLEM LIST OF USER COUNT OF SOLVE PROBLEMED

PERTAINING TO MEMBER: COMPLETE RECORD OF MENBER INDIVIDUAL

ACTIVITY DETAILS

PERTAINING TO PEOBLEM SOLVE: COMPLETE RECORD OF PROBLEM SOLVED DETAILS

PERTAINING TO LEVEL: COMPLETE INFORMATION OF LEVEL

PERTAINING TO CATAGEORY: COMPLETE INFORMATION OF CATAGEORY

PERTAINING TO PROBLEM SETTER: COMPLETE INFORMATION OF PROBLEM SETTER

8 | P a g e

M_NAMEM_ID

MAPING

9 | P a g e

MAMBER

SOLVED

PROBLEM

ASSINGED

MAMBER:

PROBLEM:

PROBLEM_SET:

PROBLEM_SETTER:

CATEGORY:

MY_SUBMISSION:

10 | P a g e

SCHEMA DIAGRAM:

11 | P a g e

DESCRIPTION:

12 | P a g e

TABLE

MEMBER:

PROBLEM:

13 | P a g e

PROBLEM_SET:

PROBLEM_SETTER:

CATEGORY:

MY_SUBMISSION:14 | P a g e

QUERY:

15 | P a g e

1. Show the info of member and problem whose problem is accepted

= select M.M_ID, M.M_NAME, MS.P_ID, P.P_NAME FROM MAMBER M, MY_SUBMISSION MS, PROBLEM P where (M.M_ID = MS.M_ID) AND (MS.P_ID = P.P_ID) AND MS.STATUS = 1

2. Show the info of member and there problem number that they were failed to solved

= select m.M_ID, m.m_name, count(ms.p_id) from mamber m, my_submission ms where (m.m_id = ms.m_id) and (ms.status = 0) GROUP BY m.M_ID, m.m_name

3. Find info of problem which problem is solved and checked by at last 3 member

= select p.p_id, p.p_name from problem p, my_submission ms where (p.p_id = ms.p_id) and (ms.status = 1) group by p.p_id, p.p_name having count(ms.m_id) >=3

4. Find the problem setter and problem info which problem is not solved

= select p.p_id, p.p_name, ps.ps_id, ps.ps_name from problem p, problem_setter ps, my_submission ms where (p.p_id = ms.p_id) and (p.ps_id = ps.ps_id) and (ms.status = 0) group by p.p_id, p.p_name, ps.ps_id, ps.ps_name

5. Find the info of the problems and volume number which is solved by java or C#

= select p.p_id, p.p_name, v.VOLUME_NO from problem p, my_submission ms, problem_set v where (p.p_id = ms.p_id) and (v.VOLUME_NO = p.VOLUME_NO) and (ms.language = 'JAVA' or ms.language = 'C#')

6. Find the info of the member and count problem no who have solved 'NASHIA AHMED NABILA' problem

16 | P a g e

= select m.m_id, m.m_name, count(ms.p_id) from mamber m, problem p, my_submission ms, problem_setter ps where (m.m_id = ms.m_id) and (ms.p_id = p.p_id) and (p.ps_id = ps.ps_id) and (ps.ps_name = 'NASHIA AHMED NABILA') group by m.m_id, m.m_name

7. Find the info of member who has successfully solved 'NASHIA AHMED NABILA''s problem.

= select m.m_id, m.m_name from mamber m, problem p, my_submission ms, problem_setter ps where (m.m_id = ms.m_id) and (ms.p_id = p.p_id) and (ms.status = 1) and (p.ps_id = ps.ps_id) and (ps.ps_name = 'NASHIA AHMED NABILA')

8. Find the problem and problem setter info that member were failed to solved.

= select ps.ps_id, ps.ps_name, p.p_id, p.p_name from problem_setter ps, my_submission ms, problem p where (ms.p_id = p.p_id) and (p.ps_id = ps.ps_id) and (ms.status = 0)

9. Find the info of problem and category that was unable to solve by member 'M1'.

= select p.p_id, p.p_name, c.c_id, c.c_name from problem p, catagory c, my_submission ms where (ms.p_id = p.p_id) and (p.c_id = c.c_id) and (ms.status = 0) and (ms.m_id = 'M1')

10. Show the number of the problem of category 'C1'.

= select count(p.p_id) from problem p, catagory c where (p.c_id = c.c_id) and (c.c_id = 'C1')

VIEW

17 | P a g e

1. Show the info of member and problem whose problem is accepted.

2. Find the problem setter and problem info which problem is not solved.

3. Find the info of the problems and volume number which is solved by java or C#.

4. Find the info of member who has successfully solved 'NASHIA AHMED NABILA''s problem.

18 | P a g e

5. Find the problem and problem setter info that member were failed to

solved.

Conclusion:

The Online Judge database management is beneficial for those

who can easily judge himself/herself. The Judgment system create an opportunity for practice programming without facing problem. One’s can choose problem according his choice. Finally, it is real area to judge real programmer.

19 | P a g e