Professional Documents
Culture Documents
INTRODUCTION
Online student feedback system is the web based feedback collecting system from the
students and provides the automatic generation of a feedback which is given by students. We
have developed
developed student feedback system to provide feedback
feedback in a quick and easy manner to
the particular department. We have developed Student Staff Feedback System to provide
feedback in an easy and quick manner to the college principal and Hod’s. So we call it as
Student Staff Feedback System which delivers via the student staff interface as online system
which acting as a Service rovider. So we called it a student’s feedback system which
delivers via the student staff interface as online system which acting as a service provider. !y
using this technology we can make fast feedback about the staff by students on time to head
of departments as they referred in online system. !y using this technology we can give
feedback in online system as fast as compare to the e"isting paper feedback system. #his
pro$ect has four kinds of users Student% Staff% Hod’s%
Hod’s% and rincipal. #he student can give
feedback in online system provided by college staff. #he e"isting system carries more time to
do a piece of work for this reason the online system feedback is implemented. First of staff
can prepare questions & add% update these questions to the online system. 'fter that it was
viewed by the students and can give feedback about the lecturers.Students will fill online
feedback using a standard form. (n this pro$ect security is also maintain that is the result of
feedback is only visible to authentic user. #his feedback report was checked by the Hod’s. He
can view grades and view the grades obtained to the lecturers and give this report to the
principal and he give counseling to the college staff.
)oming to the e"isting system the feedback is done by manual process. (n the e"isting
system students can give feedback about the lecturers by using paper and pen. #he purpose of
this pro$ect is to make the process of taking feedback from the students in online regarding
the lecturer’s teaching. 's of now this task was done manually with the use of papers and
pens. #his has many drawbacks and evaluating this hand written forms is a difficult process.
!ut the restriction here is once the student submits the report then he cannot modify it later.
With this the student can successfully submit feedback on lecturer’s teaching in a very
efficient manner without any loss of data. #he administrator and the faculty members can
access these feedbacks from the students and take appropriate actions. !y this process.
Student can give feedback in online system without waste his time in writing. 'fter giving
feedback by every student. With this% the institutes can access the feedback reports in a faster
way and without any loss of data.#his age *ay )ontain What is student staff feedback
system on +ava 'nd ,atest (nformation-ews 'bout student staff feedback system on +ava%(f
ot /se Search.apers are collected by the Hod’sHod’s and calculate the overall grade for each
sub$ect and each lecturer. Student needs to logging into the website of online feedback system
and giving his-her feedback and can perform modifications too. Online Student Feedback
System
System ro$ect
ro$ect #opics%
opics% One student
student is allowe
allowedd to give
give only
only one feedback
feedback in one turn0
however
however they are allowed
allowed to change
change it at any time 'fter
'fter that those all grade report is viewed
by the principal which is given by the Hod’s. for both staff and
a nd students in an institution. For
Staff to provide student feedback collection form pro$ect in core me student feedback system
Hence estimating the performance of lecturers and giving counseling to college staff.
#he Online
Online Studen
Studentt Feedba
Feedback
ck System
System is a manage
managemenmentt inform
informatio
ation
n system
system for
educati
educationon establi
establishm
shment
entss to manage
manage studen
studentt data.
data. Studen
Studentt Feedbac
Feedback k System
Systemss provid
providee
capabilities for selecting particular sub$ect for feedback and generate the report automatically%
build student details% student1related data needs in a college. /sing the latest *icrosoft
technology%
technology% the .et framework and 'S.et%
'S.et% our system is a complete feedback management
and staff interaction system with built1in features proofing that easily supports (ntegration
with the latest student staff feedback system providers. ' Online Student Feedback System is
an automatic feedback generation system that provides the proper feedback to the teachers as
per the categories like always% poor% usually%
usually% very often% sometimes. 2ownload Student Staff
Feedback System ro$ect 3eport .#he provision may as well have a database of survey which
can be given to the understudies following a secured. (n the e"isting system students can give
feedback about the lecturers by doing manually. !y this process student can give feedback in
online system without wasting his time in writing. #his system is designed to be simple to
use% simple to understand and easy to implement and configure to fit. 'fter giving feedback
by every student
s tudent papers are collected by the faculty and calculated
c alculated the overall grade for each
sub$ect and each lecturer. 'fter that those all grade report is viewed by the HO2 which is
given by the faculty. (t is provided as an 'pplication Service rovision thus offering low
setup
setup costs.st
costs.stude
udent
nt staff
staff feedba
feedback
ck system
system.do
.docc 4Si5e6
4Si5e6 7.8 *! - 2ownlo
2ownloads6
ads6 9:9;.
9:9;. Hence
Hence
estimating the performance of lecturers and giving feedback to college staff. So% the e"isting
system carries more time to do a piece of work for this reason the online system feedbackfeedback is
implemented
implemented.. (#3O2/)#
(#3O2/)#(O (O We have developed
developed Student
Student Staff
Staff Feedback
Feedback System
System to
provide feedback in an easy way. way. #his is the main disadvantage of the e"isting system for
giving
giving feedbac
feedback k about
about the lecture
lecturers
rs and viewin
viewing g report
report of lectur
lecturers
ers manual
manuallyly.. Studen
Studentt
feedback on courses is an essential element in quality assurance. Here we aimed to design
online web application for issuing the feedback about the lecturers by students% this is named
as student staff feedback system. <uestionnaires are of primary importance in the dialogue
with students% since they are the best tool we currently have for collecting ob$ective% detailed
and reasonably systematic information on a wide range of questions% which (nforms the
teacher about student’s perceptions of the course=s strengths and weaknesses. Student Staff
feed !ack System to provide feedback in a easy and quick manner to the college principal
and Hod’s. 3esponses are collated on behalf of departments by the system% and will be used
only for the purposes of quality enhancement. )lassle1Online Social ,earning latform for
the students to collaborate% ro$ect #itle . ro$ect >mbedded System 6 )reate a ro$ect6 #he
aim of this is to save time for staff in academic departments and to allow a minimum level of
statistical analysis of the data across the )ollege. So we call it as Student Staff Feedback
System which delivers via the student staff interface as online system which acting as a
Service rovider !y using this technology we can make fast feedback about the staff by
students on time to head of departments as they referred in online system. #his recogni5es
that whilst the information remains the property of the )ollege.
Students should be told how the feedback will be s ubmitted% when and how the results
will
will be publis
published
hed%% and that
that their
their contri
contribut
bution
ion is import
important
ant and taken
taken serious
seriously
ly.. units
units to
implem
implement
ent module
module feedbac
feedbackk system
system and studen
studentt ,earni
,earning%
ng% Studen
Student1S
t1Staf
tafff ro$ec
ro$ectt is co1
ordinated by a Student Feedback on *odules. #he Head of 2epartment should discuss a
dispassionate summary of the feedback on each course with the lecturers concerned0 #hese
feedback reports were checked by the Hod’s. He can view overall grades and view the grades
obtained to the lecturers and give this report to the principal and he can give counseling to the
college
college staff.
staff. 'n analysis of questionnai
questionnaire
re returns
returns which concern the department as a wholewhole
should be published within the department% and referred to as appropriate in the 'nnual
3eview report. ro$ect *anagement Suite. H3 (nformation System0 >mployee Self Service0
Feedback *anagement System% Student Feedback% 's compared to the manual system% online
system is very simple to use and also understand.
OBJECTIVES
@; #o
#o increase efficiency proposed system is depend on classification method.
(n this pro$ect we implemented the system which works on the concept of online
feedback from students which is the replacement of e"isting paper feedback system which is
so compli
complicate
catedd method
method for findin
finding
g an averag
averagee for partic
particula
ularr sub$ect
sub$ect feedbac
feedback k which
which is
submit
submitted
ted by studen
students.
ts. #his pro$ec
pro$ectt has four
four kinds
kinds of users
users Studen
Student%
t% Staff
Staff%% Hod’
Hod’s% and
rincipal. (n this system we have design main three forms student login form% admin login
form% faculty login form. Student will login in their login form with proper id and password
which is provided by admin at the time of registration. #he student can give feedback in
online
online system provided
provided by college staff. First of staff can prepare
prepare questions
questions and add% update
update
these questions to the online system. 'fter that if student want any changes in his profile then
there is an option for edit such particular information of his own. ro$ects Skip to content
Skip to content0 Online Student Feedback System. Student Feedback. 8. 3eports. 'fter that
the sub$ect contains page is displayed% where the sub$ect is located in it and as per the
selection from student students continued to their feedback after this page the feedback page
is displayed. #his system can be developed using 'fter that it was viewed by the students and
can give feedbac
feedbackk about
about the lecturers.
lecturers. #his page contain
containss a form
form which
which includ
includes
es such
such
questions about the teachers where it contains some simple question regarding particular
sub$ect faculty. 'fter giving the feedback the page appeared which contains a message like
you are feedback is submitted. #hen after feedback is submitted there is a log out button after
click on it student will successfully log out from their profile. (n main page it contains some
hyperlinks like contact us% frequently ask questions% and submit the queries. 'nd contains
three particular modules like student login% admin login% staff login etc. 'dmin will fill the
information of students as well as view their feedback% add and delete student and generate
the average report of that feedback. 'fter that log out button occurs and admin simply logout
from the system. Student will login by using user id and password and after the login page
will be open contains sub$ects% suggestion bo"% submit suggestions% submit fe edback and after
their occurs a log out button for logout successfully from the system.
Student 6
Student can give the feedback about the lecturers on the scale of five. Students can
give feed back about the lecturer based on interaction of lecturer in the class room with
students. Here we shared complete list of student pro$ects that we shared in this page.
Screenshot of >mployee and ayroll System0 ro$ect S3S. (>>> Standard S3S. 'ccording to
that% students can give feedback as per the given grades.
Staff6
#he feedback given by the students can be viewed by the staff and improve their
performance in teaching and other aspects
Head Of 2epartments 6
#hese feedback reports were checked by the Hod’s. He can view overall grades and
view the grades obtained to the lecturers and give this report to the principal and he can give
counseling to the college staff
rincipal 6
Finally% report was referred by the principal and give suggestions to lecturers to
improv
improvee their
their teachin
teaching.
g. #hese are the four modules
modules present
present in the pro$ect
pro$ect so we have
have
developed these things in very easy and clearly understandable way. So% by seen above
description the proposed system having many advantages as compared to the e"isting system.
Highlights6
MODULE DESCRIPTION
?; Student module
7; Staff module
8; Head of the departments module
@; rincipal module
DESCRIPTION:
S#/2># *O2/,>6
?; 'dd questions
7; /pdate questions
8; Diew questions
@; Civing feedback about the lecturers
'dd questions6
(n this module the student or staff or Hod’s can add questions if he is interested to
add another question to database to rate the lecturers.
(n this student can give feedback about the lecturer according to questions given in the
database
S#'FF *O2/,>6
?; 'dd questions
7; /pdate questions
8; Diew questions
@; Diew report
'dd questions6
/pdate questions6
Diew questions6
(n this module students can view all questions in the database to give feedback
about the lecturers
Diew report6
'fter giving feedback by the students0 lecturers% Hod’s% principal can view
report
SOFTWARE DESCRIPTION
Microso!"NET Fr#$%&or'
#he .># Framework is a new computing platform that simplifies application development
in the highly distributed environment of the (nternet. #he .># Framework is designed to
fulfill the following ob$ectives6
#o make the developer e"perience consistent across widely varying types of
applications% such as Windows1based applications and Web1based applications.
#o build all communication on industry standards to ensure that code based on the
.># Framework can integrate with any other code.
#he .># Framework has two main components6 the common language runtime and the
.># Framework class library. #he common language runtime is the foundation of the .>#
Framework. Aou can think of the runtime as an agent that manages code at e"ecution time%
providing core services such as memory management% thread management% and remoting%
while also enforcing strict type safety and other forms of code accuracy that ensure security
and robustness. (n fact% the concept of code management is a fundamental principle of the
runtime. )ode that targets the runtime is known as managed code% while code that does not
target the runtime is known as unmanaged code. #he class library% the other main component
of the .># Framework% is a comprehensive% ob$ect1oriented collection of reusable types that
you can use to develop applications ranging from traditional command1line or graphical user
interface 4C/(; applications to applications based on the latest innovations provided by
'S.>#% such as Web Forms and E*, Web services.
#he .># Framework can be hosted by unmanaged components that load the common
language runtime into their processes and initiate the e"ecution of managed code% thereby
creating a software environment that can e"ploit both managed and unmanaged features.
#he .># Framework not only provides several runtime hosts% but also supports the
development of third1party runtime hosts.
For e"ample% 'S.># hosts the runtime to provide a scalable% server1side environment for
managed code. 'S.># works directly with the runtime to enable Web Forms applications
and E*, Web services% both of which are discussed later in this topic.(nternet >"plorer is an
e"ample of an unmanaged application that hosts the runtime 4in the form of a *(*> type
e"tension;. /sing (nternet >"plorer to host the runtime enables you to embed managed
components or Windows Forms controls in H#*, documents. Hosting the runtime in this
way makes managed mobile code 4similar to *icrosoft 'ctiveE controls; possible% but
with significant improvements that only managed code can offer% such as semi1trusted
e"ecution and secure isolated file storage.
#he following illustration shows the relationship of the common language runtime and the
class library to your applications and to the overall system. #he illustration also shows how
managed code operates within a larger architecture.
#he common language runtime manages memory% thread e"ecution% code e"ecution% code
safety verification% compilation% and other system services. #hese features are intrinsic to the
managed code that runs on the common language runtime.
With regards to security% managed components are awarded varying degrees of trust%
depending on a number of factors that include their origin 4such as the (nternet% enterprise
network% or local computer;. #his means that a managed component might or might not be
able to perform file1access operations% registry1access operations% or other sensitive functions%
even if it is being used in the same active application.
#he runtime enforces code access security. For e"ample% users can trust that an e"ecutable
embedded in a Web page can play an animation on screen or sing a song% but cannot access
their personal data% file system% or network. #he security features of the runtime thus enable
legitimate (nternet1deployed software to be e"ceptionally feature rich.
#he runtime also enforces code robustness by implementing a strict type1 and code1
verification infrastructure called the common type system 4)#S;. #he )#S ensures that all
managed code is self1describing. #he various *icrosoft and third1party language compilers
Cenerate managed code that conforms to the )#S. #his means that managed code can
consume other managed types and instances% while strictly enforcing type fidelity and type
safety.
(n addition% the managed environment of the runtime eliminates many common software
issues. For e"ample% the runtime automatically handles ob$ect layout and manages references
to ob$ects% releasing them when they are no longer being used. #his automatic memory
management resolves the two most common application errors% memory leaks and invalid
memory references.
#he runtime also accelerates developer productivity. For e"ample% programmers can write
applications in their development language of choice% yet take full advantage of the runtime%
the class library% and components written in other languages by other developers. 'ny
compiler vendor who chooses to target the runtime can do so. ,anguage compilers that target
the .># Framework make the features of the .># Framework available to e"isting code
written in that language% greatly easing the migration process for e"isting applications.
While the runtime is designed for the software of the future% it also supports software of today
and yesterday. (nteroperability between managed and unmanaged code enables developers to
continue to use necessary )O* components and 2,,s.
#he runtime is designed to enhance performance. 'lthough the common language runtime
provides many standard runtime services% managed c ode is never interpreted. ' feature called
$ust1in1time 4+(#; compiling enables all managed code to run in the native machine language
of the system on which it is e"ecuting. *eanwhile% the memory manager removes the
possibilities of fragmented memory and increases memory locality1of1reference to further
increase performance.
#he .># Framework class library is a collection of reusable types that tightly integrate with
the common language runtime. #he class library is ob$ect oriented% providing types from
which your own managed code can derive functionality. #his not only makes the .>#
Framework types easy to use% but also reduces the time associated with learning newfeatures
of the .># Framework. (n addition% third1party components can integrate seamlessly with
classes in the .># Framework.
For e"ample% the .># Framework collection classes implement a set of interfaces that you
can use to develop your own collection classes. Aour collection classes will blend seamlessly
with the classes in the .># Framework.
's you would e"pect from an ob$ect1oriented class library% the .># Framework types enable
you to accomplish a range of common programming tasks% including tasks such as string
management% data collection% database connectivity% and file access. (n addition to these
common tasks% the class library includes types that support a variety of speciali5ed
development scenarios. For e"ample% you can use the .># Framework to develop the
following types of applications and services6
)onsole applications.
Scripted or hosted applications.
'S.># applications.
Windows services.
For e"ample% the Windows Forms classes are a comprehensive set of reusable types that
vastly simplify Windows C/( development. (f you write an 'S.># Web Form application%
you can use the Web Forms classes.
'nother kind of client application is the traditional 'ctiveE control 4now replaced by the
managed Windows Forms control; deployed over the (nternet as a Web page. #his application
is much like other client applications6 it is e"ecuted natively% has access to local resources%
and includes graphical elements.
(n the past% developers created such applications using )-) in con$unction with the
*icrosoft Foundation )lasses 4*F); or with a rapid application development 43'2;
environment such as *icrosoft Disual !asic. #he .># Framework incorporates aspects
of these e"isting products into a single% consistent development environment that drastically
simplifies the development of client applications.
#he Windows Forms classes contained in the .># Framework are designed to be used for
C/( development. Aou can easily create command windows% buttons% menus% toolbars% and
other screen elements with the fle"ibility necessary to accommodate shifting business needs.
For e"ample% the .># Framework provides simple properties to ad$ust visual attributes
associated with forms. (n some cases the underlying operating system does not support
changing these attributes directly% and in these cases the .># Framework automatically
recreates the forms. #his is one of many ways in which the .># Framework integrates the
developer interface% making coding simpler and more consistent.
/nlike 'ctiveE controls% Windows Forms controls have semi1trusted access to a user=s
computer. #his means that binary or natively e"ecuting code can access some of the resources
on the user=s system 4such as C/( elements and limited file access; without being able to
access or compromise other resources. !ecause of code access security% many applications
that once needed to be installed on a user=s system can now be safely deployed through the
Web. Aour applications can implement the features of a local application while being
deployed like a Web page.
#he .># Framework is a managed type1safe environment for application development and
e"ecution. #he .># Framework manages all aspects of your program’s e"ecution. (t
allocates memory for the storage of data and instructions% grants or denies the appropriate
permissions to your application% initiates and manages application e"ecution% and manages
the reallocation of memory from resources that are no longer needed. #he .># Framework
consists of two main components6 the common language runtime and the .># Framework
class library.
#he common language runtime can be thought of as the environment that manages code
e"ecution. (t provides core services% such as code compilation% memory allocation% thread
management% and garbage collection. #hrough the common type system 4)#S;% it enforces
strict type1safety and ensures that code is e"ecuted in a safe environment by also enforcing
code access security.
#he .># Framework class library provides a collection of useful and reusable types that are
designed to integrate with the common language runtime. #he types provided by the .>#
Framework are ob$ect1oriented and fully e"tensible% and they allow you to seamlessly
integrate your applications with the .># Framework.
#he .># Framework is designed for cross1language compatibility% which means% simply%
that .># components can interact with each other no matter what supported language they
were written in originally. So% an application written in *icrosoft Disual !asic .># might
reference a dynamic1link library 42,,; file written in *icrosoft Disual )I% which in turn
might access a resource written in managed *icrosoft Disual ) or any other .>#
language. #his language interoperability e"tends to full ob$ect1oriented inheritance. ' Disual
!asic .># class might be derived from a )I class% for e"ample% or vice versa.
#he )#S ensures type compatibility between .># components. !ecause .># applications
are converted to (, prior to deployment and e"ecution% all primitive data types are
represented as .># types. #hus% a Disual !asic (nteger and a )I int are both represented in
(, code as a System.(nt87. !ecause both languages use a common type system% it is possible
to transfer data between components and avoid time1consuming conversions or hard1to1find
errors.
Disual Studio .># ships with languages such as Disual !asic .>#% Disual )I% and Disual
) with managed e"tensions% as well as the +Script scripting language. Aou can also write
managed code for the .># Framework in other languages. #hird1party tools and compilers
e"ist for Fortran% )obol% erl% and a host of other languages. 'll of these languages share the
same cross1language compatibility and inheritability. #hus% you can write code for the .>#
Framework in the language of your choice% and it will be able to interact with code written for
the .># Framework in any other language.
#o understand how the common language runtime manages code e"ecution% you must
e"amine the structure of a .># application. #he primary unit of a .># application is the
assembly. 'n assembly is a self1describing collection of code% resources% and metadata. #he
assembly manifest contains information about what is contained within the assembly. #he
assembly manifest provides6
' list of code access security instructions% including permissions required by the
assembly and permissions to be denied the assembly
>ach assembly has one and only one assembly manifest% and it contains all the description
information for the assembly. However% the assembly manifest can be contained in its own
file or within one of the assembly’s modules.
'n assembly contains one or more modules. ' module contains the code that makes up your
application or library% and it contains metadata that describes that code. When you compile a
pro$ect into an assembly% your code is converted from high1level code to (,. !ecause all
managed code is first converted to (, code% applications written in different languages can
easily interact. For e"ample% one developer might write an application in Disual )I that
accesses a 2,, in Disual !asic .>#. !oth resources will be converted to (, modules before
being e"ecuted% thus avoiding any language1incompatibility issues.
>ach module also contains a number of types. #ypes are templates that describe a set of data
encapsulation and functionality. #here are two kinds of types6 reference types 4classes; and
value types 4structures;. #hese types are discussed in greater detail in ,esson 7 of this
chapter. >ach type is described to the common language runtime in the assembly manifest. '
type can contain fields% properties% and methods% each of which should be related to a
common functionality. For e"ample% you might have a class that represents a bank account. (t
contains fields% properties% and methods related to the functions needed to implement a bank
account. ' field represents storage of a particular type of data. One field might store the name
of an account holder% for e"ample. roperties are similar to fields% but properties usually
provide some kind of validationwhen data is set or retrieved. Aou might have a property that
represents an account balance. When an attempt is made to change the value% the property can
check to see if the attempted change is greater than a predetermined limit. (f the value is
greater than the limit% the property does not allow the change. *ethods represent behavior%
such as actions taken on data stored within the class or changes to the user interface.
)ontinuing with the bank account e"ample% you might have a #ransfer method that transfers a
balance from a checking account to a savings account% or an 'lert method that warns users
when their balances fall below a predetermined level.
CLR E3%c(!io* Mo2%,
When you compile a .># application% it is not compiled to binary machine code0 rather% it is
converted to (,. #his is the form that your deployed application takesJone or more
assemblies consisting of e"ecutable files and 2,, files in (, form. 't least one of these
assemblies will contain an e"ecutable file that has been designated as the entry point for the
application.
When e"ecution of your program begins% the first assembly is loaded into memory. 't this
point% the common language runtime e"amines the assembly manifest and determines the
requirements to run the program. (t e"amines security permissions requested by the assembly
and compares them with the system’s security policy. (f the system’s security policy does not
allow the requested permissions% the application will not run. (f the application passes the
system’s security policy% the common language runtime e"ecutes the code. (t creates a
process for the application to run in and begins application e"ecution. When e"ecution starts%
the first bit of code that needs to be e"ecuted is loaded into memory and compiled into native
binary code from (, by the common language runtime’s +ust1(n1#ime 4+(#; compiler. Once
compiled% the code is e"ecuted and stored in memory as native code. #hus% each portion of
code is compiled only once when an application e"ecutes. Whenever program e"ecution
branches to code that has not yet run% the +(# compiler compiles it ahead of e"ecution and
stores it in memory as binary code. #his way% application performance is ma"imi5ed because
only the parts of a program that are e"ecuted are compiled.
#he .># base class library is a collection of ob$ect1oriented types and interfaces that
provide ob$ect models and services for many of the comple" programming tasks you
will face. *ost of the types presented by the .># base class library are fully
e"tensible% allowing you to build types that incorporate your own functionality into
your managed code.
#he .># Framework base class library contains the base classes that provide many of the
services and ob$ects you need when writing your applications. #he class library is organi5ed
into namespaces. ' namespace is a logical grouping of types that perform related functions.
For e"ample% the System.Windows.Forms namespace contains all the types that make up
Windows forms and the controls used in those forms.
amespaces are logical groupings of related classes. #he namespaces in the .># base class
library are organi5ed hierarchically. #he root of the .># Framework is the System
namespace. Other namespaces can be accessed with the period operator. ' typical namespace
construction appears as follows6
System
System.2ata
System.2ata.S<,)lient
#he first e"ample refers to the System namespace. #he second refers to the System.2ata
namespace. #he third e"ample refers to the System.2ata.S<,)lient namespace. #able ?.?
introduces some of the more commonly used .># base class namespaces.
Table 1-1.3epresentative .># amespaces
amespace 2escription
#his namespace is the root for many of the low1level types required
by the .># Framework. (t is the root for primitive data types as
System
well% and it is the root for all the other namespaces in the .>#
base class library.
System.(O (n this namespace% you will find types for handling file system (-O.
amespace 2escription
#he namespace names are self1descriptive by design. Straightforward names make the .>#
Framework easy to use and allow you to rapidly familiari5e yourself with its contents.
#ypes in the .># Framework come in two varieties6 value types and reference types. #he
primary difference between value types and reference types has to do with the way variable
data is accessed. #o understand this difference% a little background on memory dynamics is
required.
'pplication data memory is divided into two primary components% the stack and the heap.
#he stack is an area of memory reserved by the application to run the program. #he stack is
analogous to a stack of dinner plates. lates are placed on the stack one on top of another.
When a plate is removed from the stack% it is always the last one to have been placed on top
that is removed first. So it is with program variables. When a function is called% all the
variables used by the function are pushed onto the stack. (f that function calls additional
functions% it pushes additional variables onto the stack. When the most recently called
function terminates% all of its variables go out of scope 4meaning that they are no longer
available to the application; and are popped off the stack. *emory consumed by those
variables is then freed up% and program e"ecution continues.
#he heap% on the other hand% is a separate area of memory reserved for the creation of
reusable ob$ects. #he common language runtime manages allocation of heap memory for
ob$ects and controls the reclamation of memory from unused ob$ects through garbage
collection.
'll the data associated with a value type is allocated on the stack. When a variable of a value
type goes out of scope% it is destroyed and its memory is reclaimed. ' variable of a reference
type% on the other hand% e"ists in two memory locations. #he actual ob$ect data is allocated on
the heap. ' variable containing a pointer to that ob$ect is allocated on the stack. When that
variable is called by a function% it returns the memory address for the ob$ect to which it refers.
When that variable goes out of scope% the ob$ect reference is destroyed but the ob$ect itself is
not. (f any other references to that ob$ect e"ist% the ob$ect remains intact. (f the ob$ect is left
without any references% it is sub$ect to garbage collection. 4See ,esson K of this chapter.;
>"amples of value types include primitives% such as (nteger 4int;% !oolean 4bool;% )har
4char;% and so on% as well as user1defined types such as Structure 4struct; and >numeration
4enum;. )lasses represent the ma$ority of reference types. Other reference types include the
interface% delegate% and array types. )lasses and structures are discussed in ,esson 8 of this
chapter% and other reference and value types are discussed in )hapter 8.
When you begin writing an application% you automatically begin with a reference to the .>#
Framework base class library. Aou reference it so that your application is aware of the base
class library and is able to create instances of the types represented by it.
Dalue #ypes
int my(nteger0
#his line tells the runtime to allocate the appropriate amount of memory to hold an integer
variable. 'lthough this line creates the variable% it does not assign a value to it. Aou can
assign a value using the assignment operator% as follows6
my(nteger L @70
Aou can also choose to assign a value to a variable upon creation% as shown in this e"ample6
3eference #ypes
)reating an instance of a type is a two1step process. #he first step is to declare the variable as
that type% which allocates the appropriate amount of memory for that variable but does not
actually create the ob$ect. #he following synta" declares an ob$ect6
System.Windows.Forms.Form myForm0
#his line tells the runtime to set aside enough memory to hold a Form variable and assigns it
the name myForm% but it does not actually create the Form ob$ect in memory. #he second
step% called instantiation% actually creates the ob$ect. 'n e"ample of instantiation follows6
#his line makes a call to the constructor method of the type System.Windows.Forms.Form by
way of the ew 4new; keyword. #he constructor is a special method that is invoked only at
the beginning of an ob$ect’s lifetime. (t contains any code that must be e"ecuted for the ob$ect
to work 4assigning values to properties% for e"ample;. (f any parameters were required by the
constructor% they would be contained within the parentheses at the end of the line. #he
following e"ample shows declaration and instantiation of a hypothetical Widget class that
requires a string as a parameter in the constructor.
Widget myWidget0
myWidget L new Widget4M#his string is required by the constructorM;0
(f desired% you can also combine both declaration and instantiation into a single statement. !y
declaring and instantiating an ob$ect in the same line% you reserve the memory for the ob$ect
and immediately create the ob$ect that resides in that memory. 'lthough there was a
significant performance penalty for this shortcut in previous versions of Disual !asic% Disual
!asic .># and Disual )I are optimi5ed to allow this behavior without any performance loss.
#he following e"ample shows the one1step declaration and instantiation of a new Form6
System.Windows.Forms.Form myForm L new
System.Windows.Forms.Form4;0
!oth value types and reference types must be initiali5ed before use. For class and structure
fields in Disual !asic .>#% types are initiali5ed with default values on declaration. umeric
value types 4such as integer; and floating1point types are assigned 5ero0 !oolean variables are
assigned False0 and reference types are assigned to a null reference.
(n )I% variables of a reference type have a default value of null. (t is recommended that you
do not rely on the default value. #hese variables should not be used until they have been
initiali5ed.
' variable that represents a value type contains all the data represented by that type. '
variable that represents a reference type contains a reference to a particular ob$ect. #his
distinction is important. )onsider the following e"ample6
int "% y0
" L ?:0
y L "0
" L 8N0
-- What is the value of y
(n this e"ample% two integer variables named " and y are created. E is assigned a value of ?:%
and then y is assigned the value of ". e"t the value of " is changed to 8N% and the question is
posed6 what is the value of y #he answer to this question might seem obvious% and it is y L
?: because " and y are two separate variables and have no effect on each other when
changed. When the line y L " is encountered% the value of " is copied to the value of y% and
there is no further connection between the two variables.
#his situation changes% however% in the case of reference types. ,et’s reconsider the previous
e"ample using a reference type 4Form; instead of a value type.
System.Windows.Forms.Form "%y0
" L new System.Windows.Forms.Form4;0
".#e"t L M#his is Form ?M0
y L "0
".#e"t L M#his is Form 7M0
-- What value does y.#e"t return
What value does y.#e"t return #his time% the answer is less obvious. !ecause
System.Windows.Forms.Form is a reference type% the variable " does not actually contain a
Form0 rather% it points to an instance of a Form. When the line y L " is encountered% the
runtime copies the reference from variable " to y. #hus% the variables " and y now point to the
same instance of Form. !ecause these two variables refer to the same instance of the ob$ect%
they will return the same values for properties of that ob$ect. #hus% y.#e"t returns P#his is
Form 7Q.
/p to this point of the chapter% if you wanted to access a type in the .># Framework base
class library% you had to use the full name of the type% including every namespace to which it
belonged. For e"ample6
System.Windows.Forms.Form
#his is called the fully1qualified name% meaning it refers both to the class and to the
namespace in which it can be found. Aou can make your development environment PawareQ
of various namespaces by using the (mports 4Disual !asic .>#; or using 4Disual )I;
statement. #his technique allows you to refer to a type using only its generic name and to
omit the qualifying namespaces. #hus% you could refer to System.Windows.Forms.Form as
simply Form. (n Disual !asic .>#% the (mports statement must be placed at the top of the
code window% preceding any other statement 4e"cept Option;. (n Disual )I% the using
statement must occur before any other namespace element% such as a class or struct. #his
e"ample demonstrates use of this statement6
using System.Windows.Forms0
When two types of the same name e"ist in more than one imported namespace% you must use
the fully qualified name to avoid a naming conflict. #hus% if you are using
*yameSpaceOne and *yameSpace#wo% and each contains a Widget class% you would
have to refer to *yameSpaceOne.Widget or *yameSpace#wo.Widget to ensure the
correct result.
(n )I% you can resolve namespace conflicts such as these by creating an alias. 'n alias allows
you to choose one name to refer to another class. Aou create an alias using the using keyword%
as shown below6
'fter implementing an alias% you can use it in code to represent the aliased class. For
e"ample6
Aou cannot create aliases for types in this manner in Disual !asic .>#.
Aou might want to use class libraries not contained by the .># Framework% such as libraries
developed by third1party vendors or libraries you developed. #o access these e"ternal
libraries% you must create a reference.
8. )hoose the appropriate tab for the library you want to reference. .># libraries are
available on the .># tab. ,egacy )O* libraries appear on the )O* tab% and local
Disual Studio pro$ects appear on the ro$ects tab.
@. ,ocate the library you want to reference% and double1click it to add it to the Selected
components bo". )lick OB to confirm the choice of that reference.
I*!ro2(c!io* !o O-4%c!5Ori%*!%2 Pro+r#$$i*+
rogramming in the .># Framework environment is done with ob$ects. Ob$ects are
programmatic constructs that represent packages of related data and functionality. Ob$ects are
self1contained and e"pose specific functionality to the rest of the application environment
without detailing the inner workings of the ob$ect itself. Ob$ects are created from a template
called a class. #he .># base class library provides a set of classes from which you can
create ob$ects in your applications. Aou also can use the *icrosoftDisual Studio programming
environment to create your own classes. #his lesson introduces you to the concepts associated
with ob$ect1oriented programming.
'n ob$ect is a programmatic construct that represents something. (n the real world% ob$ects
are cars% bicycles% laptop computers% and so on. >ach of these items e"poses specific
functionality and has specific properties. (n your application% an ob$ect might be a form% a
control such as a button% a database connection% or any of a number of other constructs. >ach
ob$ect is a complete functional unit% and contains all of the data and e"poses all of the
functionality required to fulfill its purpose. #he ability of programmatic ob$ects to represent
real1world ob$ects is called abstraction.
)lasses can be thought of as blueprints for ob$ects6 they define all of the members of an
ob$ect% define the behavior of an ob$ect% and set initial values for data when appropriate.
When a class is instantiated% an in1memory instance of that class is created. #his instance is
called an ob$ect. #o review% a class is instantiated using the ew 4new; keyword as follows6
When an instance of a class is created% a copy of the instance data defined by that class is
created in memory and assigned to the reference variable. (ndividual instances of a class are
independent of one another and represent separate programmatic constructs. #here is
generally no limit to how many copies of a single class can be instantiated at any time. #o use
a real1world analogy% if a car is an ob$ect% the plans for the car are the class. #he plans can be
used to make any number of cars% and changes to a single car do not% for the most part% affect
any other cars.
Ob$ects are composed of members. *embers are properties% fields% methods% and events% and
they represent the data and functionality that comprise the ob$ect. Fields and properties
represent data members of an ob$ect. *ethods are actions the ob$ect can perform% and events
are notifications an ob$ect receives from or sends to other ob$ects when activity happens in
the application.
#o continue with the real1world e"ample of a car% consider that a )ar ob$ect has fields and
properties% such as )olor% *ake% *odel% 'ge% Cas,evel% and so on. #hese are the data that
describe the state of the ob$ect. ' )ar ob$ect might also e"pose several methods% such as
'ccelerate% ShiftCears% or #urn. #he methods represent behaviors the ob$ect can e"ecute. 'nd
events represent notifications. For e"ample% a )ar ob$ect might receive an >ngineOverheating
event from its >ngine ob$ect% or it might raise a )rash event when interacting with a #ree
ob$ect.
Ob$ect *odels
Simple ob$ects might consist of only a few properties% methods% and perhaps an event or two.
*ore comple" ob$ects might require numerous properties and methods and possibly even
subordinate ob$ects. Ob$ects can contain and e"pose other ob$ects as members. For e"ample%
the #e"t!o" control e"poses a Font property% which consists of a Font ob$ect. Similarly% every
instance of the Formclass contains and e"poses a )ontrols collection that comprises all of the
controls contained by the form. #he ob$ect model defines the hierarchy of contained ob$ects
that form the structure of an ob$ect.
'n ob$ect model is a hierarchical organi5ation of subordinate ob$ects contained and e"posed
within a main ob$ect. #o illustrate% let’s revisit the e"ample of a car as an ob$ect. ' car is a
single ob$ect% but it also consists of subordinate ob$ects. ' )ar ob$ect might contain an >ngine
ob$ect% four Wheel ob$ects% a #ransmission ob$ect% and so on. #he composition of these
subordinate ob$ects directly affects how the )ar ob$ect functions as a whole. For e"ample% if
the )ylinders property of the >ngine subordinate ob$ect is equal to @% the )ar will behave
differently than a )ar whose >ngine has a )ylinders property value of 9. )ontained ob$ects
can have subordinate ob$ects of their own. For e"ample% the contained >ngine ob$ect might
contain several Sparklug ob$ects.
>ncapsulation
Ob$ects should only interact with other ob$ects through their public methods and properties.
#hus% ob$ects should contain all of the data they require% as well as all of the functionality that
works with that data. #he internal data of an ob$ect should never be e"posed in the interface0
thus% fields rarely should be ublic 4public;.
3eturning to the )ar e"ample. (f a )ar ob$ect interacts with a 2river ob$ect% the )ar interface
might consist of a CoForward method% a Co!ackward method% and a Stop method. #his is all
the information that the 2river needs to interact with the )ar. #he )ar might contain an
>ngine ob$ect% for e"ample% but the 2river doesn’t need to know about the >ngine ob$ectJall
the2river cares about is that the methods can be called and that they return the appropriate
values. #hus% if one >ngine ob$ect is e"changed for another% it makes no difference to the
2river as long as the interface continues to function correctly.
olymorphism
'n interface is a contract for behavior. >ssentially% it defines the members a class should
implement% but states nothing at all about the details of that implementation. 'n ob$ect can
implement many different interfaces% and many diverse classes can implement the same
interface. 'll ob$ects implementing the same interface are capable of interacting with other
ob$ects through that interface. For e"ample% the )ar ob$ect in the previous e"amples might
implement the (2rivable interface 4by convention% interfaces usually begin with (;% which
specifies the CoForward% Co!ackward% and Halt methods. Other classes% such as #ruck%
Forklift% or !oat might implement this interface and thus are able to interact with the 2river
ob$ect. #he 2river ob$ect is unaware of which interface implementation it is interacting with0
it is only aware of the interface itself. (nterface polymorphism is discussed in detail in ,esson
(nheritance olymorphism
(nheritance allows you to incorporate the functionality of a previously defined class into a
new class and implement different members as needed. ' class that inherits another class is
said to derive from that class% or to inherit from that class. ' class can directly inherit from
only one class% which is called the base class. #he new class has the same members as the
base class% and additional members can be added as needed. 'dditionally% the implementation
of base members can be changed in the new class by overriding the base class
implementation. (nherited classes retain all the characteristics of the base class and can
interact with other ob$ects as though they were instances of the base class. For e"ample% if the
)ar class is the base class% a derived class might be Sports)ar. #he Sports)ar class might be
the base class for another derived class% the )onvertibleSports)ar. >ach newly derived class
might implement additional members% but the functionality defined in the original )ar class is
retained.
SYSTEM RE6UREMENTS
HARDWARE RE6UIREMENT
3'* 6 7C!
's this application can be accessed via internet% only web server is required as a
hardware interface to be able to run it. (t is assumed that web server is in a secure
environment with necessary firewall and network setting done.
SOFTWARE RE6UIREMENT
FEASIBILITY STUDY:
Feasibility Assessment :
#hree key combinations are involved in the feasibility analysis. #hey are6
ECONOMICS FEASIBILITY:
>conomic analysis is the most frequently used method for evaluating the effectiveness
of a client system. *ore commonly known as cost-benefit analysis% the procedure is to
determine the benefits and savings that are e"pecting from a client system and compare them
with cost.
TECHNICAL FEASIBILITY:
#echnical feasibility centers on the e"isting system and to what e"tent it can support
the proposed system. #he benefits such as high accuracy% minimum response time and user
friendliness of the proposed system over weights cost for designing and implementing the
new system
SCHEDULE FEASIBILITY:
#he time schedule required for the development of the pro$ect is important% since
more development time affects machine time and cost of delay in the development of other
systems
PROJECT DESIGN
7 I*!ro2(c!io* !o UML
D%i*i!io*:
?. Specify
7. Disuali5e
8. )onstruct
@. 2ocument
#he artifacts of the software system
?. #hings
7. 3elationships &2iagrams
9"7 T)i*+s: #hings are the data abstractions that are first class citi5ens in a model. #hings are
of @ types
a. Structural things
b. !ehavioral things
c. Crouping things
9"8 R%,#!io*s)i/s: 3elationships tie the things together. 3elationships in the /*, are
a. 2ependency
b. 'ssociation
Static diagrams
2ynamic diagrams
Static diagrams are
i; )lass diagram
ii; Ob$ect diagram
iii; )omponent diagram
iv; 2eployment diagram
' )lass diagram shows a set of classes% interfaces% and collaborations and their
relationships. )lass diagrams address the static design view of a system. )lass diagrams that
include 'ctive classes address the static process view of a system.
' )lass is a description of a set of ob$ects that share the same attributes% operations%
relationships% and semantics. ' )lass implements on or more interfaces.
'n Ob$ect diagram shows the relationship between a group of ob$ects and their
relationships. Ob$ect diagrams represent static snapshots of instances of the things found in
class diagrams. Ob$ect diagram address the static design view or static process view of a
system.
' /se case diagram shows a set of use cases and actors4a special kind of class; and
their relationships. /secase diagrams address the static use case view of a system. #hese
diagrams are especially important in organi5ing and modeling the behaviors of a system.
' Sequence diagram is an interaction diagram that emphasi5es the time ordering of
messages.
"; COLLABORATION DIAGRAM6
' State chart diagram shows how an ob$ect dynamically changes its lifetime. ' State
is a condition or situation in which the ob$ect satisfies some condition% does some task% or
waits for an event to trigger. ' State chart diagram address the dynamic view of the system.
'n 'ctivity diagram is a special type of state chart diagram. (t usually depicts the
flow of events within an ob$ect. 'n 'ctivity diagram addresses the dynamic view of a system.
#hey are especially important in modeling the function of a system and emphasi5e the flow
of control among ob$ects.
' )omponent diagram shows the organi5ations and dependencies among a set of
components. )omponent diagram address the static implementation view of a system. #hey
are related to class diagrams in that a component typically maps to one or more classes%
interfaces% or collaborations.
' 2eployment diagram shows the architecture of the e"ecution time details of a
system. 2eployment diagram address the static deployment view of an architecture.
#hey are related to component diagrams in that a node typically encloses one or more
components.
#he following shows usecase diagrams% sequence diagrams for describing the system
DATA TABLES:
' 2atabase *anagement System is a set of pre1written programs that are used
to store% update and retrieve the database.
#'!,> ?
S#/2>#F>>2!')BFO3* S#'FF(2
D'3)H'34?N;%
?.N
3O,,O
D'3)H'34?N;%
</>S#(OO
/*!>34?N;
#'!,> 7
SAMPLE CODING
" ># is a Psoftware latformQ. (t is a language1neutral environment for
developing rich .># e"periences and building applications that can easily and
securely operate within it. When developed applications are deployed% those
applications will target. ># and will e"ecute wherever .># is implemented
instead of targeting a particular Hardware-OS combination. #he components
that make up the .># platform are collectively called the .># Framework.
White bo" testing is a test case design method that uses the
control structure of the procedural design to derive test cases. 'fter
performing white bo" testing it was identified that
(t was tested to e"ecute all loops at their boundaries and within their
Operational bounds
(t was tested for the internal data structures to ensure their validity.
8"8 Co*!ro, S!r(c!(r% T%s!i*+
#he following tests were conducted and it was noted that the !)!S
is performing them well.
!asic path #esting
)ondition #esting
,oop #esting
!lack bo" testing methods focuses on the functional requirements of
the software by conducting black bo" testing using the methods >quivalence
artitioning !oundary Dalue 'nalysis and )ause1>ffect1Craphing techniques.
' strategy for software testing must accommodate low1level tests that are
necessary to verify that a small source code segment has been correctly
implemented as well as high level against customer requirements.
2ifferent integrated test plans like top down integration and bottom up
integration are tested and different errors found in the system are corrected
using them. Finally% all the combined modules are performed well.
CONCLUSION:
FUTURE ENHANCEMENTS 6
2ue to the lack of time% the design part is not done so attractive. Further
enhancements can be made in designing the screens. Some more forms can also
be added so as to better retrieve the feedback details. Darious other options can
also be added for the better usability of pro$ect.