Presentation is loading. Please wait.

Presentation is loading. Please wait.

September 23, 2015 Sacramento, CA Zhang Xiaoguang Sinocarbon Innovation & Investment Co.,Ltd. T ITLE E XPERIENCES OF C HINA IN D EVELOPING REGISTRY SYSTEM.

Similar presentations


Presentation on theme: "September 23, 2015 Sacramento, CA Zhang Xiaoguang Sinocarbon Innovation & Investment Co.,Ltd. T ITLE E XPERIENCES OF C HINA IN D EVELOPING REGISTRY SYSTEM."— Presentation transcript:

1 September 23, 2015 Sacramento, CA Zhang Xiaoguang Sinocarbon Innovation & Investment Co.,Ltd. T ITLE E XPERIENCES OF C HINA IN D EVELOPING REGISTRY SYSTEM W ORKSHOP “B UILDING R EGISTRIES TO S UPPORT THE N EXT G ENERATION OF C ARBON M ARKETS ” P ARTNERSHIP FOR M ARKET R EADINESS

2 2 Issues encountered Development procedure Business requirement analysis Software requirement analysis Software design Software implementation outline

3 3 Should the system be developed from scratch? Employing off-the-shelf productDeveloping from scratch Cost  Purchase cost is low.  Maintenance cost depends on the complexity of product.  Maintenance cost can be very low if a service is used.  Development cost is high.  Maintenance cost depends on the complexity of the developed system. Development Complexity No development complexity.Development complexity is high. Development time No development time required.Development time is long. Business requirement fulfilment The relevant policies must fulfil the business design of the existing product. The developed registry system will completely fulfil the business requirements determined by relevant policies. Update No possibility for further customized update during operation. Can be updated as required during operation. Reliability  Depends on the reliability of the product.  Low possibility for customized increase in reliability.  Reliability requirements will be determined at the start of the development.  Reliability issues can be solved gradually during system operation as required. Security  Only security measures exist in the product can be applied.  Low possibility for customization.  Security measures will be determined at the start of the development.  All required security measures will be applied in the developed system.

4 4 How to bridge the gap between business and IT? IT Side Functions Database Security Data exchange Interface Implementation Technologies Business Side Carbon Units Transfers Accounts Administrations Compliance Connections Analysis & Design Process IT Consultants

5 5 Issues encountered Development procedure Business requirement analysis Software requirement analysis Software design Software implementation outline

6 6 Steps and participants of developing a registry system StepParticipantsObjectiveExpected Output Step 1: Determine business requirements  Competent authority  IT consultants Specifically determine the business requirements. Business requirement specification Step 2: Analyse software requirements  Competent authority  IT consultants Transfer business requirements into software requirements. Software requirement specification Step 3: Software Design  IT consultants  Software implementation team  Competent authority Design the software of the registry system. Software Design specification Step 4: Software implementation  Software implementation team.  Hardware providers.  IT consultants  Competent authority Implement and deploy the software of the system Fully functional registry system

7 7 Issues encountered Development procedure Business requirement analysis Software requirement analysis Software design Software implementation outline

8 8 Activities of business requirement analysis ActivityCompetent authorityIT consultants Determine the rules of the carbon market. Determine the rules relevant to registration. Provide suggestions on the possible issues relevant to IT. Determine the users of the registry system. Confirm the results produced by IT consultants. Determine the users of the registry system according to the relevant to registration. Determine the account arrangements and transfer rules of the registry system. Confirm the results produced by IT consultants. Determine the account arrangements and transfer rules according to the relevant to registration. Determine connectivity requirements. Confirm the results produced by IT consultants. Determine connectivity requirements according to the relevant to registration. Produce business requirement specification. Confirm the results produced by IT consultants. Produce business requirement specification according to the business requirement.

9 9 Determine the elements of carbon market rules Carbon units to be included Competent authorities Participants External market connectivity Carbon unit lifecycle requirements Transfer requirements Elements of Carbon market rules Compliance requirements

