odd

Shared by: ashrafp
-
Stats
views:
11
posted:
1/3/2011
language:
English
pages:
7
Document Sample
scope of work template
							                Object Design Document


1.    INTRODUCTION


1.1   Object Design Trade-Offs
Some of the trade-offs made in this project include:

a)    Security vs. Usability
      Our clients had informed us that security was not a big concern to them.
      However, we also did not want to create an application that was not
      secure against outside attacks. Therefore, when we implemented the
      login to the backend administration module where one can access and
      edit the FAQs in the database, we chose to use a 2-step login approach.
      Although this may take the usability rating down a bit, we wanted the
      increased security.

b)    Buy vs. Build
      Our clients are prepared to buy outside software, but only if our
      implementation does not meet their requirements. In an effort to save
      money, they opted to try to build first, and if the application is sub-par, they
      will go ahead and buy off-the-shelf components to perform the same
      operations our project is attempting to implement.

c)    Remote Accessibility vs. Training
      Our team originally decided to implement the software using VB.Net. All
      three team members had experience with VB or VB.Net. However, we
      have since decided that we will be implementing with PHP, a server side
      language, which only one of three team members have past experience
      with. Using VB.Net, we would only be able to implement and test within
      the Financial Aid servers’ network and not from outside. With PHP, we
      will be able to implement and test remotely and hence, we chose to
      undergo more training to learn PHP in order to gain remote accessibility.


1.2   Interface Documentation Guidelines
Variables
Variable names should be descriptive of the variables’ use. All variable names
will be nouns. We will use the HumpBack convention here. Each word after the
                              Object Design Document


first word will be capitalized. For constants, variable names should be in all
capital letters and an underscore character should separate each word.


Examples:
int key;
bool sortedList;
string lastModAccntName;
const int CONSTANT;



Classes
Classes will be named with singular nouns or noun phrases. Each word should
be capitalized.


Examples:
QuestionAnswer();
User();

Methods
All methods will be named with verb phrases with each word capitalized.

Examples:
AddQuestion();
DeleteUser(string username);


Various Notes
    Forms, textboxes, command buttons, and so forth that are used for the
      interface will be assigned names according to Hungarian Notation. For
      example, frmSearch will be the form used for the search.
    Database fields will be named using noun phrases. For example, userId.


1.3    Interface Documentation Guidelines

FAQ - Frequently asked questions.

InterFAQS – Interactive Frequently Asked Questions System.

ERD – Entity-Relationship Diagram. Diagram that is the standard for displaying
databases. Shows various classes, attributes of the classes, and how the
classes interact with one another.


                                                                                 2
                              Object Design Document



HTML - Hypertext Markup Language is the coded format language used for
creating hypertext documents on the World Wide Web and controlling how web
pages appear.

PHP – PHP Hypertext Preprocessor is a widely-used general-purpose scripting
language that is especially suited for Web development and can be embedded
into Hypertext Markup Language(HTML). PHP is a recursive acronym for PHP:
Hypertext Preprocessor in that it uses itself, PHP, in the acronym.
MySQL – The most popular open-source(free) version of database management.

RAD – Requirements Analysis Document which gives all the requirements that
our clients want the application to do.


1.4    References

InterFAQs’ Requirements Analysis Document
InterFAQs’ System Design Document
InterFAQs’ Software Project Outline
InterFAQs’ Software Development Plan
InterFAQs’ website: www.interfaqs.com - All files can be found here.



