#LyX 2.2 created this file. For more info see http://www.lyx.org/ \lyxformat 508 \begin_document \begin_header \save_transient_properties true \origin unavailable \textclass article \begin_preamble \usepackage{listings} \usepackage{xcolor} \usepackage{pdflscape} \usepackage{courier} %\usepackage{mathtools} \usepackage{graphicx} \usepackage{booktabs} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage{listings} \lstset{columns=fullflexible} \usepackage{charter} \usepackage{xspace} \usepackage{algorithmicx} \usepackage{algpseudocode} % Definizione intestazioni e pie' di pagina \usepackage{fancyhdr} % _____________________________ \lstdefinelanguage{JS}{ keywords={typeof, new, true, false, catch, function, return, null, catch, switch, var, if, in, while, do, else, case, break}, keywordstyle=\color{blue}\bfseries, ndkeywords={class, export, boolean, throw, implements, import, this}, ndkeywordstyle=\color{darkgray}\bfseries, identifierstyle=\color{black}, sensitive=false, comment=[l]{//}, morecomment=[s]{/*}{*/}, commentstyle=\color{purple}\ttfamily, stringstyle=\color{red}\ttfamily, morestring=[b]', morestring=[b]" } \definecolor{dkgreen}{rgb}{0,0.6,0} \definecolor{gray}{rgb}{0.5,0.5,0.5} \definecolor{mauve}{rgb}{0.58,0,0.82} \lstset{frame=tb, language=JS, aboveskip=3mm, belowskip=3mm, showstringspaces=false, columns=flexible, basicstyle={\small\ttfamily}, numbers=none, numberstyle=\tiny\color{gray}, keywordstyle=\color{blue}, commentstyle=\color{dkgreen}, stringstyle=\color{mauve}, breaklines=true, breakatwhitespace=true, tabsize=3 } % _____________________________ \end_preamble \use_default_options true \begin_modules InStar graphicboxes fix-cm fixltx2e fixme customHeadersFooters pdfform \end_modules \maintain_unincluded_children false \begin_forced_local_layout Format 60 Style "In Preamble" Category "FrontMatter" Margin Static LatexType Paragraph InTitle 0 InPreamble 1 TocLevel -1000 NeedProtect 0 KeepEmpty 0 NextNoIndent 0 CommandDepth 0 LatexName "dummy" ItemCommand item LabelType No_Label EndLabelType No_Label ParagraphGroup "0" ParIndent MM ParSkip 0.4 ItemSep 0 TopSep 0 BottomSep 0 LabelBottomSep 0 ParSep 0 NewLine 1 Align Block AlignPossible Block, Center, Layout, Left, Right FreeSpacing 0 PassThru 0 ParbreakIsNewline 0 RefPrefix OFF HTMLLabelFirst 0 HTMLStyle div.standard { margin-bottom: 2ex; } EndHTMLStyle HTMLForceCSS 0 HTMLTitle 0 Spellcheck 1 ForceLocal 1 End Style "In Title" Category "FrontMatter" Margin Static LatexType Paragraph InTitle 1 InPreamble 0 TocLevel -1000 NeedProtect 0 KeepEmpty 0 NextNoIndent 0 CommandDepth 0 LatexName "dummy" ItemCommand item LabelType No_Label EndLabelType No_Label ParagraphGroup "0" ParIndent MM ParSkip 0.4 ItemSep 0 TopSep 0 BottomSep 0 LabelBottomSep 0 ParSep 0 NewLine 1 Align Block AlignPossible Block, Center, Layout, Left, Right FreeSpacing 0 PassThru 0 ParbreakIsNewline 0 RefPrefix OFF HTMLLabelFirst 0 HTMLStyle div.standard { margin-bottom: 2ex; } EndHTMLStyle HTMLForceCSS 0 HTMLTitle 0 Spellcheck 1 ForceLocal 1 End \end_forced_local_layout \language english \language_package default \inputencoding auto \fontencoding global \font_roman "default" "default" \font_sans "default" "default" \font_typewriter "default" "default" \font_math "auto" "auto" \font_default_family default \use_non_tex_fonts false \font_sc false \font_osf false \font_sf_scale 100 100 \font_tt_scale 100 100 \graphics default \default_output_format default \output_sync 1 \bibtex_command default \index_command default \float_placement H \paperfontsize default \spacing single \use_hyperref true \pdf_bookmarks true \pdf_bookmarksnumbered false \pdf_bookmarksopen false \pdf_bookmarksopenlevel 1 \pdf_breaklinks false \pdf_pdfborder false \pdf_colorlinks false \pdf_backref false \pdf_pdfusetitle true \papersize default \use_geometry true \use_package amsmath 1 \use_package amssymb 1 \use_package cancel 1 \use_package esint 1 \use_package mathdots 1 \use_package mathtools 1 \use_package mhchem 1 \use_package stackrel 1 \use_package stmaryrd 1 \use_package undertilde 1 \cite_engine basic \cite_engine_type default \biblio_style plain \use_bibtopic false \use_indices false \paperorientation portrait \suppress_date false \justification true \use_refstyle 1 \index Index \shortcut idx \color #008000 \end_index \leftmargin 2.5cm \rightmargin 2.5cm \secnumdepth 3 \tocdepth 3 \paragraph_separation indent \paragraph_indentation default \quotes_language english \papercolumns 1 \papersides 1 \paperpagestyle default \tracking_changes false \output_changes false \html_math_output 0 \html_css_as_file 0 \html_be_strict false \end_header \begin_body \begin_layout Standard \begin_inset ERT status open \begin_layout Plain Layout \backslash begin{titlepage} \end_layout \end_inset \end_layout \begin_layout Standard \begin_inset ERT status open \begin_layout Plain Layout \end_layout \begin_layout Plain Layout \backslash newcommand{ \backslash HRule}{ \backslash rule{ \backslash linewidth}{0.5mm}} \end_layout \begin_layout Plain Layout \backslash center \end_layout \begin_layout Plain Layout \backslash textsc{ \backslash LARGE Politecnico di Milano} \backslash \backslash [1.5cm] \backslash textsc{ \backslash Large PowerEnjoy} \backslash \backslash [0.5cm] \end_layout \begin_layout Plain Layout \backslash textsc{ \backslash Large Software Engineering 2} \backslash \backslash [0.5cm] \end_layout \begin_layout Plain Layout \end_layout \begin_layout Plain Layout \backslash HRule \backslash \backslash [0.4cm] { \backslash huge \backslash bfseries Project Planning} \backslash \backslash [0.4cm] \backslash HRule \backslash \backslash [1.5cm] \end_layout \begin_layout Plain Layout \backslash begin{minipage}{0.4 \backslash textwidth} \backslash begin{flushleft} \backslash large \backslash emph{Authors:} \backslash \backslash Giancarlo \backslash textsc{Colaci} \backslash newline Giulio \backslash textsc{De Pasquale} \backslash newline Francesco \backslash textsc{Rinaldi} \backslash end{flushleft} \backslash end{minipage} ~ \backslash begin{minipage}{0.4 \backslash textwidth} \backslash begin{flushright} \backslash large \backslash emph{Supervisor:} \backslash \backslash Elisabetta \backslash textsc{De Nitto} \backslash end{flushright} \backslash end{minipage} \backslash \backslash [3cm] \end_layout \begin_layout Plain Layout \end_layout \end_inset \end_layout \begin_layout Standard \begin_inset Graphics filename ../3.Integration Test Plan Document/res/img/logopm.pdf width 30text% \end_inset \end_layout \begin_layout Standard \begin_inset ERT status open \begin_layout Plain Layout \backslash vfill \end_layout \begin_layout Plain Layout { \backslash large \backslash today} \backslash \backslash [3cm] \end_layout \end_inset \end_layout \begin_layout Standard \begin_inset ERT status open \begin_layout Plain Layout \backslash end{titlepage} \end_layout \end_inset \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Standard \begin_inset ERT status open \begin_layout Plain Layout \backslash mbox{} \backslash thispagestyle{empty} \backslash newpage \end_layout \end_inset \end_layout \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Standard \begin_inset CommandInset toc LatexCommand tableofcontents \end_inset \begin_inset ERT status open \begin_layout Plain Layout \backslash thispagestyle{empty} \end_layout \end_inset \end_layout \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Standard \begin_inset ERT status open \begin_layout Plain Layout \backslash setcounter{page}{1} \end_layout \end_inset \end_layout \begin_layout Section Introduction \end_layout \begin_layout Subsection Revision History \end_layout \begin_layout Standard \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout Version \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Date \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Author(s) \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Summary \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1.0 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 19/01/2017 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Giancarlo Colaci, Giulio De Pasquale, Francesco Rinaldi \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Initial Release \end_layout \end_inset \end_inset \end_layout \begin_layout Subsection Reference Documents \end_layout \begin_layout Enumerate QSM - Function Point Languages Table \begin_inset Foot status open \begin_layout Plain Layout http://www.qsm.com/resources/function-point-languages-table \end_layout \end_inset \end_layout \begin_layout Enumerate COCOMO II - Model Definition Manual \begin_inset Foot status open \begin_layout Plain Layout http://csse.usc.edu/csse/research/COCOMOII/cocomo2000.0/CII_modelman2000.0.pdf \end_layout \end_inset \end_layout \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Section Function Point \end_layout \begin_layout Standard A function point is a "unit of measurement" representing how many functionalitie s the information system provides to the user. Function points are used to calculate a functional size measurement (FSM) of software; usually the cost of a single unit is calculated from past projects. \end_layout \begin_layout Subsection Overview \end_layout \begin_layout Standard Several aspects are considered for the estimation, as prescribed by the specifications: \end_layout \begin_layout Itemize \series bold Internal Logic Files \series default : homogeneous set of data handled by the application being developed; \end_layout \begin_layout Itemize \series bold External Interface Files \series default : homogeneous set of data managed by the application but created elsewhere; \end_layout \begin_layout Itemize \series bold External Input \series default : basic operation involving externally provided data as input; \end_layout \begin_layout Itemize \series bold External Inquiry \series default : basic operation involving both input and output, mainly for retrieving information from the system; \end_layout \begin_layout Itemize \series bold External Output \series default : basic operation which provides data to the external environment. \end_layout \begin_layout Standard The \series bold counting weight \series default (Low, Avg. or High) has been defined according to the parameters specified in Tables 1-3. Finally, the \series bold function points \series default has been calculated for each section according to Table 4 in order to get the estimated SLOC size, as described in Section 2.7. \end_layout \begin_layout Standard \begin_inset Float table wide false sideways false status open \begin_layout Plain Layout \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold Records \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 1-19 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 20-50 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 51+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 2-5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 6+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \end_inset \end_layout \begin_layout Plain Layout \begin_inset Caption Standard \begin_layout Plain Layout Internal Logical Files and External Interface Files \end_layout \end_inset \end_layout \end_inset \begin_inset Float table wide false sideways false status open \begin_layout Plain Layout \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold File Types \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 1-5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 6-19 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 0-1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 2-3 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 4+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \end_inset \end_layout \begin_layout Plain Layout \begin_inset Caption Standard \begin_layout Plain Layout External Output and External Inquiry \end_layout \end_inset \end_layout \end_inset \begin_inset Float table wide false sideways false status open \begin_layout Plain Layout \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold File Types \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 1-4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 5-15 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 16+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 0-1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 2-3 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 4+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Avg \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \end_inset \end_layout \begin_layout Plain Layout \begin_inset Caption Standard \begin_layout Plain Layout External Input \end_layout \end_inset \end_layout \end_inset \end_layout \begin_layout Standard \begin_inset Float table wide false sideways false status open \begin_layout Plain Layout \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold Function Types \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Complexity Weight \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Internal Logical Files \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 7 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 10 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 15 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold External Interface Files \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 7 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 10 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold External Inputs \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 3 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold External Outputs \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 7 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold External Inquiries \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 3 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6 \end_layout \end_inset \end_inset \begin_inset Caption Standard \begin_layout Plain Layout Complexity Weights \end_layout \end_inset \end_layout \begin_layout Plain Layout \end_layout \end_inset \end_layout \begin_layout Subsection Internal Logic Files \end_layout \begin_layout Standard The system must handle data about the following classes: \end_layout \begin_layout Standard \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold File \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Records \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Counting Weight \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold FPs \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Car \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 51+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 15 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold RMSS \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 51+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 15 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold User \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 51+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 15 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Location \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2-5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 51+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 15 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Event \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2-5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 51+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 15 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold \shape slanted Grand Total \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 75 \end_layout \end_inset \end_inset \end_layout \begin_layout Subsection External Interface Files \end_layout \begin_layout Standard The system must store the following data from external environment: \end_layout \begin_layout Standard \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold File \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Records \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Counting Weight \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold FPs \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Maps \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2-5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 51+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 10 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold \shape slanted Grand Total \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 10 \end_layout \end_inset \end_inset \end_layout \begin_layout Subsection External Input \end_layout \begin_layout Standard The system must guarantee the following oprations using input from the external environment: \end_layout \begin_layout Standard \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold File \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Classes Involved \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Counting Weight \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold FPs \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Login / Sign up / Logout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 16+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 3x4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Edit / Delete Profile \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 16+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2x4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Add / Delete Reservation \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 16+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2x4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Add / Delete Rent \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 16+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2x4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Set Car Status \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 16+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold \shape slanted Grand Total \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 40 \end_layout \end_inset \end_inset \end_layout \begin_layout Subsection External Inquiry \end_layout \begin_layout Standard The system must respond to the following requests: \end_layout \begin_layout Standard \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold File \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Classes Involved \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Counting Weight \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold FPs \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Get reservation history \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Get rent history \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Get available cars in radius \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 6 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Check reservation status \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Check rent status \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Calculate rent fee \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 4 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold \shape slanted Grand Total \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 30 \end_layout \end_inset \end_inset \end_layout \begin_layout Subsection External Output \end_layout \begin_layout Standard The system must produce data to the external environment through the following operations: \end_layout \begin_layout Standard \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout \series bold File \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Classes Involved \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Data Elements \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Counting Weight \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold FPs \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Confirmation emails \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Average \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Notification to users \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 7 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Payment requests \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 7 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold Maintainance requests \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20+ \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 7 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold \shape slanted Grand Total \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \series bold 26 \end_layout \end_inset \end_inset \end_layout \begin_layout Subsection Results \end_layout \begin_layout Standard Following the tables described in [1], for \series bold J2EE \series default , we have that \end_layout \begin_layout Standard \begin_inset Formula \[ \frac{SLOC}{FPs}=46 \] \end_inset \end_layout \begin_layout Standard Using the tables listed before we get: \end_layout \begin_layout Standard \begin_inset Formula \[ SLOC=46\cdot181=8326 \] \end_inset \end_layout \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Section COCOMO® : effort & cost estimation \end_layout \begin_layout Subsection Overview \end_layout \begin_layout Standard The COCOMO R II Cost Estimation Model is a complex estimation technique used by thousands of software engineers all over the world. It is used to estimate the effort cost of a software engineering project. The core of COCOMO R II is the use of the Effort Equation to estimate the number of Person/Month required to develop a complex project. \end_layout \begin_layout Subsection Scale Drivers \end_layout \begin_layout Standard In this section we will talk about COCOMO R II Scale Drivers. They are a significant source of exponential variation on a project effort. Each driver has a range of rating levels, from Very Low to Extra High, each with its own weight, that is called \begin_inset Quotes eld \end_inset scale factor \begin_inset Quotes erd \end_inset (SF). \end_layout \begin_layout Standard \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout Scale Factors \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Very Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Low \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Nominal \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Very High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Extra High \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout PREC \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout thoroughly unprecedented \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout SFj \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout FLEX \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout SFj \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout RESL \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout SFj \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout TEAM 5 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout SFj \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout PMAT \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout SFj \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout \end_layout \end_inset \end_inset \end_layout \begin_layout Paragraph PREC \end_layout \begin_layout Standard Precedentedness. This driver reflects the previous experience that developers have in this field. Actually, this is our first experience, so we think the best value for our team is Low. \end_layout \begin_layout Paragraph FLEX \end_layout \begin_layout Standard Development flexibility. This driver will change due to our flexibility degree in the development. Our schedule is quite strict, so we choose Low for this project. \end_layout \begin_layout Paragraph RESL \end_layout \begin_layout Standard Risk resolution. It reflects the extension of risk analysis. A very low value means we have done a little analysis, high means a complete risk analysis. We choose High because we did a detailed analysis (Chapter 5). \end_layout \begin_layout Paragraph TEAM 5 \end_layout \begin_layout Standard Team cohesion. This value is correlated to how well the development team know each other. In this case we are a very cooperative team, so Very high value is our choice. \end_layout \begin_layout Paragraph PMAT \end_layout \begin_layout Standard Process maturity. This parameter reflects the process maturity of the organizazion. In partic- ular, this parameter has been choosen according to a weighted average of “Yes” answers to CMM Maturity Questionnaire. In our case we have chosen High (CMM Level 3). \end_layout \begin_layout Subsection Cost Drivers \end_layout \begin_layout Standard These are the effort multipliers used in COCOMO R II model to adjust the nominal effort. \end_layout \begin_layout Paragraph RELY \end_layout \begin_layout Standard Required Software Reliability This is the measure of software reliability. Nominal is our choice for this case because a downtime would not lead to high financial losses but will cause problems to passengers. \end_layout \begin_layout Paragraph DATA \end_layout \begin_layout Standard Database Size This values tries to estimate effects that large databases could have in our application. We do not have a test database, so we use Nominal as value. \end_layout \begin_layout Paragraph CPLEX \end_layout \begin_layout Standard Product Complexity According to [10, Table 20], our software could be marked as Nominal. \end_layout \begin_layout Paragraph RUSE \end_layout \begin_layout Standard Required Reusability Reusability is useful. Some parts should be designed as reusable (e.g. Mobile communication drivers). Those parts could be used not only in this project. High is our choice here. \end_layout \begin_layout Paragraph DOCU \end_layout \begin_layout Standard Documentation match to lifecycle needs This is a cost driver for the level of required documentation. In our case it is suitable as Nominal. \end_layout \begin_layout Paragraph TIME \end_layout \begin_layout Standard Execution Time Constraint This is a measure of the execution time constraint. We don’t have strict constraints in this case, so we will set it as Low. \end_layout \begin_layout Paragraph ACAP \end_layout \begin_layout Standard Analyst Capability This driver should be set to High since we dedicated a lot of effort in analysing the problem requirements. \end_layout \begin_layout Paragraph PCAP \end_layout \begin_layout Standard Programmer Capability \end_layout \begin_layout Standard This driver should emphasize our programmers’ capabilites as a team. Our cooperation is quite good, so we set it as High. \end_layout \begin_layout Paragraph APEX \end_layout \begin_layout Standard Application Experience Our experience in this field is very low. So we think that a good estimate will happen if we set this value to Very Low. \end_layout \begin_layout Paragraph PLEX \end_layout \begin_layout Standard Platform Experience Our average knowledge about platforms as databases, UI, client/server ar- chitecture is around 1 year. We set this value as Nominal. \end_layout \begin_layout Paragraph LTEX \end_layout \begin_layout Standard Language and Tool Experience This is like the previous parameter. Our experience is around one year, so this value will be set to Nominal. \end_layout \begin_layout Paragraph PCON \end_layout \begin_layout Standard Personnel continuity We can estimate a High personnel continuity. \end_layout \begin_layout Paragraph TOOL \end_layout \begin_layout Standard Use of software tools We are going to use basic tools like Eclipse as IDE, Maven as dependency manager and GIT as versioning tool. So we think that Nominal will be good for us. \end_layout \begin_layout Paragraph SITE \end_layout \begin_layout Standard Multisite development We are going to use chats, emails and phone calls. So we choose High here. \end_layout \begin_layout Paragraph SCED \end_layout \begin_layout Standard Required development schedule One hundred percent is good for us. So we will choose Nominal here. \end_layout \begin_layout Paragraph Product \end_layout \begin_layout Standard Now we can compute the product of all Cost Drivers. \end_layout \begin_layout Subsection Effort Equation \end_layout \begin_layout Standard Now, having both cost drivers product and scale drivers factors we can com- pute the effort, in Person-Month with the following equation: Ef f ort = A ⇤ EAF ⇤ KSLOC E Where A is the COCOMO R 2000 constant, A = 2.94. EAF is the product of all cost drivers. In our case it is EAF = 0.71. Using function points estimation we can say that KSLOC = 8.694. Last thing: E is the exponent derived from Scale Drivers. It is calculated with the following formula: E = B + 0.01 ⇤ 5 X SF i i=1 Where B = 0.91 in COCOMO R 2000. In our project, we can derive that E = 0.91 + 0.01 ⇤ 16.06 = 0.91 + 0.1606 ⇠ = 1.07. Using this parameter, we can compute our effort: Ef f ort = 2.94 ⇤ 0.71 ⇤ 8.694 1.07 = 21.11 P M \end_layout \begin_layout Subsection Schedule Estimation \end_layout \begin_layout Standard Schedule Estimation Now we can estimate the project duration with the following equation: Duration = 3.67 ⇤ Ef f ort F Where Ef f ort is the estimated effort and SE is the schedule equation exponent derived from the five Scale Drivers. We can obtain SE using the following formula: F = D + 0.2 ⇤ 0.01 ⇤ 5 X i=1 SF i = 0.28 + 0.2 ⇤ 0.01 ⇤ 16.06 ⇠ = 0.31 Duration = 3.67 ⇤ 21.11 F = 3.67 ⇤ 21.11 0.31 ⇠ = 9.44 M onths \end_layout \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Section Tasks scheduling \end_layout \begin_layout Standard The main assignments of our project are: \end_layout \begin_layout Enumerate Creation of the Requirement Analysis and Specification Document ( \series bold RASD \series default ). \end_layout \begin_layout Enumerate Creation of the Design Document ( \series bold DD \series default ). \end_layout \begin_layout Enumerate Creation of the Integration Testing Plan Document ( \series bold ITPD \series default ). \end_layout \begin_layout Enumerate Creation of the Project Plan, this document. \end_layout \begin_layout Enumerate Creation of a set of slides to present our work to the client. \end_layout \begin_layout Enumerate Development of the system and the preparation of the unit tests. \end_layout \begin_layout Enumerate Running of integration testing on the application. \end_layout \begin_layout Standard The first four tasks were already completed within the given submission deadlines. Starting from step 5 onward, according to our COCOMO® estimation \begin_inset Foot status open \begin_layout Plain Layout see Section 3 for more details \end_layout \end_inset , we expect to deliver a working implementation within \series bold TODO \series default months which corresponds to \series bold mid-TODO. \series default The development started just after the submission of the Design Document and continued simultaneously with the rest of the tasks; the integration testing will take place in the last month. In the meantime, tests will be run all along the entire development process to verify the proper functioning of every added feature. \series bold In Figure 3 you can find the dependency graph of every task, in Table 20, instead, you can find the schedule of every task. Also the Gantt chart for the project is provided in Figure 4. \end_layout \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Section Resource Allocation \end_layout \begin_layout Standard This section is meant to show the way our available resources are allocated to the project. Every assigned task is divided in three macroareas and each one of them is assigned to a member of the team. As you can notice, every member works on all the tasks; in this way the time needed to complete a task is a bit more but we also increase the overall awareness of every member about the project itself, reducing the possibility to create misunderstandings. At the end of every task, the whole team is asked to revision the document before the submission, the week before the deadline. Regarding the implementation and the integration testing, each member of the team is asked to focus on a tier of the application, as soon as the Design Document is complete, starting in parallel with other task and then focusing on the implementation itself. After one functionality is complete, the testing related will be carried on by another member of the team, in order to make the unit test more accurate. Please refer to Table 20, Figure 4 for a better understanding of the division of the work. The division of work between team members is shown in tables 21, 22, 23, 24, 25, 26, 27. \end_layout \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Section Risks \end_layout \begin_layout Standard Risks have to be considered in a complete project planning, owing to their uncertain ad dangerous nature. A sudden change in mind, actions, economi- cal situations and alike could drift the project development into failure; this is the reason why they are here analyzed. Three main risk categories will be later described: \end_layout \begin_layout Itemize \series bold Project risks: \series default involving the project plan (described in these pages). Project schedule and overall costs may be subject to (worse) changes due to these risks. \end_layout \begin_layout Itemize \series bold Technical risks: \series default involving the actual implementation of the project. They may affect the quality of the software being developed. \end_layout \begin_layout Itemize \series bold Business risks: \series default involving the company developing the software. This may cause trouble to the project (e.g. if the business cannot subsidize the software being developed anymore). \end_layout \begin_layout Subsection Project Risks \end_layout \begin_layout Itemize Risk: No estimations/schedules have been made before this project. A lack of experience in this area can lead to serious errors in evaluating development time – \end_layout \begin_deeper \begin_layout Itemize Probability: High \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: Studying previous works on a similar subject can be very helpful in this. \end_layout \end_deeper \begin_layout Itemize Risk: Due to several overlapping tasks the team is involved into, the project is very likely to suffer from schedule delays \end_layout \begin_deeper \begin_layout Itemize Probability: High \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: A strict organization among the team components is fundamental. This implies a constant cooperation between developers, in order to squeeze even the tiniest time slots available for this project. \end_layout \end_deeper \begin_layout Itemize Risk: A sudden growth in requirements can lead to a rush to meeting deadlines, jeopardizing the overall quality \end_layout \begin_deeper \begin_layout Itemize Probability: Medium \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: Thinking with a broader mind on the first stages can be very helpful; however, the team should be care- ful against over-engineering (which can also paralyze the develop- ment) \end_layout \end_deeper \begin_layout Itemize Risk: Collaboration issues can sometimes be crucial, especially when dealing with task divisions. \end_layout \begin_deeper \begin_layout Itemize Probability: Medium \end_layout \begin_layout Itemize Damage: Medium \end_layout \begin_layout Itemize How to deal with it: Meeting often can be a solution, other than explicitly writing whose responsibility for each task is. \end_layout \end_deeper \begin_layout Itemize Risk: The team is very small (3 people) but homogeneous; if someone leaves or gets ill then the remaining team would have serious repercus- sions. \end_layout \begin_deeper \begin_layout Itemize Probability: Low \end_layout \begin_layout Itemize Damage: Catastrophic \end_layout \begin_layout Itemize How to deal with it: All team members must be able to cover all development sections and cooperate effectively. \end_layout \end_deeper \begin_layout Subsection Technical Risks \end_layout \begin_layout Itemize Risk: A lack of previous experience in developing with Java EE can almost surely slow down the entire team, which has to study these new technologies first \end_layout \begin_deeper \begin_layout Itemize Probability: High \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: This has to be account in the first stages of planning and inserted in the project scheduling. \end_layout \end_deeper \begin_layout Itemize Risk: If the servers happen to be unreliable or in the case of more users than expected, a significant downtime can seriously damage the whole project – \end_layout \begin_deeper \begin_layout Itemize Probability: Medium \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: A scalable design of the overall architec- ture is essential, both in software and in hardware choices. \end_layout \end_deeper \begin_layout Itemize Risk: The application may be susceptible to security issues if not well- designed. \end_layout \begin_deeper \begin_layout Itemize Probability: Medium \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: All modern standards in computer security guidelines must be followed, especially when dealing with the user input, which has to be correctly verified and processed. \end_layout \end_deeper \begin_layout Itemize Risk: Testing may prove difficult (for example, if several mocks are necessary) or highlight problems which are hard to solve, especially when doing integratio n testing or —even worse—validation. \end_layout \begin_deeper \begin_layout Itemize Probability: Medium \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: All components must be unit tested as soon as possible, to eliminate serious bugs when they first appear; integration testing must be done according to the specifications contained in [5]. A periodic check of requirements contained in [2] is also required. \end_layout \end_deeper \begin_layout Subsection Business Risks \end_layout \begin_layout Itemize Risk: Testing devices & infrastructure (PCs, several mobile phones, server rent) need to be purchased and configured. This is going to increase costs, that may be not sustainable if the company is too small. \end_layout \begin_deeper \begin_layout Itemize Probability: High \end_layout \begin_layout Itemize Damage: Catastrophic \end_layout \begin_layout Itemize How to deal with it: Testing tools are to be clearly defined in [2], in order to avoid worthless spendings. \end_layout \end_deeper \begin_layout Itemize Risk: The company may find itself in serious financial trouble. \end_layout \begin_deeper \begin_layout Itemize Probability: Low \end_layout \begin_layout Itemize Damage: Catastrophic \end_layout \begin_layout Itemize How to deal with it: A feasibility study together with the RASD must highlight the impossibility of starting a whole new project. \end_layout \end_deeper \begin_layout Itemize Risk: myTaxiService may violate some (future) laws related to taxi management. \end_layout \begin_deeper \begin_layout Itemize Probability: Low \end_layout \begin_layout Itemize Damage: Critical \end_layout \begin_layout Itemize How to deal with it: A periodic check must be done in order to avoid legal consequences. In the case of drastic changes, the whole team must work in order to adapt to the new regulations as soon as possible. \end_layout \end_deeper \begin_layout Itemize Risk: Another bigger company could acquire this company. \end_layout \begin_deeper \begin_layout Itemize Probability: Low \end_layout \begin_layout Itemize Damage: Marginal \end_layout \begin_layout Itemize How to deal with it: No preventive solutions are available. Note that this is not necessarily a negative thing. \end_layout \end_deeper \begin_layout Standard \begin_inset Newpage newpage \end_inset \end_layout \begin_layout Section Appendix \end_layout \begin_layout Subsection Tools used \end_layout \begin_layout Standard We used the following tools to produce this document: \end_layout \begin_layout Itemize \series bold LaTex \series default as typesetting system to write this document \end_layout \begin_layout Itemize \series bold LyX \series default as editor \end_layout \begin_layout Itemize \series bold Visio Professional \series default and \series bold draw.io \series default to draw all the diagrams \end_layout \begin_layout Subsection Hours of work \end_layout \begin_layout Standard \align center \begin_inset Tabular \begin_inset Text \begin_layout Plain Layout Date \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Colaci \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout De Pasquale \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout Rinaldi \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 16/01/17 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 17/01/17 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 18/01/17 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 19/01/17 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 20/01/17 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 2 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 21/01/17 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 3 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 22/01/17 \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout / \end_layout \end_inset \begin_inset Text \begin_layout Plain Layout 1 \end_layout \end_inset \end_inset \end_layout \end_body \end_document