Application/Database Technical Design Document Template
Application/Database Technical Design Document Template
Table of Contents
Table of Contents.................................................................................................................................................1
1 Introduction....................................................................................................................................................4
1.1 System Objectives....................................................................................................................................4
1.2 Application Scope....................................................................................................................................4
1.2.1 In Scope............................................................................................................................................4
1.2.2 Out of Scope.....................................................................................................................................4
1.3 System Constraints and Limitations........................................................................................................4
1.3.1 Assumptions Based on These Constraints/Limitations....................................................................4
2 Architectural Principles & Technologies Employed........................................................................................5
2.1 Architectural Principles...........................................................................................................................5
2.2 Architectural Constraints.........................................................................................................................5
2.3 Technology Stack.....................................................................................................................................5
2.4 Development Standards Compliance......................................................................................................6
2.5 Approved Deviations from Standards.....................................................................................................6
3 Functional Design............................................................................................................................................6
3.1 Ecosystem................................................................................................................................................6
3.2 Basic Functionality...................................................................................................................................6
4 Technical Architecture....................................................................................................................................7
4.1 System conceptual Architecture Diagrams.............................................................................................7
4.1.1 Current Architecture State...............................................................................................................7
4.1.2 New State after Implementation.....................................................................................................7
4.1.3 Future State Architecture Diagram..................................................................................................7
4.1.4 Server Farm Diagram........................................................................................................................8
Introduction
System Objectives
Due to lack of support and maintenances, the XXX system requires upgrades…..
Application Scope
In Scope
1. Provide ..
2. Provide ..
3. Flexible support for..
4. Programmatic interfaces (APIs) to be available for ..
5. Review & re-factor or redesign ..
6. Create an effective ..
Out of Scope
1. This project only addresses ..
2. All non-user related functions are out of scope..
3. not responsible for maintaining historical data related to ..
all existing data will be (and needs to be) accessible and accurate via Web Services
interface as is today whether the solution is technical or non-technical, the current data
access will be addressed; ..
Architectural Constraints
Only the approved technology stack of .NET C# for new development, and <xxxx>
functionalities used for development (see 2.3).
Technology Stack
Purpose Software
Operating System Microsoft Windows Server 20xx and
Microsoft Windows 10 <version> for
Development environment
Runtime Framework .NET Framework x.x
Entity Framework Version x.x
IDE Visual Studio 20xx
Eclipse xx.x
Database SQL Server 20xx Enterprise
Languages C# (.NET)
Java J2EE runtime
Web Server Internet Information Services xx.xx
QA & Defect Tracking HP Quality Center xx.xx
Browser Google Chrome xx+, Edge xx+,
FireFox xx+
Exception, Data Access, Logging Microsoft enterprise library x.x
This section proposal has been approved by the <Solution Architecture> Team
Functional Design
Ecosystem
The functional design is described in more detail in section 4.1 Conceptual Architectural
Diagram, the following is a …. Ecosystem diagram that shows the consumers of the system.
Basic Functionality
The system will provide two categories of services…
It provides following data, Services and functions.
It provides ..
It also provides..
XXX Services
YYY Services
Technical Architecture
Blah, blah ..
Following diagram 4.1 shows the conceptual interfaces and modules of …. system.
Diagram 4.1
Diagram 4.1.1
Following diagram 4.1.2 show the state of the system after this project is completed
Diagram 4.1.2
Diagram 4.1.4.1
Solutions
In order to address the issues of lack of functionality support and limitation of
current architecture, following approaches and design decisions have been
considered and provided.
The first bullet point emphasizes on the overall goal of the new framework and
intention. The rest of the bulleted points describe the features and solutions to
address the issues that are described above Problems section.
1. Create a scalable and easily adaptable framework to support not only for
the current functionalities and data store but also for any other industry
standard third party products which may be purchased when needs arise
in future.
2. The framework will provide the transparency of the functionality to
current subscribing applications regardless of platform and any flavor of
the current subsystem.
3. Implement Service oriented Architecture to provide ubiquitous interfaces
to any implemented applications which are implemented with different
technologies.
4. Provide published SLA to Application to ensure and promote the stability
and accuracy of the data. This is obtained by analyzing performance log
data that is scheduled to be implemented in production during early
stage of development. The data is however limited to the period that is
implemented to gather the performance data.
5. The framework will provide sufficient security implementation to comply
with security standard.
6. Provide horizontally and vertically scalable architecture framework to
support the both direction of growth in IT community.
7. Enhance and fix all the current services to sustain the current application
implementations.
8. Provide a WIKI document that explains how to easily implement the new
services in their applications.
Functional Decomposition
Tier Architecture
WCF Services
Diagram 4.3.1
Diagram 4.3.2
Security Service
Figure 4.1 Web Service sequence Diagram
Auditing
Exception Handling
Creating a test framework to validate the data & functions with mock data is a crucial
to this project.
Currently, due to lack of performance environment, a framework needs to be built to
support the following functionalities.
These services will be used to validate the SLA requirements in controlled environment.
The following tests will mimic the performance measurement but will not represent the
true production performance.
This framework will be run during the development, QA and staged Production phase.
Preparing the Data
All methods in services will use example data that is provided by use case
scenarios from BA/QA team and create multiple instances with different
variations for data validation and basic performance measurement.
Data Driven client request test to services for data validation
Bulk Data Driven request test to measure performance
Data Design
Entity Relationship Diagrams
Pre-Existing Configuration
Requirement xxx:
a.
Data Dictionary
Table [ ] DataType,PK,FK,Nullabl Notes
e
INT PK1
VARCHAR(50) PK2
INT PK2, FK
TINYINT
RULES:
a. ..
b. ..
c.
RULES:
a. ..
b. ..
capacity requirements
Note: These capacity requirements are stated in relative / tentative terms – ..
System to be capable of processing TBD authorization transactions per minute – .. This
relative number will be converted into actual numbers using the results of the
transaction logging task.
A load test will be conducted to verify that the new application can achieve these
volumes and performance.
Each technology is detailed in both Application and DB section of the detail design decisions.
Please refer to the base service design decision section for SOAP, application interfaces and
DB design
Infrastructure Design
Production & Integration Infrastructure
<server diagrams>
Development Infrastructure
<server diagrams>
Security Design
Component Design
The in depth component design section of this technical specification is intentionally incomplete.
The high level of the basic application framework plumbing design and approaches and list of
methods are present here. The in depth detail technical implementation of all services and detail
signature and logic along with specific sequence diagrams will be added later as a separate different
document during low level technical document phase. The detail portion of the documents can be
added here as needed. This additional design detail will be completed during the detailed low level
technical design documentation phase of the project. The sections that follow list those
components where some level of detail design has been done.
Testing Framework
This framework is required to provide the SLA data validation during development/unit testing
and QA phases.
Approach
This framework is proposed to support not only the development team to aid in unit
testing during the development but also can be utilized as a testing tool in controlled
environment.
Technical Requirement
1. The testing tool requires a sterile environment. During the testing all operations
should be halt to prevent any mal data.
2. Use Case data is collected to represent all the possible cases. This includes all
methods in all services and different data.
3. The volume of the data should be sufficient enough to make any meaningful data
from the testing. I recommend more than 5k records to run. This will play a huge
role to collect performance data addition to data validation.
4. The test has to be re-runnable.
Dependencies
1. Clean data is a key.
2. Creating data with proper referential integrity to sustain the RI error free testing.
3. Creating a proper script to create reasonable amount of volume.
Setup
Logging Services
All the exception will be logged into the database with …. Below is the configuration for
the database logging.
.
Exception Handling
All the exceptions will be handled and logged into database. And fault exception will be
thrown to the client
CREATE TABLE
Database [ ]:
dbo.YYY
CREATE TABLE
(dbo.YYY.sql)
ZZZ_DML.sql
DATAMOD
Stored Procedures
Database [ ]:
MODIFY PROC
Database [ ]:
dbo.YYY CREATE PROC
Server Objects
REVIEW if
ZZZ
needed
<Server or Database>:
SQL Process
YYY
(SSIS, T-SQL)
Document Purpose
This document describes the list of standard & guideline to help to understand
the …
The information in this document is intended to be used as a high level design
and its solutions to help both in-house and contract developers.
Design decisions
Technical Guideline
Conceptual design
Object model design
Disclaimer
This document is meant to be updated on a regular basis as additional decisions
are made or the components of the system are altered. The long-term value of
this document as anasset is directly related to the accuracy and relevance of the
content.
This technical design document assumes that the project team has read and is familiar
with the following project documentation; this documentation may be referenced at any
time in this design document:
Required Document Location
Business Requiremements Document (BRD) … <link>
Software Requirements Specs (SRS) <link>
Appendix
Related Documents
Glossary
Revision History
Approval Tracking
Signoff received via emails should be documented by inserting the email below this
grid.
Signoff received via steering meeting should be documented by reference to a
published meeting recap that indicates who gave the approval.
Verbal approvals should always be documented via email or recap note.
Approved Name Signature Date Approved