Online Student Management Project

Published on May 2016 | Categories: Types, Instruction manuals | Downloads: 33 | Comments: 0 | Views: 336
of 44
Download PDF   Embed   Report

Comments

Content

CHAPTER 1 INTRODUCTION

INTRDUCTION
1

Online Management System is website which is helpful for students as well as for the institute authorities. In the current system all the activities are done manually or at fixed systems. It is very time consuming and costly. Our Online Student Management deals with the various activities related to the students and institutes to overcome these limited things. In the Website we can register as a user and user has of three types, student and administrator. The visitor can also make use of it. Administrator has the power to add new user and delete a user. A student can register as user and can add, edit and delete his profile. The administator can add edit and delete marks for the student. All the users including visitors can see the marks.

1.1 Objective
The project ‘Online Student Management’ was initiated at the instance of the authorities of the ‘Institute Education Department’. It was found that the activities of this department involved huge amounts of paper work and cumbersome housekeeping. The whole process is monotonous in its present form. A high degree of efficiency could be added to the existing structure by automating the activities, which are presently carried out manually in the department. The drawbacks in the manual systems are given briefly below: 1. Redundancy of information such as entry of same information in multiple ledgers and files. 2. Storage of insufficient information due to lack of time. 3. Inability to store information in ways that are conducive to quick and efficient retrieval. 4. Poor mechanisms to track and administer the movement of files within and across departments 5. It makes very difficult the formulation of policies because decision makers need data in a form that aids the formulating of new policy decisions. This is not easily achievable in the existing manual systems. 6. The information is present on fixed systems and at working hours only. Hence, in view of the above drawbacks of the manual methods, it was very evident that the automation of the workflow using computers and related equipment would be very useful. The project involves the following basic activities: 1. Study of the procedures in the education department and its interface with the outside world. 2. Providing advice on data retrieval from endpoints (data sources). 3. Design, development and implementation of programs and databases using State of- the-art technology, mainly VISUAL STUDIO 2008 as the front end and Microsoft SQL Server 2005 as the back end tools.

2

The project undertaken should justify all the efforts put into its development. The project when finally completed should make data retrieval a very easy phenomenon. The persons who need various kinds of data about institutes and related details should have all such data at their fingertips. This website should enable the institutes department to function in a much more finetuned manner.

1.2 Goals
We want to make the student management online. This will reduce the burden of work of institute staff and also of students to submit the documents by making long lines. In present time everyone are familiar with internet so we will aware the management and students by internet. Student management is very important for institutes because it’s the primary goal of institute to keep the information and academic records of the students admitted in their institute. The management spends lots of money to maintain this record. Our website saves the time & money of the institutes.

1.3 Scope
Identification.- Identify the system and the software to which this document applies, including as applicable, identification number(s), title(s), abbreviation(s), version number(s), and release number(s). System Overview. - State the purpose of the system or subsystem to which this document applies Document Overview. - Summarize the purpose and contents of this document.

3

CHAPTER 2 ANALYSIS

ANALYSIS
 There are many websites which provides student management but these all are not update very quickly. 4

 We provide a user account on our website if user is the student of institute then he can create his account and update the database by his account if user is not the student of institutes then he can’t create his account other than administrator.  So whole database updated very quickly.  In present time everyone is familiar with internet so we will aware the students by internet.  Student management is very important for institute for maintaining the records about its students.  Institutes spent lot of money & time for managing the students. Our website saves the time & money of the government.

2.1 Problem Definition
Before a project can begin, there has to be a reason why it should take place. You have to define the problem that the system is meant to be overcome. This phase is called the 'Problem definition phase'. Some formal effort is made to define exactly what the problem is. For example the following statements may appear in the Problem Definition. ...The existing system cannot transfer data to the new invoice system. ...Staff has to spend three hours loading information...And so on. Methods of defining a problem: Interview employees about their issues with the current system Analyzing the total costs of the current system Key external factors that may point towards developing a new system Performance of the existing system

Once the problem definition stage is over, then if the decision is to carry on with the project the next phase is the 'Feasibility Study'. There are many websites which gives the information about the students but these all are not update very quickly.

2.2 Feasibility Study
2.2.1 Economic Feasibility There is no such need of system only network cost and uploading on internet cost involved. 5

The cost for setting up the system would involve setting local area network. Server cost is also there. Training the employees to use the system would be the other costs involved. 2.2.2 Expected schedule Analysis: Approximately 1 weeks (5 days per week), 8 hours a day. Study of Development Tools: Approximately 15 days. Design: Approximately 12 days, 8 hours a day. 2.2.3 Cost benefit analysis Initial cost It involves 1) Setting up of a LAN network. 2) Analysis and design costs. 3) Training of the employees. Recurring costs It involves 1) Maintenance of the website and server to improve the reliability. 2) Other Stationers. 2.2.4 Conclusion The intangible benefits incurred from the system are as follows: Reduction in user effort Improved user services Time saving

2.3 Planning Phase
The Project Planning Phase is the second phase in the project life cycle. It involves creating of a set of plans to help guide your team through the execution and closure phases of the project. The plans created during this phase will help you to manage time, cost, quality, change, risk and issues. They will also help you manage staff and external suppliers, to ensure that you deliver the project on time and within schedule. There are 10 Project Planning steps you need to take to complete the Project Planning Phase efficiently. These steps and the templates needed to perform them are shown in the following diagram. Activities 1. Create a Project Plan 6 Templates Project Plan

