Académique Documents
Professionnel Documents
Culture Documents
INTRODUCTION
Innovation is the base of development; so here introduce a new topic ONLINE PROJECT
CORDINATION SYSTEM. This system is opening a new technology to manage the students
project. Here all the communication between student-student and student-guide is digital. So direct
presence of guide is not necessary, guide can give instruction to their students from the distant area.
Only an Internet connection is required to do this task. The main problem is if the guide is absent
then the students must not receive the necessary guidelines. In this system guide can monitor the
work of each group. Approval of topic, abstract submission is also digitalized. So guide can easy to
verify and can send it to head of the department. Head can put mark for each group. Also provide
public and private messages between group members, so project works can do on both working days
and holidays. Here have 4 types of user- Admin, Head of the Department, Guide and Student. Admin
will create account for every other users, he can remove or temporarily block unwanted users, can do
correcting errors. Each user can create their own profile details in their account. This system will
store the name of all the projects done by the students, so this history helps for other students to
select the topic by neglecting already presented topics.
In the current system submitting all the records are submitted as hardcopies and
communication between students-students and students-guide is direct. So if the guide is busy or
absent will be a big trouble for students. And also students cant make a good communications in
holidays. Topic approval and abstract submission need more time. This type problems leads to the
creation of the system-Online project management system. Expense will be larger when we submit
everything as hard copies, and direct communication is not possible on any situation. So proposed
system will be a fast, efficient and reduce workload and money consumption of students and lectures.
1.1. OBJECTIVES
2. SYSTEM ANALYSIS
3. SYSTEM SPECIFICATION
3.1 HARDWARE CONFIGURATION
Visual Studio.NET Requirements
Operating System:
MB on system drive
Drive:
: Visual studio.Net
: Windows 7, Windows XP
4. SOFTWARE DESCRIPTION
4.1 FRONT END
Microsoft .Net:
Microsoft .NET is Microsofts new Internet strategy. .NET was originally called NGWS
(Next Generation Windows Services). .NET is not a single technology, rather it is a set of
technologies that work together seamlessly solve your business problems.
Microsoft released the .NET framework in February 2002, its biggest initiative since the
launch of Windows in 1991.Microsoft .NET is a revolutionary multi-language platform that knits
various aspects of application development together with the internet. All .NET programs are
compiled to an Intermediate Language (IL) rather than to native code, which can be understood by
the computer processor. MSIL must be converted to CPU-specific code by a Just in time (JIT)
compiler. It helps the runtime and garbage collection keep track of memory that will be released back
to the operating system when it is no longer needed.
Microsofts .net is the next generation platform for building web applications and web
services. It is a platform for XML web services areas of Microsoft.
FEATURES
ASP.Net Features:
ASP.Net combines unprecedented developer productivity with performance, reliability and
deployment. ASP.Net redesigns the whole process. Its still easy to grasp for new comers but it
provides many ways of managing projects. The following are the features:
Easy Programming Model
ASP.NET makes building real world Web applications dramatically easier. ASP.NET server
controls enable an HTML-like style of declarative programming that let you build great pages with
far less code than with classic ASP. Displaying data, validating user input, and uploading files are all
amazingly easy. Best of all, ASP.NET pages work in all browsers including Netscape, Opera, AOL,
and Internet Explorer
Flexible Language Options
ASP.NET lets you leverage your current programming language skills. Unlike classic ASP,
supports only interpreted VBScript and Jscript, ASP.NET now supports more than 25 .NET language
(built-in support for VB.NET, C#, and Jscript.NET), giving you unprecedented flexibility in your
choice of language.
Great Tool Support
You can harness the full power of ASP.NET using any text editor, even Notepad. But Visual
Studio .NET adds the productivity of Visual Basic-style development to the Web. Now you can
visually design ASP.NET Web Forms using familiar drag-drop-double-click techniques, and enjoy
full-fledged code support including statement completion and color-coding. VS.NET also provides
integrated support for debugging and deploying ASP.NET Web applications. The Enterprise versions
of Visual Studio .NET deliver life-cycle features to help organization plan, analyze, design, build,
test, and coordinate teams that develop ASP.NET Web applications. These include UML class
modeling (conceptual logical, and physical models), testing tools (functional, performance and
scalability), and enterprise frameworks and templates, all available within the integrated Visual
Studio .NET environment.
Rich Class Framework
rd
Compiled Execution
ASP.Net much faster than classic ASP while preserving just hit save update model of
ASP. However, no explicit compile step is required. ASP.Net will automatically detect any changes,
dynamically compile the files if needed, and store the compiled results to reuse for subsequent
requests. Dynamic compilation ensures that your application is always up to date, and compiled
execution makes it fast.
Rich Output Caching
ASP.Net output caching can dramatically improve the performance and scalability of your
application. When output caching is enabled on a page, ASP.Net executes the page just once, and
saves the result in memory in addition to sending it to the user. When another user requests the same
page, ASP.Net serves the cached result from memory without resending the page. Output caching is
configurable, and can be used to cache individual, regions or entire page. Output caching is
configurable, and can be used to cache individual regions or an entire page. Output caching can
dramatically improve the performance of data-driven pages by eliminating the need to query the
database on every request.
Web-Form Session State
ASP.Net session state enables to share session data user-specific state values across all
machines in the web farm. It enables the users to hit different servers in the web farm over multiple
requests and still have full access to the session. And since business components created with the
.Net framework are free-threaded, so the problem of thread affinity can be avoided.
Easy Deployment
ASP.Net takes the pain out of deploying server applications. It dramatically simplifies the
installation of the application. With ASP.Net, the developer can deploy an entire application as easily
as an HTML page; just copy it to the server. No need to run regsvr32 to register any components, and
configuration settings are stored in an XML file within the application.
Dynamic update of running application
ASP.Net lets the user to update compiled components without restarting the web server. In
the past with classic COM components, the developer would have to restart the web server each time
an update is deployed. With ASP.Net the developer can simply copy the component over the existing
DLL: it will automatically detect the change and start using the new code.
Easy Migration Path
ASP.Net pages are processed by the new ASP.Net engine. It enables the user to migrate
application by application or single pages
C#.NET is the next generation of the visual basic language from Microsoft. With C#
you can build .NET applications quickly and easily. Applications made with C# are built on
the services of the common language runtime and take advantage of the .NET framework.
C# has many new and improved features such as inheritance, interfaces and
overloading that make it a powerful object-oriented programming language. Other new
features include free threading and structured Exception handling# fully integrated the .NET
framework and the common language runtime, which together provides language
interoperability, garbage collection, enhanced security, and improved versioning support C#
supports single inheritance security and create
5. SYSTEM DESIGN
5.1. MODULES
5.1.1. ADMINISTRATOR
Administrator is a person responsible for carrying out the administration of a software or
System. Here administration is the process of controlling and monitoring the activities takes place
in the software. In this website Administrator have overall control in all activities. Also have
feature to monitor the activities of the user. In Software, sometimes need some modifications, so
here have options for maintenance. This website does not allow everyone to register ,so here
administrator create account for all in the institution and Public messages can send to everyone.
5.1.2. HOD
Head of the department select one lecture from the group of lectures in the institution as the
guide of project. So HOD can give instructions to guide about the projects which mean much
information like submission date, maximum number of members allowed for a group etc.
Verification of the project topics and project documentation sends by guide. Assigning mark is
also allowed for this user. This mark will be store in the database and also approved topics will be
put in the memory so students can easily find the seniors topics.
5.1.3. GUIDE
Guide directly interact with the students, before starting the project guide create number of
groups and add students to each group. And here have option to send public messages to students
so general information can be easily distributed. Also provide communication with HOD. Study
material distribution is allowed for every student. The most important feature is guide can help
students in distant area by the help of internet, because it is a web based project. Submission date
will be announced. Document verification is also provided. Marks of each student will be store in
the database as guide mark. Here there are two marks for each student, one is by HOD and other is
by guide.
10
5.1.4. STUDENT
Students can communicate with the group members, it gives a good opportunity to share
ideas and clarify the doubts. This is done by group messaging. Each student will have their own
profiles. Photo upload option gives a good looking to the site and it creates a personal account
feeling. Every student can send documents of project to their group members and guide. If anyone
have any complaints there here have option to send complaints to the Administrator.
11
In the normal convention, logical DFD can be completed using only 4 notations
12
13
LEVEL 0
Figure 1
Description: User login in to the website by checking username and password in the login table
14
ADMINISTRATOR LEVEL 1
Figure 2
Description: Admin login to the website using username and password in the login table. Then
admin can control profile of other users using the process user profile control, which is connected
with sub processes user profile creation, activation and deactivation, search. Using those sub
processes admin can create account of other all users, admin can search other user using search
process to view their profile and admin can deactivate or activate their account temporarily.
Registration table contains information about the users. Admin can send public messages to users
through public message process using message table. Also read complaints and requests posted by
user through complaints table. Admin can change his password using change password process.
15
Figure 3
Description: Figure 3 shows the level 1 dataflow diagram of HOD. HOD can login to the website
using username and password given in the login table. HOD can search a user in search process by
accessing LEC_REG and STUD_REG tables. HOD can receive or send public messages using
public message process. HOD can also verify documents uploaded by users by accessing
document table and can assign marks to students using the process assign mark. .HOD can change
his password using change password process.
16
GUIDE LEVEL1
Figure 4
17
Description: Guide can login to the website using username and password given in the login table.
Figure 4 shows the level 1 DFD of guide. Guide can search a user in search process by accessing
STUD_REG table, can receive or send public messages using public message process. Guide can
assign students into number groups and verify the topics uploaded by them using group creation
and topic approval processes. Guide can also verify documents uploaded by students by accessing
document table and can assign marks to students using assign mark process. Guide can also
upload documents to website using document upload process. Guide can change his password
using change password process.
18
STUDENT LEVEL1
Figure 5
Description: Student can login to the website using username and password given in the login
table. Figure 5 shows the level 1 DFD of student. Students can submit their project topic to guide
and check its status from topic submission and check status processes. Student can receive or send
public messages using public message process. Student can also upload documents to guide
through document upload process and download documents using document download process by
accessing documents table. Student can also view marks using view marks process from marks
table. Student can change his password using change password process.
19
LOGIN
PRIMARY KEY: ID
PURPOSE: Uniquely identify user to login. Primary key id is an integer assigned
uniquely for each user.
20
PROJECTS
PRIMARY KEY: PROJECT ID
PURPOSE: Stores the name of the previously done projects. It used to check by student
that whether that topic selected by previous batch or not.
MESSAGES
PRIMARY KEY: USERNAME
PURPOSE: Used to store messages and its related information such as sender id,
destination id, guideline for all students.
21
REGISTRATION (LECTURE)
PRIMARY KEY: ID
PURPOSE: store details of lecture. When a new lecture is arrived his details will added to
the table.
22
REGISTRATION (STUDENT)
PRIMARY KEY: ID
PURPOSE: Used to store details of student, When a new Student is arrived his details
will added to the table.
23
DOCUMENTS
PRIMARY KEY: DOC.ID
PURPOSE: Stores information about the document uploading. Sender id, destination id,
group name etc.
24
MARKS
PRIMARY KEY: ID
PURPOSE: Stores marks assign by the HOD and guide of each students, students have option
to view it.
COMPLAINT
PRIMARY KEY: USERNAME
PURPOSE: Stores complaints registered by HOD, guide or students.
25
NOTIFICATIONS
PRIMARY KEY: GUIDEUSERNAME
PURPOSE: Used to store the guidelines send by guide and its related information such as
guide username, destination, path, etc.
PROJECT SUBMISSION
PRIMARY KEY: GROUP ID
PURPOSE: Used to store the topic submitted by each group and its related information
such as groupid, date, etc.
26
LOGIN
27
VIEW BY ADMIN
28
VIEW BY ADMIN
ADMIN-USER ACTIVATION/DEACTIVATION
29
FORGET PASSWORD
ADMIN-PUBLIC MESSAGE
30
HOD SEARCH
HOD-PUBLIC MESSAGES
31
HOD-DOCUMENT VERIFICATION
HOD-ASSIGN MARK
GUIDE-SEARCH
32
GUIDE-DOCUMENT VERIFICATION
GUIDE-DOCUMENT UPLOAD
33
GUIDE-PUBLIC MESSAGE
STUDENT-PUBLIC MESSAGE
34
STUDENT-DOCUMENT UPLOAD
STUDENT-VIEW MARKS
35
6. SYSTEM CODING
The project uses Microsoft Visual Studio .NET as front end and SQL server 2005 as back
end. The system has four modules Admin, HOD, Guide and User.
The entire application is organized by different package:
1.
2.
3.
4.
5.
6.
7.
8.
System
System.Collections.Generic
System.Linq
System.Web
System.Web.UI
System.Web.UI.WebControls
System.Data
System.Data.SqlClient
The name spaces used for this project are the following:
The system name space contains fundamental classes and base classes that define commonly
used types of classes. It is usually specified with a using system directive. The package System.Web
consists of the web supports for the system. It consists of several classes which helps in web based
operations. The System.Web name space contains classes for creating web based applications. The
System.Web.UI web controls name space contains classes that allow you to create HTML server
controls on a web form page.html server controls run on the server and map directly to standard
HTML tags supported by most browsers. The System.Linq is used to execute queries in the code.
The System.Data namespace is the .NET framework data provider for SQL server. The package
System.Data.SQLClient contained different classes.
36
37
{
grid();
}
}
public void grid()
{
DataTable dt = new DataTable();
dt = db.table("select username,role,status from login");
GridView1.DataSource = dt;
GridView1.DataBind();
}
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
int dd = e.NewSelectedIndex;
string ii = "";
ii = db.scalar("select status from login where username='" + GridView1.Rows[dd].Cells[1].Text
sdf +"'");
if (ii == "1")
{
int d = e.NewSelectedIndex;
int i = 0;
i = db.nonquery("update login set status='0' where username='"
+ GridView1.Rows[d].Cells[1].Text + "'");
}
else
{
int d = e.NewSelectedIndex;
int i = 0;
i = db.nonquery("update login set status='1' where username='" +
GridView1.Rows[d].Cells[1].Text + "'");
}
grid();
}
38
39
Label1.Text = i.ToString();
}
protected void Button3_Click(object sender, EventArgs e)
{
string i = checkavailability();
if (i == "1")
{
Label3.Text = "Available";
}
else if (i == "2")
{
Label3.Text = "Not Available";
}
else
{
Label3.Text = "Enter Username";
}
}
protected string checkavailability()
{
string result = "";
if (username.Text != "")
{
availability = db.scalar("select status from login where username='" + username.Text
+ "'");
if (availability == "")
{
result = "1";
}
else
{
result = "2";
}
}
else
{
result = "3";
}
return result;
}
protected void Button1_Click(object sender, EventArgs e)
{
if (checkavailability() == "1")
{
int i = 0, j = 0;
i = db.nonquery("insert into lec_reg values('" + id + "','" + username.Text + "','" +
name.Text + "','" + DropDownList1.SelectedValue + "','" + address.Text + "','" +
mobile.Text + "','','"+DropDownList1.SelectedValue+"','"
40
41
42
Label1.Text = i.ToString();
}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("students-registration.aspx");
}
protected void Button3_Click(object sender, EventArgs e)
{
string i = checkavailability();
if (i == "1")
{
Label2.Text="Available";
}
else if(i == "2")
{
Label2.Text="Not Available";
}
else
{
Label2.Text="Enter Username";
}
}
protected void Button1_Click(object sender, EventArgs e)
{
if (checkavailability() == "1")
{
int i = 0, j = 0;
i = db.nonquery("insert into stud_reg values('" + id + "','" + name.Text
+ "','" + DropDownList1.SelectedItem + "','" +
DropDownList2.SelectedValue + "','" +
BasicDatePicker1.SelectedDate + "','" + guardianname.Text + "','" +
DropDownList3.SelectedItem + "','" + address.Text + "','" +
mobile.Text + "','" + landline.Text + "','" +
BasicDatePicker2.SelectedDate + "','" + role +
"','','"+username.Text+"','"+email.Text+"')");
if (i > 0)
{
j = db.nonquery("insert into login values('','" + username.Text +
"','" + confirmpass.Text + "','" + role + "','1','0','','')");
if (i > 0 && j > 0)
{
Label3.Text = "Success...";
}
else
{
Label3.Text = "Login Table Error...";
}
}
else
{
43
44
6.1.4. SEARCH
Administrator can use search page to get details of other user. Administrator can search for
both lecture and student details.
45
if (DropDownList1.SelectedValue=="1")
{
if(TextBox1.Text!="")
dt = db.table("select name,department,designation,mobile,address
from lec_reg where username='" + TextBox1.Text + "'");
else
dt = db.table("select username,department,designation,mobile,address
from lec_reg where name='" + TextBox2.Text + "'");
}
else
{
if(TextBox1.Text!="")
dt = db.table("select name,course,semester,mobile,address from
stud_reg where username='" + TextBox1.Text + "'");
else
dt = db.table("select username,course,semester,mobile,address from
stud_reg where name='" + TextBox2.Text + "'");
}
grid();
}
public void grid()
{
GridView1.Visible = true;
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
46
47
48
49
50
51
52
{
DropDownList1.SelectedValue = "2";
Label2.Text = "Message For Lectures";
}
DropDownList1.Visible = false;
}
else if (Session["ms"].ToString() == "3")
{
DropDownList1.SelectedValue = "3";
DropDownList1.Visible = false;
Label2.Text = "Message For Students";
}
}
protected void Button1_Click(object sender, EventArgs e)
{
string x = db.scalar("select role from login where username='"+Session["username"]
+"'"); int i = 0;
i = db.nonquery("insert into messages values('"+Session["username"].ToString()
+"','"+TextBox1.Text+"','"+DropDownList1.Select
edValue+"','"+DateTime.Now+"','"+int.Parse(x)+"')");
if (i > 0)
Label1.Text = "Success...";
else
Label1.Text = "failed...";
}
}
53
54
{
DropDownList1.Visible = false;
gid = db.scalar("select groupid from stud_reg where username='" + uname + "'").ToString();
if (int.Parse(gid) == 0)
{
ListBox1.Enabled = false;
TextBox1.Enabled=false;
Label1.Visible = true;
Label1.Text = "You have no Membership in any Group...";
return;
}
ListBox1.Enabled=true;
TextBox1.Enabled=true;
}
else
{
DropDownList1.Visible = true;
gid = DropDownList1.SelectedValue;
}
grid();
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
int t = 0;
t = db.nonquery("insert into messages
values('"+uname+"','"+TextBox1.Text+"','"+gid+"','"+System.DateTime.Now+"','"+role+"')")
;
grid();
TextBox1.Text = "";
}
protected void grid()
{
ListBox1.Items.Clear();
DataTable dt = new DataTable();
if (Session["ms"].ToString() == "4")
{
dt = db.table("select username,message from messages where destination='" + gid + "'
ORDER BY time");
}
else
{
dt = db.table("select username,message from messages where destination='"
+ DropDownList1.SelectedValue + "' ORDER BY time");
}
int n = dt.Rows.Count;
for (int i = 0; i < n; i++)
{
ListBox1.Items.Add(dt.Rows[i][0].ToString() + ":" + dt.Rows[i][1].ToString());
ListBox1.SelectedIndex = ListBox1.Items.Count - 1;
55
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
grid();
}
protected void Timer1_Tick(object sender,EventArgs e)
{
grid();
}
}
56
57
DropDownList1.Items[i-1].Value = (i * 10).ToString();
}
}
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
string path;
int index = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = GridView1.Rows[index];
TableCell filename = selectedRow.Cells[3];
string fname = filename.Text;
path = db.scalar("select path from documents where docname='" + fname + "'");
string typ = db.scalar("select extension from documents where docname='" + fname + "'");
string r = e.CommandName;
if (r == "download")
{
Response.ContentType = typ;
Response.AddHeader("Content-Disposition", "attachment;filename=\"" + fname + "\"");
Response.TransmitFile(path);
Response.End();
}
else if(r=="Accepted")
{
int i = 0;
i = db.nonquery("update documents set gvaluation='1' where docname='"+fname+"'");
}
else
{
string FilePath = Server.MapPath("~") + @"/documents/" + fname + typ;
WebClient User = new WebClient();
Byte[] FileBuffer = User.DownloadData(FilePath); if
(FileBuffer != null)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", FileBuffer.Length.ToString());
Response.BinaryWrite(FileBuffer);
}
}
}
}
58
59
DropDownList2.Items.Add(dt.Rows[y][0].ToString());
}
}
protected void Button1_Click(object sender, EventArgs e)
{
int i = 0;
string role = db.scalar("select role from login where username='"+Session["username"]+"'");
if (role == "2")
{
int j = 0;
if(DropDownList3.SelectedItem.ToString()=="1")
j= db.nonquery("update mark set gp1='"+TextBox1.Text+"' where
username='"+DropDownList2.SelectedItem+"'");
else if(DropDownList3.SelectedItem.ToString()=="2")
j= db.nonquery("update mark set gp2='"+TextBox1.Text+"' where
username='"+DropDownList2.SelectedItem+"'");
else if(DropDownList3.SelectedItem.ToString()=="3")
j = db.nonquery("update mark set gp3='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
if (j > 0)
Label1.Text = "Success...";
else
Label1.Text = "Failed...";
}
else
{
int j = 0;
if (DropDownList3.SelectedItem.ToString() == "1")
j = db.nonquery("update mark set hp1='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
else if (DropDownList3.SelectedItem.ToString() == "2")
j = db.nonquery("update mark set hp2='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
else if (DropDownList3.SelectedItem.ToString() == "3")
j = db.nonquery("update mark set hp3='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
if (j > 0)
Label1.Text = "Success...";
else
Label1.Text = "Failed...";
}
}
protected void DropDownList3_SelectedIndexChanged(object sender, EventArgs e)
{
int sum = 0;
DataTable dt = new DataTable();
60
61
62
63
}
else
{
TextBox1.Enabled = false;
Button2.Enabled = false;
for (int i = 1; i <= int.Parse(grpno); i++)
{
DropDownList1.Items.Add(i.ToString());
}
}
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
int z;
for (int i = 0; i <= ListBox1.Items.Count-1; i++)
{
if (ListBox1.Items[i].Selected)
{
z = 0;
int gi = (int.Parse(DropDownList1.SelectedItem.ToString()))*10; z
= db.nonquery("update stud_reg set groupid='"+gi+"' where
username='"+ListBox1.Items[i]+"'");
}
}
Response.Redirect("group-creation.aspx");
}
protected void Button2_Click(object sender, EventArgs e)
{
int x = int.Parse(TextBox1.Text);
int j = 0;
j = db.nonquery("update lec_reg set groupno='"+x+"' where
username='"+Session["username"].ToString()+"'");
for (int i = 1; i <= x; i++)
{
DropDownList1.Items.Add(i.ToString());
}
TextBox1.Enabled = false;
}
}
64
65
}
}
66
67
68
69
70
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
grid();
}
protected void Timer1_Tick(object sender,EventArgs e)
{
grid();
}
}
6.3.5. DOCUMENT VERIFICATION
From this page guide can verify the documents uploaded by students. Documents can either
view or download. After verification guide can accept or reject the document.
71
72
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", FileBuffer.Length.ToString());
Response.BinaryWrite(FileBuffer);
}
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
}
}
6.3.6. STUDY MATERIAL UPLOAD
Guide can upload study materials to students through this page. By choosing the correct
document.
73
74
75
DropDownList2.Items.Add(dt.Rows[y][0].ToString());
}
}
protected void Button1_Click(object sender, EventArgs e)
{
int i = 0;
string role = db.scalar("select role from login where username='"+Session["username"]+"'");
if (role == "2")
{
int j = 0;
if(DropDownList3.SelectedItem.ToString()=="1")
j= db.nonquery("update mark set gp1='"+TextBox1.Text+"' where
username='"+DropDownList2.SelectedItem+"'");
else if(DropDownList3.SelectedItem.ToString()=="2")
j= db.nonquery("update mark set gp2='"+TextBox1.Text+"' where
username='"+DropDownList2.SelectedItem+"'");
else if(DropDownList3.SelectedItem.ToString()=="3")
j = db.nonquery("update mark set gp3='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
if (j > 0)
Label1.Text = "Success...";
else
Label1.Text = "Failed...";
}
else
{
int j = 0;
if (DropDownList3.SelectedItem.ToString() == "1")
j = db.nonquery("update mark set hp1='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
else if (DropDownList3.SelectedItem.ToString() == "2")
j = db.nonquery("update mark set hp2='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
else if (DropDownList3.SelectedItem.ToString() == "3")
j = db.nonquery("update mark set hp3='" + TextBox1.Text + "' where username='" +
DropDownList2.SelectedItem + "'");
if (j > 0)
Label1.Text = "Success...";
else
Label1.Text = "Failed...";
}
}
protected void DropDownList3_SelectedIndexChanged(object sender, EventArgs e)
{
int sum = 0;
DataTable dt = new DataTable();
76
77
78
79
80
81
82
83
{
}
protected void GridView1_RowCommand1(object sender, GridViewCommandEventArgs e)
{
string path;
int index = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = GridView1.Rows[index];
TableCell filename = selectedRow.Cells[0];
string fname = filename.Text;
path = db.scalar("select path from notification where docname='" + fname + "'");
string typ = db.scalar("select extension from notification where docname='" + fname +
"'"); string r = e.CommandName;
if (r == "download")
{
Response.ContentType = typ;
Response.AddHeader("Content-Disposition", "attachment;filename=\"" + fname + "\"");
Response.TransmitFile(path);
Response.End();
}
else
{
string FilePath = Server.MapPath("~") + @"/notification/" + fname + typ;
WebClient User = new WebClient();
Byte[] FileBuffer = User.DownloadData(FilePath); if
(FileBuffer != null)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", FileBuffer.Length.ToString());
Response.BinaryWrite(FileBuffer);
}
}
}
}
84
6.4.6. LOGIN
All users are login to their account from this page. Forgot password link can be use if the
password is forgotten.
85
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
string t = TextBox1.Text;
Response.Redirect("forgotpassword.aspx?name="+t+"");
}
protected void Button1_Click(object sender, EventArgs e)
{
string status = db.scalar("Select status from login where username='" + TextBox1.Text + "'");
if (status == "")
{
Label1.Text = "Invalid User...";
return;
}
int state = int.Parse(status);
if (state==1)
{
string role = db.scalar("Select role from login where username='" + TextBox1.Text + "' and
password='" + TextBox2.Text + "'");
if (role != "")
{
string id = db.scalar("Select username from login where username='" + TextBox1.Text + "'
and password='" + TextBox2.Text + "'");
Session["username"] = id;
string username = db.scalar("Select username from login where username='" +
TextBox1.Text + "' and password='" + TextBox2.Text + "'");
Session["ms"] = role;
int i = db.nonquery("update login set online=1 where id='" + Session["id"] + "'");
if(role=="1")
Response.Redirect("adminhome.aspx"); else if(role=="2")
Response.Redirect("hodhome.aspx"); else if (role == "3")
Response.Redirect("guide-home.aspx");
else
Response.Redirect("student-home.aspx");
}
else
{
Label1.Text = "Wrong Password...";
}
}
else if (state == 0)
{
Label1.Text = "Administrator Blocked Your Profile...";
}
}
86
87
88
89
state = 0;
}
else
{
Label2.Visible = false; TextBox1.Visible
= false; RequiredFieldValidator1.Visible
= false; state = 1;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
if (state == 0)
{
string oldpass = db.scalar("select password from login where username='" +
Session["username"] + "'");
if (oldpass == TextBox1.Text)
{
changepassword();
}
else
{
Label1.Text = "Password is wrong...";
}
}
else
{
changepassword();
}
}
protected void changepassword()
{
int i = 0;
i = db.nonquery("update login set password='" + TextBox3.Text + "' where username='" +
Session["username"] + "'");
if (i > 0)
Label1.Text = "Password Changed Successfuly...";
else
Label1.Text = "Failed...";
}
}
90
91
92
93
7. SYSTEM TESTING
To perform specification testing, the analysts examine the specifications stating what the
program should do and how it should perform under various conditions. Then test cases are
developed for each condition or combination of conditions and submitted for processing. By
examining the results, the analysts can determine whether the program were a black box: the analysts
does not look into the program study the code and is not concerned about whether every instruction
or path through the program is tested. In that case specification testing is not complete testing.
However, the assumption is that, if the program meets the specification, it will not fail.
7.1 LEVELS OF TEST
Systems are not designed as entire system nor are they tested as single systems. So
performing of both unit and system testing is essential.
UNIT TESTING
Unit testing focuses verification effort on smallest unit of software design module. Here,
there are four modules namely Admin, HOD, Guide, Student. In unit testing,
Module interface is tested to ensure that information properly flows into and put of the program
under test.
Local data structures are examined to ensure that data stored temporarily maintains its integrity
during all steps in algorithm execution.
Boundary condition is tested to ensure that the module operates properly at boundaries
established to limit or restrict processing.
All independent paths through the control structures are executed to ensure that all statements in
the module have been executed at least once.
Error handling paths are also tested.
Unit testing focuses verification effort on the smallest unit of software design, the module.
Here, the module interfaces, local data structure, boundary conditions, and all independent paths and
last but not the least, all error handling paths were verified by inputting false data. Tests of data flow
across each module interface of this software were done before any other test was initiated.
INTEGRATION TESTING
Integration testing is a systematic technique for constructing the program structure while at
the same time conducting tests to uncover errors associated with interfacing. Unit tested module were
taken and a single program structure was built that has been dictated by the design. Incremental
integration has adopted here. The entire software was developed and tested in small segments, where
errors were easy to locate and rectify. Program builds (group of modules) were constructed
corresponding to the successful testing of user interaction, data manipulation analysis, and display
processing and database management. These tests can also be performed:
94
VALIDATION TESTING
Validation testing is done to ensure complete assembly of the error-free software. Validation
can be termed successful only if it functions in manner that is reasonably expected by the customer.
Under validation is alpha and beta testing. Alpha testing is where the end user tests the system rather
than the developer, but in a controlled environment. The software is used on a natural setting with the
developer monitoring the user using the system. The developer records the errors and usage problems
encountered by the user.
SYSTEM TESTING
System testing is actually a series of different tests whose primary purpose to fully exercise
the computer based system. Each test works to verify that all system elements have been properly
integrated. Types of system tests are:
Recovery Testing
Security Testing
Stress Testing
Performance Testing
NIELIT, Calicut
95
8. CONCLUSION
Today after the entry of smartphones internet is accessible from anywhere. Here we are
utilizing this accessibility of internet to the advantage of students to do their project more easily. In
our collage project, students are spending more time on preparing documents related to project,
submitting this documents guide and waiting for response of guide. Teachers are also spending more
time in evaluating the documents submitted by students. This wastage time can be minimized by
using our web site. Students can send documents of project as soft copies to teachers to evaluate.
Teachers can download and evaluate these documents from anywhere whenever they have time and
send their corrections to the students. Same way teachers can upload study materials to students.
Students can communicate each other through the group discussion feature. Also HOD or
guide can join to these discussions and give directions to them. HOD and guide can assign marks to
students for each phase of their project from this web site. Also students can view their marks from
this web site. Likewise topic submission, topic approval and many other activities related to our
projects can be done through our web site. So students and teacher can save more time and effort
when using Online Project Coordination System web site.
96
9. REFERENCES
Websites referred
www.wikipedia.com
www.stackoverflow.com
Msdn.microsoft.com
97