From e59065aa7783977d9b11671ee9062c4656c80e10 Mon Sep 17 00:00:00 2001 From: Paulo Meirelles Date: Sun, 28 Jan 2018 11:08:17 -0200 Subject: [PATCH] [oss-2018] General review - part 1 --- oss2018/content/01-introduction.tex | 29 ++++++----------------------- oss2018/content/02-relatedwork.tex | 14 +------------- oss2018/content/03-methods.tex | 45 +++++++++++++++++++++++---------------------- 3 files changed, 30 insertions(+), 58 deletions(-) diff --git a/oss2018/content/01-introduction.tex b/oss2018/content/01-introduction.tex index bd5c3e0..a6e927b 100644 --- a/oss2018/content/01-introduction.tex +++ b/oss2018/content/01-introduction.tex @@ -20,28 +20,11 @@ government and academia combine efforts to develop an e-government solution. Academia commonly works on cutting-edge development methodologies while the government still relies on traditional techniques. Changing the development process of one of this large-size institutions represents an organizational -disturbance with impacts on structure, culture, and management practices \cite{nerur2015challenges}. As a result, government -and academia have to harmonize their view to increasing the chances of success -in projects with tight deadlines and short budgets. +disturbance with impacts on structure, culture, and management practices +\cite{nerur2015challenges}. As a result, government and academia have to +harmonize their view to increasing the chances of success in projects with +tight deadlines and short budgets. -We believe the adoption of recommended community standards from Free/Libre and -Open Source Software (FLOSS) and agile values is a possible strategy to -harmonize different management approaches, due to the plurality of FLOSS -ecosystems and the diversity favored by agile methodologies. Open communication, -project modularity, the community of users, and fast response to problems are -just a few of the FLOSS ecosystem practices \cite{capiluppi, warsta}. -Individuals and interactions, working software, customer collaboration, -responding to change \cite{beck} are the values agile development. With this in -mind, FLOSS and agile practices may improve the cooperation of distinct teams. +We have investigated the adoption of recommended community standards from Free/Libre and Open Source Software (FLOSS) and agile values as a strategy to harmonize different management approaches, due to the plurality of FLOSS ecosystems and the diversity favored by agile methodologies. Open communication, project modularity, the community of users, and fast response to problems are just a few of the FLOSS ecosystem practices \cite{capiluppi, warsta}. Individuals and interactions, working software, customer collaboration, responding to change are the values agile development~\cite{beck}. With this in mind, FLOSS and agile practices may improve the cooperation of distinct teams. -In this work, we investigate the empirical method developed during 30 months of a -government-academia project that helped to harmonize the differences between -both organization management cultures. We present both quantitative and -qualitative analyses of the benefits of FLOSS and agile practices in an -e-government project. We identify and trace the best practices based on FLOSS -ecosystems and agile methodology. We collect and analyze data from the project -repository. Finally, we conducted a survey target at projects participants to -find their perception around the set of best practices, and which of them are -effective to government-academia collaboration. In doing so, we aim to help -academia better understand key issues they will be confronted with when engaging -in a government-academia software project. +In this work, we investigated the empirical method developed during 30 months of a government-academia project that helped to harmonize the differences between both organization management cultures. We discussed both quantitative and qualitative analyses of the benefits of FLOSS and agile practices in an e-government project. We identified and traced the best practices based on FLOSS ecosystems and agile methodology. We collected and analyzed data from the project repository. Finally, we conducted a survey target at projects participants to find their perception around the set of best practices, and which of them are useful to government-academia collaboration. In doing so, we aim to help academia better understand critical issues they will be confronted with when engaging in a government-academia software project. diff --git a/oss2018/content/02-relatedwork.tex b/oss2018/content/02-relatedwork.tex index c63949b..4fae105 100644 --- a/oss2018/content/02-relatedwork.tex +++ b/oss2018/content/02-relatedwork.tex @@ -37,19 +37,7 @@ adoption of agile methodologies in this country's IT industry. The results of their survey highlight some mismatch that companies faces when developing software for public administration. -Several works tried to highlight the FLOSS practices, while others attempted to -determine the relationship between FLOSS practices and agile methods. -Capiluppi et al. examined about 400 projects to find FLOSS project properties -\cite{capiluppi}. In their work, they extracted generic characterization -(project size, age, license, and programming language), analyzed the average -number of people involved in the project, the community of users, and -documentation characteristics. Warsta et al. found differences and similarities -between agile development and FLOSS practices \cite{warsta}. The authors argued -that FLOSS development may differ from agile in their philosophical and economic -perspectives, on the other hand, both share the definition of work. Finally, -Eric Raymond describes many of his experiences and decisions in his work with -FLOSS communities \cite{raymond}, this report has many intersections with the -agile manifesto. +Several works tried to highlight the FLOSS practices, while others attempted to determine the relationship between FLOSS practices and agile methods. Capiluppi et al. examined about 400 projects to find FLOSS project properties \cite{capiluppi}. In their work, they extracted generic characterization (project size, age, license, and programming language), analyzed the average number of people involved in the project, the community of users, and documentation characteristics. Warsta et al. found differences and similarities between agile development and FLOSS practices \cite{warsta}. The authors argued that FLOSS development may differ from agile in their philosophical and economic perspectives, on the other hand, both share the definition of work. Finally, Eric Raymond describes many of his experiences and decisions in his work with FLOSS communities \cite{raymond}, and his report in 1999 has many intersections with the agile manifesto in 2001. This paper differs itself from others by studying the government-academia collaboration for developing a production-level solution. From questionnaires, diff --git a/oss2018/content/03-methods.tex b/oss2018/content/03-methods.tex index 2103205..93142b9 100644 --- a/oss2018/content/03-methods.tex +++ b/oss2018/content/03-methods.tex @@ -1,21 +1,21 @@ \section{Research Design} \label{sec:researchdesign} -In this paper, we studied practical alternatives to harmonize the software +We studied practical alternatives to harmonize the software project lifecycle when confronting different development processes from crucial stakeholders. We are interested in the relationship between government and academia from the project management perspective, without the enforcement of changing their internal processes. We present two research questions that guided -our work: +this work: -\textbf{RQ1. }\textit{How to introduce open source and agile best practices into +\textbf{RQ1. }\textit{How to introduce FLOSS and agile best practices into government-academia collaboration projects?} \textbf{RQ2. }\textit{What practices favor effective team management in government-academia collaborative projects?} -To answer these questions, we use the case study as research method. We selected -as a case the evolution of the Brazilian Public Software portal (SPB) +To answer these questions, we used the case study as research method. We selected +as a case the evolution of the Brazilian Public Software (SPB) portal \cite{meirelles2017spb}, a government-academia collaborative project based on FLOSS systems. To validate our answers, we covered three different points of view: developers, government agent, and data collected from the project @@ -40,12 +40,13 @@ system-of-systems framework \cite{meirelles2017spb}. The development of the platform took place at the Advanced Laboratory of Production, Research, and Innovation in Software Engineering (LAPPIS/UnB) and -followed the workflow of biweekly sprints and 4-month releases. On the +the FLOSS Competence Center at USP (CCSL/USP), +following the workflow of biweekly sprints and 4-month releases. On the managerial aspect, at the project beginning, the collaboration management and -strategic discussions happened only once a month, when Lappis leaders and MPOG -directors met in person at the ministry's headquarters. Table -\ref{gov-academia-diff-table} summarizes the organizational differences in both -involved sides. +strategic discussions happened only once a month, when project leaders and MPOG +directors met in person at the ministry's headquarters. +Table~\ref{tab:gov-academia-diff} summarizes the organizational differences +in both involved sides. \vspace*{-.5cm} @@ -53,7 +54,7 @@ involved sides. \centering \def\arraystretch{1.2} \setlength\tabcolsep{0.2cm} -\resizebox{\textwidth}{!}{% +\resizebox{\textwidth}{!}{ \begin{tabular}{m{4.3cm}!{\color{white}\vrule}m{7cm}!{\color{white}\vrule}m{8cm}} \rowcolor[HTML]{c0d6e4} \textbf{Collaboration peaces} & \textbf{Academia} & \textbf{Goverment} \\ @@ -61,16 +62,16 @@ involved sides. \textbf{Responsibilities} & Platform development activites & Contracts and collaboration management \\ \rowcolor[HTML]{fafafa} \textbf{Team size} & -\begin{tabular}[c]{@{}l@{}} 42 undergraduate interns; \\ 2 professors; \\ 6 senior developers with significant \\ experience in FLOSS projects;\\ 2 User eXperience specialist \end{tabular} & -\begin{tabular}[c]{@{}l@{}} 1 director; \\ 1 coordinator; \\ 2 requirement analysts \end{tabular} \\ +\begin{tabular}[c]{@{}l@{}} 42 undergraduate interns; \\ 2 professors; \\ 6 senior developers with significant \\ experience in FLOSS projects\\ 2 User eXperience specialist \end{tabular} & +\begin{tabular}[c]{@{}l@{}} 1 director \\ 1 coordinator \\ 2 requirement analysts \end{tabular} \\ \rowcolor[HTML]{f2f2f2} -\textbf{Workplace} & LAPPIS at UnB & MPOG headquarters \\ +\textbf{Workplace} & LAPPIS at UnB and CCSL at USP & MPOG headquarters \\ \rowcolor[HTML]{fafafa} -\begin{tabular}[c]{@{}l@{}}\textbf{Management} \textbf{approaches}\end{tabular} & Agile methods and practices from FLOSS development & Traditional methods, such as RUP, CMMI, and PMBOK \\ -\end{tabular}% +\begin{tabular}[c]{@{}l@{}}\textbf{Management} \textbf{approaches}\end{tabular} & FLOSS practices and Agile values & Traditional approach from RUP, CMMI, and PMBOK \\ +\end{tabular} } -\caption{Differences between academia and government sides} -\label{gov-academia-diff-table} +\caption{Differences between academia and government sides.} +\label{tab:gov-academia-diff} \end{table} \vspace*{-1cm} @@ -82,13 +83,13 @@ project management process and reducing the mismatching between government and academia, professors, with the senior developers' collaboration, incrementally employed a set of best practices based on FLOSS and agile values. Throughout the project, the development leaders made decisions in a non-systematic way to -promote the usage of these techniques. In this paper, we analyze and codify +promote the usage of these techniques. In this paper, we analyzed and codified these decisions and how they favored the collaboration progress. \subsection{Survey, Interview and Data Collection} -We separated the project team into three groups: undergraduate interns, senior -developers, and MPOG analysts. For the first two we sent online questionnaires, +We separated the project team into three groups: undergraduate interns, IT professionals (senior +developers and designers), and MPOG analysts. For the first two we sent online questionnaires, and for the last one, we conducted 2-hour interviews. Table \ref{survey-table} presents the details of these processes. @@ -111,7 +112,7 @@ presents the details of these processes. \rowcolor[HTML]{f2f2f2} \textbf{Rate of responses} & 88\% (37) & 100\% & 100\% \\ \rowcolor[HTML]{fafafa} -\textbf{Average age at the end of the project} & 22 years old & 30 years old & more than 30 years \\ +\textbf{Average age at the end of the project} & 22 years old & 30 years old & 30 years old \\ \rowcolor[HTML]{f2f2f2} \textbf{Gender} & \begin{tabular}[c]{@{}l@{}}8\% women \\ 92\% man\end{tabular} & \begin{tabular}[c]{@{}l@{}}13\% women \\ 87\% man\end{tabular} & 100\% women \\ \rowcolor[HTML]{fafafa} -- libgit2 0.21.2