Report 2023, Dec Field
Report 2023, Dec Field
Table of Contents
1. Introduction ........................................................................................ 1
1.1 Purpose of the SDD ............................................................................ 1
List of Tables
1. Introduction
Providing identification of information for the existing and/or proposed
automated system or situation for which the System Design Document (SDD)
applies (e.g., the full names and acronyms for the development project, the
existing system or situation, and the proposed system or situation, as
applicable), and expected evolution of the document. Also describe any security
or privacy considerations associated with use of this document.
The System Design Document (SDD) describes how the functional and
nonfunctional requirements recorded in the Requirements Document, the
preliminary user-oriented functional design recorded in the High Level Technical
Design Concept/Alternatives document, and the preliminary data design
documented in the Logical Data Model (LDM) transform into more technical
system design specifications from which the system is built. The SDD documents
the high-level system design and the low-level detailed design specifications.
The SDD describes design goals and considerations, provides a high-level
overview of the system architecture, and describes the data design associated
with the system, as well as the human-machine interface and operational
scenarios. The high-level system design is further decomposed into low-level
detailed design specifications for each system component, including hardware,
internal communications, software, system integrity controls, and external
interfaces. The high-level system design serves as primary input to the
Preliminary Design Review (PDR). The low-level detailed design serves as input
to the Detailed Design Review (DDR).
2.2 Assumptions/Constraints/Risks
2.2.1 Assumptions
Are any assumptions or dependencies regarding the system, software and its
use. These may concern such issues as: related software or hardware, operating
systems, end-user characteristics, and possible and/or probable changes in
functionality.
2.2.2 Constraints
Are any global limitations or constraints that have a significant impact on the
design of the system’s hardware, software and/or communications, and describe
the associated impact. Such constraints may be imposed by any of the following
(the list is not exhaustive):
• Hardware or software environment
• End-user environment
• Availability or volatility of resources
• Standards compliance
• Interoperability requirements
• Interface/protocol requirements
• Licensing requirements
• Data repository and distribution requirements
• Security requirements (or other such regulations)
• Memory or other capacity limitations
• Performance requirements
• Network communications
• Verification and validation requirements (testing)
• Other means of addressing quality goals
• Other requirements described in the Requirements Document
2.2.3 Risks
May be described as any risks associated with the system design and proposed
mitigation strategies.
3. Design Considerations
Here, issues which need to be addressed or resolved before attempting to devise
a complete design solution.
Examples of design decisions might concern (but are not limited to) things like
the following:
• Use of a particular type of product (programming language, database,
library, commercial off-the-shelf (COTS) product, etc.)
• Reuse of existing software components to implement various
parts/features of the system
• Future plans for extending or enhancing the software
• User interface paradigms (or system input and output models)
• Hardware and/or software interface paradigms
• Error detection and recovery
• Memory management policies
• External databases and/or data storage management and persistence
• Distributed data or control over a network
• Generalized approaches to control
• Concurrency and synchronization
• Communication mechanisms
• Management of other resources
4.4.1.1 Data
All data (as well as the format of the data — paper, manual input, electronic
data) supplied to the system as well as who/what is supplying the data.
4.7 Performance
Insert any performance documents or provide a reference to where they are
stored.
5. System Design
5.4.1 Inputs
Provide a description of the input media used by the user/operator for providing
information to the system. Show a mapping to the high-level data flows (e.g.,
data entry screens, optical character readers, bar scanners, etc.). If appropriate,
the input record types, file structures, and database structures provided in the
section for Data Design, may be referenced. Include data element definitions, or
refer to the data dictionary. Provide the layout of all input data screens or
graphical user interfaces (GUIs) (e.g., windows). Define all data elements
associated with each screen or GUI, or reference the data dictionary. Provide edit
criteria for the data elements, including specific values, range of values,
mandatory/optional, alphanumeric values, and length. Also address data entry
controls to prevent edit bypassing. Discuss the miscellaneous messages
associated with user/operator inputs, including (but not limited to) the following:
• Copies of form(s) if the input data are keyed or scanned for data entry from
printed forms
• Description of any access restrictions or security considerations
• Each transaction name, code, and definition, if the system is a
transaction-based processing system
• Incorporation of the Privacy Act statement into the screen flow, if the
system is covered by the Privacy Act
• Description of accessibility provisions to comply with Section 508 of the
Rehabilitation Act
5.4.2 Outputs
Describe the system output design relative to the user/operator. Show a
mapping to the high-level data flows. System outputs include reports, data
display screens and GUIs, query results, etc. The output files described in the
section for Data Design may be referenced. The following should be provided, if
appropriate:
• Identification of codes and names for reports and data display screens
• Description of report and screen contents (provide a graphical
representation of each layout and define all data elements associated with
the layout or reference the data dictionary)
• Description of the purpose of the output, including identification of the
primary users
• Report distribution requirements, if any (include frequency for periodic
reports)
• Description of any access restrictions or security considerations
6. Operational Scenarios
Describe the general functionality of the system from the users’ perspectives and
provide an execution or operational flow of the system via operational scenarios
that provide step-by-step descriptions of how the proposed system should
operate and interact with its users and its external interfaces under a given set
of circumstances. The scenarios tie together all parts of the system, the users,
and other entities by describing how they interact, and may also be used to
describe what the system should not do.
Operational scenarios should be described for all operational modes,
transactions, and all classes of users identified for the proposed system. For each
transaction, provide an estimate of the size (use maximum, if variable) and
frequency (e.g., average number per session). Identify if there any transactional
peak periods and include an estimate of frequency during those periods. Each
scenario should include events, actions, stimuli, information, and interactions
as appropriate to provide a comprehensive understanding of the operational
aspects of the proposed system.
The scenarios can be presented in several different ways: 1) for each major
processing function of the proposed system, or 2) thread-based, where each
scenario follows one type of transaction type through the proposed system, or 3)
following the information flow through the system for each user capability,
following the control flows, or focusing on the objects and events in the system.
The number of scenarios and level of detail specified will be proportional to the
perceived risk and the criticality of the project.
7. Detailed Design
Provide the information needed for a system development team to actually build
and integrate the hardware components, code and integrate the software
components, and interconnect the hardware and software segments into a
functional product. Additionally, address the detailed procedures for combining
separate COTS packages into a single system.
9. External Interfaces
Describe any interfaces that exist with external systems that are not within the
scope of the system being designed, regardless whether the other systems are
managed by CMS or another entity. Describe the electronic interface(s) between
the system being designed and each of the other systems and/or subsystem(s),
emphasizing the point of view of the system being designed. If there are more
than one or two external systems, or if the interfaces are not simplistic, one or
more separate Interface Control Documents (ICDs) should be prepared and
referenced here. If applicable, identify how many ICDs exist and what they are.
A template for an ICD is available from the CMS Integrated IT Investment &
System Life Cycle Framework Web site located at
https://www.cms.gov/Research-Statistics-Data-and-Systems/CMS-
Information-Technology/XLC/Downloads/InterfaceControlDocument.docx.
Provide information on how the development and distribution of the SDD will be
controlled and tracked. Use the table below to provide the version number, the
date of the version, the author/owner of the version, and a brief description of
the reason for creating the revised version.
Table 1 - Record of Changes
Version Number Date Author/Owner Description of Change
1.0 11/25/2023 Kelvin Mpogole Guides Writting
1.5 11/29/2023 Kelvin Mpogole Manual Scripting
2.0 12/15/2023 Kelvin Mpogole Appendixies
Appendix B: Acronyms
Provides a list of acronyms and associated literal translations used within the
document. List the acronyms in alphabetical order using a tabular format as
depicted below.
Table 2 - Acronyms
Acronym Literal Translation
SDD System Designing Documentaton
ICD Intergrated Controlling Devices
CMS Control Management Systems
Appendix C: Glossary
Provide clear and concise definitions for terms used in this document that may
be unfamiliar to readers of the document. Terms are to be listed in alphabetical
order.
Table 3 - Glossary
Term Acronym Definition
Node ND A point joined with one or more other points
Pitch PT A high note or point reached with perfomance
Frames FR Secuences measures per seconds
Appendix E: Approvals
The undersigned acknowledge that they have reviewed the SDD and agree with
the information presented within this document. Changes to this SDD will be
coordinated with, and approved by, the undersigned, or their designated
representatives.
Instructions: List the individuals whose signatures are desired. Examples of such
individuals are Business Owner, Project Manager (if identified), and any
appropriate stakeholders. Add additional lines for signature as necessary.
Table 5 - Approvals
Date
Document Approved By
Approved