10 10 Identify system users User typeSystem user identification procedure Administrators  Categorize the administrators in accordance with the management structure of competent authorities.  Further classify the administrators in each category in accordance with the responsibilities of the relevant competent authority. Normal users  Categorize the market participants into voluntary participants and compliance enterprise.  Categorise the compliance enterprises according to the type of allowance that can be allocated to them.  Classify the voluntary participants in accordance with the carbon unit types they can trade.  Further categorize the voluntary participants trading local credits into project holders and normal traders.

11 11 Identify account arrangements Account typeAccount identification procedure Management account  Analyse the allowance creation and allocation path and arrange an account on each node of the path.  Analyse the local credit issuance path and arrange an account on each node of the path.  Analyse the carbon units exit path and arrange an account on each node of the path.  Arrange accounts for special management purposes. (Forest buffer) Holding account  Categorize the holding accounts into compliance accounts and voluntary accounts.  Determine the compliance entity of compliance accounts in accordance with MRV standards or other business requirements. (Installation or enterprise.)  Arrange compliance account in accordance with the compliance entity.  Classify the owners of voluntary accounts in accordance with the types of voluntary participants.  Further categorize the voluntary accounts in accordance with the authority of owners of voluntary accounts. (Owners who can trade the same types of carbon units should own the same type of holding account.)  Arrange a type of account for each category of voluntary accounts. Third party platform accountArrange a type of account for each type of third party platforms.

12 12 Identify transfer rules Transfer typeTransfer rule identification procedure Allocation transfers  An allowance transfer should be arranged on each edge of allocation path in accordance with the allocation direction.  It is recommended that a reverse transfer should be assigned to each allocation transfer arranged in order to handle allocation errors. Issuance transfers  An issuance transfer should be arranged on each edge of issuance path in accordance with the issuance direction.  It is recommended that a reverse transfer should be assigned to each issuance transfer arranged in order to handle issuance errors. Import transfers An import transfer should be arranged on each edge of import path in accordance with the import direction. Trading transfers  Arrange trading transfers in accordance with requirements on the transfers of carbon units.  Arrange transfers between various types of accounts in accordance with the carbon unit types each type of account can hold.  Arrange transfers between holding accounts and third party platform accounts in accordance with requirements on the transfers of carbon units.  Determine the carbon unit transfer granularity in accordance with the constraints in using a specific type of carbon unit for compliance. (Transfer by carbon unit type, by serial number (FIFO/LIFO), or by a group of labels ) Exit transfers Arrange an exit transfer between a type of holding account and a type of exit account in accordance with the exit path.

13 13 Identify connectivity requirements Connectivity requirement typeConnectivity requirement identification procedure Connectivity system types  Identity the registry system of external markets to be connected in accordance with the external markets to trade with.  Identify the registry system of credits in accordance with the external credits to be used in local market.  Identify third party platforms in accordance with the requirements on using third party platform for transfers.  Identify other information source systems in accordance with relevant requirements. (information sources such as emissions reporting system) Connectivity purposes  Identify the carbon units to be transferred between the local registry and other external registries.  Identify the carbon units to be transferred through each third party platform.  Identify the information required from other information source systems in accordance with relevant rules. (Information required from emissions reporting system should be determined in accordance with the rules for determining compliance status.) Connectivity data exchange standard (Electronic protocol or file import/export protocol)  Identify the data exchange standard of external registries.  Design bilateral data exchange standard for external registries.  Identify or design data exchange standard for third party platforms.  Identify or design data exchange standard for other information source systems.

14 14 Produce business requirement specification Rules of the carbon market Users of the registry system Account arrangements and transfer rules of the registry system Connectivity requirements

