Technical system design document

Project Name: / Florida’s Water Management Districts Permitting Website
Project Manager: / Victor Castro
Business Sponsor: / Dave Fisk, SJRWMD
Carol Wehle, SFWMD
Dave Moore, SWFWMD
Author: / Chandra Dhakshnamoorthy

Table of Contents

I.Scope

A.Identification

B.Project overview

C.System context

II.Technical Framework

A.Performance & Downtime

B.Physical Architecture Diagram

C.Hardware/Software Specifications

D.Software Environment

1.Operating Systems

2.Languages

3.Database Type

4.Middleware

5.Software Tools

6.Module Location

III.System Components Design

A.Assumptions and constraints

1.Permit portal and permitting system

2.Look and feel

3.Interface with other system

B.Screen flow design

C.Admin component Use case diagram

D.Use cases for each logical component

1.User attempts to login

2.User performs Add function

3.User performs Modify function

4.User performs delete function

E.Infrastructure design

F.Data Architecture

G.Security considerations

1.Authorization roles

H.Implementation Plan

IV.Test Specifications

A.Test Plan

B.Test Cases

1.Test Case # 1: Navigate from ‘select your district’ box

2.Test Case # 2: Navigate from ‘What district am I in?’ link

3.Test case # 3: Identify the district for a split county

4.Test case # 4: verify ‘How do I?’ link

5.Test case # 5: check and verify the district home page links

6.Test case # 6: Admin tool login

7.Test case # 7: district admin user performs add function

8.Test case # 8: District admin user performs modify function

Technical System Design- 1 -


I.Scope

This section describes at a high level the scope of this system. It attempts to put the system within three contexts. First, it identifies it as a project of the Water Management Districts of Florida. Second, it provides a brief overview of the project and third it describes the system context in terms of its sub-components.

A.Identification

This website will serve as a portal for the public to initiate district related permitting activities and facilitate the access to various regulatory information, permitting resources, permitting compliance information submittal and permit application submission that each district made available on the web.

B.Project overview

The goal of the project is to develop and publish a central website which provides the public with user friendly interfaces and tools that guide them to navigate to the appropriate District website pages, online applications based on frequently asked/ common permit related questions and the geographic location of the site in question.

It provides user interfaces for the users that help them identify the appropriate District and direct them to a set of standard and consistent District home pages by enforcing a common look across all the districts. These pages provide access to various permitting information and the user can then perform various permit related tasks available from the District websites.

The system includes an administration tool to manage the content of the web pages for each district and the administration tool supports role based authorization to perform administrative tasks in managing the web pages. The system also interfaces with an ArcIMS system to provide the user with a web based map tool.

The application is built utilizing the industry standard J2EE components with oracle 9i as the database that can be deployed on any J2EE compliant application server.

C.System context

The system consists of mainly four subsystems:

1)The portal web application - The main web application that provides a set of static and dynamic web pages with a consistent look and feel.

2)The Oracle 9i Database – The Oracle relational database used to maintain the entire dynamic content of the web pages.

3)The Administration tool – Used to manage the content of the web pages based on role based authorization model.

4)The ArcIMS tool – The web based mapping tool used to identify the district.

II.Technical Framework

A.Performance & Downtime

Considering the graphical images and dynamic content of the web pages, the application must perform in a manner that is consistent with the acceptable Internet response times.

The downtime of the system is expected to be in accordance with the scheduled maintenance of the system and during the time the spatial data is updated in the GIS database, the mapping tool will be affected.

B.Physical Architecture Diagram

Web Clients DMZ

ArcIMS Server Spatial Data Server

Web Server Oracle 9i App Server

Oracle DB Server

C.Hardware/Software Specifications

Machine / Description / IP Address / Hardware / Memory / OS / Oracle

D.Software Environment

1.Operating Systems

Windows 2000 Server

Redhat Linux Advanced Server

2.Languages

  • Java for all server side components Java Server Pages, Servlets, Enterprise Java Beans.
  • Java script for all client side validations and other form scripts.

3.Database Type

The Permit Portal application will access application data from Oracle 9.2.2. Please see section 1c above for details.

4.Middleware

OC4J (Oracle Application Server Container For Java).

5.Software Tools

Jdeveloper

ArcIMS

6.Module Location

