Database Application Checklist

advertisement
New Media and
Technology
New Media Database Application Checklist
Document Authorisation
Name:
Mike Hilton
Position:
New Media Database Architect
Signature:
Date:
15th April 2003
Document references
Version:
1.0
Date:
15th April 2003
BBC New Media and Technology
New Media Database Application Checklist
Work carried out by:
Name
Mike Hilton
Department
Infrastructure Cluster
Ext
73988
Document History
Version
1.0
Date
15/04/03
Author
Mike Hilton
Description
First issue.
Any comments or queries about this document should be addressed to Mike Hilton
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 2 of 10
BBC New Media and Technology
New Media Database Application Checklist
Contents
1
2
3
Overview ................................................................................................. 4
Checklist Questions ................................................................................ 4
Example : Celebdaq - celebrity share trading game ......................... 6
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 3 of 10
BBC New Media and Technology
New Media Database Application Checklist
1 Overview
This document is designed to provide a checklist for project managers / online producers
developing new services or enhancements to existing services which will require or
potentially require the use of a database / databases.
It is intended to help producers / project managers to consider their database requirements
and to provide the initial information needed by the Database Architecture and Design
team to determine the way to progress the database aspects of the project.
It is also designed to ensure that all use of databases for new media projects are subject to
consistent, rigorous and objective consideration, which should help ensure an effective
and appropriate solution delivered in a predictable and timely fashion.
To help completing the checklist, please see the example provided below.
2 Checklist Questions
1. Provide a brief general overview of the service / enhancement
2. Provide an overview description of where in the service described above, a
database is expected to form part of the application
3. What information will be stored in the database ? (- list as many main types of
information that your application will want to store as you can think of)
4. How many of each main pieces of information identified above would you
estimate will be produced / used by your application :
(a) Initially when the application launches
(b) After 3 months
(c) After 6 months
(d) After 1 year
5. Would expect information to continue to grow at the above rate indefinitely ?
6. Does the application have a finite life expectancy ? (start date / end date)
7. (i) For each of the main data items identified above, where will the data be
coming from :(a) entered by user / admin staff
(b) provided as configuration information when the application is created
(c) produced from another / existing computer system (once)
(d) produced from another / existing computer system (periodically /
regularly)
(ii) If information is coming from another / existing computer system, is this
another BBC system, or a system belonging to an external supplier ? Are any
sample / example data files from the other / existing computer system available ?
(please include if so).
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 4 of 10
BBC New Media and Technology
New Media Database Application Checklist
8. Does this need to work with (integrate with) any other (existing) database system
? If so, do you know what kind of database technology is being used for this
other database (e.g. Oracle, MySQL, PostGres), and who is hosting and / or
maintaining it ?
9. Do you have any other applications which use databases in a similar way as is
required for this application ?
10. Do you foresee any regular administrative / maintenance jobs looking after the
(database stored) information used by the application (data) ? –
(a) Creating data
(b) Updating data
(c) Deleting data
Who do you expect will perform these tasks ? – users (self service), admin
personel, IT support personnel ?
11. Are there any transactional issues to consider with any of the data ? – e.g. the state
of the data should be returned to a previous / original state in the event of an error
mid way through processing (e.g. updating)
12. Should any of the data automatically be deleted after a period of time ?
13. Does the data need to be archived and kept for a period of time ? If so, how long
?
14. Does any of the data have special security / privacy considerations ? (please
describe)
15. How many different type of people (roles) will be using the application ?
16. Will people need to ‘log on’ to the application, authenticating themselves with a
password for example ?
17. Will people be using the application all the time (24 x 7) ?
18. What is the impact of the application / service not being available ? After what
period of time would this become a significant problem ?
19. Is it acceptable to take the application ‘off line’ to perform essential system
maintenance etc. – e.g. backing up data
20. Have any performance service levels been identified / considered ?
21. Have any MIS (Management Information Systems) requirements been identified ?
– e.g. Auditing usage, ad hoc queries, reports ? Do any of these comprise an
important or critical part of the application ?
22. Are future enhancements to this application known / planned ? (provide overview
details if known)
23. Will the database have to be hosted on a particular machine (hardware) for any
reason ?
24. Are there any local standards or guidelines that may affect the database design ?
25. Are there currently any planned dates for the application / project – e.g. launch
date, kick off date, design milestones, etc. etc.
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 5 of 10
BBC New Media and Technology
New Media Database Application Checklist
3 Example : Celebdaq - celebrity share trading game
1. Provide a brief general overview of the service / enhancement
Celebdaq is an Online game provided on the BBCi web site which enables members
of the public to manage a portfolio of celebrity shares having a nominal virtual value.
Shares may be bought and sold, and individual player portfolios can be retrieved
showing the current nominal value. Share values are calculated every 15 minutes
based upon number of column inches of press coverage in selected publications, plus
a weighting based upon the volume of trading (demand) for the share. Weekly
dividends are also calculated per share based upon the performance of the share for
the previous week. These are added on to player portfolio values.
Include capabilities to :
(a) Deliver data (- some in ‘real time’), to TV graphics for production of data
based graphs / images to support TV program
(b) Support production of graphs showing press coverage of column inches
over a period of time (e.g. 1 week, 1 month, 3 months, 6 months, 1 year)
(c) Allow new celebrities to be introduced to the game via a ‘Contenders’
feature which will allow users to vote in (weekly), new Celeberities (at the
expense of existing least popular celebrities perhaps.
2. Provide an overview description of where in the service described above, a
database is expected to form part of the application
The database provides the core of the application, storing user, share, and
transactional information (etc.). There is a web front end by which normal users
access the application, and by which admin staff perform any necessary system
maintenance.
3. What information will be stored in the database ? (- list as many main types of
information that your application will want to store as you can think of)
(a) USER_DETAILS
(b) CELEBRITY SHARE DETAILS
(c) TRANSACTION DETAILS
(d) USER PORTFOLIO DETAILS
(e) CONTENDERS (? – could be non-issued type of CELEBRITY_SHARE_DETAILS)
4. How many of each main pieces of information identified above would you
estimate will be produced / used by your application :
a. Initially when the application launches
b. After 3 months
c. After 6 months
d. After 1 year
USER_DETAILS
(a) 100
(b) 30,000
(c) 100,000
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 6 of 10
BBC New Media and Technology
New Media Database Application Checklist
(d) 250,000
CELEBRITY SHARE DETAILS
(a) 100
(b) 250
(c) 500
(d) 500
TRANSACTION DETAILS
(a) 0
(b) 1,500,000
(c) 5,000,000
(d) 10,000,000
USER PORTFOLIO DETAILS
(a) 100
(b) 30,000
(c) 100,000
(d) 250,000
CONTENDERS
(a) 50
(b) 50
(c) 50
(d) 50
5. Would expect information to continue to grow at the above rate indefinitely ?
No, would expect this to peak at the 1 year figures then run at this rate thereafter
(users ageing out of the system, being introduced at the system at about the same rate
therafter)
6. Does the application have a finite life expectancy ? (start date / end date)
Unknown – currently expect that the show will run for approx. 3 – 5 years
7. (i) For each of the main data items identified above, where will the data be
coming from :a. entered by user / admin staff
b. provided as configuration information when the application is created
c. produced from another / existing computer system (once)
d. produced from another / existing computer system (periodically /
regularly)
e. generated by the application
(ii) If information is coming from another / existing computer system, is this
another BBC system, or a system belonging to an external supplier ? Are any
sample / example data files from the other / existing computer system available ?
(please include if so).
(i) USER_DETAILS – a.
CELEBRITY SHARE DETAILS – a.
TRANSACTION DETAILS – e.
USER PORTFOLIO DETAILS – e.
CONTENDERS – a.
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 7 of 10
BBC New Media and Technology
New Media Database Application Checklist
(ii) Not applicable
8. Does this need to work with (integrate with) any other (existing) database system
? If so, do you know what kind of database technology is being used for this
other database (e.g. Oracle, MySQL, PostGres), and who is hosting and / or
maintaining it ?
Existing Celebdaq system has been running for 3 months. Changes should be applied
to that database. Currently database is a MySQL implementation. Server host is
unknown.
9. Do you have any other applications which use databases in a similar way as is
required for this application ?
None known – although several online applications / sites support voting, and Test
the Nation has delivered database collated information to TV graphics for rendering
to broadcast.
10. Do you foresee any regular administrative / maintenance jobs looking after the
(database stored) information used by the application (data) ? –
a. Creating data
b. Updating data
c. Deleting data
Who do you expect will perform these tasks ? – users (self service), admin
personel, IT support personnel ?
USER_DETAILS – a. and b. Users will create and maintain, b. (c.) admin user may
disable / delete in the event of misconduct. C. Application itself will automatically age
/ delete users no longer playing the game.
CELEBRITY SHARE DETAILS – a. Admin users will create, b. update and c. delete
as necessary
TRANSACTION DETAILS – a.Will be initiated by users, and actually created by the
application. b.Transactions will not be updated. c. Transactions will be deleted by the
application when appropriate / required period of time has elapsed
USER PORTFOLIO DETAILS – a. Initiated by user transactions, and generated by
the application. b. Updated by the application when transactions take place, and c.
Deleted by the application when the relevant user record is deleted.
CONTENDERS – a. Admin users will create, b. update and c. delete as necessary
11. Are there any transactional issues to consider with any of the data ? – e.g. the state
of the data should be returned to a previous / original state in the event of an error
mid way through processing (e.g. updating)
Portfolio amendments should be updated ‘atomically’ (i.e. at the same time / as a
single update), as a transaction. Any problem with the transaction (e.g. not enough
funds to complete the trade should prevent any update to the portfolio). Any problem
with updating the portfolio should ‘rollback’ the trade (i.e. abandon the trade
transaction) – returning some kind of error to the user.
12. Should any of the data automatically be deleted after a period of time ?
Yes, TRANSACTION DETAILS should be deleted after 1 year. USERS should be
deleted 3 months after their last trade.
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 8 of 10
BBC New Media and Technology
New Media Database Application Checklist
13. Does the data need to be archived and kept for a period of time ? If so, how long
?
Yes, TRANSACTION DETAILS, USERS, and USER PORTFOLIO DETAILS should
be archived weekly and kept for 1 year. Does any of the data have special security /
privacy considerations ? (please describe)
14. Does any of the data have special security / privacy considerations ? (please
describe)
USERS details need to be accessible only to the individual concerned. Data
Protection laws govern other requirements for this information (?)
15. How many different type of people (roles) will be using the application ?
(i) Normal Users
(ii) Administrative Users
16. Will people need to ‘log on’ to the application, authenticating themselves with a
password for example ?
Yes, both types of users identified in 14 should identify themselves to the system via
username / password combination specific to and unique to this application, and not
related to any other BBC username / password.
17. Will people be using the application all the time (24 x 7) ?
Yes – although profile of usage suggests predominantly a UK audience where the
show will be broadcast
18. What is the impact of the application / service not being available ? After what
period of time would this become a significant problem ?
Some customer dissatisfaction, and potential loss of user / custom if persistent,
regular and unplanned / unexplained. No major impact if service was ‘briefly’
unavailable at predictable times, and this information made available to users
accessing the application during such outage.
19. Is it acceptable to take the application ‘off line’ to perform essential system
maintenance etc. – e.g. backing up data
Yes – see above
20. Have any performance service levels been identified / considered ?
No definite requirements, but target service levels might be :
(1) Site availability 95% (=> 1 hr per day essential backup and maintenance)
(2) General interactive response within 2 seconds
(3) Trade completion within 2.5 seconds
(4) Portfolio generation within 2.5 seconds
21. Have any MIS (Management Information Systems) requirements been identified ?
– e.g. Auditing usage, ad hoc queries, reports ? Do any of these comprise an
important or critical part of the application ?
A number of graphs analyzing share price movements will need to be created as a
central part of the application
Various ad hoc queries will be required to monitor usage of the site, profile of activity
etc.
22. Are future enhancements to this application known / planned ? (provide overview
details if known)
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 9 of 10
BBC New Media and Technology
New Media Database Application Checklist
The addition of a Celebdaq ‘futures’ market to add to site stickiness, is the only major
enhancement currently planned. (This should not significantly affect the profile of
usage / data volumes discussed above)
23. Will the database have to be hosted on a particular machine (hardware) for any
reason ?
Needs to be accessible from internet. (Application / database ?) server must however
provide a means of communicating with TV graphics servers for delivery of data
required to produce graphs for broadcast show. Potential firewall issues here are
unknown.
24. Are there any local standards or guidelines that may affect the database design ?
No (– or e.g. we have our own local naming standards)
25. Are there currently any planned dates for the application / project – e.g. launch
date, kick off date, design milestones, etc. etc.
TV show is broadcast on 14th Feb – solution for TV graphics generation needs to be
developed, tested and deployed for then.
CI Ref.
Version
Date
:
: Issue 1.0
: 15/04/03
Page 10 of 10
Download