virtual univ

download virtual univ

of 76

Transcript of virtual univ

  • 8/14/2019 virtual univ

    1/76

    1. Abstract

    The term virtual university is used to describe an open-learning institution that uses the

    Internet, to create an imaginary university environment, in which the students, faculty,and staff can communicate and share information at any time, regardless of location. In

    many respects, it is commonly associated with the field of advanced learning technology,

    which deals with both the technologies and associated methodologies in learning using

    networked and/or multimedia technologies. This VU project envisages the design and

    development of multimedia course that is web-enabled that goes towards the curriculum

    of a full-fledged degree program.It strives for structural changes in the university

    infrastructure. Networks of scholars within a discipline carry out collaboration, division

    of labour and specialization in both teaching and research. This virtual university

    attempts to mirror all parts of a real university in a computer and internet-based

    environment. Its components comprise different kinds of courses as well as

    communication and administration activities.

    1

  • 8/14/2019 virtual univ

    2/76

    2. Introduction

    2.1 Overview of the System

    The Education broadcasting in a virtual university project aims at creating a website or

    portal that creates an imaginary university environment coordinating various activities

    related to student and faculty in pursuing various courses,studying in which is in a way

    beneficial than studying in a brick and mortar university. This creates myriad new

    alliances as traditional educational institutions can join with business organizations and

    companies to provide a cost-effective professional upgradation to their employees even.

    Virtual University allows students to follow its rigorous programs regardless of their

    physical locations.This acts as an information "container" to supplement classroomeducation with text (course notes, pointers to external web sites), and other types of

    media (graphics, videos etc.). Apart from supplementing classroom education it also

    provides e-mail discussion facility for the instructor to communicate asynchronously

    (not in real time) with students to help guide their understanding of content and exercises

    with desktop sharing as an added feature that facilitates easy monitoring the students

    problems . The instructor can also develop an online student assessment application

    which allows students to take some tests online and submit them electronically.This

    portal also provides the administrator with a screen through which he can make and

    manage all the resources.

    2.2 Advantages

    1. Increasing of quality and attractiveness of offered study specializations and study

    ,Sharing all educational activities and events guaranteed by leading and experienced

    specialists from various regions.

    2. Increasing of possibility of creation individual study plan by selection from

    substantially wider offer of educational subjects and increasing variety and versatility of

    educational needs.

    2

  • 8/14/2019 virtual univ

    3/76

    3. Flexibility of study as to place and location. Time flexibility is an organic result of

    combined/distance form of study and learning. Stu-dents can themselves devote study

    activities time interval which is to their individualtime schedule. Time management may

    lead to higher efficiency comparison with classical form of centrally made scheduling.

    2.3 Application, objective and benefits

    Application

    Students located at remote areas will be able to access the tutorials and can

    enhance their skills at their own time.

    ObjectivesTo facilitate student community to enhance their skills.

    Benefits

    Without expensive infrastructure excellent teaching material prepared by trained

    faculty members can be shared with the student community.

    3

  • 8/14/2019 virtual univ

    4/76

    3. System Analysis

    System analysis is a detailed study of various operations performed by a system and their

    relationships within and outside the system. It deals with defining the boundaries of the

    system and determining whether or not candidate systems should consider other related

    systems. For analysis, data is collected from available fields, decision points and

    transactions handled by the present system.

    3.1 Study of the Existing System

    The education being provided currently in the university is more or like the traditional

    guru-shishya form of education where the student and the faculty exist in a face-to-

    face environment.To make the best possible use of time it is mandatory for the

    student to be in the vicinity of the institution. Its tedious to group the top class

    proffersors to deliver their lectures at a particular place.The gap that arouses from

    absence of a lecture is not easy to be bridged.This system is not flexible for the

    student to work at his own pace.

    3.2 The Proposed System

    The proposed system intends to create a new structure that takes the advantage of the

    Internet and other technologies to increase access to and improve the qual-ity of

    higher education. . This system envisages the design and development of multimedia

    course that is web-enabled that goes towards the curriculum of a full-fledged degree

    program .VU courses are hand-crafted in meticulous detail by acknowledged experts

    in the field.This is cost-effective as there are no buildings and no campus to go

    because students study on the Internet. In most cases, only a personal computer and

    an Internet connection are needed. Through this connection students access the virtualuniversity and then do the same as other students do: attend classes, access course

    material , discuss cases, take tests,ask questions, etc. Likewise they communicate

    with lecturers, tutors, administrative staff, etc., but it happens over the Internet. Since

    these courses are web-enabled, the student can work in his own comfortable

    environment and is not restricted to the classroom.Moreover he can work at a pace

    4

  • 8/14/2019 virtual univ

    5/76

    with which he finds convenient. Additionally, students can use the lectures to review

    an entire course before their examinations a facility simply not available in the

    conventional face-to-face environment. Virtual programs are best suited for people

    who appreciate flexibility. "Study anywhere at any time".

    Major Functions of the Proposed System

    Authentication and authorization

    Registration of the users.

    Administring the structure of courses

    Uploading course materials( Audio, Video, Text)

    Online Examinations

    Administering Library

    View Course Contents

    Facilitating interaction.

    3.3 Constraints on the system

    o Only Authorized persons who are registered with the site are permitted to use this

    Site .

    o Though every thing is claimed to be done over the internet,subjective test for

    certifying the degree is not done online, and even the documents claiming the

    prequalification have to be sent to the administration office.

    o To avail the added desktop sharing feature the sent software installation is to be

    supported .

    5

  • 8/14/2019 virtual univ

    6/76

    3.3 Module Description

    This Project consists of three modules.

    Account Creation and Authentication Module

    Student Information and Services Module: Administrator Module:

    3.3.1 Module 1 : Account Creation and Authentication Module

    Authentication is the process of determining whether someone or something is, in fact,

    who or what it is declared to be. In private and public computer networks (including the

    Internet), authentication is commonly done through the use of logon passwords.

    Knowledge of the password is assumed to guarantee that the user is authorized.First an

    account is created for the student with his basic details.If these satisfy the required

    specifications and later when he logsin with this accountid the basic information related

    to the university are made available.In the registration phase the user(ie the student or the

    faculty)provides the details required and then access is provided only after verifying and

    validating information provided in the registration form by the administrator.

    3.3.1.1 Functionalities:

    Following functionalities need to be made available before the Authentication takes

    place:

    Registration of New User:

    This may be required in a scenario when the user(student or faculty)is new to the VU.

    Password Prompts:User will be prompted with a success message or rejected message accordingly. This

    may be required for security reasons to ensure protection of the account.

    6

  • 8/14/2019 virtual univ

    7/76

    3.3.2 Module 2: Student Information and Services Module:

    In this module the authenticated student can view the details regarding the courses and

    the sessions,fee related to these courses offered. From this point acesss to various

    services is course specific.The user is provided access to course syllabus,course

    material(lecture handouts,videos) which can be downloaded.As a facility for the student

    to evaluate his performance self-assessment quizzes are also provided.Apart from these

    the user is also granted with a service to acess library.An important added service is the

    desktop sharing,where the Instructor can share his/her desktop with students so that they

    can see how the Instructor is working or viceversa.

    3.3.2.1 Functionalities

    View Course material

    An authenticated user can view the course specific contents like the

    syllabus and also the material provided in various formats like text,videos etc..

    Download files:

    An authenticated user can download the course lecture handouts and

    videos related to it along with the library contents made available.

    Online Examination:

    This feature is exclusively meant for the students. After going through

    the lessons in the portal, he may wish to test his level of understanding and

    evaluate his performance. This can be achieved by taking an online exam

    provided to him.

    Interaction facility

    The student can get his doubts clarified by posting the query to the

    faculty through email.The other facility provided is desktop-sharing where the faculty

    can virtually take over the desktop of the student to monitor his work.

    7

  • 8/14/2019 virtual univ

    8/76

    3.3.3 Module 3:Administrator Module:

    As the administrator is the whole and sole authority and the only handler of

    the database directly,this module deals with the automation of the administrator

    functionalities.The adiminstrator is responsible for the authentication of a user in theVU,by cross checking the details provided during the registration and the posted

    documents.He can insert or update courses,sessions and fee related to them,course

    material contents,library information.Administrators functionality also includes the

    preparation of quizz paper under the intimation from the faculty.

    3.3.3.1 Functionalities

    Authentication

    The administrator is responsible for assigning userids and passwords to the

    users.If the details provided during registration are found to be valid and if they fit into

    the criteria of the university ,he confirms the registration of the user.

    Uploading/Updating content

    The administrator can either insert new content to database relating to

    various courses or can edit the already present contents pertaining to courses like the

    sessions,fees,tutorials,library etc..

    Examination

    Under the instructions from the course related faculty the administrator can

    set the quiz paper for the student .

    8

  • 8/14/2019 virtual univ

    9/76

    4 . Feasibility Analysis

    A feasibility study is an analysis of the viability of an idea. The feasibility study is a

    management oriented activity.The feasibility analysis is designed to determine whether

    or not, given the project environment, a project will be successful (in virtually any

    interpretation of that word). In other words, feasibility analysis is the measure of how

    beneficial or practical the development of information system will be to an organization.

    4.1 Operational Feasibility

    Operational Feasibility defines the urgency of the problem and the acceptability of anysolution ie if the system is developed,it deals with the study of whether it will be used,

    how well the system can perform the operations that are assigned to it,how do the end-

    users feel about their role in the new system. Thus it refers to the feasibility of the

    product to be operational. It is observed that the proposed system is very user friendly

    and has all the features mentioned above

    4.2 Financial Feasibility

    A financial feasibility analysis provides decision-makers information as to whether or not

    they can afford to do the project, as well as successfully operate it once constructed. It

    deals with establishing the cost-effectiveness of the proposed system. The technologies

    and the hardware used in the development are under the acceptable costs , which can be

    acquired by anyone and even provided by the institution if needed, and moreover they

    promise portability, security, reliability and easy maintainability.

    9

  • 8/14/2019 virtual univ

    10/76

    4.3 Technical Requirements

    The technologies and the standard used for the development of the project are as follows:

    4.3.1 Dot Net Technology

    It is a Microsoft operating system platform that incorporates applications, a suite of tools

    and services and a change in the infrastructure of the company's Web strategy.

    There are four main principles of .NET from the perspective of the user:

    (a) It erases the boundaries between applications and the Internet. Instead of

    interacting with an application or a single Web site, .NET will connect the

    user to an array of computers and services that will exchange and combine

    objects and data.

    (b) Software will be rented as a hosted service over the Internet instead of

    purchased on a store shelf. Essentially, the Internet will be housing all

    where applications and data.

    (c) Users will have access to their information on the Internet from any

    device, anytime, anywhere.

    (d) There will be new ways to interact with application data, such as speech

    and handwriting recognition.

    4.3.1.1 Features Of Dot Net

    Consistency

    Using Master Page, Themes and using Cascaded Style Sheet feature of ADO.NET, one

    can achieve this feature.

    Personalization

    This is done in regards with the Users taste. It may be in terms of colors, font size,

    background colors, and look and feel with respect t the application. After gathering

    10

  • 8/14/2019 virtual univ

    11/76

    requirements from the user by making use of and using Themes, Skin and Cascaded Style

    Sheet feature of ADO.NET we can achieve personalization.

    Themes and skins

    These are new feature of ASP. Net. By this way you can customize your sites look and

    feel. Like the master pages they also improve the maintainability of your site and avoid

    unnecessary duplication of code for shared style.

    A theme is a collection of property settings that allow you to define the look of pages and

    controls, and then apply the look consistently across pages in a Web application, across

    an entire Web application, or across all Web applications on a server.

    A skin file has the file name extension. Skin and contains property settings for individual

    controls such as Button, Label, Textbox, or Calendar controls. Control skin settings are

    like the control markup itself, but contain only the properties you want to set as part of

    the theme.

    Tools for Navigation

    Every site requires tools for navigation. The List of Navigation tools available in

    .NET is as follows:

    Menu Pull down / Drop down menu

    Fig 4.1 Menu control for navigation

    11

  • 8/14/2019 virtual univ

    12/76

    Tree View These are structured links. User can know where they are currently located

    Fig 4.2 Tree View control for navigation

    Breadcrumbs Renders tabs indicating parent and current web page.

    The new Site Navigation features in ASP.NET 2.0 can make building navigation

    structures across a web-site much easier.

    At a high-level, the new Site Navigation features allow you to define (outside of code or

    pages) the site map structure of how your site is laid out. Specifically, it allows you to

    define the relationships between pages on the site what is the home entry-point, what

    are the sub-sections of it, and how individual pages fit within it. This information is

    cached by ASP.NET, and you can then get access to this sitemap structure at runtime.

    ASP.NET includes a basic built-in XML based SiteMap provider that allows you to

    define this site structure within an XML file whose default name is web.sitemap (note:

    you can change the name if you want). For example, web.sitemap XML file can contain

    several levels of hierarchy (a homepage root, then three sub-nodes, and under the

    products node three additional sub-nodes).

    12

  • 8/14/2019 virtual univ

    13/76

    Security

    In .NET security considerations can be verified by carrying out authentication of entries,

    password checking, password reminders and facility to create new users. It helps in

    permitting authorized users and denies access to unauthorized users.

    Wizard

    NET provides a wizard called as Web Site Administrative Tools which facilitates in the

    Database Providers

    Security Management Provides security consideration like password and

    username checking

    Roles Management Which pages and folders a user is permitted to view.

    With built in Windows authentication, you can be assured that your applications are

    secure.

    Database controls

    These controls are used to connect with the database and then retrieve, display or edit the

    contents of the database. They can be categorized as:

    Data Source Control

    These offer the behavior of connecting to sources of data.

    Examples of Data source Controls are SQL Data Source, Site Map Data Source, XML

    Data Source, Object Data Source.

    Data-bound Controls

    These perform the task of taking information provided by Data Source Controls and

    render it into HTML. Examples of Data Bound controls are Grid View, Data List, Details

    View, Form View and Repeater.

    Componentization

    Code for the various parts of the page can be handled independently.

    Code for the presentation layer can be kept in a separate file i.e. default.aspx

    file.

    13

  • 8/14/2019 virtual univ

    14/76

    Code for the execution is kept in a separate file i.e. default.aspx.cs file.

    Web Services

    Web Services are methods of making information available in a standardized way that

    could be accessed by any developers application over the web. A web service on its own

    Is not an application

    Cant be seen as web pages.

    Cant be seen as an .exe files.

    They come as part of user interface.

    Helps in preventing code duplication & thus save time.

    They can be created & exposed to web for other applications to share it or one can

    search for web service to add to his own application

    Deployment

    In the past series of steps were required to be carried out to register and configure

    the site on the host machine.

    ASP .NET 2.0 has devised DOS XCOPY type of folder copying mechanism.

    This XCOPY deploys your site from the development machine to the deployment

    host.

    All registration and machine level customizations occur automatically when the

    first request hits the site.

    XCOPY/ FTP will suffice for simple applications for more sophisticated

    requirements it may well be preferable to create a Windows Installer based setup

    package.

    There are many common installation tasks that are not possible via XCOPY, someof which are

    Creating IIS web sites or virtual directories

    However, if you do need any of these you have Microsoft Windows Installer at

    your disposal

    14

  • 8/14/2019 virtual univ

    15/76

    4.3.1.2 Summary of ASP .NET

    ASP.NET is a programming framework built on the common language runtime that can

    be used on a server to build powerful Web applications. ASP.NET offers several

    important advantages over previous Web development models:

    Enhanced Performance:

    ASP.NET is compiled common language runtime code running on the server. Unlike its

    interpreted predecessors, ASP.NET can take advantage of early binding, just-in-time

    compilation, native optimization, and caching services right out of the box. This amounts

    to dramatically better performance before you ever write a line of code.

    World-Class Tool Support:

    A rich toolbox and designer in the Visual Studio integrated development

    environment complement the ASP.NET framework. WYSIWYG editing, drag-

    anddrop server controls, and automatic deployment are just a few of the features

    this powerful tool provides.

    Power and Flexibility:

    Because ASP.NET is based on the common language runtime, the power and

    flexibility of that entire platform is available to Web application developers. The

    .NET Framework class library, Messaging, and Data Access solutions are all

    seamlessly accessible from the Web. ASP.NET is also language-independent, so

    you can choose the language that best applies to your application or partition your

    application across many languages.

    Simplicity:

    ASP.NET makes it easy to perform common tasks, from simple form submission

    and client authentication to deployment and site configuration. For example, the

    ASP.NET page framework allows you to build user interfaces that cleanly

    separate application logic from presentation code and to handle events in asimple, Visual Basic - like forms processing model. Additionally, the common

    language runtime simplifies development, with managed code services such as

    automatic reference counting and garbage collection.

    15

  • 8/14/2019 virtual univ

    16/76

    Security:

    With built in Windows authentication and per-application configuration, you can

    be assured that your applications are secure.

    Language Independency:

    ASP.NET is language-independent, so you can choose the language that best

    applies to your application or partition your application across many languages.

    ASP .NET 2.0 supports more than 20 different languages.

    Irrespective of language the code is converted to Intermediate Language prior to

    execution.

    4.3.2 SQL Server

    SQL Server has many advanced features like:

    Database mirroring

    Database mirroring is a new high-availability feature in SQL Server 2005. It's similar to

    server clustering in that fail over is achieved by the use of a stand-by server; the

    difference is that the fail over is at the database level rather than the server level. The

    primary database continuously sends transaction logs to the backup database on a

    separate SQL Server instance. A third SQL Server instance is then used as a witnessdatabase to monitor the interaction between the primary and the mirror databases.

    Database snapshots

    A database snapshot is essentially an instant read-only copy of a database, and it is a great

    candidate for any type of reporting solution for your company. In addition to being a

    great reporting tool, you can revert control from your primary database to your snapshot

    database in the event of an error. The only data loss would be from the point of creation

    of the database snapshot to the event of failure.

    16

  • 8/14/2019 virtual univ

    17/76

    CLR integration

    With SQL Server 2005, creation of custom .NET objects is possible with the database

    engine. For example, stored procedures, triggers, and functions can now be created using

    familiar .NET languages such as VB and C#. Exposing this functionality gives tools that

    never had access to before such as regular expressions.

    Service Broker

    This feature gives the ability to create asynchronous, message-based applications in the

    database entirely through TSQL. The database engine guarantees message delivery,

    message order consistency, and handles message grouping. In addition, Service Broker

    gives you the ability to send messages between different SQL Server instances. Server

    Broker is also used in several other features in SQL Server 2005. For example, defining

    Event Nonfictions in the database to send a message to a Queue in the database whensomeone attempts to alter a table structure, of if there is a string of login failures.

    DDL triggers

    DDL triggers are defined at the server or database level and fire when DDL statements

    occur. This gives the ability to audit when new tables, stored procedures, or logins are

    created.

    Ranking functions

    SQL Server 2005 provides the ability to rank result sets returned from the database

    engine. This allows customizing the manner in which result sets are returned, such as

    creating customized paging functions for Web site data.

    XML integration

    SQL Server 2005 introduces the new XML data-type. Using this feature, full XML

    documents in this new data-type, and validations can be placed on the well-formed

    documents in the database. Additional enhancements include the ability to query the

    XML documents and create indexes on the XML data-type.

    17

  • 8/14/2019 virtual univ

    18/76

    TRY...CATCH

    Use of new TRY...CATCH constructs in SQL Server 2005 helps to catch and handle

    deadlocks when they occur in the database. This long-awaited feature simplifies error

    handling in the database.

    Database Mail

    Database Mail, the eventual successor to SQL Mail, is a greatly enhanced e-mail solution

    available in the database engine. With Database Mail, there is no longer a dependency on

    Microsoft Outlook or MAPI e-mail clients. Database Mail uses standard SMTP to send e-

    mail messages. These messages may contain query results, attachments (which can be

    governed by the DBA), and is fully cluster aware. In addition, the e-mail process runsoutside of the database engine space, which means that messages can continue to be

    queued even when the database engine has stopped.

    Fast Recoveries

    A new faster recovery option improves availability of SQL Server databases.

    Administrators can reconnect to a recovering database after the transaction log has been

    rolled forward.

    Standards-based Information Access

    Any object, data source, or business intelligence component can be exposed using

    standards-based protocols such as Simple Object Access Protocol (SOAP) and Hypertext

    Transfer Protocol (HTTP)eliminating the need for a middle-tier listener, such as IIS, to

    access a Web services interface that is exposed by SQL Server 2005.

    Security Enhancements

    The security model in SQL Server 2005 separate users from objects, provides fine-grain

    access, and enables greater control of data access. Additionally, all system tables are

    implemented as views, providing more control over database system objects.

    18

  • 8/14/2019 virtual univ

    19/76

    Web Services

    With SQL Server 2005 developers can develop Web services in the database tier, making

    SQL Server a hypertext transfer protocol (HTTP) listener and providing a new type of

    data access capability for Web services-centric applications.

    T-SQL

    T-SQL (Transact-SQL) is the primary means of programming and managing SQL Server.

    It exposes keywords for the operations that can be performed on SQL Server, including

    creating and altering database schemas, entering and editing data in the database as well

    as monitoring and managing the server itself. Client applications, both which consume

    data or manage the server, leverage SQL Server functionality by sending T-SQL queries

    and statements which are then processed by the server and results (or errors) returned to

    the client application. SQL Server allows it to be managed using T-SQL. For this it

    exposes read only tables from which server statistics can be read. Management

    functionality is exposed via system-defined stored procedures, which can be invoked

    from T-SQL queries to perform the management operation.

    Replication Monitor

    With its intuitive user interface and wealth of data metrics, Replication Monitor is a tool

    that sets a new standard for ease of use in managing complex data replication operations.

    Cross-Tier and Cross-Language Debugging

    SQL Server 2005 and Visual Studio 2005 together provide even deeper integration in the

    area of application debugging. The combination lets you seamlessly debug both CLR and

    Transact-SQL code using the same Visual Studio debugging interface, and enables you to

    debug from CLR to Transact-SQL and back again, regardless of the location of the code,

    whether it is on the developer computer or stored in the SQL Server database

    19

  • 8/14/2019 virtual univ

    20/76

    4.3.3 Standards used

    SCORM stands for "Shareable Content Object Reference Model", is a standard for

    developing, packaging and delivering high-quality training materials for online training

    Courses. We are following SCORM standards in our project. SCORM was developed

    based on the concept of "using a common e-learning Standard to modernize education

    and training courses". Now, with the SCORM standard, and more specifically SCORM

    compliant tools/platforms, you can find, import, share, reuse and export learning contents

    through compliant web-based learning systems.

    The benefits of using SCORM standards are as follows:

    Reusability

    Lowers cost because learning contents can be used many times. SCORM incorporated

    contents can be easily incorporated into multiple applications, allowing for learning

    contents to be easily modified and used by different tools and platforms. This allows you

    to spend less effort in creating new contents from scratch and focus more on

    incorporating existing contents to meet the specific needs of the learner and corporation.

    Accessibility

    Increased access to learning information. The SCORM standard offers you the ability to

    access learning contents from anywhere and at anytime. It enables you to customize the

    delivery of your learning contents from one remote location and deliver them too many

    other locations. It allows you to search, identify, access and retrieve contents that are

    widely distributed in SCORM compliant repositories. This way, it is easier for learners to

    identify, retrieve, and incorporate valuable content from many trusted sources.

    Interoperability

    Systems work efficiently together. SCORM provides an extension for compliant

    courseware and similar tools/platforms to communicate under a common interface. With

    consistent content production specifications, learning contents developed using one set of

    tools/platform can be easily identified, and launched with a different set of tools/platform.

    In other words, SCORM compliant learning contents can be authored and/or launched by

    any SCORM compliant authoring tools and/or platforms, providing maximum flexibility.

    20

  • 8/14/2019 virtual univ

    21/76

    Durability

    Learning contents will not easily become obsolete. SCORM is becoming the

    technological standard for the e-Learning industry because SCORM compliant contents

    are preserved and portable even when base technology (tools/platform) changes. This

    means learning contents do not need to go through a Redesign or redevelopment process,

    even when technology changes (platforms, tools, Access, devices, products, vendors).

    Manageability

    A track of system usage and learning experience can be maintained. SCORM can keep

    track of the learners' learning experiences and activities, and more Specifically how

    learning objects are created, stored, assembled, and delivered to individuals. Also it

    provides tracking based on an individuals learning assessment, which gives a betterevaluation reference for determining the learning results. Thus, corporations purchasing

    SCORM compliant software (such as TCMS 2.0 or Stream Author 2.5) can better assess

    their e-Learning environment and provide a more detailed measurement for their ROI.

    4.4 Hardware and Software Requirements

    4.4.1 Hardware Requirements

    Pentium 4 processor

    Minimum 256 MB memory

    10 GB Hard disk

    Modem / Network card

    4.4.2 Software Requirements

    Microsoft Windows XP Professional, Version 2002 or above

    C# with ASP.NET 2.0

    SQL server 2000 / 2005

    21

  • 8/14/2019 virtual univ

    22/76

    5. System Design

    5.1 Introduction

    Systems design is the process or art of defining the architecture, components, modules,

    interfaces, and data for a system to satisfy specified requirements. Once the software

    requirements are analyzed and specified, the software design involves three technical

    activities-- design, code generation and testing that are required to build and verify the

    software. The design activities are of main importance in this phase because in this

    activity decisions ultimately affecting the success of the software implementation and its

    ease of maintenance are made. These decisions have the final bearing upon the reliability

    and maintainability of the system. Design is the only way to accurately transfer the

    customer requirements into a finished software or system.

    5.2 UML Diagrams

    The Unified Modeling Language (UML) is a standard language for specifying,

    visualizing, constructing, and documenting the artifacts of software systems, as well as

    for business modeling and other non-software systems

    5.2.1 Use case diagram

    A use case diagram is a type ofbehavioral diagram defined by the Unified Modeling

    Language(UML). Its purpose is to present a graphical overview of the functionality

    provided by a system in terms of actors, their goals represented as use cases and any

    dependencies between those use cases.

    Use Case

    A use case describes a sequence of actions that provide a measurable value to an actor. A

    use case is drawn as a horizontal ellipse on a UML use case diagram.

    22

  • 8/14/2019 virtual univ

    23/76

    Fig 5.1 Use Case

    Actor

    An actor is a person, organization, or external system that plays a role in one or more

    interactions with your system (actors are typically drawn as stick figures on UML Use

    Case diagrams)

    Fig 5.2 Actor

    Relationships

    There are several types of relationships that may appear on a use case diagram:

    Include

    In one form of interaction, a given use case uses another. The first use case often depends

    on the outcome of the included use case. This is useful for extracting truly commonbehaviors from multiple use cases into a single description. The notation is a dashed

    arrow from the including to the included use case, with the label "include".

    Extend

    In another form of interaction, a given use case (the extension) may extend another. This

    relationship indicates that the behavior of the extension use case may be inserted in the

    extended use case under some conditions. The notation is a dashed arrow from the

    extension to the extended use case, with the label ''extend'

    23

  • 8/14/2019 virtual univ

    24/76

    Generalization

    In the third form of relationship among use cases, a generalization/specialization

    relationship exists. A given use case may be a specialized form of an existing use case.

    Module 1

    Fig 5.3 Use Case Diagram for account creation/authentication module

    24

  • 8/14/2019 virtual univ

    25/76

    Module 2

    Fig 5.4 Use Case Diagram for information/services module

    25

  • 8/14/2019 virtual univ

    26/76

    Module 3

    Fig 5.5 Use Case Diagram for Administrator module

    26

  • 8/14/2019 virtual univ

    27/76

    5.2.2 Sequence diagrams:

    Sequence diagrams demonstrate the behavior of objects in a use case by describing the

    objects and the messages they pass.A sequence diagram shows, as parallel vertical lines,

    different processes or objects that live simultaneously, and, as horizontal arrows, the

    messages exchanged between them, in the order in which they occur.

    Basic Sequence Diagram Symbols and Notations

    Class roles

    Class roles describe the way an object will behave in context

    Fig 5.6 Representation of an object

    Activation

    Activation boxes represent the time an object needs to complete a task. Activation boxes,

    are opaque rectangles drawn on top of lifelines to represent that processes are being

    performed in response to the message.

    Lifelines

    Lifelines are vertical dashed lines that indicate the object's presence over time. The dotted

    lines extending downwards indicate the lifeline.

    27

  • 8/14/2019 virtual univ

    28/76

    Messages

    Messages are arrows that represent communication between objects. The arrows

    represent messages (stimuli) from an actor or object to other objects.

    Loops

    A repetition or loop within a sequence diagram is depicted as a rectangle. Place thecondition for exiting the loop at the bottom left corner in square brackets [ ].

    Module 1

    28

  • 8/14/2019 virtual univ

    29/76

    Fig 5.7 Sequence Diagram for account creation/authentication module

    Module 2

    29

  • 8/14/2019 virtual univ

    30/76

    :Student :Course_info :Course DB :Library DB:CourseAdmin

    1: View course material

    2: Access library

    3: Display(library)

    4: Take Quiz()

    5: Store(quiz)

    6: Ack()

    7: View(Quiz)

    8: Display()

    9: Post results()

    10: Ack()

    11: View results()

    12: Display()

    Fig 5.8 Sequence Diagram for information/services module

    Module 3

    30

  • 8/14/2019 virtual univ

    31/76

    Fig 5.9 Sequence Diagram for Administrator module

    5.2.3 Class Diagram

    Class diagrams are the backbone of almost every object-oriented method including UML.

    They describe the static structure of a system.

    31

  • 8/14/2019 virtual univ

    32/76

    Basic Class Diagram Symbols and Notations

    Classes represent an abstraction of entities with common characteristics. Associations

    represent the relationships between classes.

    Fig 5.10 Sample representation of a class

    Classes

    Classes are represented with rectangles divided into compartments. The name of the

    class is placed in the first partition , the attributes are listed in the second partition, andoperations are written into the third.

    Active Class

    Active classes initiate and control the flow of activity, while passive classes store data

    and serve other classes.Active classes are illustrated with a thicker border.

    Visibility

    Visibility markers are used to signify who can access the information contained within a

    class. Private visibility hides information from anything outside the class partition. Public

    visibility allows all other classes to view the marked information. Protected visibility

    allows child classes to access information they inherited from a parent class.

    Associations

    Associations represent static relationships between classes.

    Generalization

    Generalization is another name for inheritance or an "is a" relationship. It refers to a

    relationship between two classes where one class is a specialized version of another

    32

  • 8/14/2019 virtual univ

    33/76

    Class diagram

    Fig 5.11 Class Diagram for the entire system

    5.2.4 Activity Diagrams

    An activity diagram is to model the workflow behind the system being designed. . An

    activity represents an operation on some class in the system that results in a change in the

    33

  • 8/14/2019 virtual univ

    34/76

    state of the system. Typically, activity diagrams are used to model workflow or business

    processes and internal operation.

    Basic Activity Diagram Symbols and Notations

    Action states

    Action states represent the noninterruptible actions of objects.

    Fig 5.11 Activity

    Action Flow

    Action flow arrows illustrate the relationships among action states.

    Initial State

    A filled circle followed by an arrow represents the initial action state.

    Fig 5.12 Initial node in an activity diagram

    Final State

    An arrow pointing to a filled circle nested inside another circle represents the final action

    state.

    Fig 5.13 Final node in an activity diagram

    Swimlanes

    Swimlanes group related activities into one column

    34

  • 8/14/2019 virtual univ

    35/76

    Activity diagram

    Fig 5.14 Activity diagram for the system

    5.3 Architecture Diagram

    The architecture of a software system defines its structure. In fact, it defines several

    structures, each of which comprises elements and the relationships among those

    35

  • 8/14/2019 virtual univ

    36/76

    elements. The elements may be computational entities related by control flow or business

    entities connected by semantic constraints. It is a multi-perspective, quality-based

    approach to ensuring that software is built to fit its purpose.

    The architecture below explains the complete flow of the project:

    Fig 5.15 Architecture Diagram

    5.4 Database Tables Used for The Design

    36

  • 8/14/2019 virtual univ

    37/76

    Database tables are used to organize and group the data by common

    characteristics or principles. The database can contain as many tables as needed to

    organize the data. Database tables involved in this project for storing and

    retrieving the data/information are as following:

    Login Table

    Register Table

    Field Type Max length

    Student ID int 4

    Name String 50

    Qualification String 50

    Course String 50

    Session details String 50

    Session ID String 50

    Course ID String 10

    DD Amount float 8

    DD No Numeric 9

    Bank String 50

    Email String 50

    Fields Type Max Length

    User ID int 4

    User Name String 50User Password String 50

    DOB Date time 8

    Contact Number Numeric 13

    37

  • 8/14/2019 virtual univ

    38/76

    User Name String 50

    Password String 50

    Faculty table

    Fields Type Max Length

    Faculty ID String 50

    Course String 50

    First Name String 50

    Last Name String 50

    DOJ Date time 8

    Qualification String 50

    Gender String 50

    Mobile No Numeric 9

    Landline No Numeric 9

    Email String 50

    Address String 50

    Course ID String 50

    User Name String 50

    Password String 50

    Course Details Table

    Fields Type Max Length

    Course ID String 50

    Course Name String 50

    Date of Starting Date time 8

    Date of Completing Date time 8

    Session Code String 10

    38

  • 8/14/2019 virtual univ

    39/76

    Session Details Table

    Field Type Max length

    Course name String 50Course ID String 50

    Session ID String 10

    Session details String 50

    Fee Details Table

    Fields Type Max Length

    Course Id String 50

    Fees Amount String 50

    Last date of Payment String 50

    Java Library Table

    Fields Type Max Length

    Content String 1000

    Course ID String 50

    Book ID int 4

    Author String 50

    Book Name String 1000

    Tutorials

    Fields Type Max Length

    Content String 1000

    Course ID String 50

    Tutorial ID String 50

    Tutorial Name String 1000

    39

  • 8/14/2019 virtual univ

    40/76

    Syllabus Details

    Fields Type Max Length

    Course Name String 50Course ID String 50

    Topic Title String 50

    Topic Details String 1000

    Topic No String 10

    Video Table

    Fields Type Max Length

    Content String 1000

    Course ID String 50

    Video File Name String 1000

    Exam Table

    Fields Type Max Length

    Course ID String 50

    Tutorial String 50

    Q No int 4

    Question String 1000Option 1 String 1000

    Option 2 String 1000

    Option 3 String 1000

    Option 4 String 1000

    Correctans String 1000

    40

  • 8/14/2019 virtual univ

    41/76

    Result Table

    Fields Type Max Length

    Student ID String 50

    Course ID String 50

    DOE Date time 8

    Marks numeric 9

    Toe Float 8

    6.Testing

    In general, testing is finding out how well something works. In computer hardware and

    software development, testing is used at key checkpoints in the overall process todetermine whether objectives are being met. For example, in software development,

    product user representatives test product objectives. When the design is complete, coding

    follows and each programmer tests the finished code at the unit or module level, at the

    component level by the group of programmers involved; and at the system level when all

    components are combined together. At early or late stages, a product or service may also

    be tested for usability. Software testing is a critical element of software quality assurance

    and represents the ultimate review of specification design and code generation.

    6.1 Testing Objectives

    Testing is a process of executing a program with the intent of finding an error.

    A good test case is one that has a high probability of finding an as yet

    undiscovered error.

    A successful test is one that uncovers an as yet undiscovered error.

    6.2 White -Box and Black-Box Testing

    41

  • 8/14/2019 virtual univ

    42/76

    Software testing methods are traditionally divided into black box testing and white box

    testing. These two approaches are used to describe the point of view that a test engineer

    takes when designing test cases.

    6.2.1 White Box Testing

    White box testing is a security testing method that can be used to validate whether code

    implementation follows intended design, to validate implemented security functionality,

    and to uncover exploitable vulnerabilities. White box testing is performed based on the

    knowledge of how the system is implemented. White box testing includes analyzing data

    flow, control flow, information flow, coding practices, and exception and error handling

    within the system, to test the intended and unintended software behavior. White box

    testing requires access to the source code.

    Using white-box testing we can derive test cases that

    Guarantee that all independent paths within a module have been exercised at least

    once.

    Exercise all logical decisions on their true and false sides.

    Execute internal data structures to assure their validity.

    By the test cases each of the modules have been executed at least once and tested forbugs. All the logic decisions on their true and false sides are executed so that the system

    will perform well.

    6.2.2 Black Box Testing

    Black box testing is based on the softwares specifications or requirements,

    without reference to its internal workings. Black box testing attempts to derive

    sets of inputs that will fully exercise all the functional requirements of a system.

    This type of testing attempts to find errors in the following categories:

    Incorrect or missing functions.

    Interface errors.

    Errors in data structures or external database access.

    42

  • 8/14/2019 virtual univ

    43/76

    Performance errors

    Initialization and termination errors.

    All the modules have been thoroughly tested in order to find if all the functions,

    interfaces designed for the user, all the data structures used are working as per the

    intended requirement.

    6.3 Unit Testing

    Unit testing is a procedure used to validate that individual units of source code are

    working properly. This would test the interaction of many functions but confine the test

    within one unit. Unit testing involves only those characteristics that are vital to the

    performance of the unit under test. This encourages developers to modify the source code

    without immediate concerns about how such changes might affect the functioning of

    other units or the program as a whole. Unit testing must be done with an awareness that it

    may not be possible to test a unit for every input scenario that will occur when the

    program is run in a real-world environment.

    Keeping in mind the above rules, each and every module of our project was tested

    individually and seen that all the modules are working in an error-free manner.

    6.4 Integration Testing

    Integration testing is a logical extension of unit testing. In its simplest form, two units

    that have already been tested are combined into a component and the interface between

    them is tested. A component, in this sense, refers to an integrated aggregate of more than

    one unit. Integration testing can expose problems with the interfaces among program

    components before trouble occurs in real-world program execution. Simulated usage of

    43

  • 8/14/2019 virtual univ

    44/76

    shared data areas and inter-process communication is tested and individual subsystems

    are exercised through their input interfaces.

    After testing the individual modules, we have combined all the modules and tested if all

    the modules as a whole are working properly or not.

    6.5 System testing

    System testing of software or hardware is testing conducted on a complete, integrated

    system to evaluate the system's compliance with its specified requirements . System

    testing falls within the scope of black box testing, and as such, should require no

    knowledge of the inner design of the code or logic. As a rule, system testing takes, as its

    input, all of the "integrated" software components that have successfully passed

    integration testing and also the software system itself integrated with any applicable

    hardware system(s). The purpose of integration testing is to detect any inconsistencies

    between the software units that are integrated together (called assemblages) or between

    any of the assemblages and the hardware. System testing is a more limiting type of

    testing; it seeks to detect defects both within the "inter-assemblages" and also within the

    system as a whole

    .

    44

  • 8/14/2019 virtual univ

    45/76

    7. Implementation

    The first page that is displayed to the visitor gives an overview of the virtual education

    and also answers to the frequently raised doubts .If the student wants to know more

    information about the university he needs to create an account .If the details entered are

    according to the specification he is granted to use the account id and password he has

    chosen, then the details of various courses offered along with their session, fee details can

    be known. Now if the student is interested in registering he should fill the online

    application form and send the copy of certificates to the university .If the student logs in

    with the registered id and password he is provided access to various course specific

    services like he can view the syllabus ,tutorials(lecture handouts),video of the lectures.

    Authenticated student is also granted access to library .To facilitate the student to

    estimate his knowledge ,self assessment quizess also provided ie..he needs to take a

    online examination which is evaluated and the result is made known to him immediately .

    If the student needs to clarify his doubts ,he can post the doubt to any of the course

    related faculty as their email ids are listed to him. Apart from this an added service is the

    desktop sharing through which the virtually overtaking of the desktop is possible through

    which the difficulties can be monitored. once the faculty gets registered by he filling in

    the details and the administrator validating them he gets his login id and password. The

    faculty service includes viewing the course tutorials , videos ,syllabus, library.Faculty can

    also set the quiz paper for the student. The administrator who is whole and sole authority

    45

  • 8/14/2019 virtual univ

    46/76

    of the database is also provided with an interface to automate some of his activities .

    Firstly the registration details of the users(students, faculty) are listed which can be

    verified with the documents he received and if they are found to be valid and if they fit

    into the criteria of the university ,the administrator then assigns them their respective ids

    and passwords and intimates through email .The admin can now insert new course ,

    session, fee , tutorials , syllabus ,videos and library details as well as can edit the existing

    details through the interface.

    7.1 Sample Screens

    This section is to provide the sample screens of the virtual university for educationbroadcasting.

    These screen shots provide an insight into the general working of the system.

    46

  • 8/14/2019 virtual univ

    47/76

    Fig 7.1 home page of the virtual university

    47

  • 8/14/2019 virtual univ

    48/76

    Fig 7.2 Page displaying the information about virtual learning

    48

  • 8/14/2019 virtual univ

    49/76

    Fig 7.3 Page displaying the frequently asked questions about university

    education system

    49

  • 8/14/2019 virtual univ

    50/76

    Fig 7.4 Account creation for new user (student)

    50

  • 8/14/2019 virtual univ

    51/76

    Fig 7.5 Page displaying the basic information links for account created student

    51

  • 8/14/2019 virtual univ

    52/76

    Fig 7.6 list of various courses offered

    52

  • 8/14/2019 virtual univ

    53/76

    Fig 7.7 session details of various courses offered

    53

  • 8/14/2019 virtual univ

    54/76

    Fig 7.8 fee details of various course sessions offered

    54

  • 8/14/2019 virtual univ

    55/76

    Fig 7.9 student registration page

    55

  • 8/14/2019 virtual univ

    56/76

    Fig 7.10 Page displaying various services offered to students

    56

  • 8/14/2019 virtual univ

    57/76

    Fig 7.11 Page displaying the syllabus details of the course

    57

  • 8/14/2019 virtual univ

    58/76

    Fig 7.12 Page displaying the tutorial contents

    58

  • 8/14/2019 virtual univ

    59/76

    Fig 7.13 Page displaying the video links for the course content

    59

  • 8/14/2019 virtual univ

    60/76

    Fig 7.14 Demo of the video file

    60

  • 8/14/2019 virtual univ

    61/76

    Fig 7.15 Page displaying the library service

    61

  • 8/14/2019 virtual univ

    62/76

    Fig 7.16 Online examination for student

    62

  • 8/14/2019 virtual univ

    63/76

    Fig 7.17 Displaying result for the exam taken

    63

  • 8/14/2019 virtual univ

    64/76

    Fig 7.18 Page Displaying email ids of the course related faculty

    64

  • 8/14/2019 virtual univ

    65/76

    Fig 7.19 Faculty registration

    65

  • 8/14/2019 virtual univ

    66/76

    Fig 7.20 Page displaying various services offered to faculty

    66

  • 8/14/2019 virtual univ

    67/76

    Fig 7.21 Setting the question paper for quizz

    67

  • 8/14/2019 virtual univ

    68/76

    Fig 7.22 Page displaying the activities of the administrator

    68

  • 8/14/2019 virtual univ

    69/76

    Fig 7.23 Administrator authenticating student

    69

  • 8/14/2019 virtual univ

    70/76

    Fig 7.24 Administrator authenticating faculty

    70

  • 8/14/2019 virtual univ

    71/76

    Fig 7.25 Inserting new course details and viewing the record

    71

  • 8/14/2019 virtual univ

    72/76

    Fig 7.26 updating course details and viewing the modified record

    72

  • 8/14/2019 virtual univ

    73/76

    Fig 7.27 Inserting new fee details and session details

    73

  • 8/14/2019 virtual univ

    74/76

    Fig 7.28 Inserting new syllabus details and library details

    74

  • 8/14/2019 virtual univ

    75/76

    8. Conclusions and Scope for Future enhancements

    8.1 Conclusions

    This virtual university attempts to mirror all parts of a real university in a computer and

    internet-based environment. It allows authenticated students to follow its rigorous

    programs regardless of their physical locations. The web-enabled course contents

    facilitates the student to work in his own comfortable environment unlike restricting to

    the classroom. Moreover he can work at a pace with which he finds convenient. It

    enhances the time management skills which is supposed to be the greatest of the greater

    skills.

    8.2 Future Enhancements

    o The scope of the project is high,Apart from making them avail a degree ,the

    university can make an attempt to offer the student the training required for the

    student to get placements through the portal itself.

    o Disscussion rooms can be provided for the students to share their ideas and grow.

    o

    Video conferencing for the live interaction can be provided.

    75

  • 8/14/2019 virtual univ

    76/76

    9. References

    o Microsoft Press, SQL SERVER 2005

    o Roger.S.Pressman ,SOFTWARE ENGINEERING .

    o Matthew MacDonald, Robert Standefer., ASP.NET: The Complete Reference,

    McGraw-Hill/Osborne, Active server pages, Published 2002