QUESTION
The Final Paper will cover all the points noted below:
1. Describe your project. Create a list of questions to ask your teammates on their project – at least five. This will assist in flushing out the requirements for the next step. Full description of the project will be submitted as part of the Final Paper.
2. Project Description (Operational Narrative) definition: Explain the purpose of your system. Provide at least five business rules (constraints and requirements). These should be objective and measurable. Include at leave five deliverables from the system i.e. programs, screens, reports, queries and/or tables required.
3. Entity identification: Select at least five entities for the application.
4. ERD Creation: Create an ERD diagram using Visio with tables, keys, columns, relationships. Primary and Foreign keys need to be identified in this diagram.
5. Alternate keys: Identify at least five keys (not already listed as PK or FK) needed by end users. These indexes would be considered Alternate or Secondary keys and are mostly used for queries and quick reporting. They may contain multiple columns.
6. Data Dictionary: Take your two largest tables (in terms of columns) and create a data dictionary. Use appropriate data types and lengths for your attributes.
7. SQL Queries: Describe three SQL queries to provide information to the end users for this system. At least one must be a join. These can be real SQL statements or written in English
8. Complex Transaction: Identify and describe one complex (more than one table) process that will need to be contained within one programming transaction. For instance, to create a new order you might need to update the customer, order, product and inventory tables. Another example would be keeping track of tutoring hours you would add hours to the table with a key of tutor id, student id, date Tutored and potentially add the hours to the departmental expenses for accounting purposes.
9. XML Export: Create an XML export of two rows of data from one of your completed tables that has at least 4 columns.
10. Security: Demonstrate your understanding of CIA (confidentiality, data integrity and availability) by explaining how it will be applied to your application. This should one to two pages providing at least one example pertaining to each of the initials.
ANSWER
Project:
Internship Management System
Q1.
Description:
In this project we are going to make database that will help students interested to do internship to see vacancies and the possible companies that he/she can apply in. The companies can also make their account and can upload their openings for internships. It would be a great platform for the aspiring students looking for internship and will help them to get the job which will enhance their experience and knowledge. Also companies now no more will have to move in searching for students or go to consultancy agents to hire interns.
Q2.
Project Description:
The main purpose of this project is to make students see and choose the best internship that he/she can apply for. Since the companies also looks for interns with some specific requirements.
Having this kind of data will help them to look after the best suitable as per their requirement. Since the interns will always be required by the companies and the student will always be look for internship, so this application will be always of great use.
Companies now no more have to go to consultancy companies for intern requirement or have to look for the students by going to colleges. This will save their time and money.
Students will get a platform where they can look for the companies and can easily apply for them on one click. They can also see the requirement of the company and can work in context to it to get internship in it. It is most likely that the coming generations of students will have to work more for their professional growth hence they will have to go for internship at early age too. This application will be beneficial at that time as well.
Deliverables:
-
Student panel for user login/registration.
-
Student profile.
-
Company panel for login and registration.
-
Company updating requirements and basic information.
-
Student list who have applied for the company and have been selected.
More work that can be done on this is adding skills entity of the student, adding internship type and place of internship. Gap year of the student, other basic information like dob. This project can also be extended by including job opportunity in it with similar functionality including apply for the job like that for internship.
Q3.
Entity Identification
Main entities that this project will contain are:
-
Student (this will hold the basic information about the student that may be required by the company)
-
Student experience (some companies prefer students with good experience)
-
Company (students can see the basic information about the company)
-
Internship ( intern requirement and basic skills required by the company)
-
Internship application (to make student see the companies in which he has send request and their status)
-
Education (holds the educational details of the student, so that company can see the academic background of the student)
Q4.
ERD Creation
Q5.
Alternate keys
For student table:
-
email (for logging in to the system one will required to enter his email id)
-
phone_no (for further contact company may need to contact to the student so this will be a good way to communicate and if user forgets his password then he can get link via sms to update password)
For company:
-
email_id (for logging in to the system the company will need the email id)
-
Ph_no (if some student have selected for the internship, then he can save the number so if he gets call from the number he attends it and for updating password and security purpose this may also be used)
-
c_reg_no (company registration no to verify the identity of the company)
Q6.
Data Dictionary
Student table:
Field Name |
Data Type |
Field Size for display |
Description |
Example |
student_id |
int |
10 |
Unique id for the students |
1 |
first_name |
varchar |
15 |
First name of student |
Rishabh |
last_name |
varchar |
15 |
Last name of student |
Sarda |
email_id |
varchar |
25 |
Email id of the student |
rishabhsarda@mailinator |
password |
varchar |
20 |
Password to login student panel |
lls12Dnf |
mobile_no |
int |
10 |
Mobile no of the student |
9954165722 |
address |
varchar |
50 |
Address of the student |
Delhi, India |
Company table:
Field Name |
Data Type |
Field Size for display |
Description |
Example |
company_id |
int |
10 |
Unique id for company name |
20 |
company_name |
varchar |
30 |
Name of the company |
Example pvt tld |
email_id |
varchar |
30 |
Email id of the company |
example@gmail.com |
password |
varchar |
25 |
Password to login company panel |
lkiir1442 |
ph_no |
int |
10 |
Phone no of the company |
9898569741 |
website |
varchar |
20 |
Website of the company |
www.example.com |
c_reg_no |
varchar |
10 |
Registration no of the company |
2240021 |
Q7.
SQL Queries
Few sql queries that could be used in the program are:
-
Select * from student join education where education.education_level = ‘graduation’ on education.s_id = student.student_id;
-
Select * from company;
-
Select * from internship_application join student on student.s_id = internship_application.student_id where application_status = 1;
Q8.
Complex Transaction
The one important transaction is when the student is selected in an internship and has confirmed it. In this case the student_application of internship_application will change and the no_of_interns required in internship will decrease by 1.
Q9.
XML Export
DECLARE @xmlData XML;
SET @xmlData = ‘<root>
<item id=”1”>
<student_id>
1
</student_id>
<first_name>
John
</first_name>
<last_name>
Tang
</last_name>
<email>
john@mailenator.com
</email>
<password>
Jmta321012
</password>
<ph_no>
9879887564
</ph_no>
<address>
3465 Centennial Farm Road, YOUNGSTOWN, America
</address>
</item>
<item id=”2”>
<student_id>
2
</student_id>
<first_name>
Maima
</first_name>
<last_name>
Gauri
</last_name>
<email>
Maima@mailenator.com
</email>
<password>
llske@120093
</password>
<ph_no>
8974522120
</ph_no>
<address>
7421 Birchwood Ave. New Castle, PA 16101
</address>
</item>
</root>’
Q10.
Security
Confidentiality, integrity and availability are few most important requirement that any application need to have in it. It is foremost important as if any one of these are not integrated then the application will be either useless or it will be risky to use. Each of them are having some importance as they have their own importance in any application and not having them can cause a severe damage or drawback for the application. Confidentiality basically means to keep data confidential from unauthorised user, ie, user having authority to use certain data should be able to access it only. Integrity means that the data should be accurate, complete and consistent, the data should be genuine and as user entered it. Availability means that the data is available to the authorised user. Application such as internship application management is completely useless if there is no data available.
-
Confidentiality:
Confidentiality is basically hiding of data that need to be kept confidential from other. This is not required by any other user and changing such thing can cause damage to the person whom it belongs. Eg: In our case, the data like company registration number is one of thing that need to be kept confidential. This data is important to verify the company identity but also this is not required by anyone else, if anyone else got the ability to access this data then it can be very dangerous for the company. So this data is required to be kept confidential for others.
-
Integrity:
Integrity means that the data should be accurate, complete and consistent. This is important as if data is lack integrity then data that will be available useless. Eg.: In our case, suppose that the student is applying for some internship with company id 39 but since the data integrity is not taken in concern, the company id changes to 57 which he is not willing to apply for. This will create a great problem for him and may also lose the opportunity of a good internship.
-
Availability:
By availability one means that the data should be available for the user that requires it and have well rights to get access to them. If availability is not there in the application the it will be complete useless as it can’t be used for any work. Eg.: Consider a student have uploaded his/her information and he want to do some changes or update information, but if he is not able to get access to it, this will create a problem for him. Moreover if a company is looking for the students or vice versa but since the data is not available to them will result in a drawback and the application will not be able to fulfill its basic requirement.
Looking for best Computer Science Assignment Help. Whatsapp us at +16469488918 or chat with our chat representative showing on lower right corner or order from here. You can also take help from our Live Assignment helper for any exam or live assignment related assistance.