2. Create a Resource Plan

Resource Plan

3. Create a Financial Plan

Financial Plan

4. Create a Quality Plan

Quality Plan

5. Create a Risk Plan

Risk Plan

6. Create an Acceptance Plan

Acceptance Plan

7. Create a Communications Plan

Communication Plan

8. Create a Procurement Plan

Procurement Plan

The Project Planning Phase is often the most challenging phase for a Project Manager, as you need to make an educated guess of the staff, resources and equipment needed to complete your project. You may also need to plan your communications and procurement activities, as well as contract any 3rd party suppliers. In short, you need to create a comprehensive suite of project plans which set out a clear project roadmap ahead. The Project Planning Template suite will help you to do this, by giving you a comprehensive collection of Project Planning templates. By using these project planning templates, you can quickly and easily plan your project. The Project Planning Phase follows the Project Initiation Phase and is the most important phase in project management. The effort spent in planning can save countless hours of confusion and rework in the subsequent phases. The purpose of the Project Planning Phase is:  Establish Business Requirements.  Establish Cost, Schedule, List of Deliverables and Delivery Dates.  Establish Resource Plan.  Get Management Approval and proceed to next phases. 7

The basic processes of the Project Planning Phase are:  Scope Planning: This specifies the in-scope requirements for the project.  Preparing the Work Breakdown Structure: This specifies the breakdown of the project into tasks and sub-tasks.  Organizational Breakdown Structure: This specifies who all in the organization need to be involved and referred for Project Completion.  Resource Planning: This specifies who will do what work at which time of the project.  Project Schedule Development: This specifies the entire schedule of the activities detailing their sequence of execution.  Budget Planning: This specifies the budgeted cost to be incurred in the completion of the project. During this phase, Project Team is responsible for the following activities:  Project Managers are responsible for developing the Project Plan thus ensuring that all the project planning requirements are fulfilled.  Functional/Management personnel are responsible ensures that adequate resources are available for the project.  Key Stakeholders should approve the Project Plan before moving to the next phase. Project Planning is essential for a project's success. Project Planning helps team members to understand their responsibilities and expectations from them. Project Planning Phase identifies scope, tasks, schedules, risks, quality and staffing needs.

8

CHAPTER 3 REQUIREMENT ANALYSIS

REQUIREMENT ANALYSIS

9

Requirements Analysis in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders, such as beneficiaries or users. Requirements analysis is critical to the success of a development project. Requirements must be actionable, measurable, testable, related to identified business needs or opportunities, and defined to a level of detail sufficient for system design. Types of Requirements Requirements are categorized in several ways. The following are common categorizations of requirements that relate to technical management: Customer Requirements:  Operational distribution or deployment: Where will the system be used?  Mission profile or scenario: How will the system accomplish its mission objective?  Performance and related parameters: What are the critical system parameters to accomplish the mission?  Utilization environments: How are the various system components to be used?  Effectiveness requirements: How effective or efficient must the system be in performing its mission?  Operational life cycle: How long will the system be in use by the user?

3.1 Requirement Specification
A Software Requirements Specification (SRS) is a complete description of the behavior of the system to be developed. It includes a set of use cases that describe all the interactions the users will have with the software. What is a Software Requirements Specification? An SRS is basically an organization's understanding (in writing) of a customer or potential client's system requirements and dependencies at a particular point in time (usually) prior to any actual design or development work. It's a two-way insurance policy that assures that both the client and the organization understand the other's requirements from that perspective at a given point in time.


Understands the issues or problems to be solved and the software behavior necessary to address those problems. Therefore, the SRS should be written in natural language (versus a formal language, explained later in this article), in an unambiguous manner that may also include charts, tables, data flow diagrams, decision tables, and so on.

10



It decomposes the problem into component parts. The simple act of writing down software requirements in a well-designed format organizes information, places borders around the problem, solidifies ideas, and helps break down the problem into it component parts in an orderly fashion.

A sample of a more detailed SRS outline 1. Scope 1.1 Identification. Identify the system and the software to which this document applies, including, as applicable, identification number(s), title(s), abbreviation(s), version number(s), and release number(s). 1.2 System overview. State the purpose of the system or subsystem to which this document applies. 1.3 Document overview. Summarize the purpose and contents of this document. This document comprises six sections:
     

Scope Referenced documents Requirements Qualification provisions Requirements traceability Notes

Describe any security or privacy considerations associated with its use. 2. Referenced Documents 2.1 Project documents. Identify the project management system documents here. 2.2 Other documents.

11

2.3 Precedence. 2.4 Source of documents. 3. Requirements This section shall be divided into paragraphs to specify the Computer Software Configuration Item (CSCI) requirements, that is, those characteristics of the CSCI that are conditions for its acceptance. CSCI requirements are software requirements generated to satisfy the system requirements allocated to this CSCI. Each requirement shall be assigned a project-unique identifier to support testing and traceability and shall be stated in such a way that an objective test can be defined for it. 3.1 Required states and modes. 3.2 CSCI capability requirements. 3.3 CSCI external interface requirements. 3.4 CSCI internal interface requirements. 3.5 CSCI internal data requirements. 3.6 Adaptation requirements. 3.7 Safety requirements. 3.8 Security and privacy requirements. 3.9 CSCI environment requirements. 4.Qualification Provisions 5.Requirements Traceability 6. Notes To be determined. To be determined. This section contains information of a general or explanatory nature that may be helpful, but is not mandatory. 6.1 Intended use. This Software Requirements specification shall 12