15 15 Example business requirement comparison EU Registry Beijing Pilot Registry China national Registry CCER and national allowances National level and provincial level allowance allocation accounts CCER project owner holding account Enterprise level compliance account Transfers through trading platform Pilot allowance City level allowance allocation accounts Enterprise level compliance account Transfers through trading platform EUA, EUAA, CER… EU level allowance allocation accounts Separate EUAA allocation accounts Installation level compliance account Direct transfers ITL connection

16 16 Example of account arrangement and carbon unit transfer graph

17 17 Issues encountered Development procedure Business requirement analysis Software requirement analysis Software design Software implementation outline

18 18 Activities of software requirement analysis ActivityCompetent authorityIT consultants Determine user roles and functions requirements. Confirm the results produced by IT consultants. Design the functions and user roles of the registry system. Determine performance requirements Confirm the results produced by IT consultants. Determine the performance requirements of the registry system. Determine security requirements. Confirm the results produced by IT consultants. Analyse the risks of the registry system and determine security requirements of the system in both application aspect and technical aspect. Produce software requirement specification. Confirm the results produced by IT consultants. Produce software requirement specification in accordance with the determined software requirements of the registry system.

19 19 Determine user roles User typeUser roles determination procedure Administrators  Assign administrator roles in accordance with administrator management functions.  Assign administrator roles in accordance with system configuration functions.  Assign administrator roles in accordance with report functions of corresponding management level.  Assign administrator roles in accordance with query functions of corresponding management level.  Assign administrator roles in accordance with account administration functions of corresponding management level.  Assign administrator roles in accordance with user administration functions of corresponding management level.  Assign administrator roles in accordance with allowance administration functions of corresponding management level.  Assign administrator roles in accordance with credit administration functions of corresponding management level. Normal users Assign account representative roles in accordance with account operations.

20 20 Determine system functions (1) Function categoryFunction determination procedure Carbon unit specific functions  Assign a function for each allocation transfer.  Assign a function for each import transfer.  Assign a function for each trading transfer.  Assign a function for each exit transfer.  Design the detailed work flow for each function. Account specific functions  Design an overall workflow for opening each type of accounts.  Determine the specific operations in each account opening workflow that should be executed online in the registry system.  Assign a function for each account opening operation that should be executed online in the registry system.  Design the detailed workflow for each function of account opening.  Design the templates of the information of opening each type of account.  Design the overall workflow for changing account information.  Determine the specific operations in the changing account information workflow that should be executed online in the registry system.  Assign a function for each changing account information operation that should be executed online in the registry system.  Design the detailed workflow for each function of changing account information.  Design the overall workflow for changing account status. (open, constrained, closed)  Determine the specific operations in the changing account status workflow that should be executed online in the registry system.  Assign a function for each changing account status operation that should be executed online in the registry system.  Design the detailed workflow for each function of changing account status.

21 21 Determine system functions (2) Function categoryFunction determination procedure User specific functions  Design an overall workflow for opening each type of user.  Determine the specific operations in each user opening workflow that should be executed online in the registry system.  Assign a function for each user opening operation that should be executed online in the registry system.  Design the detailed workflow for each function of user opening.  Design the templates of the information of opening each type of user.  Design an overall workflow for changing the information of each type of user.  Determine the specific operations in each changing user information workflow that should be executed online in the registry system.  Assign a function for each changing user information operation that should be executed online in the registry system.  Design the detailed workflow for each function of changing user information.  Design an overall workflow for changing the status of each type of user.  Determine the specific operations in each changing user status workflow that should be executed online in the registry system.  Assign a function for each changing user status operation that should be executed online in the registry system.  Design the detailed workflow for each function of changing user status. System data management specific functions  Assign necessary query functions for carbon unit specific functions, account specific functions, and user specific functions.  Assign query function for each information necessary for managing the registration business.  Design information display template for each information query function.  Assign report generation function for each report necessary to be generated.  Design the templates for reports.  Assign necessary data export functions for query functions and report generation functions.  Design data templates for exported data.

