Software Engineering Project
October 22, 2011
This document is intended to be a formal, internal document that lays out the implementation
of our project. The team, our Employer, and the Client will view it. This document was
originally our Design Specification and was delivered to our boss on February 20, 2001. The
original document was revised throughout the design process to produce, this our final
implementation manual, which is deliverable on May 1, 2001.
The original MicroTutor application was designed in an environment of 286 computers and
keyboard interaction. It has a basic navigation that is controlled by two menus, one for the
lessons and one for the tutorials. The user can navigate through these screens using the
arrow keys and the enter key. Once inside a lesson or a tutorial, there are several options
available to the user to progress through the program. This application is the basis for our
web-based application. While it is not possible to simply port the existing application to the
web, we are endeavoring to maintain the navigation process and user interaction as similar as
possible to the original MicroTutor. We will make use of newer technologies such as mouse
interaction, dynamic database information gathering, and remote login processes, while
keeping the spirit of a program that is very user friendly to assist students in learning Spanish.
The end result will be a web application. A web application is simply defined as a related
collection of ASP and other web related components.
2. High-Level Design Specification
In our project, the control is centralized in the Windows 2000 Server, as figure 2.1 indicates.
2A. User Interface
The user opens a browser window and sends an HTTP request to the Windows 2000
server. In the HTTP request would be a reference to an ASP file, i.e. X.asp. The user
receives a response in the form of an HTML page, which is displayed in the browser
window. Our Web Application is designed to run in Microsoft’s Internet Explorer 5.0 or
2B. Access Database
Provides storage for the following elements:
Grades & Testing
The database receives a request from the Windows 2000 Server for data. The
database gathers the appropriate information and sends it back to the Windows 2000
Server. The database also receives data to be input into the database from the
Windows 2000 Server. It inputs the data in the appropriate tables. Database
connectivity for the ASP is provided via an ODBC connection. Refer to the
Maintenance Manual for setup instructions.
2C. Windows 2000 Server
The Windows 2000 Server is the central manager of the system. The server receives
requests from all other components and responds to those requests.
2D. ASP Files
An ASP page is a combination of a collection of scripts and other HTML components.
A request for an ASP page comes from the Windows 2000 server. ASP sends the
appropriate file back to the Windows 2000 server for processing.
2E. IIS Server
When the Windows 2000 Server receives a request for a web page, the web server
first examines the file extension of the requested page. If the file extension is .asp,
then the web server (Window 2000 in this project) arranges for the ASP to be handled
by the ASP script host (IIS 5.0 in this project) IIS (Internet Information Server) is
present on the Windows 2000 Server machine in the form of the file asp.dll, which is
run by the web server itself. The IIS decodes and compiles the ASP file, and runs the
resulting program. The program may generate requests that are sent to the Windows
2000 server, usually in the form of a database request. It receives the response from
the Windows 2000 server. After all the data is gathered, the program incorporates the
data into an HTML page, which the IIS Server returns to the Windows 2000 server.
3. Detailed Design Specification
3A. User Interface
The overall user interface is the web browser contained on the users end system. This
application was designed to run under Microsoft Internet Explorer 5.0 or higher. The user
interface contains two major components as described in the Contract, input and output. The
input from the user is from clicking buttons, or links, or entering data into fields. The output is
an HTML page that is the result of a previous user action. The HTML pages will be a
combination of ASP scripts and static HTML pages. The ASP files will be discussed in section
3D. The static HTML pages will deal with help content and the MicroTutor homepage. Help
consists of four sections, Frequently Asked Questions (FAQ’s), getting started, Special
Characters, and Logging out see figure 3.1. The tutorial is designed to have a menu that the
end user interfaces with that goes to a particular tutorial. Tutorials were originally designed to
be static standalone HTML pages that had no interaction with the end user. They were to be
used solely as a reference. Later design specifications were to have integrated exercises
specific to a particular section within each tutorial. Due to time constraints this portion of the
implementation was left off. To complete this module the development team needs to work
closely with the client to establish, for each specific tutorial, where to insert these exercises.
Once the location of the exercises has been determined the design team can then write ASP
pages to pull these exercises from the database and insert them into their appropriate location.
See fig. 3.2. The MicroTutor homepage will describe the program and allow students, faculty,
and administrators to login.
Microtutor Home Home SyllaDiv
Lessons Click Lessons Demon Adj
Username Tutorials Lessons Tutorials Subj Pronoun
Password Glossary Glossary ...
Microtutor Click Title
Invalid logon Forgot sent
Forgot Password? E.1-6
Try Again? E.1-7 Microtutor
Microtutor Home Welcome to
Home Welcome to >Lessons Lesson # X
>Lessons Lesson # X
Microtutor pretest Help
Pretest Lesson # x Click posttest
Pretest tutorial Expand Menu Bar
DIRECTIONS next exercise
E.1-9 E.1-10 E.1-11
Microtutor Microtutor Microtutor
Pretest Lesson # x Pretest Lesson # x Pretest Lesson # x
Question Ans Field Review?
Example next Submit Reset Yes No
E.1-13 No E.1-12
Pretest Lesson # x Pretest Lesson # x
Pretest Lesson # x
Your ans Yes 1.corr
Correct ans 2.incorr
No Change your answer?
total cor: Review Wrong?
MT Go To MT
Admin Menu Lessons Lesson Menu
Select Select Pretest Select
Select Tutorial E.2-5 Exercise E.2-6 Posttest E.2-7 Select Glossary
MT MT MT
Exercise Form Pretest Form Posttest Form
Tutorial Form Glossary Form
3B. Access Database
Microsoft Access was chosen as the database platform to use for implementation of our web
application. The choice to use this specific platform was made based on ease of use and the
fact that our application need to be developed rapidly. The team already had a strong
understanding of the Access technology. Access does have its limitations and future teams
who might choose to upgrade this product need to keep in mind these limitations before this
product is put into production use. The two primary limitations to Microsoft Access are size
and a limit on the number of concurrent users that can access the database. The maximum
size a database can be and still be expected to perform exactly as designed is 50MB. The
maximum number of concurrent users that can access the database is 255. It is for these
reasons that the team planned to migrate the project to Microsoft’s SQL server 2000. The
MSDE engine allows for limitless database size and concurrent connections in the 1000’s.
Due to time constraints we did not complete this portion of the project and it is left either to the
client or future teams to accomplish this.
The database contains tables that will hold information for the ASP files. The related ASP files
will be discussed in section 3D. See fig. 3.3 for a layout of the database.
Course Table: Course_ID will be compiled using the fields:
Level (i.e. span 1, span 2)
Date (fall, 2001)
Grade Table: Grade_Type refers to whether the grade was earned in the pre-test,
post-test, or other as we define (such as mid-term or final).
Instructor Table: This is so that TA’s can access grade reports for their sections. The
administrator is different from the TA/ Instructor. Administrators should be a separate
function that will be defined within the Access administrative controls rather than in any
B Conceptual Data Model Diagram
INSTRUCTOR ID<PK> COURSE_ID <PK>
INSTRUCTOR_ID = INSTRUCTOR_ID
INSTRUCTOR_LNAME -- Level
INSTRUCTOR_FNAME -- Section
INSTRUCTOR_PASSCODE -- Date
PRETEST_QUESTION LESSON_NUMBER =
LESSON_NUMBER LESSON STUDENT_ID = STUDENT_ID
LESSON_TITLE STUDENT_ID <PK>
LESSON_INSTRUCTIONS LESSON-NUMBER <FK>
POSTTEST_QUESTION STUDENT_PASSCODE (Protected)
POSTTEST_ANSWEREXPLANATION LESSON_NUMBER = STUDENT_ID = STUDENT_ID
LESSON_NUMBER = LESSON_NUMBER
EXERCISES RLSH_TBL GRADE
EXERCISE S_QUESTIONNUMBER LESSON_NUMBER <PK,FK> GRADE_DATE
TEMPANSW_RESPONSE GLOSSARY_WORD<PK> FEEDBACK_NUMBER <PK>
GLOSSARY_DEFINITION FEEDBACK TEXT
3C. Windows 2000 Server
The choice of a Windows 2000 Server was based on the need to develop an application that
could be easily integrated into the existing network and that would not require the romance
language personal to have to learn and new technology that would require a large learning
curve. It is assumed that the personnel will be familiar with the Windows operating system and
they will be responsible for any security setting their department requires.
3D. ASP Files
The ASP files are a collection of scripts that will dynamically gather information from the
database and compile it into an HTML page to display to the user. The ASP files will contain
the flow and layout of the user interface. The Lesson subsystem includes the menu, pretest,
exercises, and posttest for each lesson. See fig 3.4. The design plan is to implement one set
of lesson ASP’s and have it serve as a template for all twenty-nine lessons that are currently
part of MicroTutor. The login page will allow students to register for the first time. See fig 3.5.
If a student logs in successfully, they will be taken to the lesson menu. If an instructor logs in
successfully they will be taken to the Instructor Menu. If an administrator logs in successfully,
they will be taken to the administration menu. The logout page will allow students to access
their records. See fig. 3.6. If they choose to view records instead of logging out, they will be
redirected to the record menu page. The records page will include a menu listing the different
views available. See fig. 3.7. The student can view their grades by semester, or by lesson, or
as a summary page. The records portion of the application is a phase two option and was not
implemented in the current working model. Currently selecting the record option will take the
student to a web page that notifies them that the option they have currently selected is under
construction. The glossary will contain all of the Spanish words and their English meaning that
are used in MicroTutor. See fig. 3.8. The glossary portion of the application is a phase two
option and was not implemented in the current working model.
Also of important note, the Help With My Password help page will not e-mail the end user their
password. The instructor, who will email the student their password, can retrieve the password
for the student. The flow diagrams in this document give a clear understanding of how the
entire program flows. Some of the pages represented were not titled the same and some
pages were consolidated into a single page.
3E. IIS Server
The IIS server is instrumental to the operation of our web application. It must be installed
and configured correctly for the application to function correctly. See the Maintenance
Manual for specific information about the set up of this component. The function of the IIS
module is to process all Active Server Pages (ASP).