... 6.2 Definitions used in this document. Insert here an alphabetic list of definitions and their source if different from the declared sources specified in the "Documentation standard." 6.3 Abbreviations used in this document. Insert here an alphabetic list of the abbreviations and acronyms if not identified in the declared sources specified in the "Documentation Standard." 6.4 Changes from previous issue. Will be "not applicable" for the initial issue. Revisions shall identify the method used to identify changes from the previous issue.

3.2 Software & Hardware Specification
Software:  MICROSOFT VISUAL STUDIO 2008 FRAMWORK 3.5.  INTERNET EXPLORER.  MICROSOFT WINDOWS XP OR 7.  SQL SERVER 2005.  LAGUAGE C# .NET and ASP.NET. Hardware:  PENTIUM IV PROCESSOR.  10 GIGABYTE SECONDARY MEMORY.  512 MEGA BYTE PRIMORY MEMORY.

13

CHAPTER 4 DESIGNING

DESIGNING

14

4.1 Description
Capability Maturity Model Integration The Capability Maturity Model Integration (CMMI) is one of the leading models and based on best practice. Independent assessments grade organizations on how well they follow their defined processes, not on the quality of those processes or the software produced. CMMI has replaced CMM. ISO 9000 ISO 9000 describes standards for formally organizing processes with documentation. ISO 15504 ISO 15504, also known as Software Process Improvement Capability Determination (SPICE), is a "framework for the assessment of software processes". This standard is aimed at setting out a clear model for process comparison. SPICE is used much like CMMI. It models processes to manage, control, guide and monitor software development. This model is then used to measure what a development organization or project team actually does during software development. This information is analyzed to identify weaknesses and drive improvement. It also identifies strengths that can be continued or integrated into common practice for that organization or team. Six Sigma Six Sigma is a methodology to manage process variations that uses data and statistical analysis to measure and improve a company's operational performance. It works by identifying and eliminating defects in manufacturing and service-related processes. The maximum permissible defects are 3.4 per one million opportunities. However, Six Sigma is manufacturing-oriented and needs further research on its relevance to software development. Test Driven Development Test Driven Development (TDD) is a useful output of the agile camp but some suggest that it raises a conundrum. TDD requires that a unit test be written for a class before the class is written. It might be thought, then, that the class firstly has to be "discovered" and secondly defined in sufficient detail to allow the write-test-once-and-code-until-class-passes model that TDD actually uses still encouraged to code early, with light design.

4.2 Design Model
15

Waterfall Model The waterfall model shows a process, where developers are to follow these steps in order:  Requirements specification (AKA Verification or Analysis)  Design  Construction (AKA implementation or coding)  Integration  Testing and debugging (AKA validation)  Installation (AKA deployment)  Maintenance

16

After each step is finished, the process proceeds to the next step, just as builders don't revise the foundation of a house after the framing has been erected. There is a misconception that the process has no provision for correcting errors in early steps (for example, in the requirements). In fact this is where the domain of requirements management comes in, which includes change control. The counter argument, by critics to the process, is the significantly increased cost in correcting problems through introduction of iterations. This is also the factor that extends delivery time and makes this process increasingly unpopular even in high risk projects. Often the supposed stages are part of review between customer and supplier; the supplier can, in fact, develop at risk and evolve the design but must sell off the design at a key milestone called Critical Design Review (CDR). This shifts engineering burdens from engineers to customers who may have other skills.

4.3 Why Used That Model
This approach is used in high risk projects, particularly large defense contracts. The problems in waterfall do not arise from "immature engineering practices, particularly in requirements analysis and requirements management." Studies of the failure rate of the DOD-STD-2167 specification, which enforced waterfall, have shown that the more closely a project follows its process, specifically in up-front requirements gathering, the more likely the project is to release features that are not used in their current form.

4.4 Programming Language Used
ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites, web applications and web services. It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write ASP.NET code using any supported .NET language. Characteristics .NET pages, known officially as "web forms", are the main building block for application development. Web forms are contained in files with an ".aspx" extension; in programming jargon, these files typically contain static (X)HTML markup, as well as markup defining serverside Web Controls and User Controls where the developers place all the required static and dynamic content for the web page. Additionally, dynamic code which runs on the server can be placed in a page within a block <% -- dynamic code -- %> which is similar to other web 17