22 22 Determine system functions (3) Function categoryFunction determination procedure System configuration functions  Determine all parameters to be configured in the registry system in accordance with the designs of carbon unit specific functions, account specific functions, user specific functions, and data management specific functions.  Assign a function for configure each parameter.  Design a work flow for each parameter configuration function.

23 23 Determine performance requirements (1) Performance requirement typePerformance requirement determination procedure Data storage volume requirement  Estimate the data volume of compliance enterprise information required to be stored in the registry system.  Estimate the data volume of voluntary enterprise information required to be stored in the registry system.  Estimate the data volume of individual information required to be stored in the registry system.  Estimate the data volume of allowances required to be stored in the registry system within certain years. (Allowance balance of accounts)  Estimate the data volume of local credits required to be stored in the registry system within certain years. (Local credit balance of accounts)  Estimate the data volume of imported credits required to be stored in the registry system within certain years. (Imported credit balance of accounts)  Estimate the data volume of transaction logs required to be stored in the registry system.  Estimate the data volume of administrator operations required to be stored in the registry system.  Estimate the data volume of audit logs required to be stored in the registry system. System access volume requirements  Estimate the average system concurrent access volume in accordance with the estimation of system account volume and average daily transaction volume per account.  Estimate the peak system simultaneous connection volume.  Estimate the peak system concurrent access volume in accordance with the estimation of system account volume and peak transaction volume per account.

24 24 Determine performance requirements (2) Performance requirement typePerformance requirement determination procedure System operation delay requirements  Determine the delays of system data management specific functions under average system access volume.  Determine the delays of system configuration functions under average system access volume.  Determine the delays of user specific functions under average system access volume.  Determine the delays of account specific functions under average system access volume.  Determine the delays of carbon unit specific functions under average system access volume.  Determine the delays of system data management specific functions under peak system access volume.  Determine the delays of system configuration functions under peak system access volume.  Determine the delays of user specific functions under peak system access volume.  Determine the delays of account specific functions under peak system access volume.  Determine the delays of carbon unit specific functions under peak system access volume. System reliability requirements  Determine the reliability of system operations. (5X8, 7X24)  Determine the serviceability of the system.

25 25 Determine security requirements StepDetailed tasks Risk analysis  Identify stakeholders of the registry system.  Identify the concerns of each stakeholder.  Identify the threats in business aspect, in accordance with the concerns of each stakeholder.  Identify the threats in technical aspect, in accordance with the concerns of each stakeholder. Security objective identification  Evaluate the severity of each threat.  Identify the threats that should be handled by the registry system in accordance with the severity of the threats and budget of developing the registry system.  Identify the security objectives in accordance with the threats that should be handled by the registry system. Security measures determination  Determine the application level security measures.  Determine the technical level security measures.

26 26 An example of secured network deployment

27 27 Produce software requirement specification User roles and functions requirements Performance requirements Security requirements

28 28 Issues encountered Development procedure Business requirement analysis Software requirement analysis Software design Software implementation outline

29 29 Activities of software design ActivityCompetent authoritySoftware development teamIT consultants Visualize function requirements Confirm the results produced by IT consultants and software development team. Implement visualized function design. Manage the implementation of visualized function design and provide relevant guidance. Design overall software architecture Confirm the results produced by IT consultants. N/A Design overall software architecture in accordance with the software requirements. Design customized data exchange protocols Confirm the results produced by IT consultants. N/A Design customized data exchange protocol in accordance with the relevant connectivity requirements. Design database Confirm the results produced by IT consultants. N/A Design database in accordance with the visualized system design and required data exchange protocols. Choose software implementation technology Confirm the results produced by IT consultants. N/A Choose software implementation according to the software requirements. Produce software design specification Confirm the results produced by IT consultants. N/A Produce software design specification in accordance with the software design.

