[]{#__RefHeading___Toc137537833 .anchor}

**Quality Tools Web site**

System Design Document

Version 1.0

[]{#__RefHeading___Toc137537834 .anchor}**May 12, 2006**

Document Change Record

  ------------- -------------- -------------------------------------------
  Version       Date           Description
  Number                       

  1.0           05/12/2006     Initial document

                               
  ------------- -------------- -------------------------------------------

[**Quality Tools Clearinghouse Web site
i**](#__RefHeading___Toc137537833)

[May 12, 2006 i](#__RefHeading___Toc137537834)

[1. Introduction 5](#introduction)

[1.1 Document Overview 5](#document-overview)

[1.2 Reference documents 5](#reference-documents)

[2. system architecture 7](#system-architecture)

[2.1 domain model 7](#domain-model)

[2.1.1 Background 7](#background)

[2.2 Overview of Content Manager 8](#overview-of-content-manager)

[2.3 design model 8](#design-model)

[2.4 Major Design features 8](#major-design-features)

[2.4.1 User Interface 8](#user-interface)

[2.4.2 Databases 8](#databases)

[2.4.3 Components 9](#components)

[2.5 database design 9](#database-design)

[3. components 10](#components-1)

[3.1 Audience browse 10](#audience-browse)

[3.2 Contact Us 10](#contact-us)

[3.3 Index Browse 10](#index-browse)

[3.3.1 Archive Index Browse 10](#archive-index-browse)

[3.3.2 Tool Index Browse 10](#tool-index-browse)

[3.4 Layout and Navigation Controls 10](#layout-and-navigation-controls)

[3.4.1 Audience Browse control 10](#audience-browse-control)

[3.4.2 Header control 11](#header-control)

[3.4.3 Footer control 11](#footer-control)

[3.5 Content Manager 11](#content-manager)

[3.6 Management Reports 11](#management-reports)

[3.6.1 AHRQ Developed Tools 11](#ahrq-developed-tools)

[3.6.2 AHRQ Sponsored Tools 11](#ahrq-sponsored-tools)

[3.6.3 Lookup Lists 11](#lookup-lists)

[3.6.4 Pub Tools Changed 11](#pub-tools-changed)

[3.6.5 12](#static-page-include-control)

[3.7 Static Page Include Control 12](#__RefHeading___Toc137537866)

[3.8 search 13](#search)

[3.9 Search Logging 13](#search-logging)

[3.10 summary logging 13](#summary-logging)

[3.11 What's New 13](#whats-new)

[4. Design to Requirements traceability
14](#design-to-requirements-traceability)

[Appendix A -- acronym List 17](#appendix-a-acronym-list)

[APPENDIX B -- DATABASE 18](#appendix-b-database)

[b.1 database design policy 18](#b.1-database-design-policy)

[B.2 Entity Relationship Diagrams (ERD's)
18](#b.2-entity-relationship-diagrams-erds)

[B.3 Data Dictionaries 18](#b.3-data-dictionaries)

# Introduction

The System Design Document (SDD) describes the design decisions,
architectural design, and the detailed design needed to implement the
QualityTools (QT) clearinghouse Web site. The SDD is used as the basis
for implementing the software. It provides the information needed to
implement the design and provide software support.

The Clearinghouse System is comprised of, among others, a content
management system and multiple projects, each of which provides to the
public, through a site on the World Wide Web, access to portions of the
contained content. The QualityTools project is a component of the
Clearinghouse System.

## Document Overview

This System Design Document defines the strategies necessary to
accomplish the design activities associated with the QualityTools Web
site. The remaining System Design Document sections are organized as
follows:

-   ***Section 2. System Architecture:*** Describes and provides an
    overview of the system, the conceptual and architectural design,
    interfaces and the various environments that will be used throughout
    the development lifecycle.

-   ***Section 3. Components*:** Identifies and describes each component
    broken down into its parts that are described in detail.

-   ***Section 4. Design to Requirements Traceability***: Summarizes
    traceability from each design element in this plan to the
    requirements it addresses, as prescribed by the QualityTools
    Clearinghouse Web site module Software Requirements Document (SRD).

-   ***Appendix A. Acronym List*:** Defines the acronyms to be used on
    the project.

-   ***Appendix B. Database***: Describes database-wide design decisions
    about the database\'s behavioral design and other decisions
    affecting further design of the database broken down into its parts
    that are described in detail.

## Reference documents

For additional project specific information, refer to the following
documents:

-   QualityTools Web Site Data Dictionaries

-   QualityTools Web Site ER Diagram

-   QualityTools Web Site Software Requirements Document (SRD)

-   Analysis Subsystem Software Requirements Document (SRD)

-   Analysis Subsystem System Design Document (SDD)

-   Content Management Subsystem Software Requirements Document (SRD)

-   Content Management Subsystem System Design Document (SDD)

-   "What's New" E-mail Subsystem Software Requirements Document (SRD)

-   "What's New" E-mail Subsystem System Design Document (SDD)

-   Search Subsystem Software Requirements Document (SRD)

-   Search Subsystem System Design Document (SDD)

-   Summary Logging Software Requirements Document (SRD)

-   Summary Logging System Design Document (SDD)

-   Web Crawl Module Software Requirements Document (SRD)

-   Web Crawl Module System Design Document (SDD)

# system architecture

## domain model

### Background 

The QuailtyTools Web site provides a user access to practical,
ready-to-use tools for measuring and improving the quality of health
care. The QualityTools Web site provides facilities for both browsing
and searching for tools. The browse features provided are an index
browse, browse by audience, and a "What's New" browse. Searches executed
for the QualityTools Web site will search both the summaries and the web
related data collected by the Web Crawler subsystem.

**Figure 2.1-1 QualityTools Web Site Background**

![](media/image2.jpeg){width="6.4875in" height="5.491666666666666in"}

## Overview of Content Manager

Together with the doc_library database, Content Manager (CM) is the core
of the Clearinghouse System. It is a client based VB6 and VB.NET
application that serves as an interactive user interface to the
doc_library database. Its primary function is to support the creation
and management of summaries. In this context, a summary is defined as a
structured collection of components which identify, describe and provide
relevant information about a piece of communication of any kind,
published or not, and carried on virtually any kind of media.

The CM tool is used by content developers to enter, view and edit the
individual components of documents. These components are referred to as
fields. They include, among other things, free form text descriptions
such as summaries, precise values such as dates and volume numbers,
items chosen from restricted lists such as concepts or citations and
references to members of collections, such as sponsoring organizations,
which have multiple descriptive attributes of their own.

CM also provides the means to manage the content of lists from which
field values are picked such as controlled vocabulary and the
information associated with entities such as organizations, to initiate
citations and create crawl points and to edit directly some portions of
Web sites such as banners.

Summaries are associated with projects, and project managers can use CM
to define the fields which comprise a summary, to make assignments of
documents to content developers and indexers, to monitor the status and
progress of content development of individual documents, to approve the
results of that progress and to manage the cycle of verification in
which the originator of the work to which a document refers is asked to
review and approve that document.

## design model

The defining object for the QualityTools Web site is a tool. A tool is
another name for a summary. For more information on summaries please see
the Content Manager SRD and the Content Manager SDD. The QualityTools
Web site will provide a facility to search and browse these tools.

## Major Design features

### User Interface

The user interface for the QualityTools Web site will consist of two
areas. The first is the preparation of the tool data and the second is
the presentation of the tool data. Tool data will be prepared using the
Content Manager application. Tool data will be presented on the Web site
using web pages that will have a uniform header and footer. These pages
may utilize HTML forms or links to provide navigation and functionality.

### Databases

The QualityTools Web site will use the doc_library database for all data
presented on the Prep Web site. Content Manger will be the program used
to create and update all data related to the QualityTools summaries. Web
Crawl data used for the search will be collected by the Web Crawler and
stored in the WebCrawl database before being populated to doc_library.
For more information on the Web Crawler please see the Web Crawl Module
SRD and the Web Crawl Module SDD. The search logging component will use
the Analysis database. For more information on this please see the
Analysis Subsystem SRD and the Analysis Subsystem SDD. After the data
has been prepared in both the doc_library and WebCrawl databases it will
be published to the doc_preview and doc_lib_prod databases. The
doc_preview database is used as a staging database to preview data that
will be published and the doc_lib_prod database is a subset of
doc_library used to display the published information on the
QualityTools Clearinghouse Web site.

### Components

The QualityTools Web site will be composed of ten separate components.
These components will be Audience Browse, Contact Us, Content Manager
Extensions, Index Browse, Layout and Navigation Controls, Management
Reports, Static Page Include Control, Search, Summary Logging, and
"What's New".

## database design

The QualityTools Web site will use the doc_library database to present
all data on the Web site. For more information on the structure and
design of the doc_library Web site please see the Content Manager SRD,
the Content Manager SDD, the QualityTools Web site data dictionaries,
and the QualityTools Web site ER diagram.

# components

## Audience browse

The Audience Browse component consists of a series of VB.NET ASPX pages
that allow a user to browse tools categorized according to audience
type. The different audience types will be "Providers", "Policymakers",
"Patients and Consumers", and "Payers and Purchasers". These audience
types will be created as a controlled vocabulary list in CM and will be
assigned to a tool via CM by a content abstracter. Each audience browse
section will be further broken down into areas of interest within each
audience. The audience browse feature will allow for both the browsing
of all tools within an audience section and browsing within each area of
interest.

## Contact Us 

The Contact Us component will use a VB.NET ASPX page to send email from
the QualityTools Web site to a predefined system email list. These email
types will be "Technical Problem or Question", "Suggestion or Comment",
"General Questions", and "General Feedback/Other".

## Index Browse

The Index Browse component will consist of a series of VB.NET ASPX pages
that allow a user to browse both archived and active tools.

### Archive Index Browse

The Archive index browse will allow a user to view tools that are no
longer published to the site. This feature will be a VB.NET ASPX page
and will show previously published tools in two categories: withdrawn
and updated tools. The tools list will be sorted by withdrawn and update
status first, developing organization second, and lastly by tool title.

### Tool Index Browse

The tool index browse will allow users to view all currently published
tools. These tools will be organized by developing organization first
and tool title second. Each tool title on this page will link to the
structured abstract for the given tool.

## Layout and Navigation Controls

The layout / navigation controls will consist of a series of VB.NET ASMX
controls that will control the navigation for each page. The controls
will be the header, footer, and audience browse navigation. These
controls will allow for a consistent look on each page of the
QualityTools Web site.

### Audience Browse control

The Audience Browse control will provide navigation to link to each
specified section of the audience browse feature.

### Header control 

The header control component will contain the QualityTools and AHRQ logo
and link to the QualityTools Web site home page.

### Footer control

The footer control contains links to the following sections: About,
Accessibility, Contact Us, Disclaimer, Feedback, Help, Privacy Policy
Notice, Site Map, "What's New", Patients and Consumers, Payers and
Purchasers, Policymakers, and Providers. The footer also contains the
project name, the current publication date, and a link to the FirstGov
site.

## Content Manager 

Content Manager will be used to prepare all data that appears on the
QualityTools Web site. For more information on Content Manager please
refer to the Content Management Subsystem SRD and the Content Management
Subsystem SDD.

## Management Reports

The QualityTools Web site will include a series of management reports
that will be available to authenticated users only via the Prep site.
All reports will be implemented using ASPX pages to display data from a
SQL Server database. The SQL Server database will use stored procedures
to retrieve the data. The following reports will be included in the
QualityTools Web site.

### AHRQ Developed Tools

The AHRQ Developed Tools report will allow a user to view all tools
developed by AHRQ according to document status. A user will be able to
select the document status from a drop down list. The tools in the
result list will be ordered by tool number in descending order.

### AHRQ Sponsored Tools

The AHRQ Sponsored Tools report will allow a user to view all tools
sponsored by AHRQ according to document status. A user will be able to
select the document status from a drop down list. The tools in the
result list will be ordered by tool number in descending order.

### Lookup Lists

The Lookup Lists report will allow a user to view tools based upon the
values selected for given lookup lists in the structured abstract system
(for more information on lookup lists please see the Content Management
Subsystem SRD and the Content Management Subsystem SDD). The report will
allow a user to select one or more lookup lists from a list box. The
selected lists will then be used to display three columns. The first
column will be the lookup list name, the second column will be the
lookup list value, and the third will show all tools attached to the
given lookup list value. The report will be sorted by lookup list,
lookup value, and tool title in that order.

### NHQR/NHDR Views

The NHQR/NHDR Views report will show how many times the 2003 NHQR report
was downloaded.

### Pub Tools Changed

The Pub Tools Changed report will show changes to any published tools
after a user specified date.

### QT Summary Views 

The QT Summary Views report will show the number of times developer's
summaries have been viewed. For more information on the Summary View
reports please see the Summary Logging Subsystem SRD and Summary Logging
Subsystem SDD.

### Search Report

The Search report will show both a summary report and a detailed search
report. The summary and detailed reports are explained further in the
Analysis Subsystem SRD and Analysis Subsystem SDD.

### Task Report

The Task report will show tools based upon the tool status, the tasks
associated with the status, and the start and end task dates. The report
will display the resulting tools according to tool number. Each tool
will display the tool's status, the primary developer, the tool title,
and the tasks that match the selected task for the tool. Each tool title
will link to the tool summary page.

### Tool Report

The Tool report will allow a user to select a tool status and the field
names from a list of fields associated with the QualityTools project.
The report will then display the tool and the selected fields. The
report will also always include the tool title and brief description.
Each section of the Tool report will be divided by the primary
developer. The report will be ordered alphabetically by primary
developer. Underneath each developer the tools will be ordered by the
tool number.

### Withdrawn Report

The Withdrawn Report will show all tools that have been withdrawn from
the QualityTools Web site. The report will be ordered by the tool
number.

### Work Queue

The Work Queue report will show all tools with a status of In Progress
that have a selected task type and a start and end date for the selected
task matching a given date range. The tools will be ordered by the tool
number.

## Static Page Include Control

The Static Page Include Control component will be a VB.NET ASMX control
that will be called by a VB.NET ASPX page. The control will output the
text from a static file prepared by a content developer to the ASPX page
that calls the control.

## search

The search component will allow users to search both the abstracted
summaries and the data collected by the Web Crawl module. The search
component will utilize SQL Server full text searching. The search will
have both a mechanism for a simple text search and a detailed search.
The search component's user interface will consist of a simple search
box, a detailed search page, a listing of the tools that match the
search criteria, and a page listing the web pages from each tool that
match the search criteria . The simple search box will be present on all
pages except the detailed search, search results, and tool page results
page. The detailed search page will allow the user to search on the
following fields: Keywords, Audience, Developer Type, Developer, IOM
Care Need, IOM Domain, IOM Priority Area, Tool Category, Tool Format,
Association with Vulnerable Populations, and Publication Date. The
search results page will list all tools found by the SQL Server full
text search. By default the results will be listed in order of relevance
and will be listed 20 tools per page. Each result will have a link out
to the tool site and the abstracted summary for the tool. Each tool
result will also have a list of the top 20 web page hits for each tool
and a link to the tool page results page. The tool page results listing
will list all pages on the tool site that match the search. To avoid
spurious results a minimum relevance level will be established, and all
search matches within the abstracted summaries will be given a greater
weight than search matches within the collected web data. For more
information on how the web data is collected please see the Web Crawl
Module SRD and Web Crawl Module SDD.

## Search Logging

The QualityTools Web site will provide a facility to log searches. This
logging will allow an administrator to analyze the search data. For more
information on the search logging component please see the Analysis
Subsystem Software SRD and the Analysis Subsystem SDD.

## summary logging

The QualityTools Web site will provide a facility to log each time a
summary is viewed. The summary logging component will utilize the
summary logging functionality described in the Summary Logging SRD and
the Summary Logging SDD.

## What's New 

The QualityTools Web site will provide a facility to display the new
tools published based upon the current publication cycle. The
QualityTools Web site will also provide a facility to display the
"What's New" announcement for past publication cycle. In addition to
showing the current "What's New" and a "What's New" archive, the
QualityTools Web site will provide a facility for users to subscribe to
a weekly email that will consist of the current "What's New"
information. For additional information on the "What's New" component
please see the \"What's New\" E-mail Subsystem SRD and the \"What's
New\" E-mail Subsystem SDD.

# Design to Requirements traceability

The following table, reproduced from the QualityTools Web site Software
Requirements Document (SRD), identifies the requirements established for
the module:

Table 4-1: Requirements Summary

  ------------------------------------------------------------------------------------
  ID   Type                Description
  ---- ------------------- -----------------------------------------------------------
       **Web site Display  
       Characteristics**   

  1    User                Display mechanism

  2    User                Index

  3    User                Audience groupings

  4    User                Tool archives

  5    User                Dynamic manual content

  6    User                Links to NHR

  7    User                Resource links

  8    User                QualityTools standard header

  9    User                Standard audience navigation

  10   User                QualityTools standard footer

       **Web site User     
       Mechanisms**        

  11   User                QualityTools search facility

  12   User                "What's New" service

  13   User                RSS feeds

  14   User                Discussion list

  15   User                Feedback

  16   User                QualityTools user assistance

       **Administrative    
       Reports**           

  17   User                AHRQ developed tools

  18   User                AHRQ sponsored tools

  19   User                Lookup lists

  20   User                Published Tools Changed

  21   User                Published Tools

  22   User                QT summary views

  23   User                Searches

  24   User                Tasks

  25   User                Tools

  26   User                Withdrawn tools

  27   User                Work queue
  ------------------------------------------------------------------------------------

Earlier sections of this document have identified individual instances
of traceability of design to requirements in the context of describing
specific elements of design. Traceability is summarized in the following
table:

Table 4-2: Traceability Summary

  -----------------------------------------------------------------------
  Requirement ID    Design Component or Behavior
  ----------------- -----------------------------------------------------
                    **Web site Display Characteristics**

  1                 Page displays structured abstract information for
                    each tool

  2                 Page displays all published tools by organization and
                    title

  3                 Page displays subject heading for each audience group

  3                 Page displays all tools' links to an audience topic

  3                 Page displays all tools attached to an audience group
                    regardless of topic association

  4                 Page displays all tools that have been withdrawn or
                    updated

  5                 Control to allow static content prepared by a content
                    developer to be rendered on a web page

  6                 Provide links to both the NHQR and NHDR

  7                 Provide glossary page for site

  7                 Provide links to RSS, Contact Us, and index sections

  7                 Provide related links page

  7                 Provide FAQ page

  8                 ASMX VB.NET control to render a standard header for
                    each page of the QualityTools Web site

  9                 ASMX VB.NET control to render a standard audience
                    browse header for each page of the QualityTools Web
                    site

  10                ASMX VB.NET control to render a standard footer for
                    each page of the QualityTools Web site

                    **Web site User Mechanisms**

  11                Provide facility to perform a simple text search from
                    each page of the Web site

  11                Provide facility to perform a detailed search

  11                Provide a search results page that lists the tools
                    that match a search along with the top 20 web page
                    hits for each tool. Each tool will link to the
                    structured abstract and a page that list all web page
                    hits for the tool

  11                Provide a page that lists all web page hits for a
                    given tool

  12                Provide a page to view the current "What's New "

  12                Provide a page to view the archived "What's New"
                    announcements

  12                Provide facility for a user to receive the "What's
                    New" this week via email

  13                Web site provides a facility for users to access a
                    basic list of tools, a detailed list of tools, and
                    the "What's New" tools in an RSS format

  14                Provide link for user to join the QualityTools
                    discussion list

  15                Page will allow users to send email from the
                    QualityTools Web site to an administrative email
                    account for the Web site

  16                Provide a series of pages on how to browse the site

  16                Provide a series of pages on how to search the site

  16                Provide page on compatible browsers

  16                Provide page for Frequently Asked Questions

  16                Provide link to the Contact Us feature

                    **Administrative Reports**

  17                Displays all tools developed by AHRQ

  18                Displays all tools sponsored by AHRQ

  19                Displays tools by selected lookup lists and the
                    associated values

  20                Displays published tools changed after a selected
                    date

  21                Displays all published tools

  22                Displays all tools by selected developer(s) and how
                    many views each tool has for the given date range

  23                Displays total number of searches for a given date
                    range

  23                Displays each search for a given search

  23                Web service to export detailed search report to Excel

  24                Displays tools by selected status, task type, and
                    task date range

  25                Displays tools based on publication status and allows
                    a user to select what fields to display for each tool

  26                Displays all withdrawn tools

  27                Displays all in progress tools
  -----------------------------------------------------------------------

# Appendix A -- acronym List {#appendix-a-acronym-list .unnumbered}

  --------- -------------------------------------------------------------
  Acronym   Description

  CM        Content Manager

  ERD       Entity Relationship Diagram

  RTM       Requirements Traceability Matrix

  SDD       System Design Document

  SRD       Software Requirements Document
  --------- -------------------------------------------------------------

# APPENDIX B -- DATABASE {#appendix-b-database .unnumbered}

## b.1 database design policy {#b.1-database-design-policy .unnumbered}

In accordance with an internal design standard, six standard columns
(metacolumns) are defined for every table. None of these columns is
essential to the primary purpose of the system. One of them, deleted_fl,
makes possible an undelete mechanism. Another, dirty_fl, makes it
possible for the system to identify rows with dependent data that need
to be updated because the data on which they depend have changed. This
feature permits the system to improve performance by performing
incremental, rather than global, updates. The other columns are useful
for administrative purposes.

-   deleted_fl short

This flag, when set, indicates that a row has been nominally deleted.
When this is the case, the actual row is maintained only to support
restoration (undelete) if need be. In all other situations, the system
should ignore the presence of this row.

-   dirty_fl short

This flag, when set, indicates that data on which the row depends have
been updated, and that processing which performs incremental updates
should incorporate the changed data.

-   create_dt datetime

This column contains the date and time that a row was originally
inserted into a table. Its presence is sometimes useful for debugging.

-   update_dt datetime

This column contains the date and time that a row was last updated. Its
presence is sometimes useful for debugging.

-   update_nm varchar(30)

This column contains the identity of the user who last updated a row.
Its presence is sometimes useful for debugging.

-   ts timestamp

This column provides a row identifier that is unique within the
database. It supports automatic conflict resolution in a multitasking
environment.

## B.2 Entity Relationship Diagrams (ERD's) {#b.2-entity-relationship-diagrams-erds .unnumbered}

The QualityTools Web site ERD can be found in the QualityTools Web site
ERD Visio file.

## B.3 Data Dictionaries {#b.3-data-dictionaries .unnumbered}

The data dictionaries for the QualityTools Web site can be found in the
QualityTools Web site Data Dictionary document.