7/31/2019 For College Doc
1/103
7/31/2019 For College Doc
2/103
2TIME TABLE GENERATION FOR COLLEGE
1. INTRODUCTION
1.1 UNIVERSITY PROFILE
Sri Padmavathi Mahila Visvavidyalayam was founded in the year 1983 by Sri N.T.
RamaRao, the Chief Minister of Andhra Pradesh, with the fervent desire to train women
students as builders of the nation and to inculcate skills of leadership in all aspects of life. The
university was established under the 14 of April 1983.
This is the only University in the state of Andhra Pradesh and 2 nd, in the country itself.
This has been established exclusively for Womens education. In pursuance of the objectives
of the university, its focus has been mainly on offering applied and vocational courses. The
university is awarded four star by NAAC in 2002.
The Objectives of the University are
Emancipation of Women through Education
Acquisition of sound updated academic knowledge
Acquisition of specific vocational skills and competence for gainful occupation.
Developing awareness of major issues and problems being faced by the society and by the
women in particular.
Developing self-confidence and creative interaction with the society.
Obtaining a broad overview of the areas of employment viz job seeking, job-getting and
job-holding.
Acquisition of evaluation skills and training to function as better builders of the home and
society.
Acquisition of skills of leadership and / entrepreneurship in all aspects of life.
Keeping in view of these objectives, the teaching and research works are carried out in the
university.The campus of Sri Padmavathi Mahila Visvavidyalayam is spread out in a lush
green area of 138.43 acres. There are separate Buildings for humanities and science,
Universitys Administration, Central Library, University Auditorium, Sericulture complex
and school of pharmaceutical sciences and also an independent building for computer
science, computer center and Examination hall.
Page2
7/31/2019 For College Doc
3/103
3TIME TABLE GENERATION FOR COLLEGE
The growth of the university since its inception has been phenomenal and the
university has evolved into a premier institution of Womens education and
empowerment and has given to society several illustrious, skilled and confident women,
thus strengthening the pillars of our nation.
1.2Objective of the Project
This project is aimed at developing a Time Table Generator for Colleges. Colleges
are supposed to make time tables for each semester which used to be a very tedious and
pain staking job. Each teacher and Student is eligible for viewing his own timetable
once they are finalized for a given semester but they cant edit them.
1.2 Problem Definition
There are so many college system provide the facility of online time table but not the
online communication for problem solving. In Time Table Generation System For A College
there is facility to communicate with each other and solve their query with help of staff
members
1.3 Definitions and Abbreviations
Term Definition
NET Network Enable Technology
ASP.NET Active server Page.netIIS Internet Information Service
UDL Universal Data Locator
CLR Common Language Runtime
CLI Common Language Infrastructure
BCL Base Class Library
Web-based Refers to one of the units of the whole
team that specializes in a certain aspect of
the project.
HTTP Its a base protocol
Web Server Its a software component, which will
receive request from HTTP client, process
on it and gives result to the client
Page3
7/31/2019 For College Doc
4/103
4TIME TABLE GENERATION FOR COLLEGE
SYSTEM ANALYSIS
Page4
7/31/2019 For College Doc
5/103
5TIME TABLE GENERATION FOR COLLEGE
2. SYSTEM ANALYSIS
2.1 About Existing System
Time Table Generation For A College is mainly designed to provide online time table,
subject selection,results,events of college and main is the online communication for problame
solving by staff member is the main aim of the system.
Time Table Generation System For A College is online time table generation and
communication system between management and the student.
2.2 Problem of the Current System
There are so many college system provide the facility of online time table but not the
online communication for problame solving. In Time Table Generation System For A College
there is facility to communicate wjth each other and solve there query with help of staff
memebers
2.3 About Proposed System
One main feature of this system is if any one have the database access of system he can not
see the user name and password of user because the login table is fully protected by encryption.
Time Table Generation System For A College is online time table generation and
communication system between management and the student
Page5
7/31/2019 For College Doc
6/103
6TIME TABLE GENERATION FOR COLLEGE
2.4 REQUIREMENT ANALYSIS
2.4.1 Functional Requirements
Following is a list of functionalities of the system. More functionality that
you find appropriate can be added to this list. And, in places w re the description of
functionality is not adequate; you can make appropriate assumptions and proceed.
1. For every branch and year the following rules are applied: It can have classes each have interval of 1 Hour.
Maximum of 5 lectures in a day.
Time for practicals and things should be there.
Subjects can be of any of the following categories:
Compulsory subjects.
Department Electives.
College Electives.
Maximum & maximum number of subjects should be specified.
2. A given Lecturer has following characteristics.
Should be able to teach some of the subjects.
Could be restricted to not more than certain number of classes in a day.
Could choose that didnt want to teach certain classes as well.
May select that willing to teach.
These are set by administrators only.
3. A student can select certain subjects from the categories mentioned in the .point 1
and a confirmation mail will be send back to the student. Subjects should be
chosen within the limited period of time else random subjects will be allotted.
Page6
7/31/2019 For College Doc
7/103
7TIME TABLE GENERATION FOR COLLEGE
4. Email should be sent to all the persons concerned with a given class (Lecturer and
students that timetable is sc duled.
5. A calendar should be there shows the public and nation holidays.
6. The time table will be generated accordingly and then corresponding persons will beinformed.
2.4.2 Non-Functional Requirements
3 Secure access of confidential data (users details). SSL can be used.
4 24 X 7 availability
5 Better component design to get better performance at peak time
Flexible service based architecture will be highly desirable for future extension
2.4.3 Performance Requirements
2.4.4 Input and Output
Admin enter credentials to enter into the site.
Admin can register the students and lecturers.
Admin enter the new course details into the system.
Lecturer enter credentails.
Lecturer assigns the marks to the students.
Admin assign the subject to the lecturer
Student enter credentials.
Admin creates the event calander.
Output:
Admin get his home page.
Perform site controlling activity of college.
Lecturers get home page.
Page7
7/31/2019 For College Doc
8/103
8TIME TABLE GENERATION FOR COLLEGE
Perform Lecturers activities.
Student get home page and can view their own information.
Student can get time table.
Student can view event calendar.
Student can view his results.
2.4.5 Project Development Models
The software development life cycle (SDLC) is the entire process of formal,
logical steps taken to develop a software product. Within the broader context of
Application Lifecycle Management (ALM), the SDLC is basically the part of process in
which coding/programming is applied to the problem being solved by the existing or
planned application.
The phases of SDLC can vary somewhat but generally include the following:
Conceptualization
Requirements and cost/benefits analysis
Detailed specification of the software requirements
Software design
Programming
Testing
User and technical training
Maintenance
There are many methodologies or models that can be used to guide the software
development lifecycle either as a core model to the SDLC or as a complementary method.
Prototyping Model:
Page8
7/31/2019 For College Doc
9/103
9TIME TABLE GENERATION FOR COLLEGE
The goal of prototyping based development is to counter the first two limitations of the
waterfall model discussed earlier. The basic idea here is that instead of freezing the
requirements before a design or coding can proceed, a throwaway prototype is built to
understand the requirements. This prototype is developed based on the currently known
requirements. Development of the prototype obviously undergoes design, coding and testing.
But each of these phases is not done very formally or thoroughly. By using this prototype, the
client can get an "actual feel" of the system, since the interactions with prototype can enable
the client to better understand the requirements of the desired system.
Prototyping is an attractive idea for complicated and large systems for which there is no
manual process or existing system to help determining the requirements. In such situations
letting the client "plan" with the prototype provides invaluable and intangible inputs which
helps in determining the requirements for the system. It is also an effective method to
demonstrate the feasibility of a certain approach. This might be needed for novel systems
where it is not clear that constraint can be met or that algorithms can be developed to
implement the requirements. The process model of the prototyping approach is shown in the
figure below.
Prototyping Model
The basic reason for little common use of prototyping is the cost involved in this built-it-
twice approach. However, some argue that prototyping need not be very costly and can actually
reduce the overall development cost. The prototype are usually not complete systems and many
of the details are not built in the prototype. The goal is to provide a system with overall
functionality. In addition, the cost of testing and writing detailed documents are reduced. These
factors help to reduce the cost of developing the prototype. On the other hand, the experience
Page9
7/31/2019 For College Doc
10/103
10TIME TABLE GENERATION FOR COLLEGE
of developing the prototype will very useful for developers when developing the final system.
This experience helps to reduce the cost of development of the final system and results in a
more reliable and better designed system.
Advantages of Prototyping
Users are actively involved in the development
It provides a better system to users, as users have natural tendency to change their mind
in specifying requirements and this method of developing systems supports this user
tendency.
Since in this methodology a working model of the system is provided, the users get a
better understanding of the system being developed.
Errors can be detected much earlier as the system is mode side by side.
Quicker user feedback is available leading to better solutions.
2.4.6 Project Development Architecture
As a developer, the .NET framework and Visual Studio present many choices for choosing
the right architecture, from placing the data access code directly in the UI through datasets and
data source controls, to creating a data access layer that talks to the database, all the way to
creating an architecture that consists of multiple layers, and use data-transfer objects to pass
data back and forth.
What is a Layer?
A layer is a reusable portion of code that performs a specific function. In the .NET
environment, a layer is usually setup as a project that represents this specific function. This
specific layer is in charge of working with other layers to perform some specific goal. In an
application where the presentation layer needs to extract information from a backend database,
the presentation would utilize a series of layers to retrieve the data, rather than having the
database calls embedded directly within itself.
Traditional Architecture
Page10
http://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspx7/31/2019 For College Doc
11/103
11TIME TABLE GENERATION FOR COLLEGE
When the .NET 2.0 framework became available to the world, there were some neat
features that allowed the developer to connect the frameworks GUI controls directly to the
database. This approach is very handy when rapidly developing applications. However, its not
always favorable to embed all of the business logic and data access code directly in the web
site, for several reasons:
Putting all of the code in the web site (business logic and data access) can make the
application harder to maintain and understand.
Reusing database queries in the presentation layer often isnt done, because of the
typical data source control setup in the ASP.NET framework.
Relying on the data source controls can make debugging more difficult, often due to
vague error messages.
So in looking for an alternative, we can separate the data access code and business logic
into separate layers, as shown in the fo
Presentation Layer:-
The ASP.NET web site or windows forms application (the UI for the project) is called the
presentation layer. Thepresentation layer is the most important layer simply because its the
one that everyone sees and uses. Even with a well structured business and data layer, if the
presentation layer is designed poorly, this gives the users a poor view of the system.
Page11
http://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspx7/31/2019 For College Doc
12/103
12TIME TABLE GENERATION FOR COLLEGE
Its best to remove as much business logic out of the UI and into the business layer. This
usually involves more code, but in my mind, the excess time (which ranges from minimal to
moderate, depending on the size of the application) pays off in the end.
Business Access Layer:-
Though a web site could talk to the data access layer directly, it usually goes through
another layer called the business layer. The business layer is vital in that it validates the input
conditions before calling a method from the data layer. This ensures the data input is correct
before proceeding, and can often ensure that the outputs are correct as well. This validation of
input is called business rules, meaning the rules that the business layer uses to make
judgments about the data.
However, business rules dont only apply to data validation; these rules apply to any
calculations or any other action that takes place in the business layer. Normally, its best to put
as much logic as possible in the business layer, which makes this logic reusable across
applications.
Data Access Layer:-
The key component to most applications is the data. The data has to be served to the
presentation layer somehow. The data layer is a separate component, whose sole purpose is to
serve up the data from the database and return it to the caller. Through this approach, data can
be logically reused, meaning that a portion of an application reusing the same query can make
a call to one data layer method, instead of embedding the query multiple times. This is
generally more maintainable.
2.5 Feasibility of the Project:-
Page12
http://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspxhttp://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspx7/31/2019 For College Doc
13/103
13TIME TABLE GENERATION FOR COLLEGE
A feasibility study looks at the viability of an idea with an emphasis on identifying
potential problems and attempts to answer one main question: Will the idea work and should
you proceed with it?
Before you begin writing your business plan you need to identify how, where, and to whom
you intend to sell a service or product. You also need to assess your competition and figure out
how much money you need to start your business and keep it running until it is established.
Feasibility studies address things like where and how the business will operate. They
provide in-depth details about the business to determine if and how it can succeed, and serve as
a valuable tool for developing a winning business plan.
Why Are Feasibility Studies so Important?
The information you gather and present in your feasibility study will help you:
List in detail all the things you need to make the business work;
Identify logistical and other business-related problems and solutions;
Develop marketing strategies to convince a bank or investor that your business is worth
considering as an investment; and
Serve as a solid foundation for developing your business plan.
Even if you have a great business idea you still have to find a cost-effective way to market
and sell your products and services. This is especially important for store-front retail
businesses where location could make or break your business.
For example, most commercial space leases place restrictions on businesses that can have a
dramatic impact on income. A lease may limit business hours/days, parking spaces, restrict the
product or service you can offer, and in some cases, even limit the number of customers a
business can receive each day.
The Components of a Feasibility Study
Technology and system feasibility
the assessment is based on an outline design of system requirements in terms of Input,
Processes, Output, Fields, Programs, and Procedures. This can be quantified in terms of
volumes of data, trends, frequency of updating, etc. in order to estimate whether the new
system will perform adequately or not. Technological feasibility is carried out to determine
Page13
7/31/2019 For College Doc
14/103
14TIME TABLE GENERATION FOR COLLEGE
whether the company has the capability, in terms of software, hardware, personnel and
expertise, to handle the completion of the project.
Economic feasibility :
it is the most frequently used method for evaluating the effectiveness of a new system.
More commonly known as cost/benefit analysis, the procedure is to determine the benefits and
savings that are expected from a candidate system and compare them with costs. If benefits
outweigh costs, then the decision is made to design and implement the system. An entrepreneur
must accurately weigh the cost versus benefits before taking an action.
Cost-based study: It is important to identify cost and benefit factors, which can be categorized
as follows: 1. Development costs; and 2. Operating costs. This is an analysis of the costs to be
incurred in the system and the benefits derivable out of the system.
Time-based study: This is an analysis of the time required to achieve a return on investments.
The future value of a project is also a factor.
Operational feasibility:
Itis a measure of how well a proposed system solves the problems, and takes advantage of
the opportunities identified during scope definition and how it satisfies the requirements
identified in the requirements analysis phase of system development.
2.6.DEVELOPMENT ENVIRONMENT
2.6.1 Software Environment
Operating System Server: Windows XP
Database Server: Microsoft SQL Server-2005
Client: Microsoft Internet Explorer
Tools: Microsoft Visual Studio.Net-2008 (Framework 3.5)
User Interface: Asp.Net with Ajax
2.6.2 DOT NET Framework
Page14
http://www.answers.com/topic/cost-benefit-analysishttp://www.answers.com/topic/cost-benefit-analysis7/31/2019 For College Doc
15/103
15TIME TABLE GENERATION FOR COLLEGE
The Microsoft .NET Framework is a software framework that can be installed
on computers running Microsoft Windows operating systems. It includes a large library
of coded solutions to common programming problems and a common language
infrastructure that manages the execution of programs written specifically for the
framework. The .NET Framework supports multiple programming languages in a
manner that allows language interoperability, whereby each language can utilize code
written in other languages; in particular, the .NET library is available to all the
programming languages that .NET encompasses.
Programs written for the .NET Framework execute in a software environment that
manages the program's runtime requirements. Also part of the .NET Framework, this
runtime environment is known as the Common Language Runtime (CLR). The CLR
provides the appearance of an application virtual machine so that programmers need
not consider the capabilities of the specific CPU that will execute the program. The
CLR also provides other important services such as security, memory management, and
exception handling. The class library and the CLR together constitute the .NET
Framework.
Principal design features
Interoperability
Because computer systems commonly require interaction between new and older
applications, the .NET Framework provides means to access functionality that is implemented
in programs that execute outside the .NET environment. Access to COM components is
provided in the System. Runtime. InteropServices and System.Enterprise SServices
namespaces of the framework; access to other functionality is provided using the P/Invoke
feature.
Common Runtime Engine
The Common Language Runtime (CLR) is the execution engine of the .NET Framework.
All .NET programs execute under the supervision of the CLR, guaranteeing certain properties
and behaviors in the areas of memory management, security, and exception handling.
Language Independence
Page15
7/31/2019 For College Doc
16/103
7/31/2019 For College Doc
17/103
17TIME TABLE GENERATION FOR COLLEGE
The design is meant to address some of the vulnerabilities, such as buffer overflows, that
have been exploited by malicious software. Additionally, .NET provides a common security
model for all applications.
Architecture & Versions:
Microsoft started development on the .NET Framework in the late 1990s originally under
the name of Next Generation Windows Services (NGWS). By late 2000 the first beta versions
of .NET 1.0 were released
Version 3.0 of the .NET Framework is included with Windows Server 2008 and Windows
Vista. Version 3.5 is included with Windows 7, and can also be installed on Windows XP and
the Windo ws Server 2003 family of operating systems. On April 12, 2010, .NET Framework
4 was released alongside Visual Studio 2010.
A more complete listing of the releases of the .NET Framework as follows:
Page17
7/31/2019 For College Doc
18/103
18TIME TABLE GENERATION FOR COLLEGE
2.6.3 C#.NET
In June 2000, Microsoft announced both the .NET platform and a new
programming language called C#. C# is a strongly-typed object-oriented language
designed to give the optimum blend of simplicity, expressiveness, and performance.
The .NET platform is centered on a Common Language Runtime (similar to a JVM)
and a set of libraries which can be exploited by a wide variety of languages which are
able to work together by all compiling to an intermediate language (IL). C# and .NET
are a little symbiotic: some features of C# are there to work well with .NET, and some
features of .NET are there to work well with C# (though .NET aims to work well with
many languages).
C# Features
1. C# is a simple, modern, object oriented language derived from C++ and Java.
2. It aims to combine the high productivity of Visual Basic and the raw power of C++.
3. It is a part of Microsoft Visual Studio7.0.
4. Visual studio supports Vb, VC++, C++, Vbscript, Jscript. All of these languages provide
access to the Microsoft .NET platform.
5. .NET includes a Common Execution engine and a rich class library.
6. Microsoft's JVM equiv. is Common language run time (CLR).
7. CLR accommodates more than one languages such as C#, VB.NET, Jscript, ASP.NET,
C++.
Page18
7/31/2019 For College Doc
19/103
19TIME TABLE GENERATION FOR COLLEGE
8. Source code --->Intermediate Language code (IL) ---> (JIT Compiler) Native code.
9.The classes and data types are common to all of the .NET languages.
10. We may develop Console application, Windows application, and Web application using
C#.
11. In C# Microsoft has taken care of C++ problems such as Memory management, pointers
etc.
12. It supports garbage collection, automatic memory management and a lot.
Main Features of C#
Simple
1. Pointers are missing in C#.
2. Unsafe operations such as direct memory manipulation are not allowed.
3. In C# there is no usage of "::" or "->" operators.
4. Since it`s on .NET, it inherits the features of automatic memory management and garbage
collection.
5. Varying ranges of the primitive types like Integer, Floats etc.
6. Integer values of 0 and 1 are no longer accepted as Boolean values. Boolean values are pure
true or false values in C# so no more errors of "="operator and "=="operator. "==" is used for
comparison operation and "=" is used for assignment operation.
Modern
1.C# has been based according to the current trend and is very powerful and simple for
building interoperable, scalable, robust applications.
2. C# includes built in support to turn any component into a web service that can be invoked
over the Internet from any application running on any platform.
Page19
7/31/2019 For College Doc
20/103
20TIME TABLE GENERATION FOR COLLEGE
Object Oriented
1. C# supports Data Encapsulation, inheritance, polymorphism, interfaces.
2. (int, float, double) are not objects in java but C# has introduces structures(structs) which
enable the primitive types to become objects
int i=1;
string a=i.Tostring(); //conversion (or) Boxing
Type Safe
1. In C# we cannot perform unsafe casts like convert double to a Boolean.
2. Value types (primitive types) are initialized to zeros and reference types (objects and classes
are initialized to null by the compiler automatically.
3. Arrays are zero base indexed and are bound checked.
4. Overflow of types can be checked.
Interoperability
1. C# includes native support for the COM and windows based applications.
2. Allowing restricted use of native pointers.
3. Users no longer have to explicitly implement the unknown and other COM interfaces, those
features are built in.
4. C# allows the users to use pointers as unsafe code blocks to manipulate your old code.
5. Components from VB NET and other managed code languages and directly be used in C#.
Scalable & Updateable
1. .NET has introduced assemblies, which are self-describing by means of their manifest.
Manifest establishes the assembly identity, version, culture and digital signature etc.
Assemblies need not to be register anywhere.
Page20
7/31/2019 For College Doc
21/103
21TIME TABLE GENERATION FOR COLLEGE
2. To scale our application we delete the old files and updating them with new ones. No
registering of dynamic linking library.
3. Updating software components is an error prone task. Revisions made to the code can affect
the existing program C# support versioning in the language. Native support for interfaces and
method overriding enable complex frame works to be developed and evolved over time.
Microsoft Visual Studio, IDE for C#
Microsoft Visual Studio is an integrated development environment (IDE) from
Microsoft. It can be used to develop console and graphical user interface applications along
with Windows Forms applications, web sites, web applications, and web services in both
native code together with managed code for all platforms supported by Microsoft
Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework
and Microsoft Silver light..
Features Microsoft Visual Studio
Code editor:
Visual Studio, like any other IDE, includes a code editor that supports syntax highlighting
and code completion using IntelliSense for not only variables, functions and methods but also
language constructs like loops and queries. IntelliSense is supported for the included
languages, as well as for XML and for Cascading Style Sheets and JavaScript when developing
web sites and web applications.
Debugger:
Visual Studio includes a debugger that works both as a source-level debugger and as a
machine-level debugger. It works with both managed code as well as native code and can be
used for debugging applications written in any language supported by Visual Studio.
Designer:
Visual Studio includes a host of visual designers to aid in the development of applications.
These tools include:
Windows Forms Designer:
Page21
7/31/2019 For College Doc
22/103
22TIME TABLE GENERATION FOR COLLEGE
The Windows Forms designer is used to build GUI applications using Windows Forms. It
includes a palette of UI widgets and controls (including buttons, progress bars, labels, layout
containers and other controls) that can be dragged and dropped on a form surface.
WPF Designer:
The WPF designer, codenamed Cider, was introduced with Visual Studio 2008. Like the
Windows Forms designer it supports the drag and drop metaphor. It is used to author user
interfaces targeting Windows Presentation Foundation.
Web designer/development:
Visual Studio also includes a web-site editor and designer that allow web pages to be
authored by dragging and dropping widgets. It is used for developing ASP.NET applications
and supports HTML, CSS and JavaScript. It uses a code-behind model to link with ASP.NET
code.
Class designer:
The Class Designer is used to author and edit the classes (including its members and their
access) using UML modeling. The Class Designer can generate C# and VB.NET code outlines
for the classes and methods. It can also generate class diagrams from hand-written classes.
2.6.4 ASP.NET
ASP.NET (Active Server Pages) is server sidescripting technology that enables scripts to
be executed on the web server (IIS).The IIS is component of Windows Server like windows
2000 and XP Professional. The extension for Classic ASP is ".asp" but for ASP.Net the
extension is ".ASPX". An ASP.NET Page can contain HTML, XML and scripts.
In simple web page transaction when a browser request a web page, the server in return the
HTML file where as in ASP.NET case, the browser request for the ASP.NET page, this request
goes to the web server, the web server will pass the this to the ASP.NET engine after the
engine will parse the script in the ASP.NET page, convert it to the HTML page and send back
to the client's browser.ASP.NET allows the developer to build applications faster. This is achieved due to the fast
that ASP.NET makes use of the rich class libraries provided by Microsoft. net framework.
Classic ASP:
Page22
http://www.programmersheaven.com/article/102935-What+is+ASP.NET%3A%3A%3A%3A+Introduction/info.aspxhttp://www.programmersheaven.com/article/102935-What+is+ASP.NET%3A%3A%3A%3A+Introduction/info.aspxhttp://www.programmersheaven.com/article/102935-What+is+ASP.NET%3A%3A%3A%3A+Introduction/info.aspxhttp://www.programmersheaven.com/article/102935-What+is+ASP.NET%3A%3A%3A%3A+Introduction/info.aspxhttp://www.programmersheaven.com/article/102935-What+is+ASP.NET%3A%3A%3A%3A+Introduction/info.aspxhttp://www.programmersheaven.com/article/102935-What+is+ASP.NET%3A%3A%3A%3A+Introduction/info.aspxhttp://www.programmersheaven.com/article/102935-What+is+ASP.NET%3A%3A%3A%3A+Introduction/info.aspx7/31/2019 For College Doc
23/103
23TIME TABLE GENERATION FOR COLLEGE
ASP, which is now more commonly known as Classic ASP was used extensively in 1990's.
The idea of creating dynamic pages and linking them with database was the main purpose of
classic ASP. Asp used html controls for user interaction. Apart from the good features
available in ASP programming, it also lacks in some of the major areas. These areas include
clean coding as asp pages were incline pages and all the business logic as well as the interface
was coded in a single page. This produces many problem when the code had to be updated or
modified. Asp pages also lacked performance and scalability which were fixed in ASP.NET.
Lets see what ASP.NET technology has to offer a developer to build dynamic pages much
faster.
ASP.NET Web Applications:
ASP.NET is based on the .NET framework for building web applications. Since ASP.NET
is a part of the Microsoft. NET Framework it has the ability to take advantage of rich class
libraries provided by Microsoft. The question is that why should one use ASP.NET and not use
classic asp or any other web programming technology. Here are some of the features of
ASP.NET that makes it the best web application technology.
Use of Controls:
ASP.NET provides the developer with several controls to perform basic as well as
advanced operations. Controls provided in ASP.NET falls under HTML Controls, HTML
Server Controls and Web Server Controls.
HTML Controls:
Html controls are the basic controls that are executed on the client machine. These controls
include textbox, label, image etc. A simple example of html control can be given by the
following code which renders an image. Version 3.0 of the .NET Framework is included with
Windows Server 2008 and Windows Vista. Version 3.5 is included with Windows 7, and can
also be installed on Windows XP and the Windo ws Server 2003 family of operating systems.
On April 12, 2010, .NET Framework 4 was released alongside Visual Studio 2010.
Page23
7/31/2019 For College Doc
24/103
24TIME TABLE GENERATION FOR COLLEGE
As you see HTML controls are very easy to use but they don't provide much
features. Microsoft decided to introduce HTML Server controls which extends the
functionality of simple HTML Controls.
HTML Server Controls:
HTML Server Controls looks exactly like the HTML Controls with one difference that they
are executed on the server rather than the client. A simple example of HTML Server controls is
given below:
just add a runat server attribute with the image tag.
As you can see that the image tag or control looks exactly like the one that we have
previously discussed. But it has an additional attribute which is runat. The runat attribute
denotes that this is a HTML Server Control and will be executed on the Server rather than the
client.
Web Server Controls:
Web Server Controls are the most advanced controls in ASP.NET. Each control comes
with tons of features that allows the developer to complete the task in less time. Web Server
Controls are executed on the Server. Web Server Controls include datagrid control, datalist
control, calendar control and many many more.
Language Options:
ASP.NET provides lets you choose the scripting language between javascript and
VbScript. This is beneficial for the java programmers as well as the VB programmers since
they already have the basic background of the language.
Caching features:
Page24
7/31/2019 For College Doc
25/103
25TIME TABLE GENERATION FOR COLLEGE
ASP.NET also introduces caching features which increases the performance of the
application. Caching allows the developer to save the recently used data in a cache variable so
that if does not have to spend any time looking for it in the future when anyone requests it.
Tools:
ASP.NET pages can be made in variety of tools. The most basic editor is notepad or
WordPad. To make the development faster Microsoft has introduced Visual Studio
development tool which lets the developer build enterprise applications in less time. There are
many free tools available to build ASP.NET application one of them is "WebMatrix" which
can be downloaded from "www.asp.net" target="_blank" rel="nofollow".
ASP.NET Web Services:
Web Services has change the way we develop applications. Sometimes its hard to grasp the
idea behind the web service so I will try to make it as simple as possible. A web service is not a
whole application, its a part or a component of a larger application. The basic purpose of the
web service is to create a link/bridge between two different platforms and exchange data. This
data is exchanged in the form of XML. XML is nothing but text which is in structured form
that is why it's recognized by all platforms.
Code behind
In traditional ASP, the interweaving of script with HTML can produce source control
nightmares and difficult-to-maintain ASP pages. ASP.NET addresses this problem by giving
programmers the ability to separate the executable code from the presentation code. You write
the HTML in a page file (with a .aspx extension), and you write the C# or VB.NET code in he
code-behind file (with a .cs or .vb extension, depending on its language), which is another way
of saying the "code file behind the form.
In the code-behind file, you create a class (which can be any class derived from the
Page class) that serves as the base class for the web page you create in the .aspx file. This
relationship between your class and the web page is established by a Page directive at the
top of the .aspx file:
Page25
7/31/2019 For College Doc
26/103
26TIME TABLE GENERATION FOR COLLEGE
The inherits attribute identifies the class created in the code-behind file from which this
.aspx file will derive.
When a web form is compiled, its page is parsed and a new class is generated and
compiled. This new class derives from the class identified in the inherits keyword, which in
turn derives from System.Web.UI.Page.
ADO.NET
The new data component, introduced with .NET, presented an exciting new approach to
data access. Though the techniques, and logic used to connect to databases with ADO.NET
weren't startlingly different from those used with its predecessor, ADO.NET had a lot to offer.
What was unique about this technology was the architecture beneath it all, its powerful
approach to data management, and the flexibility in the next level of data-presenting devices.
It handling of disconnected data stores, and functioning properly and concisely with XML.
This is where ADO.NET stepped in - these are the two things the new technology easily
manages, as XML is the core component of the entire .NET Framework.Before you connect to
a database, you first have to import all the necessary namespaces that will allow you to work
with the objects required. As we're going to work with SQL Server, we'll first import the
namespaces SQLClient. If we were using a database other than SQL, for instance, MS Access,
The AO.NET Data Architecture
Data Access in ADO.NET relies on two components: DataSet and Data Provider.
DataSet
The dataset is a disconnected, in-memory representation of data. It can be considered as a
local copy of the relevant portions of the database. The DataSet is persisted in memory and the
data in it can be manipulated and updated independent of the database. When the use of thisDataSet is finished, changes can be made back to the central database for updating. The data in
DataSet can be loaded from any valid data
source like Microsoft SQL server database, an Oracle database or from a Microsoft Access
database.
Data Provider
Page26
7/31/2019 For College Doc
27/103
27TIME TABLE GENERATION FOR COLLEGE
The Data Provider is responsible for providing and maintaining the connection to the
database. A DataProvider is a set of related components that work together to provide data in
an efficient and performance driven manner. The .NET Framework currently comes with two
DataProviders: the SQL Data Provider which is designed only to work with Microsoft's SQL
Server 7.0 or later and the OleDb DataProvider which allows us to connect to other types of
databases like Access and Oracle. Each DataProvider consists of the following component
classes:
The Connection object which provides a connection to the database.
The Command object which is used to execute a command.
The DataReader object which provides a forward-only, read only, connected
recordset.
The DataAdapter object which populates a disconnected DataSet with data and
performs update.
Data access with ADO.NET can be summarized as follows:
A connection object establishes the connection for the application with the database.
The command object provides direct execution of the command to the database. If the
command returns more than a single value, the command object returns a DataReader to
provide the data. Alternatively, the DataAdapter can be used to fill the Dataset object. The
database can be updated using the command object or the DataAdapter.
Page27
7/31/2019 For College Doc
28/103
28TIME TABLE GENERATION FOR COLLEGE
Component classes that make up the Data Providers
The Connection Object
The Connection object creates the connection to the database. Microsoft Visual Studio
.NET provides two types of Connection classes: the SqlConnection object, which is designed
specifically to connect to Microsoft SQL Server 7.0 or later, and the OleDbConnection object,
which can provide connections to a wide range of database types like Microsoft Access and
Oracle. The Connection object contains all of the information required to open a connection to
the database.
The Command Object
The Command object is represented by two corresponding classes: SqlCommand and
OleDbCommand. Command objects are used to execute commands to a database across a data
connection. The Command objects can be used to execute stored procedures on the database,
SQL commands, or return complete tables directly. Command objects provide three methods
that are used to execute commands on the database:
ExecuteNonQuery: Executes commands that have no return values such as
INSERT, UPDATE or DELETE
ExecuteScalar: Returns a single value from a database query
ExecuteReader: Returns a result set by way of a DataReader object
The DataReader Object
The DataReader object provides a forward-only, read-only, connected stream recordset
from a database. Unlike other components of the Data Provider, DataReader objects cannot be
directly instantiated. Rather, the DataReader is returned as the result of the Command object's
ExecuteReader method. The SqlCommand.ExecuteReader method returns a SqlDataReader
object, and the OleDbCommand.ExecuteReader method returns an OleDbDataReader object.
The DataReader can provide rows of data directly to application logic when you do not need to
keep the data cached in memory. Because only one row is in memory at a time, the DataReader
provides the lowest overhead in terms of system performance but requires the exclusive use of
an open Connection object for the lifetime of the DataReader.
Page28
7/31/2019 For College Doc
29/103
29TIME TABLE GENERATION FOR COLLEGE
The DataAdapter Object
The DataAdapter is the class at the core of ADO .NET's disconnected data access. It is
essentially the middleman facilitating all communication between the database and a DataSet.
The DataAdapter is used either to fill a DataTable or DataSet with data from the database with
it's Fill method. After the memory-resident data has been manipulated, the DataAdapter can
commit the changes to the database by calling the Update method. The DataAdapter provides
four properties that represent database commands:
SelectCommand
InsertCommand
DeleteCommand
UpdateCommand
When the Update method is called, changes in the DataSet are copied back to the database and
the appropriate InsertCommand, DeleteCommand, or UpdateCommand is executed.
2.6.5 SQL Server
Microsoft SQL Server is a Relational Database Management System (RDBMS)
designed to run on platforms ranging from laptops to large multiprocessor servers. SQL
Server is commonly used as the backend system for websites and corporate CRMs and
can support thousands of concurrent users.
SQLServer is much more robust and scalable than a desktop database management
system such as Microsoft Access. Anyone who has ever tried using Access as a backend to
a website will probably be familiar with the errors that were generated when too many
users tried to access the database!
Although SQL Server can also be run as a desktop database system, it is most
commonly used as a server database system.
Page29
7/31/2019 For College Doc
30/103
30TIME TABLE GENERATION FOR COLLEGE
Server Database Systems
Server based database systems are designed to run on a central server, so that multiple
users can access the same data simultaneously. The users normally access the database through
an application.
For example, a website could store all its content in a database. Whenever a visitor views an
article, they are retrieving data from the database. As you know, websites aren't normally
limited to just one user. So, at any given moment, a website could be serving up hundreds, or
even thousands of articles to its website visitors. At the same time, other users could be
updating their personal profile in the members' area, or subscribing to a newsletter, or anything
else that website users do.
Generally, it's the application that provides the functionality to these visitors. It is the
database that stores the data and makes it available. Having said that, SQL Server does include
some useful features that can assist the application in providing its functionality.
Microsoft SQL Server offers a variety of administrative tools to ease the burdens of database
development, maintenance and administration. Frequently used tools: Enterprise Manager,
Query Analyzer, SQL Profiler, Service Manager, Data Transformation. Let's take a brief look
at each:
Enterprise Manager
It is the main administrative console for SQL Server installations. It provides you with a
graphical "birds-eye" view of all of the SQL Server installations on your network. You can
perform high-level administrative functions that affect one or more servers, schedule common
maintenance tasks or create and modify the structure of individual databases.
Query Analyzer
It offers a quick and dirty method for performing queries against any of your SQL Server
databases. It's a great way to quickly pull information out of a database in response to a user
request, test queries before implementing them in other applications, create/modify stored
procedures and execute administrative tasks.
SQL Profiler
It provides a window into the inner workings of your database. You can monitor many
different event types and observe database performance in real time. SQL Profiler allows you
Page30
7/31/2019 For College Doc
31/103
31TIME TABLE GENERATION FOR COLLEGE
to capture and replay system "traces" that log various activities. It's a great tool for optimizing
databases with performance issues or troubleshooting particular problems.
Service Manager
it is used to control the MSSQLServer (the main SQL Server process), MSDTC
(Microsoft Distributed Transaction Coordinator) and SQLServerAgent processes. An icon for
this service normally resides in the system tray of machines running SQL Server. You can use
Service Manager to start, stop or pause any one of these services.
Data Transformation Services (DTS)
it provide an extremely flexible method for importing and exporting data between a
Microsoft SQL Server installation and a large variety of other formats. The most commonly
used DTS application is the "Import and Export Data" wizard found in the SQL Server
program group.
SQL Databases
What's a Database? A SQL database is nothing more than an empty shell, like a vacant
warehouse. It offers no real functionality whatsoever, but does provide a virtual space to store
data. Data is stored inside of database objects called tables, and tables are the containers that
actually hold specific types of data, such as numbers, files, strings, and dates
A single database can house hundreds of tables containing more than 1,000 table columns
each and they may be jam packed with relational data ready to be retrieved by SQL. Perhaps
the greatest feature SQL offers is that it doesn't take much effort to rearrange your warehouse
to meet your ever-growing business needs.
Creating a database inside of SQL Express has its advantages. After launching Microsoft's
SQL Server Management Studio Express application, simply right-clicking on the Databases
folder of the Object Explorer gives you the option to create a New Database. After selecting
the New Database... option, name your database "MyDatabase" and press "OK".
SQL - Tables
Data is stored inside SQL tables which are contained within SQL databases. A single
database can house hundreds of tables, each playing its own unique role in the database
schema. While database architecture and schema are concepts far above the scope of this
tutorial, we plan on diving in just past the surface to give you a glimpse of database
architecture that begins with a thorough understanding of SQL Tables.
Page31
7/31/2019 For College Doc
32/103
32TIME TABLE GENERATION FOR COLLEGE
SQL tables are comprised of table rows and columns. Table columns are responsible for
storing many different types of data, like numbers, texts, dates, and even files. There are many
different types of table columns and these data types vary, depending on how the SQL table
has been created by the SQL developer. A table row is a horizontal record of values that fit into
each different table column.
Constraints
The primary job of a constraint is to enforce a rule in the database. Together, the
constraints in a database maintain the integrity of the database.
Entity Integrity
Entity integrity ensures each row in a table is a uniquely identifiable entity. You can apply
entity integrity to a table by specifying a PRIMARY KEY constraint.
Referential Integrity
Referential integrity ensures the relationships between tables remain preserved as data is
inserted, deleted, and modified. You can apply referential integrity using a FOREIGN KEY
constraint.
Entity and referential integrity together form key integrity.
Domain Integrity
Domain integrity ensures the data values inside a database follow defined rules for values,
range, and format. A database can enforce these rules using a variety of techniques, including
CHECK constraints, UNIQUE constraints, and DEFAULT constraints.
The following list gives a sampling of domain integrity constraints.
Unique Constraint
A unique constraint uses an index to ensure a column (or set of columns) contains no
duplicate values. By creating a unique constraint, instead of just a unique index, you are telling
the database you really want to enforce a rule, and are not just providing an index for query
optimization. The database will not allow someone to drop the index without first dropping the
constraint.
Check Constraints
Check constraints contain an expression the database will evaluate when you modify or
insert a row. If the expression evaluates to false, the database will not save the row. Building a
check constraint is similar to building a WHERE clause. You can use many of the same
Page32
7/31/2019 For College Doc
33/103
7/31/2019 For College Doc
34/103
34TIME TABLE GENERATION FOR COLLEGE
Enhanced security controls.
You can grant users permission to execute a stored procedure independently of underlying
table permissions.
Stored procedures are very similar to user-defined functions, but there are subtle differences.
For more information, read Comparing Stored Procedures and User-Defined Functions.
Structure
Stored procedures are extremely similar to the constructs seen in other programming
languages. They accept data in the form of input parameters that are specified at execution
time. These input parameters (if implemented) are utilized in the execution of a series of
statements that produce some result. This result is returned to the calling environment through
the use of a recordset, output parameters and a return code. That may sound like a mouthful,
but you'll find that stored procedures are actually quite simple.
4.2Hardware Environment
Processor: Intel Pentium or More
RAM: 512 MB Ram
Hard Disk: PC with 20GB
Page34
7/31/2019 For College Doc
35/103
35TIME TABLE GENERATION FOR COLLEGE
SYSTEM DESIGN
Page35
7/31/2019 For College Doc
36/103
36TIME TABLE GENERATION FOR COLLEGE
2 SYSTEM DESIGN
3.1Normalization
What does normalization have to do with SQL Server?
The answer here is nothing. SQL Server, like any other RDBMS, couldn't care less whether
your data model follows any of the normal forms. You could create one table and store all of
your data in one table or you can create a lot of little, unrelated tables to store your data. SQL
Server will support whatever you decide to do. The only limiting factor you might face is the
maximum number of columns SQL Server supports for a table.
Normalization is the process of organizing data in a database. This includes creating tables
and establishing relationships between those tables according to rules designed both to protect
the data and to make the database more flexible by eliminating two factors: redundancy and
inconsistent dependency.
Redundant data wastes disk space and creates maintenance problems. If data that exists in
more than one place must be changed, the data must be changed in exactly the same way in all
locations. Inconsistent dependencies can make data difficult to access; the path to find the data
may be missing or broken.
There are a few rules for database normalization. Each rule is called a "normal form." If the
first rule is observed, the database is said to be in "first normal form." If the first three rules are
observed, the database is considered to be in "third normal form." Although other levels of
normalization are possible, third normal form is considered the highest level necessary for
most applications.
First Normal Form
Eliminate repeating groups in individual tables. Do not use multiple fields in a single table
to store similar data.
Second Normal Form
Page36
7/31/2019 For College Doc
37/103
37TIME TABLE GENERATION FOR COLLEGE
Relate tables with a foreign key. Records should not depend on anything other than a
table's primary key (a compound key, if necessary).
Third Normal Form
Eliminate fields that do not depend on the key. Values in a record that are not part of that
record's key do not belong in the table. In general, any time the contents of a group of fields
may apply to more than a single record in the table, consider placing those fields in a separate
table.
3.2 Data Models
3.2.1 Data Dictionary
A data dictionary, as defined in the IBM Dictionary of Computing is a "centralized
repository of information about data such as meaning, relationships to other data, origin, usage,
and format. The term may have one of several closely related meanings pertaining to databases
and database management systems (DBMS):
a document describing a database or collection of databases
an integral component of a DBMS that is required to determine its structure
a piece of middleware that extends or supplants the native data dictionary of a DBMS
Contents
1 Data dictionary documentation
2 The data dictionary component of a DBMS
3 Data dictionary middleware
4 See also
5 References
6 External links
Data dictionary documentation
Page37
7/31/2019 For College Doc
38/103
38TIME TABLE GENERATION FOR COLLEGE
Database users and application developers can benefit from an authoritative data
dictionary document that catalogs the organization, contents, and conventions of one or more
databases. This typically includes the names and descriptions of various tables and fields in
each database, plus additional details, like the type and length of each data element. There is no
universal standard as to the level of detail in such a document, but it is primarily a distillation
of metadata about database structure, not the data itself. A data dictionary document also may
include further information describing how data elements are encoded. One of the advantages
of well-designed data dictionary documentation is that it helps to establish consistency
throughout a complex database, or across a large collection of federated databases.
The data dictionary component
Every database management system has integral software for accessing the metadata that
describe a database's structure. This collection of metadata and functions, the DBMS data
dictionary, is needed to support symbolic query and data manipulation languages, such as SQL.
In addition to using the DBMS data dictionary implicitly to process database requests, each
DBMS provides explicit interfaces for passive data dictionary access, enabling programmers to
generate data dictionary documentation through automated reports derived from the database.
Modifications to the database structure, which are reflected as changes in the data dictionary,
generally require the actions of a privileged database administrator.
The DBMS data dictionary contains information that the DBMS requires to perform its
functions and support its particular implementation, which varies considerably from one
product to another. The programmable interfaces to data dictionaries of different DBMS
products vary, because many aspects of metadata are implementation-dependent, and standardsfor data dictionary functions are a relatively recent development.
detailed descriptions of tables and fields
indexing information
Page38
7/31/2019 For College Doc
39/103
39TIME TABLE GENERATION FOR COLLEGE
referential integrity constraints
database schema definitions
stored procedures and database triggers
access control information, such as usernames, roles, and privileges
storage allocation parameters
database usage statistics
3.2.2. E-R Diagrams
Page39
7/31/2019 For College Doc
40/103
40TIME TABLE GENERATION FOR COLLEGE
3.3 Process Models
Page40
7/31/2019 For College Doc
41/103
41TIME TABLE GENERATION FOR COLLEGE
3.3.1 Context Analysis
Time TableGeneration System
For A College
AdministratorAuthentication
General Users
Registration
Lecturer Student
3.3.2 Use Case Diagram
UML is a standard language for specifying, visualizing, constructing, and documenting
the artifacts of software systems.
UML was created by Object Management Group (OMG) and UML 1.0 specification draft
was proposed to the OMG in January 1997.
OMG is continuously putting effort to make a truly industry standard.
UML stands for Unified Modeling Language.
UML is different from the other common programming languages like C++, Java,
COBOL etc.
Page41
7/31/2019 For College Doc
42/103
42TIME TABLE GENERATION FOR COLLEGE
UML is a pictorial language used to make software blue prints.
So UML can be described as a general purpose visual modeling language to visualize,
specify, construct and document software system. Although UML is generally used to model
software systems but it is not limited within this boundary. It is also used to model non
software systems as well like process flow in a manufacturing unit etc.
UML is not a programming language but tools can be used to generate code in various
languages using UML diagrams. UML has a direct relation with object oriented analysis and
design. After some standardization UML is become an OMG (Object Management Group)
standard.
Goals of UML:
A picture is worth a thousand words, this absolutely fits while discussing about UML.
Object oriented concepts were introduced much earlier than UML. So at that time there were
no standard methodologies to organize and consolidate the object oriented development. At
that point of time UML came into picture.
There are a number of goals for developing UML but the most important is to define some
general purpose modeling language which all modelers can use and also it needs to be made
simple to understand and use.
UML diagrams are not only made for developers but also for business users, common
people and anybody interested to understand the system. The system can be a software or non
software. So it must be clear that UML is not a development method rather it accompanies with
processes to make a successful system.
At the conclusion the goal of UML can be defined as a simple modeling mechanism to
model all possible practical systems in today.s complex environment.
A conceptual model of UML:
To understand conceptual model of UML first we need to clarify What is a conceptual
model? and Why a conceptual model is at all required?
Page42
7/31/2019 For College Doc
43/103
43TIME TABLE GENERATION FOR COLLEGE
A conceptual model can be defined as a model which is made of concepts and their
relationships.
A conceptual model is the first step before drawing a UML diagram. It helps to
understand the entities in the real world and how they interact with each other.
As UML describes the real time systems it is very important to make a conceptual
model and then proceed gradually. Conceptual model of UML can be mastered by
learning the following three major elements:
UML building blocks
Rules to connect the building blocks
Common mechanisms of UML
It is very important to distinguish between the UML models. Different diagrams are
used for different type of UML modeling. There are three important type of UML
modelings:
UML Symbols
Structural modeling:
Structural modeling captures the static features of a system. They consist of the followings:
Classes diagrams
Objects diagrams
Page43
7/31/2019 For College Doc
44/103
44TIME TABLE GENERATION FOR COLLEGE
Deployment diagrams
Package diagrams
Composite structure diagram
Component diagram
Structural model represents the framework for the system and this framework is the
place where all other components exist. So the class diagram, component diagram and
deployment diagrams are the part of structural modeling. They all represent the
elements and the mechanism to assemble them..
Behavioral Modeling:
Behavioral model describes the interaction in the system. It represents the interaction
among the structural diagrams. Behavioral modeling shows the dynamic nature of the system.
They consist of the following:
Activity diagrams
Interaction diagrams
Use case diagrams
All the above show the dynamic sequence of flow in a syste
UseCaseDiagram:
Page44
7/31/2019 For College Doc
45/103
45TIME TABLE GENERATION FOR COLLEGE
System
Page45
7/31/2019 For College Doc
46/103
46TIME TABLE GENERATION FOR COLLEGE
Staff Use Case Diagram:
System
Page46
7/31/2019 For College Doc
47/103
7/31/2019 For College Doc
48/103
48TIME TABLE GENERATION FOR COLLEGE
System
3.3.3 Data Flow Diagram
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system. DFDs can also be used for the visualization of data processing (structured
design).
On a DFD, data items flow from an external data source or an internal data store to an
internal data store or an external data sink, via an internal process.
A DFD provides no information about the timing of processes, or about whether processes
will operate in sequence or in parallel. It is therefore quite different from a flowchart, which
Page48
7/31/2019 For College Doc
49/103
49TIME TABLE GENERATION FOR COLLEGE
shows the flow of control through an algorithm, allowing a reader to determine what operations
will be performed, in what order, and under what circumstances, but not what kinds of data
will be input to and output from the system, nor where the data will come from and go to, nor
where the data will be stored (all of which are shown on a DFD).
It is common practice to draw a context-level data flow diagram first, which shows the
interaction between the system and external agents which act as data sources and data sinks.
On the context diagram (also known as the 'Level 0 DFD') the system's interactions with the
outside world are modeled purely in terms of data flows across the system boundary. The
context diagram shows the entire system as a single process, and gives no clues as to its
internal organization.
DFD Symbols
This context-level DFD is next "exploded", to produce a Level 1 DFD that shows some of
the detail of the system being modeled. The Level 1 DFD shows how the system is divided into
sub-systems (processes), each of which deals with one or more of the data flows to or from an
external agent, and which together provide all of the functionality of the system as a whole. It
also identifies internal data stores that must be present in order for the system to do its job, and
shows the flow of data between the various parts of the system.Data flow diagrams were
Page49
7/31/2019 For College Doc
50/103
50TIME TABLE GENERATION FOR COLLEGE
proposed by Larry Constantine, the original developer of structured design, based on Martin
and Estrin's "data flow graph" model of computation.
3.4 Functional Models
Login DFD
Open Login
form
Enter UserName andPassword
Check User
Verify Data
TblLodinAccountD
etails
User HomePage
Yes Yes
No
Admin Activities DFD
Page50
7/31/2019 For College Doc
51/103
51TIME TABLE GENERATION FOR COLLEGE
1st Level
1.0.4
AddEvents
Open Form()
1.0.0
Add Course
1.0.2
Enter LoginDetails
1.0.1
Validates
Data
Add Subjects
1.0.3
TblCourseCode
TblSubject
TblEvents
Log out
TblAdminLogin
Page51
7/31/2019 For College Doc
52/103
7/31/2019 For College Doc
53/103
53TIME TABLE GENERATION FOR COLLEGE
Select Like
1.0.2.0
UpdateResult
1.0.2.1
Logout
TblStudentSubjects
TblStaffLike
Students:
1st Level
Open Site()
1.0.0
Enter Login
Detais1.0.1
Verification Validataion
TblLoginAccount
Details
Select Subjects
1.0.2
View Events
1.0.3
View Results
1.0.4
TblSubjects
Log out
TblEvents
TblStudentSu
bject
Page53
7/31/2019 For College Doc
54/103
54TIME TABLE GENERATION FOR COLLEGE
2nd Level
Select Subject
2.0.5.0
Submit Queries
2.0.5.2
View Results
2.0.5.1
Validates
Data
Log out
TblStudentSubject TblStudentQueries
5.4
1 Sequence Diagram
Page54
7/31/2019 For College Doc
55/103
55TIME TABLE GENERATION FOR COLLEGE
LoginSequenceDiagram:
User frmlogin.aspx BAL ClsStudentLogin.cs DAL DataHelper.cs Database
1 : Enter Credentials()
2 : CheckStudent()
3 : CheckUser()
4 : ExecuteReader()
5 : Return Result()
6 : ShowMessage()
Admin Add Notice Sequence Diagram:
Page55
7/31/2019 For College Doc
56/103
56TIME TABLE GENERATION FOR COLLEGE
Admin frmnotice.aspx BAL ClsNotices.cs DAL DataHelper.cs Database
1 : Enter Date and Notifiction()
2 : PostNotice()
3 : ExecuteProcedure()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Show Message()
Page56
7/31/2019 For College Doc
57/103
57TIME TABLE GENERATION FOR COLLEGE
AdminUpdateDeptSequenceDiagram:
Admin frmdepartment.aspx BAL ClsDepartMent.cs DAL DataHelper.cs Database
1 : Enter Details()
2 : UpdateDept()
3 : ExecuteProcedure()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Dispaly Result()
Staff Choose Subjects Sequence Diagram:
Page57
7/31/2019 For College Doc
58/103
58TIME TABLE GENERATION FOR COLLEGE
Staff frmstaffsubject.aspx BAL ClsStaffSubjects.cs DAL DataHelper.cs Database
1 : Select Subjects()
2 : AddLike()
3 : ExecuteProcedure()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Dispaly Result()
Page58
7/31/2019 For College Doc
59/103
59TIME TABLE GENERATION FOR COLLEGE
StaffUpdateProfileSequenceDiagram:
Staff frmstaffprofile.aspx BAL ClsStaffProf ile.cs DAL DataHelper.cs Database
1 : Enter Details()
2 : UpdateProfile()
3 : ExecuteProcedure()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Show Message()
Student View Result Sequence diagram:
Page59
7/31/2019 For College Doc
60/103
60TIME TABLE GENERATION FOR COLLEGE
Student Ask Query Sequence Diagram:
Student frmstudenthelp. aspx BAL ClsHelp.cs DAL DataHelper.cs Database
1 : Enter Details()
2 : AddQuery()
3 : ExecuteProcedure()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Show Message()
3.4.2 Collaboration Diagram:Login Collaboration Diagram:
Student frmstudentresults.aspx BAL ClsGetResults.cs DAL DataHelper.cs Database
1 : View()
2 : GetResult()
3 : GetData()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Show Message()
Page60
7/31/2019 For College Doc
61/103
61TIME TABLE GENERATION FOR COLLEGE
User
frmlogin.aspx
BAL ClsStudentLogin.csDAL DataHelper.cs
Database
1 : Enter Credentials()
2 : CheckStudent()
3 : CheckUser()
4 : ExecuteReader()5 : Return Result()
6 : Show Message()
Admin Add Notice Collaboration Diagram:
Admin
frmnotice.aspx
BAL ClsNotices.csDAL DataHelper.cs
Database
1 : Enter Date and Notifiction()
2 : PostNotice()
3 : ExecuteProcedure()
4 : Execute Stored Procedure() 5 : Return Result()
6 : ShowMessage()
Page61
7/31/2019 For College Doc
62/103
7/31/2019 For College Doc
63/103
63TIME TABLE GENERATION FOR COLLEGE
Staff
frmstaffsubject.aspx
BAL ClsStaffSubjects.csDALDataHelper.cs
Database
1: Select Subjects()
2: AddLike()
3: ExecuteProcedure()
4: Execute StoredProcedure()5: ReturnResult()
6: Dispaly Result()
Page63
7/31/2019 For College Doc
64/103
64TIME TABLE GENERATION FOR COLLEGE
StaffUpdateProfileCollaborationDiagram:
Staff
frmstaffprofile.aspx
BAL ClsStaffProfile.cs
DAL DataHelper.cs
Database
1 : Enter Details()
2 : UpdateProfile()
3 : ExecuteProcedure()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Show Message()
Student Ask Query Collaboration diagram:
Page64
7/31/2019 For College Doc
65/103
65TIME TABLE GENERATION FOR COLLEGE
Student
frmstudenthelp.aspx
BAL ClsHelp.cs
DAL DataHelper.cs
Database
1 : Enter Details()
2 : AddQuery()
3 : ExecuteProcedure()
4 : Execute Stored Procedure()
5 : Return Result()
6 : ShowMessage()
Student View Result Collaboration Diagram:
Page65
7/31/2019 For College Doc
66/103
66TIME TABLE GENERATION FOR COLLEGE
Student
frmstudentresults.aspx
BAL ClsGetResults.cs
DAL DataHelper.cs
Database
1 : View()
2 : GetResult()
3 : GetData()
4 : Execute Stored Procedure()
5 : Return Result()
6 : Show Message()
Page66
7/31/2019 For College Doc
67/103
7/31/2019 For College Doc
68/103
68TIME TABLE GENERATION FOR COLLEGE
SYSTEM IMPLEMENTATION
No. Of Modules
Page68
7/31/2019 For College Doc
69/103
7/31/2019 For College Doc
70/103
70TIME TABLE GENERATION FOR COLLEGE
The main focus in this module is student can online chat with the staff member and can get
instant help from the staff members. Student can view their own result also.
General User:
This are the unauthenticated user of the website. Any one can surf the website and get the
information about the college system how it is working,what kind of subject it will provide
etc.. information is available to general user.
Authentication:
Authentication is nothing but providing security to the system. Here every must enter into
the system through login page. The login page will restrict the UN authorized users. A user
must provide his credential like user Id and password for log into the system. For that the
system maintains data for all users. Whenever a user enters his user id and password, it checks
in the database for user existence. If the user is exists he can be treated as a valid user.
Otherwise the request will throw back.
Registration:
The system has a process of registration. Every user need to submit their complete details
including user name and password in the form of registration. Whenever a user registration
completed then only a user can get log in into the system by using his user id and password.
Page70
7/31/2019 For College Doc
71/103
71TIME TABLE GENERATION FOR COLLEGE
SYSTEM TESTING
Page71
7/31/2019 For College Doc
72/103
72TIME TABLE GENERATION FOR COLLEGE
3 SYSTEM TESTING
Testing:
In any endeavor, testing is always important before the actual implementation. SDLC is
no different, in fact testing in SDLC is so important these days that developers have to work in
testing longer that most stages in SDLC.
Types of Testing:
Testing by developers Developers will have to test the software themselves extensively.
Even though they are also the one who have developed the software, they still have to run it
extensively. These are the usual steps developers follow in testing their software:
1. Checking of Syntax
The software is checked as it is. Developers just run software and look for possible errors.
A very basic checking to know if there are major functions and errors that will occur.
2. Code inspection
After the execution, developers review their codes to look for possible bugs or errors in
coding technique. Even though it has worked in initial checking, the language has to be
checked extensively to predict possible problems in some executions.
3. Desk Checking
In this part of the testing, developers check the code and the software at the same time.
Each line of command is tested if the desired output is met. This is done manually as each
Page72
7/31/2019 For College Doc
73/103
7/31/2019 For College Doc
74/103
74TIME TABLE GENERATION FOR COLLEGE
Developers will try recovering the software or the program in case it crashes.
Security
Like all software, developers have to test the program for possible hacks and virus
infections.
Performance
Use it extensively by getting more than one users to exhaust all possible options
and see if the software will hold up to expectations.
Beta Testing
This type of testing is more open to the public. Developers or software companies can
accept users sometimes by invitation or openly accepting users. Beta testing will no longer be
limited to the data set by developers; instead it will now be tested in a real environment where
there is a bigger possibility of hacks, lack of performance or bugs. The main reason the
software is given to the public for testing is to open it for possible hacks. If something wrong is
found, developers can just go back to the software easily.
Page74
7/31/2019 For College Doc
75/103
7/31/2019 For College Doc
76/103
76TIME TABLE GENERATION FOR COLLEGE
Frmhome:
FrmAboutUs:
Page76
7/31/2019 For College Doc
77/103
77TIME TABLE GENERATION FOR COLLEGE
FrmLogin:
Admin:
Page77
7/31/2019 For College Doc
78/103
78TIME TABLE GENERATION FOR COLLEGE
Frmadminhome:
FrmStaffRegistation:
FrmstaffChoice:
Page78
7/31/2019 For College Doc
79/103
79TIME TABLE GENERATION FOR COLLEGE
FrmProgramme:
Frmstafftimetable
Page79
7/31/2019 For College Doc
80/103
80TIME TABLE GENERATION FOR COLLEGE
Frmstaffcalender:
Page80
7/31/2019 For College Doc
81/103
81TIME TABLE GENERATION FOR COLLEGE
Students:
Frmstudenthome:
Frmstudentsubjects:
Frmstudenttimetable:
Page81
7/31/2019 For College Doc
82/103
7/31/2019 For College Doc
83/103
83TIME TABLE GENERATION FOR COLLEGE
Frmstudentupdate:
Page83
7/31/2019 For College Doc
84/103
84TIME TABLE GENERATION FOR COLLEGE
APPENDIX-A
Page84
7/31/2019 For College Doc
85/103
7/31/2019 For College Doc
86/103
86TIME TABLE GENERATION FOR COLLEGE
TblRoles:
TblStaffDetails:
TblProgramme:
TblNotice:
TblLoginAccountDetails:
TblFinalTimeTable;
Page86
7/31/2019 For College Doc
87/103
87TIME TABLE GENERATION FOR COLLEGE
TblAdminLogin:
Coding
TimetableGenarationSystem_Registration Form Source Code:
.style3
{
font-size: medium;
color: #CC0066;
font-weight:bold;
}
.style4
{ color: #0099CC;
font-weight:bold;
text-align: right;
}
.style5
Page87
7/31/2019 For College Doc
88/103
88TIME TABLE GENERATION FOR COLLEGE
{
color: #0099CC;
text-align: right;
}
.style6
{
color: #0099CC;
text-align: right;
width: 209px;
}
.style7
{
color: #0099CC;
font-weight:bold;
text-align: right;
width: 209px;
}
.style8
{
width: 209px;
}
STUDENT REGISTRATION
Page88
7/31/2019 For College Doc
89/103
89TIME TABLE GENERATION FOR COLLEGE
FIRST NAME
LAST NAME
ADDRESS
Page89
7/31/2019 For College Doc
90/103
90TIME TABLE GENERATION FOR COLLEGE
GENDER
Male
Female
DATE OF BIRTH
Page90
7/31/2019 For College Doc
91/103
91TIME TABLE GENERATION FOR COLLEGE
LOCATION
PHONE
Page91
7/31/2019 For College Doc
92/103
92TIME TABLE GENERATION FOR COLLEGE
MAIL ID
LOGIN DETAILS
USER NAME
Page92
7/31/2019 For College Doc
93/103
7/31/2019 For College Doc
94/103
94TIME TABLE GENERATION FOR COLLEGE
ErrorMessage="Not Match">
SECURITY QUESTION
-Security Question-
First Mail Id?
Father's Name
First Scool
ANSWER
7/31/2019 For College Doc
95/103
95TIME TABLE GENERATION FOR COLLEGE
ControlToValidate="txtanswer"
ErrorMessage="(*)">
TimetableGenarationSystem_Login Form Source Code:
Page95
7/31/2019 For College Doc
96/103
96TIME TABLE GENERATION FOR COLLEGE
PASSWORD TIP'S
1) Create Your Password Strong.
LOGIN
 
;
Welecome To
LOGIN HERE
SELECT ROLE
Choose Role
Page96
7/31/2019 For College Doc
97/103
97TIME TABLE GENERATION FOR COLLEGE
USER NAME
PASSWORD
Page97
7/31/2019 For College Doc
98/103
7/31/2019 For College Doc
99/103
99TIME TABLE GENERATION FOR COLLEGE
using System.Data.SqlClient;
///
/// Summary decription for ClsStudentRegistration
///
publicclassClsStudentRegistration
{
public ClsStudentRegistration()
{
//
// TODO: Add constructor logic here
//
}
publicbool StudentRegistration(string _uname,string _pwd,string _que,string _ans,string
_fname,string _lname,string _address,string _gender,string _location,string _phone,string
_mailid,DateTime _dob)
{
string _sql = "Sp_StudentRegistration";
SqlParameter[] Param = newSqlParameter[12];
Param[0] = newSqlParameter("@uname", SqlDbType.NVarChar);
Param[0].Value = _uname;
Param[1] = newSqlParameter("@pwd", SqlDbType.NVarChar);
Param[1].Value = _pwd;
Param[2] = newSqlParameter("@que", SqlDbType.VarChar, 200);
Param[2].Value = _que;
Param[3] = newSqlParameter("@ans", SqlDbType.NVarChar);
Param[3].Value = _ans;
Param[4] = newSqlParameter("@fname", SqlDbType.VarChar, 200);
Param[4].Value = _fname;
Param[5] = newSqlParameter("@lname", SqlDbType.VarChar, 200);
Param[5].Value = _lname;
Param[6] = newSqlParameter("@address", SqlDbType.NVarChar);
Page99
7/31/2019 For College Doc
100/103
100TIME TABLE GENERATION FOR COLLEGE
Param[6].Value = _address;
Param[7] = newSqlParameter("@gender", SqlDbType.Char, 6);
Param[7].Value = _gender;
Param[8] = newSqlParameter("@location", SqlDbType.VarChar, 200);
Param[8].Value = _location;
Param[9] = newSqlParameter("@phone", SqlDbType.VarChar, 20);
Param[9].Value = _phone;
Param[10] = newSqlParameter("@mailid", SqlDbType.VarChar, 50);
Param[10].Value = _mailid;
Param[11] = newSqlParameter("@dob", SqlDbType.DateTime);
Param[11].Value = _dob;
DataHelper.ExecuteProcedure(_sql, Param);
if(DataHelper.Records > 0)
returntrue;
else
returnfalse;
}
Page100
7/31/2019 For College Doc
101/103
101TIME TABLE GENERATION FOR COLLEGE
BIBLIOGRAPHY
Page101
7/31/2019 For College Doc
102/103
102TIME TABLE GENERATION FOR COLLEGE
BIBLIOGRAPHY
FOR .NET INSTALLATION
www.support.mircosoft.com
FOR DEPLOYMENT AND PACKING ON SERVER
www.developer.com
www.15seconds.com
FOR SQL
www.msdn.microsoft.com
FOR ASP.NET
www.msdn.microsoft.com/net/quickstart/aspplus/default.com
www.asp.net
www.fmexpense.com/quickstart/aspplus/default.com
www.asptoday.com
www.aspfree.com