Java modules will reside on OIAS, the production Oracle 9i Application Server.

III.System Components Design

A.Assumptions and constraints

1.Permit portal and permitting system

While the system guides the user and directs him/her to the appropriate e-permitting system available on the web, the actual behavior and performance of the e-permitting system itself is not in the context of this proposed system.

2.Look and feel

While the look and feel of the presentation pages will reflect the purpose with which this website is built, a significant variance is expected once the user is directed to the district web pages in terms of look and feel and continuity.

3.Interface with other systems

The system does not interface with other system other than depicted in the physical architecture diagram.

B.Screen flow design

ns.]

C.Admin component Use case diagram

D.Use cases for each logical component

1.User attempts to login

Internet BrowserSystem

User

User

Selects the

District

2.User performs Add function

UserInternet BrowserSystem

User selects

Add

User

Adds new

Link info

3.User performs Modify function

UserInternet BrowserSystem

User selects

Modify

User

clicks

submit

4.User performs delete function

UserInternet BrowserSystem

User selects

Delete

User

clicks

submit

E.Infrastructure design

The application will be built based on MVC (Model View Controller) model-1 and model-2 architecture. Model-1 approach will be followed as a lightweight design in implementing the web tier for most of the application part that has very simple and fixed page flow.

Model-2 approach will be followed for administration tool component utilizing the Struts framework.

F.Data Architecture

The following diagram shows the logical database model design to be used for this system. This database will be used to store and maintain all the data content of the web pages. This db will be created in oracle 9i database and accessed y the application with full privileges.

G.Security considerations

The proposed portal system will be available for the public on the web and requires no user authentication to access and browse the web pages. The information made available on this website is not sensitive and the main purpose of this website is to encourage the public to access and get whatever information they need related to permitting activities of the five districts from a central point of access. Therefore all the pages available as part of this website are not protected and freely accessible.

However, the administration component of this system, which is used to maintain many of the web pages, needs to be secured and only authenticated users are allowed to access the admin tool. Since the administration tool is accessible via Internet, unauthorized users accessing the tool poses a major security risk and therefore needs to be highly secured and protected from unauthorized users.

The admin tool subsystem is secured by implementing J2EE security model and the users need to be authenticated to access the tool. Once the user is successfully authenticated, access control to the district home page admin functions is based on the user role.

1.Authorization roles

The following are the list of roles identified to perform admin functions using the admin tool.

(1)Northwest Florida district – admin
(2)Suwannee district – admin
(3)St. Johns district – admin
(4)Southwest district – admin
(5)South Florida district – admin
(6)Super user

Users assigned to district admin role will get access to the respective district home page with admin tools. Super user role will be used to access all the district pages to perform admin functions and to perform admin functions to common how do I? Questions page.

H.Implementation Plan

TBD

IV.Test Specifications

A.Test Plan

TBD

B.Test Cases

1.Test Case # 1: Navigate from ‘select your district’ box

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
1.1 / Open a browser window and type in the url to access the portal main page. On the portal main page, move the mouse over each of the district names listed on the ‘select your district’ box. / The corresponding district on the Florida state map must be highlighted as well as the district the mouse is pointed to.
1.2 / Move the mouse over the different parts of the state map. / The corresponding district listed on the box must be highlighted
1.3 / Click on the individual district names listed. / The corresponding district home page appears with the navigation trail found on the top left corner of the page reading the correct district name.
1.4 / Highlight and click the individual district from the map. / The expected result is the same as in test case 1.3 above

2.Test Case # 2: Navigate from ‘What district am I in?’ link

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
2.1 / On the portal main page, click the ‘What district am I in?’ hyperlink / What district am I in? web page is displayed.
2.2 / Click on the individual district from the map. / A pop-up window appears with the selected district in detail.
2.3 / Click on the individual district names listed on the top right corner. / The corresponding district home page appears with the navigation trail found on the top left corner of the page reading the correct district name.
2.4 / From the ‘what district am I in?’ web page select any county from the drop down list which is not split between two districts. / The expected result is the same as in test case 2.3 above

