{-# OPTIONS_GHC -Wall #-} {-# LANGUAGE ScopedTypeVariables #-} module DatabaseDesign.Ampersand.Output.ToPandoc.ChapterSoftwareMetrics where import DatabaseDesign.Ampersand.Output.ToPandoc.SharedAmongChapters import DatabaseDesign.Ampersand.Output.Statistics (Statistics(..)) import DatabaseDesign.Ampersand.Output.PandocAux ------------------ Function Point Analysis -------------------- -- TODO: Engels en Nederlands netjes scheiden. -- TODO: Andere formaten dan LaTeX ondersteunen. fpAnalysis :: Fspc -> Options -> Blocks fpAnalysis fSpec flags = mempty -- if null (themes fSpec) then header ++ caIntro ++ fpa2Blocks else [] where header :: Blocks header = chptHeader flags SoftwareMetrics caIntro :: [Block] caIntro = case language flags of Dutch -> [Para [ Str "De specificatie van " , Quoted SingleQuote [Str (name fSpec)] , Str " is geanalyseerd door middel van een functiepuntentelling" , xrefCitation "IFPUG" , Str ". " , Str $ "Dit heeft geresulteerd in een geschat totaal van "++(show.nFpoints) fSpec++" functiepunten." ]] English -> [Para [ Str "The specification of " , Quoted SingleQuote [Str (name fSpec)] , Str " has been analysed by counting function points" , xrefCitation "IFPUG" , Str ". " , Str $ "This has resulted in an estimated total of "++(show.nFpoints) fSpec++" function points." ]] fpa2Blocks' :: [Block] fpa2Blocks' = [] -- = [ Table [] [AlignLeft,AlignLeft,AlignRight] [0.0,0.0,0.0] -- ( case language flags of -- Dutch -> [ [Plain [Str "gegevensverzameling"]] -- , [Plain [Str "analyse"]] -- , [Plain [Str "FP"]]] -- English -> [ [Plain [Str "data set"]] -- , [Plain [Str "analysis"]] -- , [Plain [Str "FP"]]] -- ) -- [ [ [Plain [(Str . name) plug]] -- , [Plain [(Str . show . fpa) plug]] -- , [Plain [(Str . show . fPoints . fpa) plug]] -- ] -- | plug<-plugInfos fSpec, fPoints (fpa plug)>0 -- ] -- , Table [] [AlignLeft,AlignLeft,AlignRight] [0.0,0.0,0.0] -- ( case language flags of -- Dutch -> -- [ [Plain [Str "interface"]] -- , [Plain [Str "analyse"]] -- , [Plain [Str "FP"]]] -- English -> -- [ [Plain [Str "interface"]] -- , [Plain [Str "analysis"]] -- , [Plain [Str "FP"]]] -- ) -- [ [ [Plain [(Str . name) act]] -- , [Plain [(Str . show . actFPA) act]] -- , [Plain [(Str . show . fPoints . actFPA) act]]] -- | act<-fActivities fSpec -- ] -- ]