2.     PACKAGES
    QuestionInfo:          Contains all properties involving a FAQ in the
                            database outside of the actual text of the question
                            and the answer to the question.

        questionId: an integer that uniquely identifies each question, primary
         key of QuestionInfo table, foreign key to RatingPopularity table as well
         as QuestionAnswer table.

        topicId: an integer that uniquely identifies the topic, foreign key to
         Topic table.

        lastModAccntName: string that stores the username of the last
         individual to modify the FAQ in the database. Foreign key to User
         table.

        active: bool that stores false or true. True means that the question is
         inactive and false means it is active. Inactive questions are still stored
         in the database, but they are not displayed on or searched from the
         website.


                                                                                  3
                               Object Design Document



       insertTimestamp: a timing format, tells when the FAQ was inserted
        into the database.

       lastModTimestamp: a timing format, tells when the FAQ was last
        modified.

       pending: bool that stores true or false. If true, then the FAQ is from a
        user’s email and is awaiting a response from a Financial Aid
        Representative.

       topicPriority: integer, stores a number that is used to help figure
        relevance of one FAQ in a topic versus another in the same topic.

       avgRating: float, stores the average rating of a FAQ.

       ratingTotal: integer used to store the sum of all ratings combined.

       numRatings: integer that stores the total number of ratings for a FAQ.
        Is used to determine weightedRating.

       weightedRating: double that stores the weighted rating of the FAQ,
        this is what is used on the web client to represent the rating of a FAQ.

       numViews: integer used to determine the popularity of a FAQ.




   User:      Contains information about the users of the administration module.
               These users will have access to edit, add, and delete FAQs from
               the database. They will for the most part, be Financial Aid
               Representatives.


             accountId: integer that stores a uniquely identified id for each user
              account

             accountName: string that stores username, primary key of User
              table.

             email: string of characters




                                                                                   4
                             Object Design Document


           fullAdmin: bool that stores true or false. True means the user has
            full administration privileges and can add, edit, and delete user
            accounts as well as add, edit, and delete FAQs.

           firstName: string of characters

           lastName: string of characters

           password: string of characters

           lastLogin: datetime that stores a timestamp of a user’s last login


   QuestionAnswer: Contains actual text of the question and the answer to
                           the question.

           questionId: integer, primary key or QuestionAnswer table.

           question: string that stores actual question text.

           answer: string that stores actual answer text.



   Topic: Stores information regarding the topics that the FAQs are divided
             among.

           topicId: integer that uniquely identifies a topic, primary key of Topic
            table.

           topicDesc: string that stores the text description of a topic.



   UpdateNotify:          Stores information that makes it possible to
                           email students when a question is updated if they so
                           prefer as well as respond to questions from students
                           via their email.

           emailId: integer that uniquely identifies each instance of the
            UpdateNotify class.

           email: string that stores the email of the individual or student that is
            either requesting to know when a particular FAQ is updated or has
            a question that they need to email to a Financial Aid Representative



                                                                                  5
                          Object Design Document


           that they can’t find on the website. Primary key of the UpdateNotify
           table.

        questionId: string of characters, primary key of the UpdateNotify
         table as well as a foreign key to the QuestionAnswer table.



● Words:           Stores thousands and thousands of words that are needed
                   for the spell checker.

        wordId: integer that uniquely identifies each word in the database.

        word: string that stores the text of a word.



● Settings:        Stores settings properties that allow Administrators to
                   change the appearance of the web client, edit the header
                   and footer HTML in the case of SIUE logo or color changes
                   in the future, change what address pending questions are
                   forwarded to, as well as change what the default sorting of
                   FAQs is in the web client..

        settingId: integer that uniquely identifies an instance of the settings
         class.

        emailAddress: string that stores the email address that questions
         from users of the web client are sent to for a financial aid
         representative to answer and respond.

        browseWindowColor: string that stores the hex code for the color
         of the browse window of the web client.

        firstRowColor: string that stores the hex code for the color of the
         first row of results in the browse window of the web client.

        alternateRowColor: string that stores the hex code for the color of
         the alternate row of results in the browse window of the web client.

        defaultSorting: string that stores what the browse window of the
         web client sorts the results by default.

        headerHTML: string that stores the HTML of the header of the web
         client.



                                                                               6
                                Object Design Document


            leftsideHTML: string that stores the HTML of the Leftside menu of
             the web client.

            footerHTML: string that stores the HTML of the footer of the web
             client.

            title: string that stores title that is displayed in the browser header
             when viewing the web client.

            linkColor: string that stores the hex code for the color of the
             hyperlinks in the web client.

            textColor: string that stores the hex code for the color of the text in
             the web client.

            lastOptimized: integer that stores a number used for optimizations
             of the database




Version 1.3


Revision History:

v1.0 – Eric Rakers – 12/07/04
        - Initial creation.

v1.1 – Eric Rakers – 12/08/04
        - Adjustments and updates made.

v1.2 – Tyler Douthitt – 12/15/04
        - Formatting adjustments and packages

v1.3 – Eric Rakers – 05/03/05
        - Updates made to keep document current with project. Updates and additions to
             packages to keep it current with changes made to ERD




                                                                                         7

						
Related docs
Other docs by ashrafp
08juneex
Views: 8  |  Downloads: 0
Blogger (DOC)
Views: 61  |  Downloads: 0
Todd_A_Eaton
Views: 163  |  Downloads: 0
169010
Views: 0  |  Downloads: 0
12-17-2009
Views: 1  |  Downloads: 0
AN ADDRESS READ AT THE PART II OF DAAD
Views: 15  |  Downloads: 0
13259-Stuart-Automatic-Flow-Switch-Datasheet
Views: 32  |  Downloads: 0
ManuelAntonioCostaRica
Views: 2  |  Downloads: 0