Skip to content

Instantly share code, notes, and snippets.

@psenger
Last active November 11, 2024 20:43
Show Gist options
  • Save psenger/17874808f06488ccb3cc59529323db91 to your computer and use it in GitHub Desktop.
Save psenger/17874808f06488ccb3cc59529323db91 to your computer and use it in GitHub Desktop.
[Obsidian Markdown Templates] #obsidian #templates #adr #bcp #meeting
creation-date modification-date version tags aliases type
<% tp.file.creation_date("YYYY-MM-DDTHH:mm:ssZZ") %>
<% tp.file.last_modified_date("YYYY-MM-DDTHH:mm:ssZZ") %>
0.0.1
adr
empty-note

Architecture Design Registry - <% tp.file.title %>

Project Information

  • Project Name: [Project Name]
  • Project Description: [Brief description of the project]
  • Date Created: [Date of creation]
  • Last Updated: [Date of last update]

Table of Contents

1. Introduction

1.1 Purpose

[Explain the purpose of this architecture design document.]

1.2 Scope

[Describe the scope of the architecture design, including the parts of the system it covers and any limitations.]

2. Architectural Overview

2.1 High-Level Architecture

[Provide an overview of the high-level architecture of the system, including the main components and their interactions.]

2.2 Key Components

[List and describe the key components of the system.]

3. Design Details

3.1 Component 1

Description

[Provide a detailed description of Component 1, its functionality, and its interactions with other components.]

Design Rationale

[Explain the design decisions made for this component and the reasons behind them.]

3.2 Component 2

Description

[Provide a detailed description of Component 2, its functionality, and its interactions with other components.]

Design Rationale

[Explain the design decisions made for this component and the reasons behind them.]

3.3 ...

4. Data Flow

[Include diagrams or descriptions of the data flow between different components of the system.]

5. Deployment Strategy

5.1 Environment Details

[List the different environments (e.g., development, staging, production) and their configurations.]

5.2 Deployment Diagram

[Include a deployment diagram showing the distribution of components across different servers and environments.]

6. Infrastructure

6.1 Server Configuration

[Describe the server configuration required for the system to run efficiently.]

6.2 Network Topology

[Describe the network topology required to support the architecture.]

6.3 Security

[Explain the security measures in place to protect the system from potential threats.]

7. Technologies Used

[List the technologies, frameworks, and tools used in the development of the system.]

8. Non-Functional Requirements

[List and describe the non-functional requirements, such as performance, scalability, reliability, etc.]

9. Known Issues

[List any known issues or limitations of the current architecture.]

10. Version History

[Track the version history of this document, including the changes made in each version.]

11. References

[List any external references or resources that were used in creating this architecture design document.]

creation-date modification-date version tags type
<% tp.file.creation_date("YYYY-MM-DDTHH:mm:ssZZ") %>
<% tp.file.last_modified_date("YYYY-MM-DDTHH:mm:ssZZ") %>
0.0.1
BCP
Business_Continuity_Plan
empty-note

Business Continuity Plan - [Product or Service]

Last Updated: [Date]

Document Information

Item Description
Document Owner [Name]
Last Review Date [Date]
Next Review Date [Date]
Version [X.X]

Executive Summary

This Business Continuity Plan (BCP) outlines the procedures and systems in place to ensure the continuation of website operations during and after a disruptive incident. While the website generates revenue, it is not considered mission-critical to core business operations.

Monitoring Systems

Infrastructure Monitoring

Component Monitoring Method Alert Threshold Response Time
Server CPU [Tool name] [%] utilization [X] minutes
Memory Usage [Tool name] [%] utilization [X] minutes
Disk Space [Tool name] [%] capacity [X] minutes
Database Performance [Tool name] [Metrics] [X] minutes

Application Monitoring

Feature Monitoring Method Alert Threshold Response Time
Page Load Time [Tool name] [X] seconds [X] minutes
Error Rates [Tool name] [X]% of requests [X] minutes
API Response Time [Tool name] [X] ms [X] minutes
User Sessions [Tool name] [Metric] [X] minutes

Security Monitoring

Type Monitoring Method Alert Trigger Response Time
Login Attempts [Tool name] [X] failures [X] minutes
File Changes [Tool name] Any unauthorized [X] minutes
SSL Certificate [Tool name] [X] days to expiry [X] days
Security Scans [Tool name] Any detection [X] minutes

Risk Assessment

Identified Risks

  • Hosting provider outage
  • Domain name expiration
  • SSL certificate expiration
  • Database corruption
  • Cyber attacks (DDoS, hacking attempts)
  • Content management system failure
  • Plugin/dependency conflicts
  • Developer unavailability

Risk Impact Analysis

Risk Likelihood Impact Priority
Hosting provider outage Medium High High
Domain expiration Low High Medium
Database corruption Low High Medium
[Add more risks]

Recovery Strategies