3.Test case # 3: Identify the district for a split county

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
3.1 / From the main page navigate to ‘what district am I in?’ page by clicking the link. Select a county from the drop down list, which is shared between two districts. / A new page appears with the two districts that share the selected county.
3.2 / Click one of the district links. / The corresponding district home page is displayed.
3.3 / Use the browser back button to go back and click the link for Advanced search tool. / The ArcIMS mapping tool page appears.
3.4 / Use the ArcIMS tool to identify the district and click the district link. / The corresponding district home page is displayed.
3.5 / Close the browser and open a new browser window and type in the url to access the main page and then click the ‘What district am I in?’ link. Now click the link for ‘Advanced search tool’ available at the bottom. / The ArcIMS map tool page appears.
3.6 / Repeat case 3.4

4.Test case # 4: verify ‘How do I?’ link

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
4.1 / Open a browser window and type in the url to access the main page. Click the ‘How do I?’ link. / How do I? Page appears listing the common questions.
4.2 / Click on one of the question links. / Where am I in? page appears.
4.3 / Click on any district from the state map. / A new window opens with the appropriate answer page from the selected district’s website.
4.4 / Select a county, which is not shared between two districts. / A new window opens with appropriate answer page from the district that includes the selected county.
4.5 / Click the Advance search tool link. / Advanced map tool page appears.
4.6 / Use the map tool to identify the district and click on the identified district link. / Refer case 4.4

5.Test case # 5: check and verify the district home page links

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
5.1 / Open a browser window and type in the url to access the main page. Select and click the north west Florida link from the select your district box / Northwest Florida home page appears.
In addition to the common question links available from the how do I? Section it must also list all the district specific questions pertaining to northwest Florida district.
All the links available from the ‘are you new?’ section must pertain to northwest Florida district.
5.2 / Click on the first question link available from the how do I? Section. / A new window opens with the appropriate answer page from northwest Florida district website.
5.4 / Repeat the case 5.2 for all of the remaining question links. / Refer case 5.2
5.5 / Click on the first link available from are you new? Section. / A new window opens with the appropriate answer page from northwest Florida district website.
5.6 / Repeat case 5.5 for all of the remaining links available from are you new? Section. / Refer case 5.2
5.7 / Repeat case 5.2 thru 5.6 for all of the remaining four districts. / Refer case 5.2 – 5.6

6.Test case # 6: Admin tool login

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
6.1 / Open a browser window and type in the url to access the admin tool. / A login window pops up.
6.2 / Type in the username assigned to south Florida district administrator.
Type in the password for the username / South Florida home page appears with admin tools displayed.
6.3 / Close the browser and repeat 6.1 – 6.2 for the remaining districts admin username. / Refer case 6.1 – 6.2
6.4 / Open a browser window and type in the url to access admin tool. Type in the username and password assigned to super user role. / A new page with a menu that lists manage functions for all the districts and common questions manage function.

7.Test case # 7: district admin user performs add function

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
7.1 / Open a browser window and type in the url to access admin tool and put the Suwannee district admin user name and password. Click submit. / Suwannee river water management district home page appears with admin tools available for each section.
7.2 / Click add button under how do I? Section. / Add page appears.
7.3 / Type in a questions text and valid url in the text areas provided and click submit. / A confirmation page appears with the hyperlink pointing to the url submitted.
7.4 / Click submit button. / Suwannee home page appears with the added question text listed.
7.5 / Click the added question link. / The appropriate answer page appears.
7.6 / Repeat case 7.1 thru 7.5 for remaining districts using the respective district admin user login. / Refer 7.1 – 7.5

8.Test case # 8: District admin user performs modify function

Case # /
Case Description / Expected Results /
(P)ass/
(F)ail /
Comments /
Tester
8.1 / Open a browser window and type in the url to access admin tool and put the southwest Florida district admin user name and password. Click submit. / Southwest river water management district home page appears with admin tools available for each section.
8.2 / Click modify button under how do I? Section. / Modify page appears with all the question text and url value listed.
8.3 / Modify a question text url value. / A confirmation page appears with the hyperlink pointing to the modified url submitted.
8.4 / Click submit button. / Southwest home page appears.
8.5 / Click the question link for which the url has been modified. / The appropriate answer page appears.
8.6 / Repeat case8.1 thru 8.5 for remaining districts using the respective district admin user login. / Refer 8.1 – 8.5

Approved By: ___Victor Castro______Date ____/____/____

Department: ______

Approved By: ______Date ____/____/____

Department: ______

FLWP_DESIGN.doc