development technologies such as PHP, JSP, and ASP, but this practice is generally discouraged except for the purposes of data binding since it requires more calls when rendering the page. When first released, ASP.NET lacked a template engine. Because the .NET framework is objectoriented and allows for inheritance, many developers would define a new base class that inherits from "System.Web.UI.Page", write methods here that render HTML, and then make the pages in their application inherit from this new class. While this allows for common elements to be reused across a site, it adds complexity and mixes source code with markup. ASP.NET 2.0 introduced the concept of "master pages", which allow for template-based page development. A web application can have one or more master pages, which beginning with ASP.NET 3.5, can be nested. Master templates have place-holder controls, called Content Placeholders to denote where the dynamic content goes, as well as HTML and JavaScript shared across child pages. In general, the ASP.NET directory structure can be determined by the developer's preferences. Apart from a few reserved directory names, the site can span any number of directories. The structure is typically reflected directly in the urls. Although ASP.NET provides means for intercepting the request at any point during processing, the developer is not forced to funnel requests through a central application or front controller. The special directory names (from ASP.NET 2.0 on) are: App_Browsers Holds site-specific browser definition files App_Code This is the "raw code" directory. The ASP.NET server automatically compiles files (and subdirectories) in this folder into an assembly which is accessible in the code of every page of the site. App_Code will typically be used for data access abstraction code, model code and business code. App_Data Default directory for databases, such as Access mdb files and SQL Server mdf files. This directory is usually the only one with write access for the application. App_LocalResources Contains localized resource files for individual pages of the site. E.g. a file called CheckOut.aspx.fr-FR.resx holds localized resources for the French version of the CheckOut.aspx page. When the UI culture is set to French, ASP.NET will automatically find and use this file for localization.

18

App_GlobalResources Holds resx files with localized resources available to every page of the site, this is where the ASP.NET developer will typically store localized messages etc. which are used on more than one page. App_Themes Holds alternative themes of the site App_WebReferences Holds discovery files and WSDL files for references to web services to be consumed in the site

4.5 Data Flow Diagrams
Level 0(Context Level) DFD

19

Level 1 DFD for Students

20

Level 1 DFD for Administrator

21

Level 1 DFDs

22

4.6 Entity-Relationship Diagram

23

CHAPTER 5 IMPLEMENTATION AND TESTING

IMPLMENTATION AND TESTING
24

5.1 Coding Technique
Coding techniques incorporate many facets of software development. Although they usually have no impact on the functionality of the application, they contribute to an improved comprehension of source code. All forms of source code are considered here, including programming, scripting, markup and query languages. The coding techniques defined here are not proposed to form an inflexible set of coding standards. Rather, they are meant to serve as a guide for developing a coding standard for a specific software project. The coding techniques are divided into three sections:  Names  Comments  Format

5.1.1 Names The naming scheme is one of the most influential aids to understanding the logical flow of an application. A name should tell "what" rather than "how." By avoiding names that expose the underlying implementation, which can change, you preserve a layer of abstraction that simplifies the complexity. For example, you could use GetNextStudent() instead of GetNextArrayElement (). 5.1.2 Comments Software documentation exists in two forms, external and internal. External documentation, such as specifications, help files, and design documents, is maintained outside of the source code. Internal documentation is comprised of comments that developers write within the source code at development time. 5.1.3 Format Formatting makes the logical organization of the code obvious. Taking the time to ensure that the source code is formatted in a consistent, logical manner is helpful to you and to other developers who must decipher the source code.

5.2 Project Implementation
25

Login Page

Code for Login Page
using using using using using using using using using using using using using System; System.Collections; System.Configuration; System.Data; System.Linq; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.HtmlControls; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Xml.Linq; System.Data.SqlClient;

