drasil-docLang-0.1.26.0: A framework for code and document generation for scientific software - Document Language SubPackage
Safe HaskellSafe-Inferred
LanguageHaskell2010

Drasil.DocumentLanguage.TraceabilityMatrix

Description

Defines functions to create traceability matrices in SRS documents.

Synopsis

Types

type TraceViewCat = [UID] -> ChunkDB -> [UID] Source #

Helper type that takes two sets of UIDs and a ChunkDB.

Main Functions

traceMIntro :: [LabelledContent] -> [Sentence] -> Contents Source #

Generalized traceability matrix introduction: appends references to the traceability matrices in Sentence form and wraps in Contents. Usually references the four tables generally found in this section (in order of being mentioned).

generateTraceTableView :: UID -> Sentence -> [TraceViewCat] -> [TraceViewCat] -> SystemInformation -> LabelledContent Source #

Generates a traceability table. Takes a UID for the table, a description (Sentence), columns (TraceViewCat), rows (TraceViewCat), and SystemInformation.

Helper Functions

traceMReferees :: ([UID] -> [UID]) -> ChunkDB -> [UID] Source #

Helper that finds the traceability matrix references (things being referenced).

traceMReferrers :: ([UID] -> [UID]) -> ChunkDB -> [UID] Source #

Helper that finds the traceability matrix references (things that are referring to other things).

traceMHeader :: (ChunkDB -> [UID]) -> SystemInformation -> [Sentence] Source #

Helper that finds the header of a traceability matrix.

traceMColHeader :: ([UID] -> [UID]) -> SystemInformation -> [Sentence] Source #

Helper that finds the headers of the traceability matrix columns.

traceMRowHeader :: ([UID] -> [UID]) -> SystemInformation -> [Sentence] Source #

Helper that finds the headers of the traceability matrix rows.

traceMColumns :: ([UID] -> [UID]) -> ([UID] -> [UID]) -> ChunkDB -> [[UID]] Source #

Helper that makes the columns of a traceability matrix.

tableShows :: (Referable a, HasShortName a) => a -> Sentence -> Sentence Source #

Helper that makes references of the form "reference shows the dependencies of something".

layoutUIDs :: [TraceViewCat] -> ChunkDB -> [UID] -> [UID] Source #

Helper that finds the layout UIDs of a traceability matrix.

traceViewFilt :: HasUID a => (a -> Bool) -> Getting (UMap a) ChunkDB (UMap a) -> TraceViewCat Source #

Helper that filters a traceability matrix given a predicate and a ChunkDB lens field.

traceView :: HasUID a => Getting (UMap a) ChunkDB (UMap a) -> TraceViewCat Source #

Helper that is similar to traceViewFilt, but the filter is always True.

traceViewCC :: Concept c => c -> TraceViewCat Source #

Turns a Concept into a TraceViewCat via its domain.