30 30 Visualize function requirements TaskDemo implementation procedure Implement UIs of the system demo.  Design the overall style of the system UIs.  Assign UIs for each function.  Design tables of each UI in accordance with function requirements.  Design function operation trigger objects of each UI in accordance with function requirements.  Design the notification UIs for each function trigger.  Implement the UIs. Implement the transitions of UIs triggered by operations.  Design the transition of UI for each function trigger of each UI.  Implement the transition of UIs. Modify the system demo.  Modify the function requirements of the software using the system demo.  Further modify the demo in accordance with the modified function requirements.

31 31 Design overall software architecture TaskOverall software architecture design procedure Determine access mode of the system.  Estimate the user number of the system.  Choose from browser based access mode (B/S) and dedicated client access mode (C/S) in accordance with the user number estimation.  Choose data exchange interface mode if external connections are required. Determine the layer arrangement of the system.  Arange user interface layers in accordance with system access mode.  Arrange an application service layer for processing the requests from user interface layers.  Arrange a database layer for the system to provide data storage and data operations. Determine the modules in each layer.  Arrange modules of user interface layers in accordance with functions of the system.  Arrange modules of application service layer in accordance with functions of the system.  Arrange modules of database layer in accordance with functions of the system. (stored procedures and functions) Determine the deployment requirements of the modules of each layer.  Determine the deployment requirements of the modules of data interface layer in accordance with security requirements and performance requirements.  Determine the deployment requirements of the modules of application service layer in accordance with security requirements and performance requirements.  Determine the deployment requirements of the modules of the database system in accordance with the security and performance requirements. Determine the inner operational mechanism requirements of each layer.  Determine the inner operational mechanism requirements of each layer in accordance with the performance requirements of the system. Determine the requirements of communication between layers.  Determine the requirements of communications between the user interface layer and the application service layer in accordance with system performance requirements, system security requirements and deployment requirements of modules.  Determine the requirements of communications between the application service layer and the database layer in accordance with the security requirements.

32 32 A sketch of the architecture of a registry system

33 33 Design customized data exchange protocols TaskData exchange protocol design procedure Determine data exchange operations External registries or third party platforms  Determine accounting model and workflows for carbon unit transfer transactions, in accordance with the market connectivity requirements or third party platform connectivity requirements.  Assign data exchange operations for each carbon unit transfer transaction.  Determine necessary supporting information transfer operations and workflows. (transaction record query, connectivity test)  Assign supporting information transfer operations.  Determine the constraint factors for each transfer operations. (transfer open time) Information source systems  Determine the information transfer operations for data transfers of information source systems in accordance with the information required from each information source system.  Assign data exchange operations for information transfers.  Determine necessary supporting information transfer operations and workflows.  Assign supporting information transfer operations.  Determine the constraint factors for each transfer operations. Design data package format External registries or third party platforms  Design data package format for each operation in accordance with the carbon unit to be transferred and supporting information to be transferred. Information source systems  Design data package format for each operation in accordance with the information to be transferred. Determine security measures for connectivity  Determine connectivity architecture. (central hub/peer to peer)  Determine reconciliation method.  Determine connectivity security hardware requirements. (VPN, separate connection server, determined IP, determined port)  Determine application level security measure. (data encryption strategy)

34 34 Design database TaskDatabase design procedure Identify entities of the system.  Identify entities for accounts, account representatives, users, roles and privileges.  Identify entities for carbon units.  Identify entities for transfer workflow controls.  Identify entities for system logs. (transaction logs, audit logs)  Identify entities for reports.  Identify entities for connectivity controls.  Identify entities for system configurations.  Identify entities for Meta data.  Design database table for each entity. Identify relations of entities of the system.  Identify the relations between tables of entities in accordance with the primary key/foreign key relations of the tables. Establish E-R chart of system database.  Establish E-R chart of system database including all the tables and the relations of the tables.  Refine database tables.

35 35 Choose software implementation technology AspectConsideration points Reliability  The operation reliability requirements of the system.  The serviceability requirements of the system. Performance  The system operation performance of the system. Development cost  Budget constraint. Technology constraints  Operation environment constraints. Security  Security threats to the system. Fulfilment of software architecture  The system access mode requirement of the system.  The inner operational mechanism requirement of the system.