Website Backup Procedures

  • Frequency: [Daily/Weekly/Monthly]
  • Backup Components:
    • Database
    • File system
    • Configuration files
    • User content
  • Storage Locations:
    • Primary: [Location]
    • Secondary: [Location]
    • Offsite: [Location]

Recovery Time Objectives (RTO)

  • Critical functions: [X] hours
  • Non-critical functions: [Y] hours

Recovery Point Objectives (RPO)

  • Maximum acceptable data loss: [Z] hours

Response Procedures

Immediate Response

  • Incident Detection

    • Monitor automated alerts
    • Receive user reports
    • Regular system checks
  • Initial Assessment

    • Identify affected components
    • Determine incident severity
    • Notify key personnel
  • Communication Plan

    • Internal stakeholders
    • External users (if needed)
    • Third-party vendors

Recovery Procedures

Hosting Provider Outage

  1. Contact hosting provider support
  2. Check status page
  3. Implement temporary redirect to backup site (if available)
  4. Monitor provider updates
  5. Test functionality after service restoration

Database Recovery

  1. Stop web services
  2. Restore from latest backup
  3. Verify data integrity
  4. Test system functionality
  5. Resume services

Remediation Procedures

Performance Issues

Issue Initial Response Remediation Steps Prevention
High CPU Usage [Action] 1. [Step] 2. [Step] [Measures]
Memory Leaks [Action] 1. [Step] 2. [Step] [Measures]
Slow Database [Action] 1. [Step] 2. [Step] [Measures]

Security Issues

Issue Initial Response Remediation Steps Prevention
Unauthorized Access [Action] 1. [Step] 2. [Step] [Measures]
Malware Detection [Action] 1. [Step] 2. [Step] [Measures]
DDoS Attack [Action] 1. [Step] 2. [Step] [Measures]

Application Issues

Issue Initial Response Remediation Steps Prevention
Failed Deployments [Action] 1. [Step] 2. [Step] [Measures]
Plugin Conflicts [Action] 1. [Step] 2. [Step] [Measures]
Data Corruption [Action] 1. [Step] 2. [Step] [Measures]

Post-Incident Procedures

  • Root Cause Analysis

    • Incident timeline
    • Contributing factors
    • System vulnerabilities
    • Process gaps
  • Documentation Updates

    • Incident report
    • Procedure modifications
    • Monitoring adjustments
    • Alert threshold reviews
  • System Hardening

    • Configuration changes
    • Security updates
    • Resource allocation
    • Backup verification
  • Team Training

    • Lesson sharing
    • Procedure updates
    • Response drills
    • Knowledge base updates

Contact Information

Internal Team

Role Name Contact Backup Contact
Website Owner
Technical Lead
Content Manager

External Contacts

Service Provider Support Contact Account ID
Hosting
Domain Registrar
SSL Provider

Testing and Maintenance

Testing Schedule

  • Full recovery test: [Frequency]
  • Backup restoration test: [Frequency]
  • Contact list verification: [Frequency]

Plan Maintenance

  • Review schedule: [Frequency]
  • Update triggers:
    • Major website changes
    • Infrastructure changes
    • Incident learnings
    • Team changes

Documentation and Resources

Required Documentation

  • Website architecture diagram
  • Backup configuration files
  • Recovery procedures
  • Login credentials (stored securely)
  • License information

Resource Links

  • Hosting control panel: [URL]
  • Monitoring dashboard: [URL]
  • Documentation repository: [URL]

Appendices

Appendix A: Change Log

Date Version Changes Author
1.0 Initial document

Appendix B: Recovery Checklist

  • Assess incident severity
  • Notify required personnel
  • Implement recovery procedures
  • Test functionality
  • Document incident
  • Review and update plan

Appendix C: Incident Report Template

  • Date and time of incident:
  • Nature of disruption:
  • Impact assessment:
  • Actions taken:
  • Recovery time:
  • Lessons learned:
  • Recommendations:

Appendix D: Monitoring Dashboard Setup

  • Dashboard URL: [URL]
  • Access credentials location: [Location]
  • Alert configuration: [Details]
  • Custom views: [List]

Appendix E: Remediation Runbooks

  • Standard operating procedures
  • Troubleshooting guides
  • Recovery scripts
  • Configuration templates
creation-date modification-date type tags aliases
<% tp.file.creation_date("YYYY-MM-DDTHH:mm:ssZZ") %>
<% tp.file.last_modified_date("YYYY-MM-DDTHH:mm:ssZZ") %>
empty-note
doc

Title

creation-date modification-date aliases tags type
<% tp.file.creation_date("YYYY-MM-DDTHH:mm:ssZZ") %>
<% tp.file.last_modified_date("YYYY-MM-DDTHH:mm:ssZZ") %>
Meeting - {{title}}
meeting
empty-note

Meeting - {{title}}

date: <% tp.date.now("D (ddd) MMMM YYYY") %> attendees: #user-name, #user-name

Summary

Outcome

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment