Sie sind auf Seite 1von 8

Grade Management System Software Design and Implementation Document

Harshul Jain (B09012), Pranav Kapoor (B09022), Amanjot Kaur (B09005) 2009 batch Indian Institute of Technolgoy Mandi 14/5/2012

Change record: Issue 1. Date 14/05/2012 Sections chaged All Reason Initial

CONTENTS

CONTENTS

Contents
1 Preamble
1.1 1.2 1.3 1.4 Project Overview Software Overview Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3
3 3 3 3

Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 User Interface Specications 3 Design


3.1 3.2 Modular Decomposition Implementation 3.2.1 3.2.2 OID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Class and Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 4
4 5 7 7

4 Appendix 5 References

8 8

Grade Management System, IIT Mandi

PREAMBLE

1 Preamble
1.1 Project Overview
Project aims at providing a Grade management system to Faculty, Students and Teaching Assistants. This project takes the advantage of SNMP protocol. The motive behind this project is to understand the Access control provided by V3 of SNMP and how SNMP can be used to manage data. In addition to these this project also helped in understanding Application Programing Interface and how API can be created for building applications.

1.2

Software Overview

The software is divided into 4 parts. They are 1. API 2. Net-SNMP 3. SNMP Server 4. Database

Out of these Net-SNMP has been used as it is.

API is written in Python.

Conguration changes were done in SNMP Server and Mysql is used for storing data which is connected to SNMP Server through Perl.

1.3

Purpose

This document is intended for Developers who want to use this API either to build an application for grade management, people are looking for a way to use SNMP for managing their data. It explains the software design and software architecture.

1.4

Requirements

The software takes leverage of the following softwares: 1. Net-SNMP 2. MySQL 3. Perl 4. Python The software is divided into 3 block which can function on 3 dierent machines. They are: 1. Net-SNMP Client

Grade Management System, IIT Mandi

DESIGN

2. SNMP Server 3. MySQL Server

2 User Interface Specications


This software is an API built over Net-SNMP. API is written in Python and it provides classes and functions for accessing data over SNMP. Name of the packege is 'grading'. This package can be congured to access

3 Design
The software is designed as a client-server architecture. which work as client  server/clientserver. There are 3 blocks

3.1

Modular Decomposition

Give the break-up of your software into logical modules, accompanied by a gure. Show control ow with broken lines, data ow with solid lines.

Grade Management System, IIT Mandi

3.2

Implementation

DESIGN

3.2

Implementation

Following technologies were used for creating the project 1. Net-SNMP (5.7.1) 2. Python (2.7) 3. Perl () 4. MySQL (5.5)

Grade Management System, IIT Mandi

3.2

Implementation

DESIGN

Dierent Layers in Software

Grade Management System, IIT Mandi

3.2

Implementation

DESIGN

3.2.1

Class and Modules

Class Diagram

3.2.2

OID

Following conventions were used for creating the OIDs. BaseOid : 1.3.6.1.4.1.8072.9999.9999 1. Courses: (a) BaseOid.0 > List of all courses (b) BaseOid.0.X >Details of a course where X is a course Id (c) BaseOid.0.X.1 >Course Name (d) BaseOid.0.X.2 > List of students enrolled in this course 2. Student: (a) BaseOid.1> List of all students (b) BaseOid.1.Y.1>Name of course where Y is the student ID. (c) BaseOid.1.Y.X>Marks in course X where Y is student ID.

Grade Management System, IIT Mandi

REFERENCES

4 Appendix

grading/

       

__init__.py : Used for dening folder a package and also for dening important variables instructor.py : This is the base class for Faculty, Admin, and Ta. This provides functionality for accessing data. faculty.py : This denes Faculty class, gives required functionality admin.py : Denes Admin class for doing administrative tasks like creating courses, students, faculty, Tas. ta.py course.py : Models a course. Can be used for accessing the list of all the courses and getting their details. student.py : grades. nSnmpClient.py : It acts as an interface between rest of the classes and Net-SNMP utilities. Models a Student, provides functionality for viewing

5 References
1. manpage snmpvacm, http://docs.oracle.com/cd/E19253-01/816-5166/snmpvacm1m/index.html, 10-5-2012 2. man pages, http://www.net-snmp.org/docs/man/, 13-5-2012 3. Subramanian,M., Network Management: Principles and Practice, Ch7. 4. Python documentation, The Python Software Foundation, 14-5-2012.

Grade Management System, IIT Mandi

Das könnte Ihnen auch gefallen