36 36 Comparisons of main stream technologies C/C++Java EEDot Net Reliability  Difficult to ensure the reliability of the system.  Difficult to ensure the serviceability of the system.  Easy to ensure the reliability of the system.  Easy to ensure the serviceability of the system.  Easy to ensure the reliability of the system.  Easy to ensure the serviceability of the system. Performance High system operation performance. Relatively low system operation performance. Development costHigh development costRelatively low development cost. Technology constraints Operating system dependent.Operating system independent.Operating system dependent. Security  Capable of implementing security mechanisms.  Deployed code is difficult to be analysed.  Capable of implementing security mechanisms.  Deployed code is relatively easy to be analysed.  Capable of implementing security mechanisms.  Deployed code is relatively easy to be analysed. Fulfilment of software architecture  Difficult to implement B/S based system.  Capable of implementing any inner operational mechanism.  Capable of implementing B/S based system.  Advanced inner operational mechanism provided by virtual machine.  Capable of implementing B/S based system.  Advanced inner operational mechanism provided by virtual machine.

37 37 Produce software design Specification Visualized function design Overall software architecture Data exchange protocol Database design Software implementation technology

38 38 Issues encountered Development procedure Business requirement analysis Software requirement analysis Software design Software implementation outline

39 39 Activities of software implementation ActivityCompetent authoritySoftware development teamIT consultants Choose hosting environment. Confirm the results produced by IT consultants. Provide suggestions on choosing hosting environment. Choose hosting environment in accordance with software requirements and software design. Implement and test the software. Check and accept the implemented software. Implement and test the software in accordance with software design. Manage the software implementation and check the implemented software.

40 40 Preferable requirements on software development team AspectRequirements Experiences  Experiences in developing carbon registry systems.  Experiences in developing bank registry systems.  Experiences in developing securities registry systems.  Experiences in developing other relevant systems. Technology capacity  Experienced in using chosen technology.  Experienced in developing database based systems.  Experienced in implementing security schemes.  Experienced in implementing data exchange interfaces.

41 41 Choose hosting environment TaskSoftware implementation and testing procedure Determining servers of the system  Assign servers in accordance with deployment requirements of modules.  Assign redundant servers as backups in accordance with reliability requirements.  Determine models of servers in accordance with performance requirements. Determining network devices of the system  Assign switches and routers in accordance with network deployment requirement.  Assign network security devices in accordance with network deployment requirement.  Determine models of network devices in accordance with performance requirements. Determining storage devices of the system  Determine the storage capacity of storage devices in accordance with data storage volume requirement.  Determine the model of storage device in accordance with performance requirements. Determining supporting software  Determine operating systems of servers in accordance with performance requirements and implementation technology.  Determine application server in accordance with performance requirements. (If implementation technology requires.)

42 42 Implement and test software TaskSoftware implementation and testing procedure Implement the software.  Implement the modules of each layer of the software.  Test each module of the software.  Modify the modules of the system. Test the software.  Design test cases of the software.  Test the correctness of all the functions of the software using the test cases.  Test the performance of the software in the same environment as the hosting environment.  Modify the software.  Perform pilot run of the software in the hosting environment.  Modify the software.

43 43 Zhang Xiaoguang Sinocarbon Innovation & Investment Co.,Ltd. zhangxiaoguang@sino-carbon.cn For more information on the Partnership for Market Readiness, please contact: PMRSECRETARIAT @ WORLDBANK. ORG WWW. THEPMR. ORG Thank You for Your Attention


Download ppt "September 23, 2015 Sacramento, CA Zhang Xiaoguang Sinocarbon Innovation & Investment Co.,Ltd. T ITLE E XPERIENCES OF C HINA IN D EVELOPING REGISTRY SYSTEM."

Similar presentations


Ads by Google