Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Concurrency control wikipedia , lookup
Microsoft Access wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Relational model wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Database model wikipedia , lookup
University of Edinburgh _______________________________________________________________________________________________________ Stage: Build Implementation Plan IS Alerts Enhancements 2015 SMI009 Document Version: 1.4 Date: 08/12/2015 ___________________________________________________________________________________ Information Services - Template Revised June 2012 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ Contents 1 1.1 1.2 2 DOCUMENT MANAGEMENT .................................................................. 3 Contributors ..................................................................................................... 3 Version Control ................................................................................................ 3 IMPLEMENTATION TASKS .................................................................... 4 2.1 Source Code ...................................................................................................... 4 2.1.1 Alerts .............................................................................................................. 4 2.1.2 Areas .............................................................................................................. 4 2.2 Infrastructure Components ............................................................................ 4 2.3 Database ............................................................................................................ 4 2.3.1 Access ............................................................................................................ 4 2.3.2 SQL Server..................................................................................................... 5 2.3.3 Migration of Access database to SQL Server ................................................ 5 2.4 Applying changes to the database .................................................................. 8 2.5 Data source in CF admin ................................................................................. 8 2.6 Application Components ................................................................................. 9 2.6.1 Alerts .............................................................................................................. 9 2.6.2 Areas .............................................................................................................. 9 2.7 Scheduled Task............................................................................................... 10 Application Setup ....................................................................................................... 11 2.8 Integration Components ................................................................................ 11 2.9 Implementation Validation ........................................................................... 11 2.10 Rollback .......................................................................................................... 12 2.10.1 Frontend ................................................................................................... 12 2.10.2 Access Database....................................................................................... 13 3 ROLLOUT STEPS.................................................................................. 14 ___________________________________________________________________________________ Page 2 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ 1 Document Management 1.1 Contributors Please provide details of all contributors to this document. Role Systems Analyst Designer (Owner) Technical Architect (Owner) Developer Development Technology Administrator Production Management Coordinator Project Manager Other document contributors Unit Name IS Apps Thalia Nikolaidou 1.2 Version Control Please document all changes made to this document since initial distribution. Date 19/02/2015 Version 1.0 Author TN Section All 25/03/2015 17/04/2015 29/10/2015 08/12/2015 1.1 1.2 1.3 1.4 TN TN TN TN 2.3 2.5, 2.8.1 2.1, 2.4, 2.6, 2.10.1 Amendment Initial version – Copied and updated SMI004 IMPLEMENTATION PLAN v1.1 (26/8/14) Added db patches Added scheduled task section Update for SQLServer migration Deployment of /areas/ as well ___________________________________________________________________________________ Page 3 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ 2 Implementation Tasks The steps necessary to implement the application or components should be drawn together in this document. Please note any exceptions between implementation in the TEST and LIVE environments. 2.1 Source Code 2.1.1 Alerts SVN URL should be latest tagged release from SVN, for example https://svn.ecdf.ed.ac.uk/repo/is/apps/alerts/tags/1.6.0.r17104/ . In order to grab the latest code for deployment you should point your SVN client to the repository location and export the code to your machine. From this point on, that folder on your machine will be referred to as {local_alerts}. After you have completed the deployment you should remove your exported copy of the code. 2.1.2 Areas SVN URL should be latest tagged release from SVN, for example https://svn.ecdf.ed.ac.uk/repo/is/apps/software/areas/Reporting/app_mgmt/tags/ . In order to grab the latest code for deployment you should point your SVN client to the repository location and export the code to your machine. From this point on, that folder on your machine will be referred to as {local_areas}. After you have completed the deployment you should remove your exported copy of the code. 2.2 Infrastructure Components No changes to existing infrastructure Note 29/10/2015: The ColdFusion server that hosts the alerts application currently is on kb-iis and the ColdFusion Administrator can be accessed through http://kb-iis1.ucs.ed.ac.uk/CFIDE/Administrator/ . 2.3 Database 2.3.1 Access The TEST database can be found at O:\reports\databases\alerts_test.mdb . The LIVE database can be found at O:\reports\databases\alerts3.mdb . ___________________________________________________________________________________ Page 4 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ Ensure that a backup of the database is kept, especially in the case of a LIVE deployment. More details in section 2.7.2. 2.3.2 SQL Server The SQL Server database is called “IS_Alerts” and is on the following servers: Test: sql-db-kb1t Live: sql-db-kb1 The TAD can be found at: <link to be added> 2.3.3 Migration of Access database to SQL Server The Microsoft SQL Server Migration Assistant for Access tool (SSMA) will be used to carry out the migration of the alerts database. It can be downloaded from https://www.microsoft.com/en-gb/download/details.aspx?id=43690 Once installed, it might be safer to run the 32-bit mode application, this should be part of the installation and will be available under the “Microsoft SQL Server Migration Assistant for Access” folder, if the start menu option was checked. Before starting the migration, make a copy of the targeted environment’s database. After opening the application, follow through the wizard. Step 1: Create a new SSMA project. Ensure that SQL Server 2008 is selected as the “Migrate To” Figure 1 Dev SSMA project Step 2: Add Access database files to the migration project. Click on the “Add Databases” button and navigate to the copy of the targeted environment’s database that was made earlier. Figure 2 Dev Access alerts database Step 3: Select objects for migration. ___________________________________________________________________________________ Page 5 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ Expand the database that you have just added and ensure that only the following tables are selected with all their items: alert alert_date alert_date_type alert_list alert_reminder alert_service alert_type function function_user keys lists services user Figure 3 Selected objects in Dev Step 4: Connect to SQL Server or SQL Azure. Enter the targeted environment SQL Server connection details. ___________________________________________________________________________________ Page 6 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ Figure 4 Dev SQL Server connetion details Step 5: Link migrated tables (optional). Leave “Link Tables” unchecked. Figure 5 Leave Link Tables unchecked Step 6: Convert objects, load them to database, and migrate data. Click “Ok” at the step “Synchronize with the Database”, if required. The end result should be successful: ___________________________________________________________________________________ Page 7 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ Figure 6 Dev migration status 2.4 Applying changes to the database If changes are required in the targeted environment’s database, connect to the targeted environment’s database as user “isalerts” and run the scripts in the patch order, for example: 1. {local_alerts}/db/patch_01_createAlertReminder.sql 2. {local_alerts}/db/patch_02_removedUnusedElements.sql Unless otherwise stated, scripts must be run in the order specified. 2.5 Data source in CF admin In the targeted environment’s ColdFusion Administrator, there will need to be a data source created, if one does not already exist. More detail is provided in the table below. CF Data Source Name Database Server User name Password Test alerts_sql_test is_alerts sql-db-kb1t isalerts see Password Manager Live alerts_sql is_alerts sql-db-kb1 isalerts see Password Manager ___________________________________________________________________________________ Page 8 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ 2.6 Application Components 2.6.1 Alerts The application consists of Cold Fusion files, plus supporting images, CSS and JS files. These are deployed as a single batch, using the following process: 1. Navigate to O:\reports 2. Rename alerts_test to alerts_test-<username>-<date> 3. Copy {local_alerts}/alerts/ into alerts_test For deployment to the TEST environment, the file “htenv.cfm” modified to: <cfset env = "test"> For deployment to the LIVE environment, “alerts_test” should be replaced with “alerts” and the file “htenv.cfm” modified to replace the line: <cfset env = "test"> with <cfset env = "live"> 2.6.2 Areas Please ensure that in the following files, the queries specified below point to the targeted environment’s data source: Line File Name cfquery name Nunmber 483 "get_avail" dashboard.cfm 5 "avail_combo" rss_service_reports\rss_combined_avail.cfm 7 "avail_combo" rss_service_reports\rss_combined_avail_kpi.cfm 5 "avail_planned" rss_service_reports\rss_planned_avail.cfm 5 "avail_unplanned" rss_service_reports\rss_unplanned_avail.cfm If not, modify the datasource parameter with the name of the targeted environment’s data source. For example: <cfquery name="get_avail" datasource="alerts_sql"> For deployment to the TEST environment: 1. Navigate to O:\reports\areas\Reporting\app_mgmt_test\ 2. Rename RSS_SERVICE_REPORTS to RSS_SERVICE_REPORTS<username>-<date> 3. Copy {local_areas}/RSS_SERVICE_REPORTS/ into RSS_SERVICE_REPORTS 4. Rename dashboard.cfm to dashboard.cfm-<username>-<date> 5. Copy {local_areas}/dashboard.cfm into app_mgmt_test 6. Rename index.cfm to index.cfm-<username>-<date> 7. Copy {local_areas}/index.cfm into app_mgmt_test 8. Rename report_priorities_dashboard.cfm to report_priorities_dashboard.cfm<username>-<date> 9. Copy {local_areas}/report_priorities_dashboard.cfm into app_mgmt_test ___________________________________________________________________________________ Page 9 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ For deployment to the LIVE environment: 1. Navigate to O:\reports\areas\Reporting\app_mgmt\ 2. Rename RSS_SERVICE_REPORTS to RSS_SERVICE_REPORTS<username>-<date> 3. Copy {local_areas}/RSS_SERVICE_REPORTS/ into RSS_SERVICE_REPORTS 4. Rename dashboard.cfm to dashboard.cfm-<username>-<date> 5. Copy {local_areas}/dashboard.cfm into app_mgmt_test 6. Rename index.cfm to index.cfm-<username>-<date> 7. Copy {local_areas}/index.cfm into app_mgmt_test 8. Rename report_priorities_dashboard.cfm to report_priorities_dashboard.cfm<username>-<date> 9. Copy {local_areas}/report_priorities_dashboard.cfm into app_mgmt_tests 2.7 Scheduled Task In the targeted environment’s ColdFusion Administrator, there will need to be a scheduled task created, if one does not already exist. More detail is provided in the table below. Test Task Name Alerts TEST Completion Reminder Frequency Daily Event, every 5minutes URL http://reports.is.ed.ac.uk/alerts_te st/scheduled/completionReminder .cfm Live Alerts Completion Reminder Daily Event, every 5minutes http://reports.is.ed.ac.uk/alerts/sc heduled/completionReminder.cf m The figure shows the scheduled task as set up for DEV. ___________________________________________________________________________________ Page 10 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ Figure 7As taken for DEV Application Setup Details of authorisation and authentication requirements - include user creation, access control and any functional set-up tasks that need to be carried out after implementation of the infrastructure and application components. Set-up of EASE test cases and/or integration with the portal should be included. This section will be completed by the Project Manager in conjunction with the business test coordinator. 2.8 Integration Components N/A 2.9 Implementation Validation This is used to document that implementation has been successful and that the basic steps of being able to authenticate to the system is possible and whatever authorisation level assigned to the initial user base is in place. For deployments involving several servers (like SOA and MyEd), detail the checks to be performed to validate the deployment to all servers This section should be completed by the support analyst. ___________________________________________________________________________________ Page 11 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ 2.10 Rollback In the event that a rollback is required during the migration from Access to SQL Server, the application will need to be restored from the backup and repointed to the Access database. The process would be to rename the relevant folder/database, and copy the backup into place. After the point of migration and UAT has been accepted, the application could still be rolled back to use the Access database, however, there is a risk of loss of both data and any changes in the application. The process is described below: 2.10.1 Frontend 2.10.1.1 Alerts 1. If created a scheduled task as per 2.7, remove / disable it. 2. Rename the “alerts” if LIVE deployment (or “alerts_test” if TEST deployment) folder, making it clear it’s an invalid version, for example to “alerts-ajh-broken-2014-09-15”. 3. Copy (do not move) the backup folder to “alerts” for a LIVE deployment (or “alerts_test” for a TEST deployment) 4. Delete the broken folder from step #2 2.10.1.2 Areas 1. Rename the “RSS_SERVICE_REPORTS” in “app_mgmt” if LIVE deployment (or “app_mgmt_test” if TEST deployment) folder, making it clear it’s an invalid version, for example to “RSS_SERVICE_REPORTS-ajhbroken-2014-09-15”. 2. Rename the dashboard.cfm in “app_mgmt” if LIVE deployment (or “app_mgmt_test” if TEST deployment) file, making it clear it’s an invalid version, for example to “dashboard.cfm-ajh-broken-2014-09-15”. 3. Rename the index.cfm in “app_mgmt” if LIVE deployment (or “app_mgmt_test” if TEST deployment) file, making it clear it’s an invalid version, for example to “index.cfm-ajh-broken-2014-09-15”. 4. Rename the report_priorities_dashboard.cfm in “app_mgmt” if LIVE deployment (or “app_mgmt_test” if TEST deployment) file, making it clear it’s an invalid version, for example to “report_priorities_dashboard.cfm-ajhbroken-2014-09-15”. 5. Copy (do not move) the backup folder to “RSS_SERVICE_REPORTS” in “app_mgmt” for a LIVE deployment (or “app_mgmt_test” for a TEST deployment) 6. Copy (do not move) the backup file to dashboard.cfm in “app_mgmt” for a LIVE deployment (or “app_mgmt_test” for a TEST deployment) 7. ___________________________________________________________________________________ Page 12 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ 8. Copy (do not move) the backup file to index.cfm in “app_mgmt” for a LIVE deployment (or “app_mgmt_test” for a TEST deployment) 9. Copy (do not move) the backup file to report_priorities_dashboard.cfm in “app_mgmt” for a LIVE deployment (or “app_mgmt_test” for a TEST deployment) 10. Delete the broken folder from step #1 and broken files from steps #2, #3 and #4 2.10.2 Access Database 1. Rename the database “O:\reports\databases\alerts3.mdb” for a LIVE deployment (or “alerts_test.mdb” for a TEST deployment), again making it clear it’s an invalid version. 2. Copy the backup database into place over where the database was Note this does not include deleting the broken database, as there’s a risk of loss of data if done. ___________________________________________________________________________________ Page 13 of 14 Build: Implementation Plan IS Alerts Enhancements 2015 Version: 1.4 _______________________________________________________________________________________________________ 3 Rollout Steps Follow deployment instructions as per section 2, noting that destination folder name and environment setting differ between LIVE and TEST (“alerts” and “alerts_test” respectively, and “live” and “test” respectively). Details of changes to be made for deployment to LIVE are repeated here for reference: Backing up the database, as per section 2.7.2, before implementing section 2.3. For deployment to live, “alerts_test” should be replaced with “alerts” and the file “htenv.cfm” modified to replace the line: <cfset env = "test"> with <cfset env = "live"> ___________________________________________________________________________________ Page 14 of 14