# Schedule 2022-Q2 ```plantuml @startgantt printscale weekly zoom 5 ' printscale daily zoom 2 saturday are closed sunday are closed 2022-05-01 is close {Kevin} is off on saturday {Kevin} is off on sunday {Andy} is off on saturday {Andy} is off on sunday {Maxim} is off on saturday {Maxim} is off on sunday {Powen} is off on saturday {Powen} is off on sunday {Daniel} is off on saturday {Daniel} is off on sunday {Rick} is off on saturday {Rick} is off on sunday {Muzo} is off on saturday {Muzo} is off on sunday {Penny} is off on saturday {Penny} is off on sunday {Andrew} is off on saturday {Andrew} is off on sunday Project starts 2022-04-11 -- <back:STRATEGY>HA/DR Plans</back> -- [Service Architecture diagram 1] as [arch-diagram-1] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-04-11 and lasts 1 day [Service Architecture diagram 2] as [arch-diagram-2] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-04-18 and lasts 1 day [Each service HA/DR solution discuss 1] as [ha-dr-1] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-04-25 and lasts 1 day [Each service HA/DR solution discuss 2] as [ha-dr-2] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-05-02 and lasts 1 day [Each service HA/DR solution discuss 3] as [ha-dr-3] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-05-09 and lasts 1 day [Each service HA/DR solution discuss 4] as [ha-dr-4] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-05-16 and lasts 1 day [Each service HA/DR solution discuss 5] as [ha-dr-5] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-05-23 and lasts 1 day [Each service HA/DR solution discuss 6] as [ha-dr-6] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-05-30 and lasts 1 day [Implementation Plan 1] as [ha-dr-plan-1] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-06-06 and lasts 1 day [Implementation Plan 2] as [ha-dr-plan-2] on {Kevin} {Rick} {Powen} {Daniel} {Maxim} starts at 2022-06-13 and lasts 1 day -- <back:STRATEGY>Separate Machines Design Phase</back> -- [Clarify environments] on {Maxim} lasts 2 days [List & draw current envs] on {Maxim} lasts 2 days [Clarify environments] -> [List & draw current envs] [Refine locations & machine requirements] on {Rick} {Powen} {Kevin} lasts 2 days [List & draw current envs] -> [Refine locations & machine requirements] [List & draw new envs] on {Powen} lasts 2 days [Refine locations & machine requirements] -> [List & draw new envs] [Clarify service dependencies] on {Andy} lasts 2 days -- <back:STRATEGY>Separate Machines Development & Testing</back> -- [VM setup (Cloud)] on {Rick} lasts 2 days [List & draw new envs] -> [VM setup (Cloud)] [GitLab Runner setup (Cloud)] on {Maxim} lasts 2 days [VM setup (Cloud)] -> [GitLab Runner setup (Cloud)] [Modify deployment script (Cloud)] on {Maxim} lasts 4 days [GitLab Runner setup (Cloud)] -> [Modify deployment script (Cloud)] [Service mocking & adjustment] as [service-mocking] on {Maxim} lasts 15 days [Clarify service dependencies] -> [Service mocking & adjustment] [Database seeding] as [database-seeding] on {Andy} lasts 10 days [Clarify service dependencies] -> [Database seeding] -- <back:STRATEGY>Separate Machines Staging & Production</back> -- [Certificate purchasing] on {Rick} lasts 2 days [List & draw new envs] -> [Certificate purchasing] [Migration meeting] on {Powen:20%} {Rick:20%} {Maxim:20%} {Andy:20%} {Kevin:20%} lasts 1 days [List & draw new envs] -> [Migration meeting] [Migration plan] on {Powen} lasts 3 days [Migration meeting] -> [Migration plan] [Machine & Certificate ready] happens at 2022-05-01 [VM setup (On-prem)] on {Rick} lasts 4 days [Machine & Certificate ready] -> [VM setup (On-prem)] [Firewall config] on {Rick:50%} {Maxim:50%} lasts 2 days [VM setup (On-prem)] -> [Firewall config] [GitLab Runner setup (On-prem)] on {Maxim} lasts 2 days [VM setup (On-prem)] -> [GitLab Runner setup (On-prem)] [Firewall config] -> [GitLab Runner setup (On-prem)] [Modify deployment script (On-prem)] as [deployment-script] on {Maxim} lasts 2 days [GitLab Runner setup (On-prem)] -> [Modify deployment script (On-prem)] [D day] happens at 2022-05-01 [Execute! (Production)] on {Maxim} lasts 2 days [D day] -> [Execute! (Production)] -- <back:STRATEGY>Separate Machines Blocks</back> -- [CD for Dev & Testing] happens at [GitLab Runner setup (Cloud)]'s end [Fronted CD script] on {Muzo:50%} {Penny:25%} {Andrew:25%} lasts 1 days [CD for Dev & Testing] -> [Fronted CD script] [Frontend pages development] happens at [Fronted CD script]'s end ''[Fronted CD script] -> [Frontend pages development] -- <back:STRATEGY> Backend CI (20 days) </back> -- [Backend Project Listing] as [BPL] on {Maxim:50%} {Andy:50%} starts at [database-seeding]'s end and lasts 2 days [One Account Backend CI Setup] as [OABCS] on {Maxim:50%} {Andy:50%} starts at [BPL]'s end and lasts 3 days [PGN Online Subscription CI Setup] as [PGNOSCS] on {Maxim:50%} {Andy:50%} starts at [OABCS]'s end and lasts 2 days [Other Project CI Setup] as [OPCS] on {Maxim:50%} {Andy:50%} starts at [PGNOSCS]'s end and lasts 13 days -- <back:STRATEGY> Frontend CI (10 days) </back> -- [Frontend Project Listing] as [FPL] on {Muzo:50%} {Penny:25%} {Andrew:25%} lasts 2 days [Frontend CI Design] as [FCD] on {Muzo:50%} {Penny:25%} {Andrew:25%} starts at [FPL]'s end and lasts 3 days [One Account Admin CI Setup] as [OAACS] on {Muzo:50%} {Penny:25%} {Andrew:25%} starts at [FCD]'s end and lasts 3 days [One Account Subscription CI Setup] as [OASCS] on {Muzo:50%} {Penny:25%} {Andrew:25%} starts at [OAACS]'s end and lasts 2 days -- <back:STRATEGY> Mobile CI (5 days) </back> -- [iOS CI Setup] as [ICS] on {Yuta} lasts 5 days -- <back:STRATEGY> SRE Development/Testing CD (30 days) </back> -- [CD Setup Development/Testing] as [DEV-CDS] on {Rick} starts at [service-mocking]'s end and lasts 15 days -- <back:STRATEGY> SRE Staging/Production CD (30 days) </back> -- [CD Setup Staging/Production] as [PROD-CDS] on {Rick} starts at [deployment-script]'s end and lasts 15 days -- <back:STRATEGY>Frontend Components</back> -- [Icon] as [Icon] on {Penny} lasts 1 day [Button] as [Button] on {Penny} starts at [Icon]'s end and lasts 1 day [Header] as [Header] on {Penny} starts at [Button]'s end and lasts 1 day [DataGrid] as [DataGrid] on {Penny} starts at [Header]'s end and lasts 3 days [Timeline] as [Timeline] on {Penny} starts at [DataGrid]'s end and lasts 2 days [Metric] as [Metric] on {Penny} starts at [Timeline]'s end and lasts 2 days [Loading] as [Loading] on {Penny} starts at [Metric]'s end and lasts 1 day [Note] as [Note] on {Penny} starts at [Loading]'s end and lasts 1 day [Tag] as [Tag] on {Penny} starts at [Note]'s end and lasts 1 day [Tabs] as [Tabs] on {Penny} starts at [Tag]'s end and lasts 1 day [Status] as [Status] on {Penny} starts at [Tabs]'s end and lasts 1 day [Processing] as [Processing] on {Andrew} starts at [Icon]'s end and lasts 3 days [Input] as [Input] on {Muzo} starts at [Processing]'s end and lasts 7 days [Search] as [Search] on {Muzo} starts at [Input]'s end and lasts 2 days [Modal] as [Modal] on {Muzo} starts at [Search]'s end and lasts 2 days [Popup] as [Popup] on {Muzo} starts at [Modal]'s end and lasts 2 days [Tooltip] as [Tooltip] on {Muzo} starts at [Popup]'s end and lasts 1 day [Table] as [Table] on {Andrew} starts at [Processing]'s end and lasts 7 days [Pagination] as [Pagination] on {Andrew} starts at [Input]'s end and lasts 2 days [PdfReader] as [PdfReader] on {Andrew} starts at [Pagination]'s end and lasts 3 days [Toast] as [Toast] on {Andrew} starts at [Pagination]'s end and lasts 1 days [Filter] as [Filter] on {Andrew} starts at [Toast]'s end and lasts 2 days [Accordion] as [Accordion] on {Andrew} starts at [Filter]'s end and lasts 2 days -- <back:STRATEGY>Frontend Page Tasks</back> -- [3 PGN Subscription] on {Muzo} starts at 2022-05-01 and lasts 15 days [4 Sales Consent and Termination Agreement] as [sales-agreement] on {Andrew} starts at [Accordion]'s end and lasts 15 days [3-3 寄送交易確認書] on {Andrew} starts at [sales-agreement]'s end and lasts 5 days [6 商品管理] as [product-management] on {Penny} starts at 2022-05-01 and lasts 2 days [3-1 商品資訊(PGN)] as [product-info] on {Penny} starts at [product-management]'s end and lasts 2 days [3-2 寄送通知書(PGN)] on {Penny} starts at [product-info]'s end and lasts 2 days @endgantt ```