public partial class Login : System.Web.UI.Page { ClsConnection con = new ClsConnection(); protected void Page_Load(object sender, EventArgs e) { txtUsername.Focus(); } protected void LinkButton1_Click(object sender, EventArgs e) { Response.Redirect("ChangePassword.aspx"); }

26

protected void LinkButton2_Click(object sender, EventArgs e) { Response.Redirect("RecoverPassword.aspx"); } protected void Button1_Click(object sender, EventArgs e) { con.ForOpen(); SqlCommand cmd = new SqlCommand("LoginCheck", con.GetCon()); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@UserName", txtUsername.Text.Trim()); cmd.Parameters.AddWithValue("@UserPassword", txtPassword.Text.Trim()); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { Session["Type"] = dr[1].ToString(); Session["UserName"] = dr[2].ToString(); Session["EnrollmentNo"] = dr[3].ToString(); Response.Redirect("Blank.aspx"); } else { Label1.Text = "Please verify User Name and Password"; } con.ForClose(); } protected void Button2_Click(object sender, EventArgs e) { txtUsername.Text = ""; txtPassword.Text = ""; Label1.Text = ""; txtUsername.Focus(); } protected void LinkButton3_Click(object sender, EventArgs e) { Response.Redirect("Register.aspx"); } protected void LinkButton3_Click1(object sender, EventArgs e) { Response.Redirect("ViewMarks.aspx"); } }

Add Course Page 27

Code for Add Course
using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using System.Data.SqlClient; public partial class Course : System.Web.UI.Page { ClsConnection con = new ClsConnection(); protected void Page_Load(object sender, EventArgs e) { Label2.Text = Session["UserName"].ToString(); TextBox1.Focus(); } protected void Button1_Click(object sender, EventArgs e) { con.ForOpen(); SqlCommand cmd1 = new SqlCommand("select CourseId,CourseName from Course where CourseName='" + TextBox1.Text + "'", con.GetCon()); SqlDataReader dr = cmd1.ExecuteReader();

28

if (dr.Read()) { Label1.Text = "Course already exists"; TextBox1.Text = ""; TextBox1.Focus(); con.ForClose(); } else { con.ForOpen(); SqlCommand cmd = new SqlCommand("InsertCourse", con.GetCon()); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@CourseName", TextBox1.Text); cmd.Parameters.AddWithValue("Semesters", txtSem.Text); int x = cmd.ExecuteNonQuery(); if (x == 0) { Label1.Text = "Course not inserted"; TextBox1.Text = ""; txtSem.Text = ""; TextBox1.Focus(); } else { Label1.Text = "Course inserted"; TextBox1.Text = ""; txtSem.Text = ""; TextBox1.Focus(); } } } }

Insert Course Procedure
CREATE PROCEDURE InsertCourse @CourseName varchar(50) AS begin insert into Course(CourseName) values(@CourseName); END

Add Student Profile Page 29

Code to Add Student Profile
using using using using using using using using using using using using using System; System.Collections; System.Configuration; System.Data; System.Linq; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.HtmlControls; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Xml.Linq; System.Data.SqlClient;

public partial class StudentInfo : System.Web.UI.Page { ClsConnection con = new ClsConnection(); protected void Page_Load(object sender, EventArgs e) { Label2.Text = Session["UserName"].ToString(); if (Session["Type"].ToString() == "Student") { txtEnroll.Enabled = false; txtEnroll.Text = Session["EnrollmentNo"].ToString(); } txtEnroll.Focus();

30

if (!IsPostBack) { if (Session["Type"].ToString() == "Student") { txtEnroll.Enabled = false; txtEnroll.Text = Session["EnrollmentNo"].ToString(); } fillCourse(); } } public void fillCourse() { string str = "select * from Course"; SqlCommand cmd = new SqlCommand(str, con.GetCon()); con.FillDDL(ddlCourse, cmd, "CourseName", "CourseId"); } protected void Button1_Click(object sender, EventArgs e) { con.ForOpen(); SqlCommand cmd = new SqlCommand("select StdId,StdEnrollNo from StudentInfo where StdEnrollNo='" + txtEnroll.Text + "'", con.GetCon()); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { Label1.Text = "Enrollment already exists"; con.ForClose(); } else { con.ForOpen(); SqlCommand cmd2 = new SqlCommand("select UserId, EnrollmentNo from UserInfo where EnrollmentNo='" + txtEnroll.Text + "'", con.GetCon()); SqlDataReader dr2 = cmd2.ExecuteReader(); if (dr2.Read()) { con.ForOpen(); SqlCommand cmd1 = new SqlCommand("InsertStdInfo", con.GetCon()); cmd1.CommandType = CommandType.StoredProcedure; cmd1.Parameters.AddWithValue("@StdEnrollNo", txtEnroll.Text); cmd1.Parameters.AddWithValue("@SCourse", ddlCourse.SelectedItem.Text); cmd1.Parameters.AddWithValue("@SBranch", ddlBranch.SelectedItem.Text); cmd1.Parameters.AddWithValue("@SName", txtName.Text); cmd1.Parameters.AddWithValue("@FatherName", txtFName.Text); cmd1.Parameters.AddWithValue("@Occupation", txtOccu.Text); cmd1.Parameters.AddWithValue("@MotherName", txtMName.Text); cmd1.Parameters.AddWithValue("@DOB", txtDOB.Text); cmd1.Parameters.AddWithValue("@Gender", ddlGender.SelectedItem.Text); cmd1.Parameters.AddWithValue("@CorrAdd", txtCorrAdd.Text); cmd1.Parameters.AddWithValue("@PerAdd", txtPerAdd.Text); cmd1.Parameters.AddWithValue("@Category", ddlCategory.SelectedItem.Text);

31

cmd1.Parameters.AddWithValue("@Religion", txtReligion.Text); cmd1.Parameters.AddWithValue("@Tenth", txt10.Text); cmd1.Parameters.AddWithValue("@Tweleth", txt12.Text); cmd1.Parameters.AddWithValue("@PETMarks", txtPET.Text); cmd1.Parameters.AddWithValue("@OtherQuali", txtQuali.Text); cmd1.Parameters.AddWithValue("@PhoneNo", txtPhone.Text); cmd1.Parameters.AddWithValue("MobileNo", txtMobile.Text); cmd1.Parameters.AddWithValue("PhotoURL", FileUpload1.FileName); FileUpload1.SaveAs(Server.MapPath(@"Photos\" + FileUpload1.FileName)); int x = cmd1.ExecuteNonQuery(); if (x == 0) { Label1.Text = "Not Inserted"; } else { Label1.Text = "Inserted"; } } else { Label1.Text = "Enrollment not registered"; con.ForClose(); } } } protected void ddlCourse_SelectedIndexChanged(object sender, EventArgs e) { string str = "select * from Branch where CourseId='" + ddlCourse.SelectedValue + "'"; SqlCommand cmd = new SqlCommand(str, con.GetCon()); con.FillDDL(ddlBranch, cmd, "Branchname", "BranchId"); } }

InsertStdInfo Procedure
CREATE PROCEDURE InsertStdInfo @StdEnrollNo varchar(15), @SCourse varchar(50), @SBranch varchar(50), @SName varchar(50), @FatherName varchar(50), @Occupation varchar(50), @MotherName varchar(50), @DOB datetime, @Gender varchar(6), @CorrAdd varchar(250), @PerAdd varchar(250), @Category varchar(6), @Religion varchar(15), @Tenth varchar(5), @Tweleth varchar(5), @PETMarks numeric(3,0), @OtherQuali varchar(250), @PhoneNo numeric(12,0),

32

@MobileNo numeric(10,0), @PhotoURL varchar(100) AS BEGIN insert into Studentinfo(StdEnrollNo,SCourse,SBranch,SName,FatherName,Occupation,MotherNam e,DOB,Gender,CorrAdd,PerAdd,Category,Religion,Tenth,Tweleth,PETMarks,OtherQua li,PhoneNo,MobileNo,PhotoURL) values(@StdEnrollNo,@SCourse,@SBranch,@SName,@FatherName,@Occupation,@MotherN ame,@DOB,@Gender,@CorrAdd,@perAdd,@Category,@Religion,@Tenth,@Tweleth,@PETMar ks,@OtherQuali,@PhoneNo,@MobileNo,@PhotoURL); END

View Marks Page

Code for ViewMarks
using using using using using using using using using using using using using System; System.Collections; System.Configuration; System.Data; System.Linq; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.HtmlControls; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Xml.Linq; System.Data.SqlClient;

33

public partial class ViewMarks : System.Web.UI.Page { ClsConnection con = new ClsConnection(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { fillCourse(); Label1.Text = ""; } } public void fillCourse() { string str = "select * from Course"; SqlCommand cmd = new SqlCommand(str, con.GetCon()); con.ForOpen(); SqlDataAdapter da = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds); ddlCourse.DataTextField = "CourseName"; ddlCourse.DataValueField = "CourseId"; ddlCourse.DataSource = ds; ddlCourse.DataBind(); ddlCourse.Items.Add("-Select-"); ddlCourse.Items.FindByText("-Select-").Value = "0"; ddlCourse.Items.FindByText("-Select-").Selected = true; } protected void Button1_Click(object sender, EventArgs e) { if (Session["Type"].ToString() == "Student") { con.ForOpen(); string str = "select * from UserInfo where EnrollmentNo='" + txtEnroll.Text + "'"; SqlCommand cmd = new SqlCommand(str, con.GetCon()); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { if (txtEnroll.Text == dr[5].ToString()) { con.ForClose(); con.ForOpen(); string str1 = "select * from AddMarks where EnrollmentNo='" + txtEnroll.Text + "' and Semester=" + ddlSemester.SelectedItem.Text + ""; SqlCommand cmd1 = new SqlCommand(str1, con.GetCon()); SqlDataReader dr1 = cmd1.ExecuteReader(); dr1.Read(); if (dr1.HasRows) { fillgrid(); string str2 = "select * from AddMarks where EnrollmentNo='" + txtEnroll.Text + "' and Semester=" + ddlSemester.SelectedItem.Text + ""; SqlCommand cmd2 = new SqlCommand(str2, con.GetCon()); con.ForClose(); con.ForOpen(); SqlDataReader dr2 = cmd2.ExecuteReader();

34

if (dr2.HasRows) { while (dr2.Read()) { txtBranch.Visible = true; txtCourse.Visible = true; txtEnrollmentNo.Visible = true; txtFName.Visible = true; txtName.Visible = true; txtSemester.Visible = true; txtName.Text = dr2[6].ToString(); txtFName.Text = dr2[7].ToString(); txtCourse.Text = dr2[1].ToString(); txtBranch.Text = dr2[2].ToString(); txtEnrollmentNo.Text = dr2[5].ToString(); txtSemester.Text = dr2[3].ToString(); } } else { Label1.Text = "Enrollment Not exists"; fillCourse(); ddlSemester.Text = ""; GridView1.Visible = false; txtEnroll.Text = ""; txtSemester.Visible = false; txtName.Visible = false; txtFName.Visible = false; txtEnrollmentNo.Visible = false; txtCourse.Visible = false; txtBranch.Visible = false; } } else { Label1.Text = "Enrollment Not exists"; fillCourse(); GridView1.Visible = false; txtEnroll.Text = ""; txtSemester.Visible = false; txtName.Visible = false; txtFName.Visible = false; txtEnrollmentNo.Visible = false; txtCourse.Visible = false; txtBranch.Visible = false; } } } } else { fillMarks(); } } protected void fillMarks() {

35

con.ForOpen(); string str = "select * from AddMarks where EnrollmentNo='" + txtEnroll.Text + "' and Semester=" + ddlSemester.SelectedItem.Text + ""; SqlCommand cmd = new SqlCommand(str, con.GetCon()); SqlDataReader dr1 = cmd.ExecuteReader(); dr1.Read(); if (dr1.HasRows) { fillgrid(); string str1 = "select * from AddMarks where EnrollmentNo='" + txtEnroll.Text + "' and Semester=" + ddlSemester.SelectedItem.Text + ""; SqlCommand cmd1 = new SqlCommand(str1, con.GetCon()); con.ForClose(); con.ForOpen(); SqlDataReader dr = cmd1.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { txtBranch.Visible = true; txtCourse.Visible = true; txtEnrollmentNo.Visible = true; txtFName.Visible = true; txtName.Visible = true; txtSemester.Visible = true; txtName.Text = dr[6].ToString(); txtFName.Text = dr[7].ToString(); txtCourse.Text = dr[1].ToString(); txtBranch.Text = dr[2].ToString(); txtEnrollmentNo.Text = dr[5].ToString(); txtSemester.Text = dr[3].ToString(); } } else { Label1.Text = "Enrollment Not exists"; fillCourse(); ddlSemester.Text = ""; GridView1.Visible = false; txtEnroll.Text = ""; txtSemester.Visible = false; txtName.Visible = false; txtFName.Visible = false; txtEnrollmentNo.Visible = false; txtCourse.Visible = false; txtBranch.Visible = false; } } else { Label1.Text = "Enrollment Not exists"; fillCourse(); GridView1.Visible = false; txtEnroll.Text = ""; txtSemester.Visible = false; txtName.Visible = false; txtFName.Visible = false; txtEnrollmentNo.Visible = false;

36

txtCourse.Visible = false; txtBranch.Visible = false; } } protected void ddlCourse_SelectedIndexChanged(object sender, EventArgs e) { fillSemester(); } public void fillSemester() { if (ddlCourse.SelectedItem.Text == "BE") { ddlSemester.Items.Clear(); ddlSemester.Items.Add("1"); ddlSemester.Items.Add("2"); ddlSemester.Items.Add("3"); ddlSemester.Items.Add("4"); ddlSemester.Items.Add("5"); ddlSemester.Items.Add("6"); ddlSemester.Items.Add("7"); ddlSemester.Items.Add("8"); } else { ddlSemester.Items.Clear(); ddlSemester.Items.Add("1"); ddlSemester.Items.Add("2"); ddlSemester.Items.Add("3"); ddlSemester.Items.Add("4"); ddlSemester.Items.Add("5"); } txtEnroll.Text = ""; } protected void fillgrid() { con.ForOpen(); string str = "select * from AddMarks where EnrollmentNo='" + txtEnroll.Text + "' and Semester=" + ddlSemester.SelectedItem.Text + ""; SqlCommand cmd1 = new SqlCommand(str, con.GetCon()); SqlDataReader dr = cmd1.ExecuteReader(); dr.Read(); if (dr.HasRows) { SqlCommand cmd = new SqlCommand("select SubjectCode, Theory, Practical, MidSem, Total from AddMarks where EnrollmentNo='" + txtEnroll.Text + "' and Semester="+ddlSemester.SelectedItem.Text+"", con.GetCon()); con.FillGV(GridView1, cmd); } else { Label1.Text = "Enrollment Not exists"; fillCourse(); ddlSemester.Text = ""; GridView1.Visible = false; txtEnroll.Text = ""; txtSemester.Visible = false; txtName.Visible = false; txtFName.Visible = false;

37

txtEnrollmentNo.Visible = false; txtCourse.Visible = false; txtBranch.Visible = false; } } protected void ddlSemester_SelectedIndexChanged(object sender, EventArgs e) { txtEnroll.Text = ""; } }

5.3 Testing
5.3.1 Testing Objectives $ Principles Software Testing is an empirical investigation conducted to provide stakeholders with information about the quality of the product or service under test , with respect to the context in which it is intended to operate. Software Testing also provides an objective, independent view of the software to allow the business to appreciate and understand the risks at implementation of the software. Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs. It can also be stated as the process of validating and verifying that a software program/application/product meets the business and technical requirements that guided its design and development, so that it works as expected and can be implemented with the same characteristics. Software Testing, depending on the testing method employed, can be implemented at any time in the development process, however the most test effort is employed after the requirements have been defined and coding process has been completed. Software testing methods are traditionally divided into black box testing and white box testing. These two approaches are used to describe the point of view that a test engineer takes when designing test cases. 5.3.2 Testing Method Black box testing Black box testing treats the software as a "black box," without any knowledge of internal implementation. Black box testing methods include: equivalence partitioning, boundary value analysis, all-pairs testing, fuzz testing, model-based testing, traceability matrix, exploratory testing and specification-based testing. The black box tester has no "bonds" with the code, and a tester's perception is very simple: a code must have bugs. Using the principle, "Ask and you shall receive," black box testers find bugs where programmers don't. But, on the other hand, black box 38

testing has been said to be "like a walk in a dark labyrinth without a flashlight," because the tester doesn't know how the software being tested was actually constructed. That's why there are situations when (1) a black box tester writes many test cases to check something that can be tested by only one test case, and/or (2) some parts of the back end are not tested at all. Therefore, black box testing has the advantage of "an unaffiliated opinion," on the one hand, and the disadvantage of "blind exploring," on the other. White box testing White box testing, by contrast to black box testing, is when the tester has access to the internal data structures and algorithms (and the code that implement these) Types of white box testing The following types of white box testing exist:  API testing (application programming interface) - Testing of the application using Public and Private APIs.  Code coverage - creating tests to satisfy some criteria of code coverage. For example, the test designer can create tests to cause all statements in the program to be executed at least once.  Fault injection methods.  Mutation testing methods.  Static testing - White box testing includes all static testing.

5.3.3 Specification-Based Testing Specification-based testing aims to test the functionality of software according to the applicable requirements. Thus, the tester inputs data into, and only sees the output from, the test object. This level of testing usually requires thorough test cases to be provided to the tester, who then can simply verify that for a given input, the output value (or behavior), either "is" or "is not" the same as the expected value specified in the test case. Specification-based testing is necessary, but it is insufficient to guard against certain risks. Acceptance testing

Acceptance testing can mean one of two things:
1. A smoke test is used as an acceptance test prior to introducing a build to the main testing process. 2. Acceptance testing performed by the customer is known as user acceptance testing (UAT). Regression Testing Regression testing is any type of software testing that seeks to uncover software regressions. Such regression occurs whenever software functionality that was previously working correctly stops working as intended. Typically regressions occur as an unintended consequence of program changes. Common methods of regression testing include re-running previously run tests and checking whether previously fixed faults have re-emerged. 39

Non Functional Software Testing Special methods exist to test non-functional aspects of software.  Performance testing checks to see if the software can handle large quantities of data or users. This is generally referred to as software scalability. This activity of Non Functional Software Testing is often times referred to as Load Testing.  Stability testing checks to see if the software can continuously function well in or above an acceptable period. This activity of Non Functional Software Testing is often times referred to as end ration test.  Usability testing is needed to check if the user interface is easy to use and understand.  Security testing is essential for software which processes confidential data and to prevent system intrusion by hackers.  Internationalization and localization is needed to test these aspects of software, for which a pseudo localization method can be used.

5.3.4 Testing process
A common practice of software testing is performed by an independent group of testers after the functionality is developed before it is shipped to the customer. This practice often results in the testing phase being used as project buffer to compensate for project delays, thereby compromising the time devoted to testing. Another practice is to start software testing at the same moment the project starts and it is a continuous process until the project finishes. Testing can be done on the following levels:


Unit testing tests the minimal software component, or module. Each unit (basic component) of the software is tested to verify that the detailed design for the unit has been correctly implemented.  Integration testing exposes defects in the interfaces and interaction between integrated components (modules). Progressively larger groups of tested software components corresponding to elements of the architectural design are integrated and tested until the software works as a system.  System testing tests a completely integrated system to verify that it meets its requirements  System integration testing verifies that a system is integrated to any external or third party systems defined in the system requirements. Before shipping the final version of software, alpha and beta testing are often done additionally:


Alpha testing is simulated or actual operational testing by potential users/customers or an independent test team at the developers' site. Alpha testing is often employed for off-the-

40

shelf software as a form of internal acceptance testing, before the software goes to beta testing.  Beta testing comes after alpha testing. Versions of the software, known as beta versions, are released to a limited audience outside of the programming team. The software is released to groups of people so that further testing can ensure the product has few faults or bugs. Finally, acceptance testing can be conducted by the end-user, customer, or client to validate whether or not to accept the product. Acceptance testing may be performed as part of the hand-off process between any two phases of development.

5.3.5 Testing Tools
Program testing and fault detection can be aided significantly by testing tools and debuggers. Types of testing/debug tools include features such as:


Program monitors, permitting full or partial monitoring of program code including: o Instruction Set Simulator, permitting complete instruction level monitoring and trace facilities o Program animation, permitting step-by-step execution and conditional breakpoint at source level or in machine code o code coverage reports  Formatted dump or Symbolic debugging, tools allowing inspection of program variables on error or at chosen points  Benchmarks, allowing run-time performance comparisons to be made  Performance analysis, or profiling tools that can help to highlight hot spots and resource usage Some of these features may be incorporated into an integrated development environment (IDE). Measuring software testing Usually, quality is constrained to such topics as correctness, completeness, security, but can also include more technical requirements as described under the ISO standard ISO 9126, such as capability, reliability, efficiency, portability, maintainability, compatibility, and usability. There are a number of common software measures, often called "metrics", which are used to measure the state of the software or the adequacy of the testing:

Test script

41

The test script is the combination of a test case, test procedure, and test data. Initially the term was derived from the product of work created by automated regression test tools. Today, test scripts can be manual, automated, or a combination of both. Test data The most common test manually or in automation is retesting and regression testing, in most cases, multiple sets of values or data is used to test the same functionality of a particular feature. All the test values and changeable environmental components are collected in separate files and stored as test data. It is also useful to provide this data to the client and with the product or a project. Test suite The most common term for a collection of test cases is a test suite. The test suite often also contains more detailed instructions or goals for each collection of test cases. It definitely contains a section where the tester identifies the system configuration used during testing. A group of test cases may also contain prerequisite states or steps, and descriptions of the following tests. Test plan A test specification is called a test plan. The developers are well aware what test plans will be executed and this information is made available to the developers. This makes the developers more cautious when developing their code. This ensures that the developer’s code is not passed through any surprise test case or test plans.

CONCLUSION
42

A proper use of the website would significantly reduce paperwork. Also problems related to the data loss are eliminated. In addition it also leads to a significant reduction in the number of manhours spent in maintaining this system and also reduces the system cost. This leads not only to increase the efficiency of the system but also allows the deployment of employees in other areas of work. In order for the system to function according to the specifications, it is necessary to satisfy user requests are necessary. The success of this system will depend on the acceptance of the system by the concerned employees. Proper training must be imparted to employees to make them aware of the facilities provided in the website 1. A proper use of the website would significantly reduce paperwork. 2. Also problems related to the data loss are eliminated. 3. In addition it also leads to a significant reduction in the number of man-hours spent in maintaining this system. 4. This leads not only to increase the efficiency of the system but also allows the deployment of employees in other areas of work. 5. Also eliminates the limitation of working on the fixed systems and also the system cost. 6. This will also reduce the burden of maintaining the records on the management a student himself can add/edit his profile.

REFRENCES
43

Books:  Applied Microsoft Dot Net framework programming. By: - Jeffrey Richter  Developing Microsoft Asp Dot Net server control & component. By:-Nikhil / Datye, V. Kothari  Improving Dot Net application performance & scalability. By:-Microsoft Corporation Websites:  www.w3schools.com  www.rgtu.net  www.scribd.com

44

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close