Move WEBMIP_TEX from andy/shelves to main WEBMIP documentation area.

git-svn-id: http://locode01.ad.dom/svn/WEBMIP/trunk@11593 248e525c-4dfb-0310-94bc-949c084e9493
This commit is contained in:
andrew.hardy
2009-06-24 09:47:27 +00:00
parent 7fba145f7c
commit f85b1331ca
51 changed files with 5879 additions and 0 deletions

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -0,0 +1,21 @@
\documentclass{book}
\usepackage{multicol}
\begin{document}
\begin{multicols}{2}{
Department of English\\
P.O. Box 117310\\
University of Florida\\
Gainesville, FL, 32611-7310\\
(352) 392-6650
111 My Home address\\
Gainesville, FL 32611\\
(352) 555-1111 (H)\\
(352) 555-2222 (M)
}
\end{multicols}
\end{document}

View File

@@ -0,0 +1,19 @@
\documentclass[a4paper,twoside]{article}
%\usepackage[style=long,cols=3,border=plain]{glossary}
\usepackage{makeglos}
\makeglossary
\begin{document}
\printglossary
\begin{description}
\item [This is the item] The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long.
\item [This is the other item] The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long.
\end{description}
\glossary{This it the item:The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long. The description for this item can be very long.}
\glossary{glossary:item}
\end{document}

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,5 @@
%%Title: ./UseCases1.png
%%Creator: ebb Version 0.5.2
%%BoundingBox: 0 0 659 450
%%CreationDate: Sun Sep 30 10:48:51 2007

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,85 @@
\documentclass{book}
\usepackage{graphicx}
\usepackage{booktabs}
\newsavebox{\titleimage}
\sbox{\titleimage}{\includegraphics[width=15.98cm]{TitleImage}}
\newcommand\version{Version unknown}
\newcommand{\setversion}[1]{\renewcommand{\version}{Version #1}}
\newcommand\restriction{}
\newcommand{\setrestriction}[1]{\renewcommand{\restriction}{#1}}
\newcommand\restrictedto{Unrestricted}
\newcommand{\setrestrictedto}[1]{\renewcommand{\restrictedto}{Restricted to #1}}
\newcommand\ouraddress{
Advantica \newline
Holywell Park \newline
Ashby Road \newline
Loughborough \newline
Leicestershire \newline
LE11 3GR \newline
United Kingdom
}
\newcommand{\setouraddress}[1]{\renewcommand{\ouraddress}{#1}}
\newcommand\customeraddress{Customer address not set}
\newcommand{\setcustomeraddress}[1]{\renewcommand{\customeraddress}{#1}}
\newcommand\customer{Customer not set}
\newcommand{\setcustomer}[1]{\renewcommand{\customer}{#1}}
\makeatletter
\def\maketitle{%
\null
\thispagestyle{empty}%
\usebox{\titleimage}
\begin{flushright}
\begin{tabular}{ p{4.25cm} p{6.75cm} }
\version & \@date
\\
\midrule
\multicolumn{2}{c}{
\Huge{\@title}
}
\\
\midrule
\restriction & \restrictedto
\\
\end{tabular}
\end{flushright}
\vfill
\begin{tabular} { p{5.97cm} p{9.47cm}}
Prepared for: & Prepared by:
\\
\customer & \@author
\\
\customeraddress & \ouraddress
\\
\end{tabular}
\null
\clearpage
}
\makeatother
\author{Isidore Ducasse, Comte de Lautr<74>amont}
\author{Lautr<EFBFBD>amont}
\title{Les Chants de Maldoror}
\date{\today}
\author{jamie priest}
\setversion{0.4}
\setcustomer{Martin Hansford}
\setcustomeraddress{
Somewhere \newline
Sometown \newline
Here
}
\begin{document}
\maketitle
\end{document}

View File

@@ -0,0 +1,3 @@
REM $Id:$
set ORACLE_SID=webmip
sqlplus /nolog @applylog

View File

@@ -0,0 +1,8 @@
REM $Id$
set echo on
spool s:\orabackup\webmip\scripts\applylog.log
connect sys/fmdidgad as sysdba
alter database recover automatic standby database until cancel;
alter database recover cancel;
spool off;
exit

View File

@@ -0,0 +1,4 @@
alter session set nls_date_format='DD-MON-YYYY HH24:MI:SS'
/
SELECT FIRST_TIME, FIRST_CHANGE#, NEXT_CHANGE#, SEQUENCE# FROM V$LOG_HISTORY
/

View File

@@ -0,0 +1,14 @@
REM $Id$
conn &&user/&&password as sysdba;
shutdown immediate;
conn &&user/&&password as sysdba;
startup mount;
alter database force logging;
alter system set log_archive_dest_1='location=s:\orabackup\webmip\archivelogs\' scope=both;
/*
set the time by which archive logs
should lag the redo in seconds
*/
alter system set archive_lag_target=2700;
alter database archivelog;
alter database open;

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@@ -0,0 +1,35 @@
% File: development.tex
% Created: Mon Oct 01 11:00 PM 2007 B
% Last Change: Mon Oct 01 11:00 PM 2007 B
%
\documentclass[a4paper]{article}
\date{21 September 2007}
\begin{document}
\title{Increasing Scout Membership}
\maketitle
\abstract{
A discussion was held with the Scouts to look at ways of increasing the size of the membership. The conclusions reached were:
\begin{enumerate}
\item Scouting is not widely \textit{known} in the area;
\item The program could be made more \textit{accessible} to the community;
\end{enumerate}
Therefore, the decision was made to attack this through advertising and through changes to the program.
}
\section{Advertising}
It was decided that advertising would be performed through the use of leaflets and posters - these were felt to be a good way of getting a consisted \textit{picture} of Scouting across to the target audience without intimidating either the giver or receiver of the information.
The posters were designed to be simple and uncluttered to make them clearly visible, contain the corporate Scouting logo and make reference to the Scouting centenary. In the background there were pictures showing activities undertaken by the group and a contrasting box with contact details and meeting times was placed in the corner. The posters were placed in the local schools.
The leaflets were smaller and contained more examples of activites undertaken, including pictures, and a brief look at the background of Scouting from the points of view of the World, UK and the local community. Leaflets were left at the local schools and with Scouts so that they could hand them out to friends.
\section{Program}
The Scouts thought that the program could be opened out to allow non-members to take part in some fun activities - this would be allow young people to take part in a relaxed environment and so introduced them to Scouting in a non-threatening way. If the activities took place in public areas, then they could also act as a form of advertising.
The activities that were thought to be most suitable involved pioneering and camping - both activities being 'fun' and not usually available to young people in our area. We have been invited to make use of a camping area on the outskirts of the village and intend to hold a small camp/sleep-over during the spring and to invite young people from the local schools to take part. We will demonstrate all the activites that Scouts enjoy on such camps such as cooking on open fires, playing wide-games, etc.
Scouts take part in trips to various places during the year e.g. swimming, caving, theme parks, etc. It would be possible to invite young people along to these events. Again, this would demonstrate the fun activities that Scouts take part in.
Finally, following on the from the advertising, the Scouts thought that it would be easier for them to 'Bring a friend' to an evening. It was decided that a number of evenings over the next two terms would be put aside as 'invitation' nights - normal Scouting activities would take place but their would be no reliance on having attended before for example, there would be no badge work.
\end{document}

View File

@@ -0,0 +1,53 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section{System Administration}
The webMIP system holds data used in the process of providing quotations
for Supplier agents. This data requires administrative functions to
keep it correct and up{}-to{}-date. The system also manages the users
and provides a method for producing system reports.
\subsection{System data}
The webMIP administrator role is able to administer system data to
ensure that values, descriptions and other details are correct and
up{}-to{}-date. The role can also create, read, update and delete the
system data.
The data administered includes the following:
\begin{enumerate}
\item Meter Modules. See Appendix \ref{sec:AppendixMeterModules} for details;
\item Housing. See Appendix \ref{sec:AppendixHousing} for details;
\item Base. See Appendix \ref{sec:AppendixBase} for details;
\item Pricing data. See Appendix \ref{sec:AppendixPricingData} for details;
\item Users. See section \ref{sec:UserSecurity} ;
\item Caveats.
\item Postcodes. See Appendix \ref{sec:AppendixPostcodes} for details;
\item Drawings;
\item Reporting. The system allows the webMIP administrator role to run
the system data reports. The webMIP administrator role selects the
system data sources and exports them as CSV files.
\end{enumerate}
\subsection{Bulk Upload}
The webMIP system provides a bulk upload function for the uploading of
system data. This function is only available to the webMIP
Administrator user role. \ The bulk upload function will accept a CSV
file containing data described in Appendix . When the bulk upload
routine is completed the entire system data set will be replaced by the
data provided in the uploaded CSV file. \ If the uploaded file does not
pass the webMIP bulk upload validation routine then the bulk upload
will fail and the exist system data will remain in place.
\subsubsection{User acceptance}
A process out side of the scope for webMIP will allow I\&C to attempt a
bulk upload run, on a user acceptance version of webMIP to confirm that
the upload is successful. This way the bulk upload can be tested
without impacting on the live system.

View File

@@ -0,0 +1,805 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section{Data Items}
\label{sec:AppendixDataItems}
\subsection{Gas Supplier}
\begin{longtable}[c]{p{0.4\textwidth} p{0.4\textwidth}}
\toprule
Gas Supplier ID (A0064)
&
A required 10 Character alphabetical code
\\
Gas Supplier Name
&
A required alphanumerical field of 40 characters in length
\\
Gas Supplier Location
&
A required address for the gas supplier, including the traditional items
associated with an address
\\
Cust Code
&
A required 3 digit numerical code, that describes the customer supplier.
\\
Contract Reference
&
The provision and maintenance contract a required alphanumerical code.
Limited to 35 characters.
\\
\bottomrule
\end{longtable}
\subsection{Supplier Agent}
\begin{longtable}[c]{p{0.4\textwidth} p{0.4\textwidth}}
\toprule
Company Name
&
A required 40 character data item to record the agents company name
\\
Title (A0088)
&
A required 6 character item to collect the individual agents title, e.g.
Dr, Mr, Miss
\\
Initials (A0089)
&
A required 2 character item to collect the individual agents initials
\\
Contact Name (A0090)
&
A required 10 character data item to hold the individual agents name
\\
Address (A0049,A0106)
&
A required address for the individual agent, including the traditional
items associated with an address
\\
Telephone1(A0049,A0106)
&
A required initial telephone number to contact the individual, a 30 char
limit.
\\
Telephone2(A0049,A0106)
&
An optional data item for an alternative telephone number to contact the
individual, a 30 char limit.
\\
Fax(A0049,A0106)
&
An optional item that allows the agent to specify a fax number, a 30
char limit.
\\
Email(A0049,A0106)
&
An mandatory alphanumerical item to accept the individual agents email
address, the value must be a valid email address. A 241 char limit.
\\
\bottomrule
\end{longtable}
\subsection{Job Site Details}
\begin{longtable}[c]{p{0.4\textwidth} p{0.4\textwidth}}
\toprule
Transaction Reference(A0055)
&
An optional 35 character alphanumerical code that the agent can use to
reference to the job enquiry. This value does not have to be unique
within the system, if the user searches for the transaction reference
then multiple enquiries/quotes may be returned.
\\
Agent
&
Only available to the I\&C user and mandatory for the I\&C user. A
list of Agents held within the webMIP system. The user must select
one.
\\
\bottomrule
\end{longtable}
\subsection{Address}
\begin{longtable}[c]{p{0.4\textwidth} p{0.4\textwidth}}
\toprule
Sub{}-Building Name/Number (A0004)
&
A 40 character alphanumeric item that must contain a data entry if
Building Name/Number is omitted.
\\
Building Name/Number (A0006)
&
A 40 character alphanumeric item that must contain a data entry if
Sub{}-Building Name/Number is omitted.
\\
Thoroughfare(Road) (A0008)
&
A 60 character alphabetical data item that must be entered.
\\
Post Town(Town) (A0011)
&
A 40 character alphabetical data item that must be entered.
\\
Post Code (A0013)
&
A 10 character alphanumerical data item that must be entered.
\\
Title (A0088)
&
A required 6 character item to collect the individual agents title, e.g.
Dr, Mr, Miss to be selected from a list.
\\
Initials (A0089)
&
A required 4 character item to collect the individual consumer contacts
initials
\\
Contact Name (A0090)
&
A required 30 character data item to hold the individual consumer
contacts name
\\
Telephone1(A0049,A0106)
&
A required initial telephone number to contact the consumer, a 30 char
limit.
\\
Telephone2(A0049,A0106)
&
An optional data item for an alternative telephone number to contact the
consumer, a 30 char limit.
\\
Fax(A0049,A0106)
&
An optional item that allows the agent to specify a fax number, a 30
char limit.
\\
Email(A0049,A0106)
&
An optional item to accept the individual agents email address, a 241
char limit.
\\
\bottomrule
\end{longtable}
\subsection{Contact Address}
\begin{longtable}[c]{ p{0.4\textwidth} p{0.4\textwidth} }
\toprule
Sub{}-Building Name/Number (A0004)
&
(only required if job address different to contact address)A 40
character alphanumeric item that must contain a data entry if Building
Name/Number is omitted.
\\
Building Name/Number (A0006)
&
(only required if job address different to contact address)\textmd{A 40
character alphanumeric item that must contain a data entry if
Sub{}-Building Name/Number is omitted.}
\\
Thoroughfare(Road) (A0008)
&
(only required if job address different to contact address)A 40
character alphabetical data item that must be entered.
\\
Post Town(Town) (A0011)
&
(only required if job address different to contact address)A 40
character alphabetical data item that must be entered.
\\
Post Code (A0013)
&
(only required if job address different to contact address)A 7 character
alphanumerical data item that must be entered.
\\
Second Contact
&
A boolean entry that allows the user to specify if there is a second
contact for the site.
\\
Title (A0088)
&
(only required if second contact specified) A required 6
character item to collect the individual agents title, e.g. Dr, Mr,
Miss to be selected from a list.
\\
Initials (A0089)
&
(only required if second contact specified)A required 4
character item to collect the individual consumer contacts initials
\\
Contact Name (A0090)
&
(only required if second contact specified)A required 30 character data
item to hold the individual consumer contacts name
\\
Telephone1(A0049,A0106)
&
(only required if second contact specified) A required initial
telephone number to contact the consumer.
\\
Telephone2(A0049,A0106)
&
(only required if second contact specified) An optional data
item for an alternative telephone number to contact the consumer.
\\
Fax(A0049,A0106)
&
(only required if second contact specified)An optional item
that allows the agent to specify a fax number.
\\
Email(A0049,A0106)
&
(only required if second contact specified)An optional item to accept
the individual agents email address.
\\
\bottomrule
\end{longtable}
\subsection{Second Contact Address}
Second Contact address is the same as job address/first contact. It is
only required if second contact specified. A selection entry allows the
user to specify whether the address is the same as the site of the
intended works or the first contact.
\begin{longtable}[c]{p{0.4\textwidth} p{0.4\textwidth}}
\toprule
Sub{}-Building Name/Number (A0004)
&
(only required if job address and first contact address different)A 40
character alphanumeric item that must contain a data entry if Building
Name/Number is omitted.
\\
Building Name/Number (A0006)
&
(only required if job address and first contact address
different)A 40 character alphanumeric item that must contain a
data entry if Sub{}-Building Name/Number is omitted.
\\
Thoroughfare(Road) (A0008)
&
(only required if job address and first contact address different)A 40
character alphabetical data item that must be entered.
\\
Post Town(Town) (A0011)
&
(only required if job address and first contact address different)A 40
character alphabetical data item that must be entered.
\\
Post Code (A0013)
&
Only required if job address and first contact address different)A 7
character alphanumerical data item that must be entered.
\\
\bottomrule
\end{longtable}
\subsection{Site Detail}
\begin{longtable}[c]{p{0.4\textwidth} p{0.4\textwidth}}
\toprule
Asset Location Code (A0059)
&
A 10 character alphanumerical data item that must be entered, it will be
one value from a list of the following specified entries:
\begin{description}
\item[00] Unknown
\item[01] Cellar
\item[02] Under Stairs
\item[03] Hall
\item[04] Kitchen
\item[05] Bathroom
\item[06] Garage
\item[07] Canteen
\item[08] Cloakroom
\end{description}
\\
&
\begin{description}
\item[09] Cupboard
\item[10] Domestic Science
\item[11] Front Door
\item[12] Hall Cupboard
\item[13] Kitchen Cupboard
\item[14] Kitchen under sink
\item[15] Landing
\item[16] Office
\item[17] Office Cupboard
\item[18] Outside WC
\item[19] Pantry
\item[20] Porch
\item[21] Public Bar
\item[22] Rear of Shop
\item[23] Saloon Bar
\item[24] Shed
\end{description}
\\
&
\begin{description}
\item[25] Shop Front
\item[26] Shop Window
\item[27] Staff Room
\item[28] Store Room
\item[29] Toilet
\item[30] Under Counter
\item[31] Waiting Room
\item[32] Meter box Outside
\item[98] Other
\item[99] Outside
\end{description}
\\
Care category
&
An optional 2 character numerical data type for all job types the user
can select from the following list:
03 SEUC Unclassified
04 Aged 60+
05 Blind
06 Braille User
07 Poor Sight
08 Deaf
09 Poor Hearing
10 Poor Speech
11 Poor Sense of Smell
12 Arthritic Hands
13 Arthritic All
14 Poor Walking
15 Wheelchair
16 Bedridden
17 Mental Handicap
18 Confused
19 Serious Illness
20 Other
21 Heart Condition
22 Breathing Difficulty
\\
Asset Location notes (A0158)
&
Mechanism for delivering Location notes.\newline
A optional selectable list of values including Post, Fax, Email and
Upload. \ Depending on the selected option the system will provide
either the Coventry Address for I\&C, the I\&C fax number, A mailto
link to the I\&C mailbox or a file upload option.
\\
Attach files
&
(only required if Mechanism for delivering Location notes is set to
Upload)An optional data item that allows users to attach a number of
photos,drawings,plans etc. to the enquiry, the file size limit will be
10 megabytes in total with individual files being restricted to 3
megabytes.
\\
Access Instructions (A0075)
&
An optional data item of 210 alphanumerical characters.
\\
Access Password
&
An optional 30 character alphanumerical data item.
\\
MPRN (A0072)
&
An optional 30 digit numerical data item. \ The MPRN is optional, but
ideally I\&C would like to collect the number. \ New installs do not
require the number to be entered because the number may not have been
generated at the time of the enquiry. \ However for all other jobs this
should normally be entered, but sometimes it is unavailable. \ The user
must enter additional information in these instances.
\\
Additional Information, including UIP reference
&
Required only if MPRN is left blank and the job type is not a new
install. A 250 character alphanumerical data item.
\\
\bottomrule
\end{longtable}
\paragraph{Job Information}
The job information section records data relating to the job
requirements including meter requirements and the meters environment.
Like the job site details, once the job information details are
submitted they are stored by the system so that the agent or I\&C users
can then refer back to them. Each enquiry must have just one
associated set of job information.
\begin{longtable}[c]{p{0.5\columnwidth} p{0.5\columnwidth}}
\toprule
Job Type (Q5)
&
A list of possible jobs (Install, Exchange, Removal, Alteration, OFMAT,
EMS, AMR, Capacity Change, Adversarial, Standard Install, Standard
Exchange, Standard Removal, Other), if the user selects
{\textquotesingle}Other{\textquotesingle} then they must provide some
data for the Other Type data item. The Job Type can be changed on the
enquiry until the enquiry is submitted for quotation.
The Standard job types are categorised differently by webMIP, they show
the users intention to create a standard quotation for an automatic
quote. Standard job types exempt the user from entering certain
questions in the enquiry questionnaire.
\\
Other Type
&
Required only when the user selects
{\textquotesingle}Other{\textquotesingle} from the Job Type list. An
alphanumerical data item of 30 characters.
\\
Internal Job Type Reference
&
A hidden field automatically generated by the webMIP system. Only when
the questionnaire has been successfully completed will webMIP attempt
to generate the Job Type Reference. The Job Type Reference is an
alphanumerical field of 40 characters in length. The webMIP system will
use the Job Type and Service pressure data items on the questionnaire
to determine the Job Reference Code, the result will be one of the
following values :-
\begin{description}
\item [FIX QO LP]
Install Low Pressure Meter Module
\item [FIX QO MP]
Install Medium Pressure Meter Module
\item [EXC QO LP]
Exchange Low Pressure Meter Module
\item [EXC QO MP]
Exchange Medium Pressure Meter Module
\item [EXC QI MP]
Pressure Increase of Medium Pressure Meter Module
\item [REM QO LP]
Removal of Low Pressure Meter Module
\item [REM QO MP]
Removal of Medium Pressure Meter Module
\end{description}
If webMIP is unable to determine a Job Reference Code then the value
will remain blank(null).
\\
Gas Act Owner(GAO)
&
A drop-down list of:
\begin{itemize}
\item Supplier,
\item GT,
\item Consumer.
\end{itemize}
will be presented to the end-user as guidance.
Required if the Job Type is of Exchange, Removal, Standard Exchange or
Standard Removal, otherwise it should be optional. A 1 character
alphabetical data item.
\\
Supplier
&
Required if the Job Type is of Exchange, Removal, Standard Exchange or
Standard Removal otherwise it should be optional. A 210 character
alphanumerical data item.
\\
Consumer
&
Required if the Job Type is of Exchange, Removal, Standard Exchange or
Standard Removal otherwise it should be optional. A 40 character
alphanumerical data item.
\\
Appointment preference
&
Only relevant to the Standard job types that will be automatically
quoted. An optional data item that allows the user to specify an
preferred time in the day for the visit. The default value will be
8am-8pm. Users can select one value from a list of the following
options:
\begin{enumerate}
\item 8am-1pm,
\item 12pm-8pm,
\item 8am-8pm.
\end{enumerate}
\\
Service Pressure (Q6)
&
User will be able
to select one option from a list of the following items, LP, MP35,
MP65, MP105, MP180, MP270, IP. The service pressure is not needed for
Standard (automatically quoted)Job Types as an assumed pressure
category is taken. Only one Service Pressure can be associated with an enquiry.
\\
IP details
&
Required if the service pressure is IP. A 250 character alphanumerical
data item. The default value is blank(null).
\\
IP mbar
&
Optional, available when service pressure is set to IP. A Numerical
data item that allows up to 3 decimal places. The values that are
accepted must be between 2000 and 7000. The default value is
blank(null).
\\
Required Meter Pressure (A0164) (Q7)
&
A required numerical data item for jobs, except all standard jobs, which will default to 21mbar. Allows numbers between 0 and 7000 and 3 decimal places are permitted. The value to be stored will be in mbar. If the service pressure is 'LP' then the default for meter pressure will also be 21. The following service pressures also place further constraints on the accepted meter pressure values:
\begin{enumerate}
\item MP35
\begin{enumerate}
\item Calculaton for Constraint 0.8 x 35
\item Constraint \textless= 28
\end{enumerate}
\item MP65
\begin{enumerate}
\item Calculation for Constraint 0.8 x 65
\item Constraint \textless=84
\end{enumerate}
\item MP180
\begin{enumerate}
\item Calculation for Constraint 0.8 x 180
\item Constraint \textless=144
\end{enumerate}
\item MP70
\begin{enumerate}
\item Calculation for Constraint 0.8 x 270
\item Constraint \textless=216
\end{enumerate}
\end{enumerate}
\\
Annual Quantity (AQ) (Q8)
&
A Required numerical data item for all jobs . The value for annual
quantity will be recorded as KWh. The default value for is
blank(null). If the field contains a value over 732,000 the enquiry
will be not be automatically quoted.
\\
Specific conversion factor
&
A 1 Character hidden field that is used to determine if a conversion
factor is required. This will typically be associated to jobs that
require a large capacity. The user will not interact with this field
as webMIP will determine the value. The default value is
{\textquotesingle}N{\textquotesingle} if the Annual Quantity field is
greater than 732,000 KWh then the value will be
{\textquotesingle}Y{\textquotesingle}
\\
Booster/Compressor (Q9)
&
A boolean data entry with a default status of null. The user will
specify a {\textquotesingle}Y{\textquotesingle} or
{\textquotesingle}N{\textquotesingle} value. A value is required for
all job types, however booster/compressor is not needed for Standard
Job Types. If the user answers {\textquotesingle}Y{\textquotesingle}
the enquiry will become bespoke and a manual quotation will need to be
provided.
\\
Indicative Substantial Completion Date(A0138) (Q10)
&
A date format data item, dates will be entered in the format dd/mm/yy,
e.g. 21/10/07. This is an optional item for all job types. The date
will be stored in webMIP in the format
{\textquotesingle}YYYYMMDD{\textquotesingle} the value will be 8
characters in length.
\\
Other Related Jobs(Project Reference) (Q11)
&
An optional alphanumerical data item of 40 characters.
\\
Additional Services (Q12)
&
A list of options that the user has to request or decline. All of the
additional services require a mandatory response. Each option requires
the user to select {\textquotesingle}Y{\textquotesingle} or
{\textquotesingle}N{\textquotesingle}, by default the options will be
blank(null). \ The options that will be available are as follows :
\begin{enumerate}
\item Housing - If {\textquotesingle}N{\textquotesingle} is selected
the user must fill in an associated alphanumerical data item of 250
characters
\item Base
\item Converter. If a Converter exists and the enquiry is not Removal/ Std Removal/ Adversarial Removal, then a manual quote is required. If a Converter exists and the enquiry is Removal/Std Removal/Adversarial Removal, then an automatic quote is required.
\item Logger. If a logger is attached and the enquiry type is an Exchange, then a manual quote is required. If a logger is attached and the enquiry type is not an Exchange, then a standard caveat is attached to the quote.
\item AMR. The AMR option will only be available for Tripartite users.
\item EMS
\item By-pass. One of the following
data items must be selected
\begin{enumerate}
\item Not Required
\item Essential (Hospital, prison, etc.)
\item Institution (School, college, etc.)
\item Animal welfare
\item Manufacturing process requirement
\item Complicated pipework system
\item Other. If {\textquotesingle}Other{\textquotesingle} is selected
then the user must fill in an associated alphanumerical data item of 40
characters, to describe the reason.
\end{enumerate}
\item Twin stream.
\end{enumerate}
\\
Logger/Converter
&
A 1 character alphabetical data item that is hidden from the user. The
webMIP system will select the value for this field. If Logger is
selected from the additional services data item then webMIP will store
a {\textquotesingle}L{\textquotesingle} if Converter is selected then
webMIP will record a {\textquotesingle}C{\textquotesingle}. The
default value will be blank (null).
\\
Job Description/Special Instructions (Q9a)
&
An optional 500 character alphanumerical data item that the user can
specify any job specific requirements. If the user has entered data
in the job description/special instructions data item then an automatic
quote will not be possible, the users should be warned of this prior to
submitting their data.
\\
Measuring Capacity QMAX (A0112) (Q13)
&
A mandatory numeric data item that accepts numbers between the range of
0 to 999,999.999, up to 3 decimal places are allowed. Should not be available for standard jobs. The default
value will be blank(null). The value stored will be measured in KWh.
\\
Measuring Capacity QMIN (A0112) (Q13)
&
An optional numerical data item that accepts numbers between the range
of 0 to 999,999.999, up to 3 decimal places are allowed. The default
value for QMIN is blank(null). The value stored will be measured in
KWh.
A warning message will pop up to the end user if they select a design with a Qmin that is higher than the Qmin indicated on the enquiry. It will say:
\begin{quote}
Please note! The module you have selected has a minimum flow rate that is greater than the requirement input on the enquiry screen.
\end{quote}
\\
Load Control Type (Q13a)
&
Mandatory for all install and exchange job types(including standard),
optional for all other job types. The default value will be
blank(null). The user will be able to select one item from the
following list:
\begin{enumerate}
\item Constant
\item On/Off
\item Modulating
\end{enumerate}
\\
Meter Size (Q14)
&
Only relevant for the Standard Install Job Type, an optional data item.
If Qmax is empty then Meter Size must have a value selected. The
user can select one item from the following list:
\begin{enumerate}
\item U16
\item U25
\item U40
\item U65
\item U100
\item U160
\item Other
\end{enumerate}
\\
Meter Type Existing(A0025) (Q15)
&
Mandatory for all job types except for Standard Install, Install, EMS,
AMR, Other job types, optional for all other job types. The user is
able to select one item from the following list:
\begin{description}
\item [D] Diaphragm (unknown material)
\item [L] Leather
\item [S] Synthetic
\item [U] Ultrasonic
\item [Z] Unknown
\item [R] Rotary
\item [T] Turbine
\end{description}
The data item will be restricted to 8 characters in length.
\\
Existing Meter Size (Q15)
&
Mandatory for all job types except for Standard Install, Install, EMS,
AMR, Other job types, optional for all other job types. The user needs
to select one from the following list:
\begin{enumerate}
\item U16
\item U25
\item U40
\item U65
\item U100
\item U160
\item Rotary/Turbine 2''
\item Rotary/Turbine 3''
\item Rotary/Turbine 4''
\item Rotary/Turbine 6''
\item Other
\end{enumerate}
If other is selected then the job will be bespoke.
\\
Existing Pressure Category(Q15)
&
Mandatory for all job types except for Standard Install, Install, EMS, AMR, Other job types, optional for all other job types. The user needs to select one from the following list:
\begin{enumerate}
\item LP
\item MP
\item IP
\item HP
\end{enumerate}
\\
Existing Asset Serial Number (A0022)
&
A 30 character alphanumerical data item that is Mandatory for the
following job types: Exchange, Standard Exchange, Removal, Standard
Removal, OFMAT, Alteration, EMS and AMR. The default value will be
blank(null)
\\
Existing Model Code/Number(A0083)
&
A 20 character alphanumerical data item that is optional for all data
types, however it is not relevant to the
{\textquotesingle}install{\textquotesingle} or
{\textquotesingle}Standard Install{\textquotesingle} job types.
\\
Market Sector Code(A0161)
&
An optional data item for all job types, defaulting to the value
{\textquotesingle}I{\textquotesingle}. The user can select one item
from the following list:
\begin{description}
\item [I] Industrial and Commercial
\item [D] Domestic
\end{description}
\\
Other Information
&
A 250 character alphanumerical data item that is optional for all job
types. In addition the facility to add relevant files to the enquiry
will also be made available.
\\
\bottomrule
\end{longtable}

View File

@@ -0,0 +1,339 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4b
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section{System Data}
\label{sec:AppendixSystemData}
The system data descriptions provided in this appendix determine the
information stored within webMIP for Meter Modules, Housing, Base and
pricing elements. These elements will be controlled through the
administration functions provided by webMIP.
\subsection{Meter Modules}
\label{sec:AppendixMeterModules}
A meter module is the logical grouping of:
\begin{enumerate}
\item a meter to measure the flow of gas to a property;
\item a relief valve to protect the meter;
\item a slamshut valve to protect the property;
\item a regulator controlling the pressure of the gas flowing through
the meter;
\item a filter to remove contaminants from the gas;
\item pipework connected to the inlet of the meter;
\item pipework connected to the outlet of the meter.
\end{enumerate}
A meter module has the following attributes:
\begin{itemize}
\item module reference {}- the {\textquotesingle}name{\textquotesingle}
by which the module is referred to;
\item service pressure {}- the pressure at which the gas arrives at the
inlet of the module. This is often described as ranges (and subranges)
of pressure:
\begin{itemize}
\item LP {}- Low pressure;
\item MP {}- Medium pressure;
\item IP {}- Intermediate pressure;
\item HP {}- High pressure.
\end{itemize}
\item inlet connection {}- the connection made with the the service
pipe. This is described using the following attributes:
\begin{itemize}
\item orientation {}- the lie of the connection e.g.
{\textquotesingle}horizontal left{\textquotesingle};
\item connection {}- a standard description of the connector used e.g.
{\textquotesingle}(mm) PN16{\textquotesingle};
\item height {}- the position above the base at which the connection
will be found;
\item size {}- the diameter of the connection;
\end{itemize}
\item outlet connection {}- the connection made with the property. This
is described using the following attributes:
\begin{itemize}
\item orientation {}- the lie of the connection e.g.
{\textquotesingle}horizontal left{\textquotesingle};
\item connection {}- a standard description of the connector used e.g.
{\textquotesingle}(mm) PN16{\textquotesingle};
\item height {}- the position above the base at which the connection
will be found;
\item size {}- the diameter of the connection;
\end{itemize}
\item dimensions {}- describing the physical size and positioning of the
module using standard attributes of
{\textquotesingle}A{\textquotesingle} to
{\textquotesingle}H{\textquotesingle};
\item weight {}- the weight of the module in kilograms;
\item relief valve type {}- describes general characteristics of a
relief valve;
\item slamshut type {}- describes general characteristics of a slamshut
valve;
\item filter type {}- describes general characteristics of a filter;
\item regulator type {}- describes general characteristics of a
regulator;
\end{itemize}
A module can be requested with the following additional items:
\begin{itemize}
\item base {}- each module is associated with a single base;
\item housing {}- each module is associated with a single housing;
\item standard add{}-ons:
\begin{itemize}
\item AMR {}- automatic meter reading device;
\item EMS {}- energy management system;
\item convertor {}- to display a live conversion on the module;
\item bypass {}- additional pipework that allows maintenance,
replacement, etc. to take place on the meter without disrupting the
flow of gas to the property.
\end{itemize}
\end{itemize}
A module can be associated with:
\begin{itemize}
\item a drawing {}- a graphical representation of the module;
\item costs {}- the costs of buying and selling the module. This is
described using the following attributes:
\begin{itemize}
\item selling price {}- the price at which the module is sold;
\item delivery cost {}- the cost of delivery to the buyer;
\item region {}- the geographical region in which the costs are valid
(different regions may have different pricing structures).
\end{itemize}
\end{itemize}
\subsection{Meter}
A meter is a component of the module used to measure the flow of gas to
a property.
A meter has the following attributes:
\begin{itemize}
\item meter reference {}- the {\textquotesingle}name{\textquotesingle}
by which the meter is referred to;
\item measuring capacity. This is described using the following
attribute:
\begin{itemize}
\item Qmax {}- the maximum volume of gas that can be passed through the
meter per hour;
\end{itemize}
\item dimensions {}- describing the physical size and positioning of the
meter using standard attributes of
{\textquotesingle}A{\textquotesingle} to
{\textquotesingle}C{\textquotesingle} and
{\textquotesingle}Centres{\textquotesingle};
\item weight {}- the weight of the meter in kilograms;
\item connection type {}- a standard description of the type of the
connector used e.g. {\textquotesingle}PN16{\textquotesingle};
\item meter type {}- a standard description of the method that the meter
uses to measure flow e.g. {\textquotesingle}Rotary{\textquotesingle}.
\end{itemize}
A meter can be associated with:
\begin{itemize}
\item a drawing {}- a graphical representation of the meter;
\item costs {}- the costs of buying and selling the meter. This is
described using the following attributes:
\begin{itemize}
\item cost price {}- the price at which the meter is obtained;
\item delivery cost {}- the cost of delivery\footnote{\label{fnt:ftn1}Is
this the cost of delivery to NG Metering or cost of delivery to the
Supplier?};
\end{itemize}
\item a manufacturer {}- the organisation that constructed the meter.
\end{itemize}
\subsection{Housing }
\label{sec:AppendixHousing}
A housing encases a module. It is an optionally requested item on an
enquiry.
A housing has the following attributes:
\begin{itemize}
\item housing reference {}- the {\textquotesingle}name{\textquotesingle}
by which the housing is referred to;
\item dimensions {}- describing the physical characteristics of the
housing:
\begin{itemize}
\item length;
\item width;
\item height;
\item weight;
\end{itemize}
\item doors {}- the number of doors in the housing;
\end{itemize}
A housing can be associated with:
\begin{itemize}
\item a module {}- each module may be associated with a single housing;
\item a drawing {}- a graphical representation of the housing;
\item a manufacturer {}- the organisation that constructed the housing.
\item costs {}- the costs of buying and selling the housing. This is
described using the following attributes:
\item cost price {}- the price at which the housing is obtained;
\begin{itemize}
\item selling price {}- the price at which the housing is sold to the
customer;
\item labour cost {--} the cost of installing the housing (fixed at 10\%
of the selling price);
\item delivery cost {}- the cost of
delivery\textsuperscript{\ref{fnt:ftn1}};
\end{itemize}
\end{itemize}
\subsection{Base}
\label{sec:AppendixBase}
A module is situated on a base (often a concrete slab\}. It is an
optionally requested item on an enquiry.
A base has the following attributes:
\begin{itemize}
\item base reference {}- the {\textquotesingle}name{\textquotesingle} by
which the base is referred to;
\item dimensions {}- describing the physical characteristics of the
base:
\begin{itemize}
\item length;
\item width;
\item depth;
\end{itemize}
\item standard dimensions {\textquotesingle}A{\textquotesingle} to
{\textquotesingle}I{\textquotesingle}\footnote{Why are there two sets
of dimensions? }
\end{itemize}
A base can be associated with:
\begin{itemize}
\item a module {}- each module may be associated with a single base;
\item a drawing {}- a graphical representation of the base;
\item costs {}- the costs of buying and selling the housing. This is
described using the following attributes:
\begin{itemize}
\item cost price {}- the price at which the housing is obtained;
\item selling price {}- the price at which the housing is sold to the
customer;
\item delivery cost {}- the cost of
delivery\textsuperscript{\pageref{fnt:ftn1}};
\end{itemize}
\end{itemize}
\subsection{Drawing }
A drawing is a graphical representation of a physical object. The system
stores drawings so that they may be displayed as part of a reporting
object.
The system associates drawings with the following:
\begin{itemize}
\item module;
\item meter;
\item housing;
\item base.
\end{itemize}
\subsection{Standard add{}-ons}
\label{sec:AppendixStandardAddOns}
A number of standard (non{}-meter module specific) items may be
requested to be included with a meter module:
\begin{itemize}
\item AMR {}- automatic meter reading device;
\item EMS {}- energy management system;
\item Converter {}- to display a live conversion on the module;
\item bypass {}- additional pipework that allows maintenance,
replacement, etc. to take place on the meter without disrupting the
flow of gas to the property.
\end{itemize}
The system does not record the attributes of these items other than the
fixed costs for the AMR, EMS and convertor items.
\subsection{Pricing Data}
\label{sec:AppendixPricingData}
With the exception of Standard add{}-ons (see Appendix \ref{sec:AppendixStandardAddOns} ) all
cost/pricing information may be regional i.e. the price for an item may
differ according to the region in which the installation will take
place. Regions are based on post{}-codes\footnote{Composition of
postcode to region still unknown.}. Where there are no applicable
regional costs associated with an item, a non{}-regional price will be
used for that item.
Where the system selects a meter module or associated item and a
required supplier price is missing, the system is unable to produce a
quotation. The enquiry is treated as a request for a Manual Quote that
requires completion by D\&Q.
Where the system selects a meter module or associated item and a
required network price is missing, the system will produce a quotation
but there will be a manual process during
{\textquotesingle}job{\textquotesingle} entry onto SAP to determine the
relevant network costs.
Bypass pricing is handled off{}-line.
\subsection{Tripartite Agreement}
\label{sec:TripartiteAgreement}
The Tripartite Agreement prevents quotations being produced for
specified combinations of Suppliers, job types and postcodes.
The system will identify which Network the site address relates to by the supplied postcodes. When a supplier admin is set up by the webMIP administrator, the tripartite flag will either be {\textquotesingle}yes{\textquotesingle} or {\textquotesingle}no{\textquotesingle}. When a non - tripartite supplier code attempts to submit an enquiry for quotation of an install or exchange in a Tripartite only region - the system will reject and indicate that the customer will need to contact the regions asset owner for metering services.
The system will record the Tripartite Agreement attributes as:
\begin{itemize}
\item Supplier {--} a reference to a Supplier that has not signed up to
the Tripartite Agreement;
\item Job Type {--} the Job Type(s) that the Supplier cannot be quoted
for, one of:
\begin{itemize}
\item Installation of new meters;
\item Request for OFGEM Meter Accuracy Test (OFMAT);
\item Exchange of meters;
\item Removal of meters, including
{\textquotesingle}Adversarial{\textquotesingle} removal of meters;
\end{itemize}
\item Installation PostCode {--} the postcode where the installation is
to take place.
\end{itemize}
\subsection{Postcodes}
\label{sec:AppendixPostcodes}
The Post Codes will be loaded into the system as they currently relate to each network as they appear in the SAP Rainbow system at the time of go-live. In the eventuality that an individual post-code changes to relate to a different network it will be manually updated in system by the System Administrator.

View File

@@ -0,0 +1,80 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section{System Communication}
\label{sec:SystemCommunication}
The webMIP system communicates with the users through their web browser
and Email. Screens are provided for the administration, enquiry and
quotation process. In addition to these screens webMIP is able to email
users at key points during the on{}-line quotation life cycle. Where
the third{}-party requires communications to be via telephone, fax or
the post this is performed manually by I\&C staff.
\subsection{Web Browser}
The system uses a web browser user interface for all functions
associated with the user viewing or entering data. The system screens
and contents will be discussed in detail during the design stage of the
project. \ The screens representing the webMIP system will provide an
interface for the users to enter the data described in Appendix \ref{sec:AppendixSystemData}.
\subsection{Email}
The webMIP system uses email to communicate with the I\&C team and
Agents.
When webMIP delivers an email, the
{\textquotesingle}From{\textquotesingle} part of the email refers to a
mailbox within I\&C. This allows I\&C to check email failures (bounced
or returned email) and ensures that user responses to system generated
emails are received by I\&C.
The email aspects of the webMIP system are used at specific points
within the quotation life cycle. There are two key points at which
email is employed; the request for quotation and the quotation
acceptance.
\subsubsection{Request for Quotation}
During the quotation stage (request for quote submitted) the system
communicates either directly to the agent user and/or the I\&C team.
The method depends on the type of quote: \
\paragraph{Automatic Quotes}
Enquiries that can be automatically quoted for are presented to the user
once their on{}-line request has been submitted. If the user has
specified email as a preference for communication the system will email
the quote details to the user. If an I\&C user enters the details of
the enquiry on behalf of the agent then the communication preference
set on the agents profile will be used. If any other communication
option is selected as a preference, the system sends an email to the
I\&C team; the I\&C team then performs the communication manually.
\paragraph{Manual Quotes}
Where the system has been unable to produce an automatic quote, the
system emails the I\&C team requesting that a manual quote be produced.
The system also sends an email to the user stating that a manual quote
will be provided.
\subsubsection{Quotation Accepted}
\label{sec:CommunicationQuotationAccepted}
When a quote is accepted the system can send up to three types of email
depending on the type of quote and the agent users communication
preference settings:
\paragraph{I\&C}
If the enquiry produces an automatic quote, the e-mail contains: all data entry for the job, including the selected design; details that may be used for planning/scheduling and procurement; internal cost details that NGM have to pay the networks for enquiries. In all cases (automatic or manual) the e-mail contains the Quote Reference No. The e-mail for Manual quotes will include all data entry fields within Web MIP to allow the I\&C user to print the output without having to access the Web MIP system unnecessarily. If the enquiry produced an automatic quote, the email contains: a link to the PDF of the accepted quote; cost reconciliation information for SAP Blueprint; details that may be used for planning/scheduling and procurement; internal cost details that National Grid Metering have to pay the networks for enquiries. In all cases the email contains the Quote Reference number. Manual and automatic quote emails are sent to different mail boxes.
\paragraph{Agent}
If the agent accepting the quote has specified email as their
communication preference, webMIP sends an email to their specified
email address. If the quote is an automatic quote the email will
contain a PDF of the final detailed quote, otherwise the email will
contain the quote file uploaded by the I\&C user. The email also
contains a link to the quote held within webMIP, a list of reminder
items and details on what to do next.\footnote{(***Question 21,I\&C to
specify what the user is reminded about)}

View File

@@ -0,0 +1,36 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section*{Executive Summary}
National Grid Metering produces meter related works and services
quotations for their customers: Gas Suppliers and their Agents. The
quotations are produced manually by the Industrial and Commercial
(I\&C) department in response to enquiries raised by customers. An
estimated 8,000 quote enquiries are handled this way each year. The
proposed webMIP on{}-line quotation system will enable I\&C to provide
automatic quotations for the majority of their customers enquiries
without the need for manual intervention. The new system is expected to
reduce the number of enquiries handled by the I\&C team by 90\%,
leaving the I\&C staff to deal with the more complex bespoke or unusual
quotation requests.
WebMIP is a tactical solution, with an expected lifespan of around 18
months. The system will initially operate without reference to any
other system. It will then run in conjunction with the back{}-end
functions of {\textquotesingle}SAP Blueprint{\textquotesingle}. The
system will eventually be replaced by SAP Blueprint and its web portal
interface.
This document details the functional requirements of the webMIP system.
It describes the operations and processes required to complete the
system and fulfil I\&C{\textquotesingle}s business requirements for
handling quotes via an on{}-line internet based solution. It also
describes the administration and scope aspects of the webMIP system.

View File

@@ -0,0 +1,469 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section{System Process}
This section of the document describes the processes and tasks performed
by the webMIP system. It details the processes from the initiation of
an enquiry to the final quotation and briefly describes some of the
processes required to administer the system. The limitations and
constraints placed upon these tasks and processes are described
previously in the System Scope section of this document.
The quotation process is driven by the supplier agents. There are three
main stages to the quote process:
\begin{enumerate}
\item Enquiry. The user fills in a questionnaire, providing data
relating to the meter, the meter site, and environment;
\item Quote generation. If the enquiry is submitted for quotation,
quotes are generated detailing the costs of suitable meter modules;
\item Quote acceptance or rejection. If a quote is accepted by the user
then the quote turns into a Job, (at this point the job is outside the
scope of webMIP functionality).
\end{enumerate}
The webMIP system provides a quick and easy interface for agents to
request a quotation on{}-line. Agents may also phone, fax, email or
post a request for a quote; in these cases the enquiry is entered into
webMIP by an I\&C User on behalf of the agent. The webMIP system will
record the I\&C User and the supplier information on such enquiries.
The user logs into the system using a user name and password. If the
user has the role of I\&C User, the user selects the user name of the
Supplier Agent on whose behalf they are entering the enquiry
information.
Figures \ref{fig:UseCaseDiagram} and \ref{fig:SequenceDiagram} show the main processes
and objects of the system.
\begin{figure}
\includegraphics[width=\textwidth]{UseCases1}
\caption{Use Case Diagram}
\label{fig:UseCaseDiagram}
\end{figure}
\subsection{Enquiry}
\label{sec:Enquiry}
\begin{figure}
\includegraphics[width=\textwidth]{SequenceDiagram1}
\caption{Sequence Diagram}
\label{fig:SequenceDiagram}
\end{figure}
The system allows the user to perform the following primary functions:
\begin{enumerate}
\item Create a new enquiry;
\item Amend an existing enquiry;
\item Save an enquiry;
\item Copy an existing enquiry to create a new enquiry;
\item Submit an enquiry for quotation.
\end{enumerate}
The complete list of enquiry data items are described in Appendix \ref{sec:AppendixDataItems}.
\subsubsection{Create a new enquiry}
The system generates and records a unique enquiry reference for the new
enquiry. The system records supplier{}-related information against the
new enquiry by referring to the user agent details to find the supplier
on whose behalf the user performs work. The system records the user
details against the enquiry.
The user enters site location information and then fills in the
questionnaire.
The questionnaire is presented as a series of questions (either grouped
or singular) on a succession of screens. The system saves the answers
to questions when the user completes a screen. The system alters the
{\textquotesingle}flow{\textquotesingle} of questions depending on the
answers given to previous questions. Each has
{\textquotesingle}help{\textquotesingle} associated with it that is
presented to the user on request. The user is able to exit from the
questionnaire before all the questions have been answered: the user may
choose to amend or complete the enquiry at a later date.
When the questionnaire is completed, the user is able to request a
quote.
\subsubsection{Amend an existing enquiry}
The user searches for existing enquiries using the unique enquiry
reference, transaction reference, post code or MPRN of an enquiry. The
system limits the enquiries that can be queried to those associated
with the supplier on whose behalf the user performs work: the queried
enquiries may have been created by other users. If the enquiry has not
been marked as {\textquotesingle}quoted for{\textquotesingle}, the user
is able to amend the enquiry.
The user may amend the site location information, completed questions
from the questionnaire or complete unanswered questions.
When the questionnaire is completed, the user is able to request a
quote.
\subsubsection{Copy an existing enquiry to create a new enquiry}
The user searches for existing enquiries using the unique enquiry
reference, transaction reference, post code or MPRN of an enquiry. The
system limits the enquiries that can be queried to those associated
with the supplier on whose behalf the user performs work: the queried
enquiries may have been created by other users.
The system allows Agents and I\&C users to create a new enquiry by
selecting an existing enquiry and copying the details of that enquiry.
The system generates and records a unique enquiry reference for the new
enquiry. The system amends the new enquiry by applying the current
Agents details and removing any files associated with the original
enquiry.
The user is able to amend the new enquiry.
\subsubsection{Enquiry State}
The state diagram (Figure \ref{fig:EnquiryStateDiagram}) demonstrates the behaviour of the enquiry
through the use cases described in Figure \ref{fig:UseCaseDiagram}.
\begin{figure}
\includegraphics[width=\textwidth]{EnquiryStateDiagram}
\caption{Enquiry State Diagram}
\label{fig:EnquiryStateDiagram}
\end{figure}
\subsection{Questionnaire Flow Chart}
In order for the user to receive a quote, a short questionnaire needs to
be completed. The webMIP system prompts the user to answer the
questions. Some questions within the questionnaire are dependent on
answers from other questions. Figures \ref{fig:QuestionaireFlowChartSlide1}, \ref{fig:QuestionaireFlowChartSlide2} and \ref{fig:QuestionaireFlowChartSlide3}
describe the overall flow of the enquiry questions.
\begin{figure}
\includegraphics[width=\textwidth]{QuestionnaireFlowchartFromFlipChartSlide1.png}
\caption{Questionnaire Flow Chart - Slide 1}
\label{fig:QuestionaireFlowChartSlide1}
\end{figure}
\begin{figure}
\includegraphics[width=\textwidth]{QuestionnaireFlowchartFromFlipChartSlide2.png}
\caption{Questionnaire Flow Chart - Slide 2}
\label{fig:QuestionaireFlowChartSlide2}
\end{figure}
\begin{figure}
\includegraphics[width=\textwidth]{QuestionnaireFlowchartFromFlipChartSlide3.png}
\caption{Questionnaire Flow Chart - Slide 3}
\label{fig:QuestionaireFlowChartSlide3}
\end{figure}
\subsection{Quote generation}
The system generates quote(s) on request against enquiries that have not
already been marked as {\textquotesingle}quoted for{\textquotesingle}.
There are two methods of quote generation:
\begin{enumerate}
\item Automatic quotation. The system produces PDF letters for all submitted quotes with all relevant details (and caveats where appropriate) without manual intervention;
\item Manual quotation. The system is unable to automatically produce a
quote and relies on a manual process to produce the quotation off line
and then upload the quotation into webMIP.
\end{enumerate}
The rules in Figures \ref{fig:AutomaticOrManualFlowChart1}, \ref{fig:AutomaticOrManualFlowChart2} and \ref{fig:AutomaticOrManualFlowChart3} show whether an enquiry results in an automatic or
manual quotation. If the meter size is not provided by the user, the
system converts the Qmax value into the appropriate U category e.g. U16
and this conversion is used in place of the meter size.
The system is able to produce automatic quotations for adversarial
works, however an additional caveat is placed on the automatic quote
stating that any purging requirements will be addressed as a variation
on the job at a later date.
In addition to the inability of the system to produce an automatic
quotation, the requirement for a site survey causes the need for a
manual quotation (see \ref{sec:SiteSurvey}).
\begin{figure}
\includegraphics[width=\textwidth]{bespoke_or_standard_job1.png}
\caption{Automatic or Manual Quotation Flow Chart 1}
\label{fig:AutomaticOrManualFlowChart1}
\end{figure}
\begin{figure}
\includegraphics[width=\textwidth]{bespoke_or_standard_job2.png}
\caption{Automatic or Manual Quotation Flow Chart 2}
\label{fig:AutomaticOrManualFlowChart2}
\end{figure}
\begin{figure}
\includegraphics[width=\textwidth]{bespoke_or_standard_job3.png}
\caption{Automatic or Manual Quotation Flow Chart 3}
\label{fig:AutomaticOrManualFlowChart3}
\end{figure}
\subsubsection{Automatic quotation}
The system produces quotations for new meter modules and for standard work items.
\paragraph{Meter Module}
Quotations are based on the system{\textquotesingle}s ability to select
meter modules that match the enquiry requirements.
\subparagraph{Meter module selection}
The webMIP system identifies and selects Meter Modules that are suitable
for quotation. Meter modules are selected using the following enquiry
details:
\begin{enumerate}
\item Inlet Pressure;
\item Outlet Pressure(Required Meter Pressure);
\item Qmax;
\end{enumerate}
Each meter module is associated with a single housing and this is
selected if the enquiry requests it.
Each meter module is associated with a single base and this is selected
if the enquiry requests it.
For Adversarial removal jobs, a caveat is placed in the automated quote
stating that any purging costs will be transferred back to the customer
after the job is completed in the form of a variation.
For enquiries without a housing option selected, the minimum housing
dimension requirements are provided.
\subparagraph{Meter module speculative quote}
The system produces a quote for each selected meter module. Users can
select each of the quotes provided and accept one. The following items
of data are provided with each of the meter modules listed:
\begin{enumerate}
\item Meter module name {--} The name/description of the meter module
\item Total cost {--} The total cost of the module and the chosen
add{}-ons
\item Contract Lead time {--} The number of days that the job must be
completed within (after quote acceptance)
\item Qmax {--} The Qmax value requested by the enquiry, in KWh
\item Inlet orientation {--} The orientation of the inlet pipework
\item Outlet orientation {--} The orientation of the outlet pipework
\item List of Add-ons
\end{enumerate}
\subparagraph{Meter module accepted quote document}
Once a quote is accepted the system produces a more detailed quote
document containing a description of the module and the appropriate
add{}-ons. The accepted quote document contains the following data
items:
\begin{enumerate}
\item Module name {--} The name of the module
\item Qmax {--} The Qmax value requested by the enquiry, in KWh
\item Qmin {--} The Qmin value for the module, in kWh
\item Service Pressure {--} The service pressure category for the module
(eg. LP)
\item Required meter pressure {--}The required meter pressure requested by the enquiry, in mbar
\item Job completion date {--} The number of days that the job must be
completed within (after quote acceptance)
\item Dimensions {--} The width, depth and height of the module, in mm
\item Weight {--} The weight of the module, in kg
\item Inlet {--} The inlet orientation configuration
\item Outlet {--} The outlet orientation configuration
\item Module Cost {--} The cost of the module
\item Caveats {--} A list of caveats relating to the job
\end{enumerate}
An additional list of selected module add{}-ons is provided with the
following data items displayed for each add{}-on:
\begin{enumerate}
\item Accessory {--} The name of the add{}-on
\item Cost {--} The cost of the add{}-on
\item Lead time {--} The lead time (if appropriate) for
delivering/fitting the add{}-on
\item Dimensions {--} The width, depth and height of the add{}-on
\item Weight {--} The weight of the add{}-on in kg
\end{enumerate}
There is an additional total line for the list of add{}-ons, that totals
the collective costs of the add{}-ons.
The system generates costs for the module dependant on the installation
address. The regional structure will be based on postcode data provided
by National Grid Metering I\&C. See Appendix \ref{sec:AppendixPricingData}
for further information.
\paragraph{Standard work items}
Quotations for standard work items apply standard/fixed prices for each item requested. Such items include:
\begin{enumerate}
\item Request for OFGEM Meter Accuracy Test (OFMAT).
If the existing meter is a Diaphragm and within U-16 to U-160 then an automatic quote will be attempted otherwise the quote will be manual;
\item Removal of meters, including 'Adversarial' removal of meters;
Relocation of meters;
\item Purchase Energy Management System (EMS) for an existing meter module.
\end{enumerate}
The generated quotation refers to the work item(s) and the price charged.
\subsubsection{Manual quote generation}
Where the system is unable to automatically produce a quotation, the
system supports a manual process of uploading a quotation document
generated off{}-line and making it available to the user. The system
has no knowledge of the contents of the manual quotation.
\subsection{Quote acceptance and rejection}
The user searches for existing enquiries using the unique enquiry
reference, transaction reference, post code or MPRN of an enquiry. The
system limits the enquiries that can be queried to those associated
with the supplier on whose behalf the user performs work: the queried
enquiries may have been created by other users. The user is able to
view the quote(s) associated with an enquiry where either the enquiry
has been marked as {\textquotesingle}quoted for{\textquotesingle} and
the quotes have not lapsed (greater than 90 days) or the enquiry has
been marked as {\textquotesingle}complete{\textquotesingle}.
The user is able to select a quote and view the accepted quote document.
The user rejects quotes by selecting from the list and choosing the
{\textquotesingle}reject{\textquotesingle} option. The user is asked to
enter a reason for the rejection. The user is given the opportunity to
fill in a free text field of 250 characters and select from a list of
the following reasons:
\begin{enumerate}
\item Too expensive
\item Lead time too long
\item Used competitor
\item No longer required
\item Speculative enquiry
\item Customer changed supplier
\end{enumerate}
A rejected quote cannot be subsequently accepted
The user accepts a quote by selecting from the list and choosing the
{\textquotesingle}accept{\textquotesingle} option. The system records
the details of the user against the enquiry. The system marks the
quotation as {\textquotesingle}Accepted{\textquotesingle} and all other
quotations related to the enquiry as
{\textquotesingle}Rejected{\textquotesingle}. An accepted quote cannot
be subsequently rejected. An enquiry cannot have more than one accepted
quote. The system uses email to contact the I\&C department with
details of the accepted quote (see section \ref{sec:CommunicationQuotationAccepted} for further information). The system also
provides the user with details of the manual process to be followed
from this point. The system will also inform the user that the actual
job SLA starts after all drawings and documents required to complete
the job have been uploaded or delivered to I\&C.
Quotes that have not been accepted or rejected lapse after 90 days.
Quotes that have lapsed cannot be viewed by the user. The system marks
the quote as {\textquotesingle}Lapsed{\textquotesingle}.
\subsubsection{Quotation State}
The state diagram in Figure \ref{fig:QuotationStateDiagram} demonstrates the behaviour of the quotation
through the use cases described in Figure \ref{fig:UseCaseDiagram}.
\begin{figure}
\includegraphics[width=\textwidth]{QuotationStateDiagram.png}
\caption{Quotation State Diagram}
\label{fig:QuotationStateDiagram}
\end{figure}
\clearpage
\subsection{System Process Map}
Figures \ref{fig:SystemProcessMapSlide1}, \ref{fig:SystemProcessMapSlide2}, \ref{fig:SystemProcessMapSlide3} and \ref{fig:SystemProcessMapSlide4} show the overall flow of the Quotation Processes.
\begin{figure}
\includegraphics[width=\textwidth]{system_process_mapSlide1.png}
\caption{System Process Map {}- Slide 1}
\label{fig:SystemProcessMapSlide1}
\end{figure}
\begin{figure}
\includegraphics[width=\textwidth]{system_process_mapSlide2.png}
\caption{System Process Map {}- Slide 2}
\label{fig:SystemProcessMapSlide2}
\end{figure}
\begin{figure}
\includegraphics[width=\textwidth]{system_process_mapSlide3.png}
\caption{System Process Map {}- Slide 3}
\label{fig:SystemProcessMapSlide3}
\end{figure}
\begin{figure}
\includegraphics[width=1\textwidth]{system_process_mapSlide4.png}
\caption{System Process Map {}- Slide 4}
\label{fig:SystemProcessMapSlide4}
\end{figure}
\clearpage
\subsection{Business Rules}
The following business rules are applied during the above processes.
\subsubsection{Pricing Data}
With the exception of ''Standard Add-Ons'' (see Appendix \ref{sec:AppendixStandardAddOns}) all cost/pricing information may
be regional i.e. the price for an item may differ according to the
region in which the installation will take place. Regions are based on
post{}-codes\footnote{Composition of postcode to region still
unknown.}. Where there are no applicable regional costs associated with
an item, a non{}-regional price will be used for that item.
Where the system selects a meter module or associated item and a
required supplier price is missing, the system is unable to produce a
quotation. The enquiry is treated as a request for a Manual Quote that
requires completion by D\&Q.
Where the system selects a meter module or associated item and a
required network price is missing, the system will produce a quotation
but there will be a manual process during
{\textquotesingle}job{\textquotesingle} entry onto SAP to determine the
relevant network costs.
Bypass pricing is handled off{}-line.
\subsubsection{Tripartite Agreement}
Where suppliers have not signed up to an agreement with National Grid,
known as the Tripartite Agreement, the system is prevented from
producing quotations (both automatic and manual) for specified job
types where the consumer postcode is within a specified set of
postcodes. Where a request for quotation is made and is prevented by the
absence of a Tripartite Agreement, the user will be informed.
%\begin{quote}
%Non{}-tripartite customers will not be able to generate
%quotations for certain job types in certain postcodes (postcodes to be
%supplied in the design and build phase). These jobs would drop out of
%scope.
%
%
%I think it simply needs a field in your {\textquotesingle}Supplier
%Details{\textquotesingle} table (perhaps down to Contract Reference
%granularity) which nominates it as being a Tripartite supplier (T) or
%Non{}-Tripartite one (N). The Users Log{}-in would associate them to
%the Specific Supplier.
%
%You then need a couple of lines of code which upon entry of Job{}-Type
%and Post{}-Code do a look up to see if this is a valid request. In
%Scottish and Southern (Scotia) IDN Network Areas only a very limited
%set of job types can be entertained for
%{\textquotesingle}Type{}-N{\textquotesingle} Suppliers. Where we are
%unable to Quote (legally/commercially) an Error Message should be
%displayed directing the User to the {\textquotesingle}Relevant
%Network{\textquotesingle}.
%\end{quote}
\subsubsection{Site Survey}
\label{sec:SiteSurvey}
The following enquiries require a site survey:
\begin{enumerate}
\item LP or MP relocation;
\item Exchange; UNLESS
\begin{enumerate}
\item the service pressure is LP and the existing meter is a Diaphragm; OR
\item the service pressure is MP and the existing meter is a Diaphragm and the upgrade is within one
{\textquotesingle}U{\textquotesingle} size e.g. from U16 to U40.
\end{enumerate}
\end{enumerate}
An enquiry that requires a site survey prevents the creation of an automatic quote.

View File

@@ -0,0 +1,129 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section[Reporting]{\index{Reporting}Reporting}
The webMIP system contains reporting options for all users of the
system. Most of the reports take the form of lists of data from which
decisions and choices are made. I\&C build their own reports using the
data export function of webMIP.
The following is a list of the purpose built reports that are included
within the webMIP system.
\subsection{Data Export}
The system provides the webMIP administrator user with the ability to
export all data in the webMIP system. The data is categorised by the
logical groupings in which it is held within webMIP. The data is
exported in CSV format and then used by I\&C.
\subsection{Automatic Quotes}
The system generates quotes on request. The system initially generates a
speculative quote document for each meter module that matches the enquiry
requirements. When a quote is accepted, the system generates an accepted
quote document containing a description of the module, appropriate
add{}-ons and detailed drawings. The quote is generated as a PDF file.
All quotes are generated with National Grid Metering headers and
footers.
Quotes without a housing option selected supply the minimum housing
dimension details but no costing details are provided.
\subsubsection{Speculative Quote}
A speculative quote is a quote automatically generated by webMIP after the
user has submitted their enquiry for quotation. The quote
contains the following data:
\begin{enumerate}
\item Base dimensions and generic diagram;
\item Housing dimensions and generic diagram;
\item Module dimensions and generic diagram;
\item Module technical specifications;
\item The Agent/supplier address details;
\item Break down of costs and items (each line with an item and
associated costs).
\end{enumerate}
\subsubsection{Accepted Quote}
The accepted quote is provided to the user after accepting a Speculative
quote. The quote contains further refinement and detail
than the speculative quote. The quote contains the following
data:
\begin{enumerate}
\item Base details and dimensions with detailed diagram;
\item Housing details and dimensions with detailed diagram;
\item Module details and dimensions with detailed diagram;
\item Module technical specifications;
\item The Agent/supplier address details;
\item Break down of costs and items (each line with an item and
associated costs).
\end{enumerate}
\subsection{User specific Reports}
\subsubsection{View of Accepted Quotes}
The system provides a list of accepted quotes displayed in date accepted
ascending order. The report is available to the webMIP administrator,
I\&C User and I\&C Customer Services users. The fields displayed for
each quote is as follows:
\begin{enumerate}
\item Quote reference number;
\item Supplier Name;
\item Agent name;
\item Date quote accepted.
\end{enumerate}
\subsubsection{View of quotes pending manual quote}
The system provides a view of all quotations with a status of
\ {\textquotesingle}In Progress{\textquotesingle}. \ The quotes are
displayed in date{}-submitted ascending order. The report is available
to the webMIP administrator, I\&C User and I\&C Customer Services
users. The following fields are displayed for each quote:
\begin{enumerate}
\item Quote reference number;
\item Supplier Name;
\item Agent name;
\item Date submitted for quotation.
\end{enumerate}
\subsubsection{Supplier Administrator}
The Supplier Agent role will have a view of all related Supplier Agents.
\subsubsection{Supplier Agent}
The Supplier Agent role has following data views available:
\begin{enumerate}
\item Enquiries that they have created or have been created by other
agents associated with the same supplier;
\item Quotes that they have created or have been created by other agents
associated with the same supplier, these will be viewable for up to 90
days from generation.
\end{enumerate}
\subsubsection{I \& C Customer Services}
The I \& C Customer Services role has the following data views
available:
\begin{enumerate}
\item All enquiries that \ have been created within the system;
\item All quotes that \ have been created, these will be viewable for up
to 90 days from generation.
\end{enumerate}
\subsubsection{I \& C User}
The I \& C User role will has the following data views available:
\begin{enumerate}
\item All enquiries that \ have been created within the system;
\item All quotes that \ have been created, these will be viewable for up
to 90 days from generation.
\end{enumerate}
\subsubsection{The webMIP Administrator}
The webMIP Administrator role has the following data views available:
\begin{enumerate}
\item All enquiries that \ have been created within the system;
\item All quotes that \ have been created.
\end{enumerate}

View File

@@ -0,0 +1,116 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section{System Scope}
The primary objective of the system is to allow Agents to submit
enquiries for meter related works and services without the involvement
of I\&C staff. The secondary objective is to produce one or more meter
work quotations to satisfy each submitted enquiry, again without the
involvement of I\&C staff, and make these quotations available to the
Agents for acceptance.
The scope boundary for the system can be defined via the work
flow required. The scope starts once an enquiry is initiated and ends
once the provided quote has been accepted, rejected or lapsed (after 90
days).
\subsection{Within Scope}
The following stated requirements are listed as in scope and will
facilitate the functions and operation of the webMIP system.
\begin{enumerate}
\item Collect enquiry details for meter related works in the form of a
questionnaire completed by a registered webMIP user (see Appendix \ref{sec:AppendixDataItems}).
The meter related works details collected are limited to the
following job types:
\begin{enumerate}
\item Installation of new meters;
\item Request for OFGEM Meter Accuracy Test (OFMAT);
\item Exchange of meters;
\item Removal of meters, including
{\textquotesingle}Adversarial{\textquotesingle} removal of meters;
\item Relocation of meters;
\item Purchase of Automatic Meter Reader (AMR) and/or Energy Management System (EMS) for an existing meter module.
\end{enumerate}
\item Facility to upload documents relating to an enquiry. Maximum
size of file 3 megabytes, maximum size of files relating to an enquiry
10 megabytes.
\item The facility to download files stored within the system.
\item A bulk upload process with simple validation that will allow users
to upload system data items into webMIP.
\item The ability to provide an automatic quotation for enquiries that
meet the correct requirements (see Automatic quotation scope below).
\item Provide the facility for specific I\&C users to upload a manual
quotation for enquiries that webMIP is unable to produce and automatic
quotation.
\item To provide the facility for users to accept/reject manually
uploaded and automatically created quotations via a web browser.
\item To scan uploaded files for viruses and malicious content and
remove offending files
\end{enumerate}
\subsubsection{Automatic quotation scope}
The rules in Figure \ref{fig:AutomaticOrManualFlowChart1} (page \pageref{fig:AutomaticOrManualFlowChart1}) show the
scope for the production of automatic or manual quotations. In addition
to these rules, works where there are no meter modules, housings, etc.
known to the system that meet the requirements of the submitted enquiry
will result in a manual quotation.
\subsubsection{Manual quotation scope}
Where the system is unable to produce a quotation, the system provides
automatic emails to I\&C and appropriate agent users, informing them
that this is the case. The system supports a manual process of
uploading a quotation document generated off{}-line and making it
available to the third{}-party. The system has no knowledge of the
contents of the manual quotation.
\subsubsection{Communication scope}
The system will provide communication in the form of email and web
page requests. The system will send email to users of the system,
these emails may where appropriate include system generated
attachments. The system will be capable of emailing quotes to users
where appropriate.
\subsection{Out of Scope}
The system will not provide the following functions or requirements that
are deemed to be beyond the scope of the system at this point in time.
\begin{enumerate}
\item Where the third{}-party requires communications to be via
telephone, fax or the post this is performed manually by I\&C staff and
not by the webMIP system;
\item Managing Procurement, Planning Scheduling and Despatch activities
for the I\&C value chain;
\item Any changes to off{}-line systems required to accommodate
on{}-line quotations;
\item Any changes required to SAP Blueprint in order to accommodate
on{}-line quotations solution;
\item Automated interface to any of the existing systems/off{}-line
databases;
\item Tracking of the processes used to generate manual quotations;
\item Production of {\textquotesingle}ad{}-hoc{\textquotesingle}
management information reports;
\item Management of customer queries and complaints;
\item Management of any variations that occur on accepted quotations;
\item Supplier specific end customer uplifts for quotation pricing;
\item Supplier specific, end customer customised quotations with letter
heads;
\item Manage supplier acceptance of quotations where the method of acceptance occurs outside of the system e.g. through telephone, email, fax, etc.;
\item Manage quotation preparation for jobs handled manually;
\item Quotation generation for jobs received via supplier sent bulk .CSV
files;
\item Automatic generation of quotations deemed as bespoke or
non{}-standard;
\item Facility to validate quotation details and pricing provided by SAP
Blueprint.
\end{enumerate}

View File

@@ -0,0 +1,36 @@
\begin{titlepage}
\includegraphics[width=0.9\textwidth]{TitleImage}
\begin{tabular}[c]{l r}
\toprule
& \today
\\
\midrule
\multicolumn{2}{c}{
\newline
\Huge{webMIP Functional Specification}
\newline
}
\\
\midrule
\theversion &Restricted to National Grid Metering \& Advantica
\\
\bottomrule
\end{tabular}
\begin{tabular}[c]{l l}
\textbf{Prepared for:} & \textbf{Prepared by:} \\
Martin Hansford & Jamie Priest \& Andy Hardy \\
National Grid Metering & Advantica \\
4 Abbotts Lane & Ashby Road \\
Coventry & Loughborough \\
Warwickshire & Leicestershire \\
CV1 4AY & LE11 3GR \\
& United Kingdom \\
& Tel: +44 (0)1509 282802 \\
& Fax: +44 (0)1509 283135 \\
& Email: jamie.priest@advanticagroup.com \\
& Website: www.advanticagroup.com \\
Customer Reference: 2520000817 & \\
\end{tabular}
\end{titlepage}

View File

@@ -0,0 +1,493 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\section{Security}
\label{sec:Security}
\subsection{User Security}
\label{sec:UserSecurity}
User security is provided through:
\begin{enumerate}
\item User Accounts {--} to control access to the system to authorised
users only;
\item User Roles {}- to control user access to system functionality;
\end{enumerate}
\subsubsection{\label{sec:UserAccounts}User Accounts}
The user provides a valid user name and password to access their system
account. Each user name is unique within the system. Each account is
associated with a single User Role (see User Roles, below) and,
optionally, a single Supplier that the account user works on behalf of.
A user may have multiple user accounts: this allows the user to
represent more than one Supplier or have multiple roles. For example,
Peter Smith may have user name PSMITHMETHANE when representing one
Supplier and user name PSMITHBIO when representing a second Supplier.
Advantica retains access to the system for support purposes.
\paragraph{Password Complexity}
Passwords held within the webMIP system conform to the following rules:
\begin{enumerate}
\item Minimum length of 8 characters
\item Contain a non{}-alphanumeric character e.g. \%
\item Contain upper case and lower case characters
\item Contain alpha and numeric characters
\end{enumerate}
\paragraph{Password expiry}
Passwords expire after 30 days. After this time user is able to log in
to the system but is forced to enter a new password before they can
gain access to system. After 60 days the user is unable to access the
system and the account is locked. The account is unlocked either by the
webMIP administrator or, where the account is for a Supplier Agent, the
associated Supplier Administrator.
\paragraph{Forgotten passwords}
Forgotten passwords are reset by users with the role of webMIP
Administrator or Supplier Administrator. The Supplier Administrator
role can only reset the passwords of accounts associated with the same
Supplier as that represented by the Supplier Administrator. The webMIP
Administrator role is able to reset all account passwords.
\paragraph{File Uploads}
Files that are uploaded to the webMIP system are scanned for viruses or
malicious content. However, it is the responsibility of users to have
adequate virus protection before they upload or download files to or
from the system. Files identified as containing \ a virus or malicious
content are removed from the system and the associated enquiry is
marked with warning text stating that the file has been removed for
security reasons.
Further security details will be defined in the design phase of the
project.
\subsubsection{User Roles}
\label{sec:userroles}
The different users of the system can be defined within five separate
roles:
\begin{enumerate}
\item webMIP Administrator;
\item I\&C User;
\item I\&C Customer Services;
\item Supplier Administrator;
\item Supplier Agent.
\end{enumerate}
These different roles fall into the hierarchy described in Figure \ref{fig:UserRoleHierarchy}:
\begin{figure}
\includegraphics[width=\textwidth]{userhierachy}
\caption{User Role Hierarchy}
\label{fig:UserRoleHierarchy}
\end{figure}
\paragraph{webMIP Administrator}
The webMIP Administrator role is able to control the overall system e.g.
editing module and add-on data, running system reports, etc.
The role is able to create, view, update and delete users with the roles
of Supplier Administrator, Supplier Agent, I\&C User and I\&C Customer
Services. The webMIP Administrator can also perform all of the
functions available to the I\&C User and the I\&C Customer Services
roles. When creating or editing the Supplier Agent, the webMIP
Administrator, will be forced to associate the Supplier Agent with an
existing Supplier Administrator.
The Administration section of this document has further information on
the administrative functions that can be performed by the webMIP
Administrator role.
\paragraph{I\&C User}
The I\&C User role is able to complete all of the main day{}-to{}-day
tasks required within the webMIP system. The I\&C User role is able to:
\begin{enumerate}
\item Create and enter enquiries on behalf of any Supplier Agent listed
in the webMIP system;
\item Accept and reject quotes on behalf of a Supplier Agent;
\item Upload a manual bespoke quote to the webMIP system;
\item View all enquiries and quotes within the system enabling I\&C
users to to provide support for the Supplier Agents in populating
enquiry details and resolving their queries.
\end{enumerate}
Where a user with I\&C User role performs work on behalf of a Supplier
Agent, they are subject to the same restrictions as the account on
whose behalf they are working. For example, they can only create
enquiries or accept quotes for the Supplier represented by the Supplier
Agent account. The system records activities performed by the I\&C User
role on behalf of Supplier Agents.
Where a user with I\&C User role accepts a quote on behalf of a Supplier Agent, the user records evidence of supplier approval (e.g. reference to email, document, etc.) against the acceptance.
\paragraph{I\&C Customer Services}
The I\&C Customer Services role is able to view all enquiries and quotes
within the webMIP system, but is unable to edit or update any data. The
role allows the customer services team within I\&C to provide support
for the Supplier Agents.
\paragraph{Supplier Administrator}
The role of Supplier Administrator is able to maintain data relating to
the supplier to which the user is associated.
The Supplier Administrator role is also able to create, view, edit and
delete users with the role of Supplier Agent. Each user created in this
way is associated with the supplier represented by the Supplier
Administrator.
\paragraph{Supplier Agent}
A user may have the role of Supplier Agent for multiple suppliers. Each
instance of the Supplier Agent role requires a user account dedicated
to that supplier.
The Supplier Agent role is able to create enquiries and view or edit
enquiries that have been created by other agents associated with the
same supplier.
The Supplier Agent role can submit enquiries for quotation and accept or
reject quotes for their associated supplier.
When a Supplier Agent creates a new enquiry the system will
automatically associate their related Supplier details to the enquiry.
\paragraph{Action Matrix}
The action matrix listed below outlines some key functions of the webMIP
system and the roles that can perform them.
\begin{longtable}[c]{ p{0.3\textwidth} *{5}{ p{0.1\textwidth} } }
\toprule
{\bfseries
Role}
\newline
{\itshape
Action}
&
{\bfseries
WebMIP Admin}
&
{\bfseries
I\&C User}
&
{\bfseries
I\&C Cust}
{\bfseries
Services}
&
{\bfseries
Supplier}
{\bfseries
Admin}
&
{\bfseries
Supplier}
{\bfseries
Agent}
\\
\midrule
\endhead
{\itshape
Create enquiry}
&
X
&
X
&
&
&
X
\\
{\itshape
Read enquiry}
&
X
&
X
&
X
&
&
X*
\\
{\itshape
Submit enquiry}
&
&
X
&
&
&
X*
\\
{\itshape
Delete enquiry}
&
X
&
&
&
&
\\
{\itshape
Store enquiry}
&
X
&
X
&
&
&
X*
\\
{\itshape
Upload files to enquiry}
&
X
&
X
&
&
&
X*
\\
{\itshape
Accept quote}
&
X
&
X
&
&
&
X*
\\
{\itshape
Reject quote}
&
X
&
X
&
&
&
X*
\\
{\itshape
Delete quote}
&
X
&
&
&
&
\\
{\itshape
Upload files to quote}
&
X
&
X
&
&
&
\\
{\itshape
Run system reports}
&
X
&
&
&
&
\\
{\itshape
Delete files from enquiry}
&
X
&
X
&
&
&
\\
{\itshape
Create I\&C users}
&
X
&
&
&
&
\\
{\itshape
Delete I\&C users}
&
X
&
&
&
&
\\
{\itshape
Create Supplier Admin users}
&
X
&
&
&
&
\\
{\itshape
Delete Supplier Admin users}
&
X
&
&
&
&
\\
{\itshape
Create Supplier Agents}
&
X
&
&
&
X**
&
\\
{\itshape
Delete Supplier Agents}
&
X
&
&
&
X**
&
\\
{\itshape
View Supplier Agents}
&
X
&
X
&
X
&
X**
&
X*
\\
{\itshape
Reset User Password}
&
X
&
&
&
X**
&
\\
{\itshape
Edit/Read/Delete/Create system data}
&
X
&
&
&
&
\\
{\itshape
Perform Bulk Upload}
&
X
&
&
&
&
\\
\midrule
\multicolumn{6}{ p{\columnwidth} }{*Only those related to the Supplier that
the Agent is associated with.
\newline
**Only those created by the same Supplier Administrator}
\\
\bottomrule
\caption{Action Matrix}
\label{tab:ActionMatrix}
\end{longtable}
\paragraph{Advantica administration}
Advantica use the built{}-in management tools provided by the chosen
software solution to manage, maintain and investigate issues relating
to the webMIP system. This administration function is considered
outside the scope of the webMIP system functions.
For support purposes, an Advantica user may request the creation of
accounts with the above roles.
\subsection{System Security}
The security requirements defined in \ref{sec:UserSecurity} show how the
system controls access to functionality. The system has two further
forms of security:
\begin{enumerate}
\item Physical security {--} relating to the physical security of the
environment in which the system resides. There are no defined
requirements for physical security, however the check{}-list in Appendix \ref{sec:AppendixPhysicalEnvironment} will be used by the business and NG IS to confirm the suitability
of the physical environment;
\item Application development security {--} the check{}-list Appendix \ref{sec:AppendixApplicationDevelopment}
\ in describes a set of controls that were applied, where appropriate, during
development of the application.
\end{enumerate}

View File

@@ -0,0 +1,83 @@
REM $Id$
SET SERVEROUTPUT ON
store set set_settings.sql
set feedback off pagesize 0 heading off verify off
set linesize 100 trimspool on
DEFINE backup_dir = 's:\orabackup\webmip\files\'
REM Determine the oldest archive log to be backed up
archive log list;
alter system switch logfile;
REM
REM produce a SQL script that:
REM places each tablespace into 'backup' mode,
REM copies the contents of the tablespace to the
REM backup directory,
REM returns each tablespace from 'backup' mode
REM
PROMPT *** SPOOLING
spool do_backup.sql
WITH tsp_df AS (
SELECT tsp.tablespace_name
,df.file_name
,rownum AS current_row
,first_value(rownum) over(PARTITION BY tsp.tablespace_name) AS first_row
,last_value(rownum) over(PARTITION BY tsp.tablespace_name) AS last_row
FROM dba_tablespaces tsp
,dba_data_files df
WHERE tsp.contents <> 'TEMPORARY'
AND tsp.tablespace_name = df.tablespace_name
)
SELECT cmd
FROM (SELECT 'alter tablespace ' || tablespace_name || ' begin backup;' AS cmd
,tablespace_name
,1 AS seq
FROM tsp_df
WHERE current_row = first_row
UNION
SELECT 'host ocopy ' || file_name || ' &&backup_dir' AS cmd
,tablespace_name
,2 AS seq
FROM tsp_df
WHERE (current_row = first_row)
OR (current_row <> first_row AND current_row <> last_row)
OR (current_row = last_row AND last_row <> first_row)
UNION
SELECT 'alter tablespace ' || tablespace_name || ' end backup;' AS cmd
,tablespace_name
,3 AS seq
FROM tsp_df
WHERE current_row = last_row)
ORDER BY tablespace_name
,seq
/
spool off;
PROMPT *** SPOOLING COMPLETE
@set_settings
@@do_backup
REM
REM Create SQL script to add temporary files to temporary tablespaces
REM
set feedback off pagesize 0 heading off verify off
set linesize 100 trimspool on
spool create_tempfile$.sql
select 'alter tablespace '||ts.name||' add tempfile '''||df.name||''' size '|| df.bytes||' reuse;' from v$tempfile df, v$tablespace ts
where ts.ts# = df.ts#
/
spool off
host move create_tempfile$.sql &&backupdir\create_tempfiles.sql
@set_settings
REM
REM create control file for the standby database
REM create backup control file for the primary database
REM
alter database create standby controlfile as 's:\orabackup\webmip\files\standby.ctl';
alter database backup controlfile to 's:\orabackup\webmip\files\backup.ctl';
REM
REM create a database initialization script for
REM the standby database
REM
create pfile='s:\orabackup\webmip\files\initstandby.ora' from spfile;
REM
REM Determine the current archive log to be backed up
archive log list;
alter system switch logfile;

View File

@@ -0,0 +1 @@
oradim -NEW -SID webmip -STARTMODE manual

View File

@@ -0,0 +1,2 @@
REM $Id:$
oradim -STARTUP -SID webmip -STARTTYPE srvc

View File

@@ -0,0 +1,34 @@
%
\documentclass{article}
\usepackage{times}
\begin{document}
\section{Module 13 Growing the Movement}
\subsection{Development plan with Scouts to increase numbers}
\begin{enumerate}
\item Advertising
\begin{enumerate}
\item Leaflets
\item Posters
\end{enumerate}
\item Program
\begin {enumerate}
\item Trips
\item Outdoor Activities
\item Bring a friend
\end{enumerate}
\end{enumerate}
\section{Module 18 Practical Skills}
Need a witness statement about instructing YP in practical skills.
\section{Module 19 International}
\textbf{World Membership Badge} is the symbol of the Membership of World Scouting and of The Scout Association as a part of World Scouting. It is owned by the World Scout Bureau.
\end{document}

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -0,0 +1,51 @@
% LaTeX source for Contents of Jeffeys' Theory of Probability
\documentclass{article}
\usepackage{longtable}
\usepackage{times}
\begin{document}
\pagenumbering 0
\begin{longtable}[c]{|p{0.25\textwidth}|p{0.75\textwidth}|}
\caption{caption for table} \\
\hline
Note & Description \\
\endhead
\hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
[Induction and its relation to deduction]
&
{there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age there once was an ugly duckling with feathers all messy and brown and it never really knew hos it should deal with the difficukties of modern life, complete with the stresses of living in a nuclear age}
\\ \hline
\end{longtable}
\end{document}
%

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

View File

@@ -0,0 +1,247 @@
\documentclass[10pt,a4paper,twoside]{report}
\usepackage[latin1]{inputenc}
\usepackage{glossaries}
\usepackage{listings}
\lstloadlanguages{command.com,SQL}
\lstset{frame=tb,framesep=5pt,basicstyle=\small,
numbers=left, numberstyle=\tiny, numbersep=5pt,
showstringspaces=true,
breaklines=true
}
\lstset{escapeinside={(*@}{@*)}}
\usepackage{svn-multi}
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\author{Andrew Hardy}
\title{webMIP database - backup, recovery and failover procedures}
\newglossaryentry{SLA}
{name=Service Level Agreement,
first=Service Level Agreement(SLA),
description={A service level agreement (frequently SLA) is that part of a service contract where the level of service is formally defined. In practice, the term SLA is sometimes used incorrectly in the context of contracted delivery time (of the service) or performance.}
}
\newglossaryentry{DNS}
{name=Domain Name Server or Service,
first=Domain Name Server(DNS),
description={An Internet service that translates domain names into IP addresses.}
}
\newglossaryentry{COLD}
{name=Cold backup,
description={A cold backup, also called an offline backup, is a database backup when the database is offline and thus not accessible for updating.}
}
\newglossaryentry{HOT}
{name=Hot backup,
description={A hot backup, also called an online backup, is a backup performed on data even though it is actively accessible to users and may currently be in a state of being updated.}
}
\newglossaryentry{AL}
{name=ARCHIVELOG,
description={As Oracle rotates through its \gls{REDO} groups, it will eventually overwrite a group which it has already written to. The data that is being overwritten would be useless for a recovery scenario. In order to prevent that, a database can be run in archive log mode. If the database is in log archive mode, the database makes sure that online \gls{REDO}[s] are not overwritten before they have been archived.}
}
\newglossaryentry{REDO}
{name=Redo log,
description={Before Oracle changes data in a datafile it writes these changes to the redo log. If something happens to one of the datafiles, a backed up datafile can be restored and the redo that was written since that backup is applied bringing the datafile to the state it had before it became unavailable.
The same technique is used in a standby databases environment: One database (the primary database) records all changes and sends them to the standby database(s). These standby databases in turn apply the arrived redo and this keeps them synchronized with the primary database.}
}
\newglossaryentry{STDBY}
{name=standby database,
description={A standby database is a maintained duplicate of the \gls{PRIMARY}.}
}
\newglossaryentry{PRIMARY}
{name=primary database,
description={The primary database is the database accessed by users under normal conditions.}
}
\makeglossaries
\makeindex
\begin{document}
\maketitle
\abstract{This document outlines the procedures used with the webMIP database with regards to backup and recovery}
\tableofcontents
\lstlistoflistings
\chapter{Overview}
\section{Requirements}
The primary requirements for the backup and recovery of the webMIP system are:
\begin{enumerate}
\item Support the customer \gls{SLA} of having data-loss at less than 4 hours within the working-day (8am to 5pm);
\item \gls{DNS};
\end{enumerate}
\section{System Architecture}
\subsection{Primary and standby databases}
\subsection{Internet access}
\chapter{Backup}
\section{COLD backup}
\section{HOT backup}\label{sec:HOTBackup}
A \gls{HOT} is performed against an actively running database i.e. one in which users are connected and transactions are occurring. To use \gls{HOT}[s] you must operate the database in \gls{AL} mode (see listing \ref{lst:archivelog.sql}). Recovery from a \gls{HOT} relies on the restoration of the datafiles and the replaying of all archive logs from the point at which the original backup and onwards.
\lstset{language=command.com}
\begin{lstlisting}[caption={Invoking SQL*Plus},label=lst:invoke,frame=tb]
REM Identify the database connection as
REM bequeath by using the database SID
REM Invoke SQL*Plus without logging in
set oracle_sid=WEBMIP
sqlplus /nolog
\end{lstlisting}
\lstset{language=sql,caption={Prepare for archivelog}}
\lstinputlisting[label=lst:archivelog.sql]{DatabaseScripts/archivelog.sql}
Once in \gls{AL} mode, the datafiles and control files are made available to be backed-up at the operating system level.
The generated archive logs from the point at which the backup started are also backed up. In listing \ref{lst:hotbackup.sql}, the first `archive log list;' is used to provide details of the oldest online log sequence number at the start of the backup whilst the second `archive log list;' is used to provide the \textit{current} log sequence number at the end of the backup.
To recover the database to a state consistent with the end of the backup, you \emph{must} include all the archived log files starting from oldest sequence number to the current sequence number as part of the backup \footnote{Recovery will start from the point of the `current' log, however as a precautionary measure you should keep all archived log files starting from the \textit{oldest online log sequence} number.}.
The `alter system switch logfile;' command forces a log switch so that the \textit{current} log is archived\footnote{The creation of archive logs lags the online redo logs.} and so made available to be backed up.
You should \emph{not} backup and restore the online redo logs as this will prevent the application of the archive logs during recovery.
You \emph{cannot} backup and restore files associated with temporary tablespaces. Instead, these files are recreated using the `create\_tempfiles.sql' script generated by the hot backup script\footnote{Need to confirm this}.
\lstset{language=sql,caption={Perform HOT backup}}
\lstinputlisting[label=lst:hotbackup.sql] {DatabaseScripts/hotbackup.sql}
You also need a copy of the password file that allows SYSDBA access\footnote{The password file should be re-copied whenever the passwords on the primary database are altered},
this should be located in the `database' directory of the Oracle installation e.g. `C:$\backslash$oracle$\backslash$product$\backslash$11.1.0$\backslash$db\_1$\backslash$database' as `PWDwebmip.ora'.
\lstset{language=command.com}
\begin{lstlisting}[caption={Copying the password file to the backup location}]
copy c:\oracle\product\11.1.0\db\_1\database\PWDwebmip.ora s:\orabackup\webmip\files
\end{lstlisting}
At this point you have a set of datafiles, archive logs and control files that can be used to:
\begin{enumerate}
\item Recover the primary database (see section \ref{sec:HOTRecovery});
\item Create a standby database (see section \ref{sec:CreateStandby}).
\end{enumerate}
These files should be stored outside of the server environment.
\chapter{Recovery}
\section{COLD recovery}
\section{HOT recovery}\label{sec:HOTRecovery}
\chapter{Standby database}
A \gls{STDBY} is a maintained duplicate, or `standby', of the production or `primary' database for recovering from disasters at the primary site. The intention is to be able to switch over from the primary database to the standby database in the case of disaster in the least amount of time and with as little recovery as possible.
A hot standby database is a backup copy of the primary database that is maintained on a separate machine. A \gls{HOT} or \gls{COLD} is made of the primary database and copied to the standby server. The standby database is mounted but not opened.
The archive logs from the primary database are copied from the primary to the standby database and applied at regular intervals. The means that the standby database is always a few log files (at least one log file) behind the primary database and is always in `mounted but not open' stage.
When the primary database fails, the standby database can be opened and all users switched to the standby server. After such a switch, the standby database becomes the primary database. A new standby database will then be required.
\section{Creation}
\subsection{Preparation on the primary database}
The primary database is prepared by being placed into \gls{AL} mode and a \gls{HOT} being performed (see section \ref{sec:HOTBackup} for details on this).
The `alter database create standby control file...' command in listing \ref{lst:hotbackup.sql} produces the control file that will be used by the standby database, whilst the `create pfile...' command produces a text version of the database initialization file.
\subsection{Creation of the standby database}\label{sec:CreateStandby}
The standby database is created from a \gls{HOT} of the primary database (see section \ref{sec:HOTBackup}).
The datafiles are copied to the standby server.
The standby server should have the same directory structure as the primary server in order to minimize the amount of changes to be made on the standby server (check the contents of the 'initstandby.ora' created in listing \ref{lst:hotbackup.sql} for the location of the `db\_recovery\_file\_dest' as this is generally only created when databases are created using the Oracle Database Configuration Agent).
Do not forget to copy the `PWDwebmip.ora' password file to the correct `database' location (listing \ref{lst:copy_pwd}).
\lstset{language=command.com}
\begin{lstlisting}[caption={Copying the password file to the standby location},label=lst:copy_pwd]
copy s:\orabackup\webmip\files\PWDwebmip.ora c:\oracle\product\11.1.0\db\_1\database\PWDwebmip.ora
\end{lstlisting}
The `oradim' command (listing \ref{lst:oradim_inst.cmd}) is used to create the Windows service instance to support the standby database. The service is created with a `manual' start mode - this means that the database instance will only become available when started manually.
\lstset{language=command.com,caption={Creation of Windows service for standby database}}
\lstinputlisting[label=lst:oradim_inst.cmd] {DatabaseScripts/oradim_inst.cmd}
The `Oracle Net Manager' tool is used to create a `listener' for the database and the listener restarted to reflect the changes (see listing \ref{lst:lsnrctl}).
\lstset{language=command.com}
\begin{lstlisting}[caption={Restarting the standby listener},label=lst:lsnrctl]
lsnrctl stop
lsnrctl start
\end{lstlisting}
Where there are differences between the configuration of the primary and standby servers, the `initstandby.ora' database initialization file generated by listing \ref{lst:hotbackup.sql} is altered. The `standby.ctl' file (also created by \ref{lst:hotbackup.sql}) is copied to the appropriate directory.
It is recommended to make multiple copies of this control file for greater resilience. Ensure that the names used for the control files are consistent with those listed in the `initstandby.ora'.
The standby database is now physically present, but the instance is not running. The `oradim' command (see listing \ref{lst:oradim_start.cmd}) is used to start the database service, but \emph{not} the instance. The `ORACLE\_SID' environment variable is used to identify the database instance that we are about to start - again we connect to SQL*Plus with the `nolog' option due to the difficulties in creating the connection string from the Windows command line.
\lstset{language=command.com,caption={Starting the standby service}}
\lstinputlisting[label=lst:oradim_start.cmd] {DatabaseScripts/oradim_start.cmd}
We can now connect to the `idle' instance and start it ready to receive archive logs from the primary server (listing \ref{lst:standby_startup.sql}\footnote{If you get a permissions error, connect with the sys password i.e. conn sys/`webmip' as sysdba}). We create the database `spfile' from the modified `initstandby.ora' file and startup the database as a physical standby, but without recovering\footnote{\gls{HOT}[s] always require recovery using the archive logs that were generated during the period of the backup.}.
\lstset{language=SQL}
\begin{lstlisting}[caption={Starting the standby database},label=lst:standby_startup.sql]
conn / as sysdba
create spfile from pfile='s:\orabackup\webmip\files\initstandby.ora';
startup nomount;
alter database mount standby database;
\end{lstlisting}
At this point the standby database is ready to be `maintained' (see section \ref{sec:maintain_standby}).
\section{Maintaining standby database}\label{sec:maintain_standby}
The standby database is physically present with the datafiles as copied from the primary database. The database has been started up, but recovery has not taken place.
Recovery requires the applying of archive logs to the database: if the archive logs generated during the original backup were applied, then the recovered database would be consistent with the state of the primary database as it was at the end of the backup period.
A standby database extends this recovery mechanism by applying not only the archive logs generate during the backup, but some or all of the archive logs generate by the primary database since the time of the backup. This is achieved by keeping the standby database unmounted and periodically attempting recovery using archive logs delivered from the primary database.
\subsection{Transfer of archive logs from primary database}
A mechanism is required to periodically transfer archive logs generated by the primary database to the archive log destination of the standby server. The VBScript `logship.vbs' (listing \ref{lst:logship.vbs}) does this by comparing the archive logs available on the primary server with those available on the standby and transferring any missing files.
\lstset{language=VBScript,caption={Transferring archive logs}}
\lstinputlisting[label=lst:logship.vbs] {DatabaseScripts/advwb1_logship.vbs}
Windows `Scheduled Tasks' are used to invoked this VBScript on a regular basis. The period between runs of this script largely determines the lag between the primary and standby databases in the case of a disaster.
\subsection{Application of archive logs on standby database}
The standby database is mounted in a standby mode, users cannot access the database to perform queries, etc.
Archive logs from the primary server are applied to the standby database through the standard `recovery' mechanism - simulating the recovery of a \gls{HOT}, but \emph{without} ending the recovery cycle.
Listing \ref{lst:applylog} shows the method of placing the database into recovery mode. In this mode, the database automatically applies the archive logs shipped from the primary server.
If the database determines that it requires a missing archive log (one that has not been shipped), it will raise an error. If the database is able to apply all required archive logs, it will continue until the following line where we `cancel' the recovery - this allows recovery to continue at a later date.
\lstset{language=SQL,caption={Applying archive logs}}
\lstinputlisting[label=lst:applylog] {DatabaseScripts/applylog.sql}
Windows `Scheduled Tasks' are used to invoke the application of the archived logs on a regular basis through the use of a Windows command file (see listing \ref{lst:applylog.cmd}).
\lstset{language=command.com,caption={Applying archive logs - command file}}
\lstinputlisting[label=lst:applylog.cmd]{DatabaseScripts/applylog.cmd}
The `currency' of the application of the archive logs can be checked by reviewing the database view v\$log\_history on both the primary and standby databases (see listing \ref{lst:applylog_status.sql}).
\lstset{language=SQL,caption={Checking the applying of the archive logs}}
\lstinputlisting[label=lst:applylog_status.sql]{DatabaseScripts/applylog_status.sql}
\subsection{Restart of standby server}\label{sec:restart_of_standby_server}
Whenever the standby server is restarted, the following scripts should be followed:
\lstset{language=command.com,caption={Restarting the standby service}}
\lstinputlisting[label=lst:oradim_restart.cmd] {DatabaseScripts/oradim_start.cmd}
\lstset{language=SQL}
\begin{lstlisting}[caption={Restarting the standby database},label=lst:restart_standby.sql]
conn / as sysdba
startup nomount;
alter database mount standby database;
\end{lstlisting}
At this point the standby database is ready to be `maintained'.
\chapter{Failover}
\section{Activation of standby database}
\subsection{Preparation of the primary database}
\subsection{Preparation of the standby database}
\subsection{Activating the standby database}
The SQL commands in listing \ref{lst:activatestandby.sql} firstly activate the database, then shut it down cleanly prior to restarting and opening the database.
\lstset{language=SQL,caption={Activating standby database}}
\lstinputlisting[label=lst:activatestandby.sql]{DatabaseScripts/activatestandby.sql}
On completion, the database is open for read write access and is a duplicate of the primary database to the point at which the last archive log from the primary database was applied. The standby database will generate a new set of archive logs.
\section{Redirection of DNS}
\chapter{Failback}
\section{HOT failback}
\subsection{Preparation of the primary database}
\subsection{Backup of the standby database}
\subsection{Transfer of files from standby to primary databases}
\subsection{Maintaining primary database as standby}
\subsection{Re-activation of primary database}
\subsection{Redirection of DNS}
\subsection{Recreation of standby database}
\section{COLD failback}
\subsection{Preparation of the primary database}
\subsection{Backup of the standby database}
\subsection{Transfer of files from standby to primary databases}
\subsection{Re-activation of primary database}
\subsection{Redirection of DNS}
\subsection{Recreation of standby database}
\printglossary
\end{document}

View File

@@ -0,0 +1,107 @@
% This file was converted to LaTeX by Writer2LaTeX ver. 0.4
% see http://www.hj-gym.dk/~hj/writer2latex for more info
%\documentclass[a4paper,twoside]{article}
\documentclass[a4paper,twoside]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{lmodern}
\usepackage[ascii]{inputenc}
\usepackage{color}
\usepackage{calc}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{fancyhdr,graphicx,hyperref}
\usepackage{lineno}
\usepackage{typearea}
\usepackage[nobib,twoside]{CoverPage}
\usepackage {svn-multi}
\svnidlong
{$HeadURL$}
{$LastChangedDate$}
{$LastChangedRevision$}
{$LastChangedBy$}
\svnid{$Id$}
\usepackage{ifpdf}
\ifpdf
\pdfinfo { /CreationDate (D:\svnpdfdate) }
\makeatletter
\hypersetup {%
pdfauthor ={\svnFullAuthor@star *{\svnauthor }},
% pdfauthor ={\ svnFullAuthor@normal {\ svnauthor }},
pdfkeywords ={ Revision \svnrev}
}
\makeatother
\fi
\graphicspath{{./}}
\CoverPageSetup{institute =
{Advantica Ltd\\
Ashby Road\\Loughborough\\Leicestershire\\LE11 3GR\\
tel: +44 (0)1509 282496\\
web: www.advanticagroup.com}
,author={Prepared by: Jamie Priest, Andrew Hardy}
,copyright={\copyright Advantica Ltd 2008}
,title={\includegraphics[width=0.9\textwidth]{TitleImage}\\webMIP Functional Specification}
,insource={Prepared for: Martin Hansford\\National Grid Metering\\4 Abbotts Lane\\Coventry\\Warwickshire\\CV1 4AY}
}
\renewcommand{\CoverPageFooterInfo}{\parbox[b]{.5\textwidth}
{%
\tiny document created on: \today\\
created from: \texttt{\svnkw{Filename} (Revison: \svnfilerev)}
}
}
\renewcommand{\CoverPageHeader}{}
\renewcommand{\headheight}{2.5cm}
%\renewcommand{\chaptername}{Section}
\renewcommand{\contentsname}{Table of Contents}
\newcommand{\theversion}{Version 0.6}
\newsavebox{\pagelogo}
\sbox{\pagelogo}{\includegraphics[totalheight=2.22cm]{AdvLogo}}
\pagestyle{fancyplain}
\begin{document}
%%
%%\include{fs_titlepage}
%%\newpage
%%
\fancyhead{}
\fancyhead[R]{\usebox{\pagelogo}}
\fancyhead [l]{\slshape \leftmark }
\fancyfoot [l]{\tiny \svnkw {Filename} \\ Rev: \svnrev \ (\svnfilerev)}
\fancyfoot [r]{\tiny \svnyear-\svnmonth-\svnday \\ \svnhour:\svnminute}
\fancyfoot[C]{\thepage}
\pagenumbering{roman}
\setcounter{tocdepth}{6}
\tableofcontents
\fancyhead[L]{\theversion}
\listoffigures
\listoftables
\newpage
\pagenumbering{arabic}
\linenumbers
\include{fs_introduction}
\include{fs_scope}
\include{fs_usersandsecurity}
\include{fs_process}
\include{fs_reporting}
\include{fs_administration}
\include{fs_communication}
\appendix
\include{fs_appendix_data_items}
\include{fs_appendix_system_data}
\include{fs_appendix_security_checklist}
\end{document}