By Charlie Butler,2014-04-15 06:52
17 views 0

CIS 895 E-Learning Architecture Design

     Architecture Design


     Version 1.0

     Submitted in partial fulfillment of the requirements of the degree of

     Master’s in Software Engineering.

     Santosh Kumar Bejjamshety

     CIS 895 MSE Project

     Kansas State University

     Committee Members

     Dr.Torben Amtoft (Major Professor).

     Dr. Dan Andresen.

     Dr. Mitchell L. Neilsen.


    CIS 895 E-Learning Architecture Design


1. Introduction

    2. Architecture

     2.1 E-Learning architecture

     2.1.1 E-Learning’s View Tier

     2.1.2 E-Learning’s Model Tier

     2.1.3 E-Learning’s Controller Tier 3. UML Representation of the System

     3.1 Class Diagrams

     3.2 Sequence Diagram



    CIS 895 E-Learning Architecture Design

1. Introduction

    The purpose of architecture design document is to demonstrate the components that

    constitute the system. This also includes the structure of the system, the externally visible

    properties of those components and the relationships between them. Documenting

    software architecture facilitates communication between stakeholders, documents early

    decisions about high level design and allows reuse of design components and patterns

    between projects. Once the Architecture of the system has been established there are

    many design patterns available to model the system. Here in this project development

    UML (Unified modeling Language) is being deployed to model the system.UML is a

    model driven engineering of software systems that provided guidelines for structuring

    specifications expressed as models. This approach defines the system functionality using

    platform-independent model (PIM) using an appropriate domain-specific language.

2. Architecture

    2.1 E-Learning Architecture

    E-Learning is based on 3-tier architecture called MVC (Model-View-Controller) design

    pattern. The MVC design pattern is the formalization of a web programming approach

    where the application is divided into three component areas. The Model-View-Controller

    design pattern is a technique used to separate business logic (Model) from User Interface

    (View) and the program flow (Control).

     The View

     The view is how data is represented to the user. For instance the view in a

    web application may be an HTML page, an image or other media

     The Model

     The model represents data in the system. For instance, a model might

    represent the properties associated with a user’s profile

     The Controller

     The controller is the glue between the model and the view. It is

    responsible for controlling the flow of the program as well as processing

    updates from the model to the view and vice versa.


CIS 895 E-Learning Architecture Design

Below is the pictorial representation of 3-tired MVC architecture

     Fig: MVC architecture


CIS 895 E-Learning Architecture Design

Benefits of MVC

    ? Promotes Modularity

    ? Multiple Views

    ? Abstraction

    ? Allows application to be defined in a use-case, class diagram, sequence

    diagram or even activity diagram which is more easily transferred to


The typical MVC pattern is as follows:

     The browser’s http request is received by a controller servlet that (perhaps in cooperation

    with some controller beans) interacts with beans that comprise the model and interact

    with the database. Then the controller invokes the jsp’s or the html that comprise the

    view. Notice that the model beans typically produce data that are displayed by the jsp’s or

    the html that implement the view.

2.1.1 E-Learning’s View Tier

    This section of the project handles the presentation or the GUI of the application. The

    following table lists the part of the code that falls into this category.

     HTML files Purpose

     Index.html The home page of the application

     Login.html The login page for the users except admin

     Admin.html The login page for the administrator

     Register.html Page that enables users to register

     Contact.html Page that has the contact details

     Help.html Page that has instructions and information


CIS 895 E-Learning Architecture Design

2.1.2 E-Learning’s Model Tier

    This section of the project handles the modeling of the system. The Model captures the application’s data and interaction with the data (business logic).

     JAVA files Purpose Checks for the valid users Associates attributes related to each course Code behind the register.html that enables

    users to register Code behind administration login Code that generates exam Code that generates various topics of the

    specific courses

2.1.3 E-Learning’s Controller Tier -

    The Controller manages the user’s requests. The following table lists the part of the code

    that falls into this category.

     JAVA files Purpose Adds the course being offered Adds the exam to be conducted as part of

    the course Enables to modify the course if desired Displays the result of a particular exam Generates questions for each exam Enables to delete the course at the end of

    the semester


CIS 895 E-Learning Architecture Design

3. UML Representation of the System

     3.1 Class Diagrams

     Fig: Class Diagram E-Learning Web Application


CIS 895 E-Learning Architecture Design

3.1.1 Class Description:

    In the following section, I will discuss the various classes and its significance. User Class:

    This class creates a user that might be a student faulty or an administrator and so is the super class for all the three classes viz, Student, Faculty and Administrator. The class has the fields UserId and Password which are essential to login to the system and also to verify whether a subscribed user logs into the system. There is a field called Logged which is used as flag that returns true or false depending on whether a user logged in or logged out. Faculty Class:

    The Faculty class is a subclass of User class and so inherits the properties of its super class. Additionally the Faculty has functionalities like adding a course, uploading a module, adding a student to the course, adding an exam and grading the module.


CIS 895 E-Learning Architecture Design Administrator Class:

The Administrator who inherits the properties of User has additional functionality of

    administering all the courses offered by the system. Student Class:

The Student subclass has the additional fields like Name, Email, Phone Number and

    Address and a constructor that initializes the default values of the attributes. Course Class:

The Course class creates a Course with attributes CourseID, CourseName, Sessions and

    the deadlines for the course.


CIS 895 E-Learning Architecture Design

3.2 Sequence Diagram

     Fig: Sequence Diagram - E-Learning Web Application


Report this document

For any questions or suggestions please email