CS 5744 - Project 1 - Pet Adoption and Medical Record System

CS 5744 - Project 1 - Pet Adoption and Medical Record System

    ›Design Rationale

    Introduction

    • Introduction

    Requirements Summary

    • Use Cases
    • Stakeholder Analysis
    • Requirements

    High-Level Design

    • System Architecture
    • File Storage Design
    • Database Design
    • REST API Design
    • Web Application Design
    • Requirement Traceability Matrix

    Design Rationale

    • System Architecture Rationale
    • Data Tier Rationale
    • REST API Design Rationale
    • Web Application Design Rationale
    • Final Thoughts

    System Architecture Rationale

    Throughout this documentation we have stated or hinted at some of the rationale behind a lot of the design decisions. At the highest level we have three major concerns: data the system needs to track and store, business logic, and an interface to the system. This is a clear pattern for a layered architecture. By using a layered or three-tier architecture we gain the following benefits:

    • Proven architecture for modern web applications.
    • Distinct layers make future expansion easier. (i.e. multiple front-end applications may make use of the same REST API)
    • Code separation for easier development and maintenance.
    • Components may scale independently.
    ← Requirement Traceability MatrixData Tier Rationale →
    Built with Docusaurus
    Copyright © 2019