ABSTRACT
Although Agile is a well established software development paradigm, major concerns arise when it comes to contracting issues between a software consumer and a software producer. How to contractualize the Agile production of software, especially for security & mission critical organizations, which typically outsource software projects, has been a major concern since the beginning of the "Agile Era." In literature, little has been done, from a foundational point of view regarding the formalization of such contracts. Indeed, when the development is outsourced, the management of the contractual life is non-trivial. This happens because the interests of the two parties are typically not aligned. In these situations, software houses strive for the minimization of the effort, while the customer commonly expects high quality artifacts. This structural asymmetry can hardly be overcome with traditional "Waterfall" contracts. In this work, we propose a foundational approach to the Law & Economics of Agile contracts. Moreover, we explore the key elements of the Italian procurement law and outline a suitable solution to merge some basic legal constraints with Agile requirements. Finally, a case study is presented, describing how Agile contracting has been concretely implemented in the Italian Defense Acquisition Process. This work is intended to be a framework for Agile contracts for the Italian public sector of critical systems, according to the new contractual law (Codice degli Appalti).
- A.Z. Abualkishik, F. Ferrucci, C. Gravino, L. Lavazza, G. Liu, R. Meli, and G. Robiolo. 2017. A study on the statistical convertibility of IFPUG Function Point, COSMIC Function Point and Simple Function Point. Information and Software Technology 86 (2017), 1--19. Google ScholarDigital Library
- G. Akerlof. 1970. The market for "lemons": quality uncertainty and the market mechanism. The Quarterly Journal of Economics (1970), 488--500.Google Scholar
- A. Albrecht and J. Gaffney. 1983. Software function, source lines of code, and development effort prediction: a software science validation. IEEE Transactions on Software Engineering 9, 6 (1983), 639--648. Google ScholarDigital Library
- R. Atkinson. 1999. Project management: cost, time and quality, two best guesses and a phenomenon, its time to accept other success criteria. International Journal of Project Management 17, 6 (1999), 337--342.Google ScholarCross Ref
- S. Atkinson and G. Benefield. 2013. Software Development: Why the Traditional Contract Model Is Not Fit for Purpose. In Proc. HICSS46, Software Track. IEEE Computer Society Press, Hawaii, 330--339. Google ScholarDigital Library
- K.Beck. 2003. Test Driven Development By Example. Addison-Wesley, Boston. Google ScholarDigital Library
- S.J. Berman. 2012. Digital transformation: opportunities to create new business models. Strategy & Leadership 40, 2 (2012), 16--24.Google ScholarCross Ref
- M. Book, V. Gruhn, and R. Striemer. 2012. adVANTAGE: A fair pricing model for agile software development contracting. In Agile Processes in Software Engineering and Extreme Programming, C. Wohlin (Ed.). Springer, Malmo, Sweden, 193--200.Google Scholar
- M. Book, V. Gruhn, and R. Striemer. 2016. Tamed Agility. Springer.Google Scholar
- G. Campbell and P. Papapetrou. 2013. SonarQube in Action. Manning Publications. Google ScholarDigital Library
- P. Ciancarini, S. Litvinov, A. Messina, A. Sillitti, and G. Succi (Eds.). 2018. Proc. 5th Int. Conf. on Software Engineering for Defense Applications. Advances in Intelligent Systems and Computing, Vol. 717. Springer.Google Scholar
- P. Ciancarini, A. Messina, F. Poggi, and D. Russo. 2017. Agile Knowledge Engineering for Mission Critical Software Requirements. In Knowledge Engineering and Software Engineering - Methods, tools, and case studies, G. Nalepa and J. Baumeister (Eds.). Springer-Verlag, Berlin, 1--21.Google Scholar
- C. Ebert and M. Paasivaara. 2017. Scaling Agile. IEEE Software 6 (2017), 98--103.Google ScholarCross Ref
- F. Ferrucci, C. Gravino, and L. Lavazza. 2016. Simple function points for effort estimation: a further assessment. In Proc. 31st ACM Symposium on Applied Computing. 1428--1433. Google ScholarDigital Library
- B. Hermalin, A. Katz, and R. Craswell. 2007. The Law and Economics of Contracts. In Handbook of Law and Economics, M. Polinsky and S. Shavell (Eds.). Elsevier, 3--138.Google Scholar
- I. Jacobson, I. Spence, and E. Seidewitz. 2016. Industrial-scale agile: from craft to engineering. Commun. ACM 59, 12 (2016), 63--71. Google ScholarDigital Library
- M. Lapham et al. 2011. Agile Methods: Selected DoD Management and Acquisition Concerns. Technical Report CMU-SEI-11-TN-2. Software Engineering Institute, Carnegie Mellon University.Google Scholar
- M. Lapham et al. 2016. RFP Patterns and Techniques for Successful Agile Contracting. Technical Report CMU-SEI-13-SR-25. Software Engineering Institute, Carnegie Mellon University.Google Scholar
- M. Lapham, M. Bandor, and E. Wrubel. 2014. Agile Methods and Request for Change (RFC): Observations from DoD Acquisition Programs. Technical Report CMU-SEI-13-TN-31. Software Engineering Institute, Carnegie Mellon University.Google Scholar
- L. Lavazza and R. Meli. 2014. An evaluation of simple function point as a replacement of IFPUG function point. In Proc. Joint Conference of the International Workshop on Software Measurement and the International Conference on Software Process and Product Measurement. IEEE, 196--206. Google ScholarDigital Library
- D. Leffingwell. 2016. SAFe® 4.0 Reference Guide: Scaled Agile Framework® for Lean Software and Systems Engineering. Addison-Wesley Professional. Google ScholarDigital Library
- J.L. Letouzey and M. Ilkiewicz. 2012. Managing technical debt with the SQALE method. IEEE Software 29, 6 (2012), 44--51. Google ScholarDigital Library
- A. Messina, F. Fiore, M. Ruggiero, P. Ciancarini, and D. Russo. 2016. A new Agile Paradigm for Mission Critical Software Development. Crosstalk - The Journal of Defense Software Engineering 29, 6 (2016), 25--30.Google Scholar
- R. Myerson. 2004. Justice, Institutions, and Multiple Equilibria. The Chicago Journal of International Law 5 (2004), 91.Google Scholar
- K. Nidiffer, S. Miller, and D. Carney. 2014. Agile Methods in Air Force Sustainment: Status and Outlook. Technical Report CMU-SEI-14-TN-9. Software Engineering Institute, Carnegie Mellon University.Google Scholar
- K. Nidiffer, S. Miller, and D. Carney. 2014. Potential Use of Agile Methods in Selected DoD Acquisitions: Requirements Development and Management. Technical Report CMU-SEI-13-TN-6. Software Engineering Institute, Carnegie Mellon University.Google Scholar
- OECD. 2016. Stimulating digital innovation for growth and inclusiveness. (2016).Google Scholar
- A. Opelt, B. Gloger, W. Pfarl, and R. Mittermayr. 2013. Agile Contracts. Wiley.Google Scholar
- S. Palmquist, M. Lapham, S. Garcia-Miller, T. Chick, and I. Ozkaya. 2014. Parallel Worlds: Agile and Waterfall Differences and Similarities. Technical Report CMU-SEI-13-TN-21. Software Engineering Institute, Carnegie Mellon University.Google Scholar
- E. Pilios. 2015. Contracting practices in traditional and agile software development. Ph.D. Dissertation. University of Leiden, NL.Google Scholar
- M. Porter and J. E Heppelmann. 2014. How smart, connected products are transforming competition. Harvard Business Review 92, 11 (2014), 64--88.Google Scholar
- M. Porter and J. E Heppelmann. 2015. How smart, connected products are transforming companies. Harvard Business Review 93, 10 (2015), 96--114.Google Scholar
- M. Porter and V. E. Millar. 1985. How information gives you competitive advantage. Harvard Business Review 63, 4 (1985), 149--160.Google Scholar
- R. Posner. 1977. Gratuitous Promises in Economics and Law. Journal of Legal Studies 6, 2 (1977), 411--426.Google ScholarCross Ref
- R. Pressman. 2014. Software Engineering: a Practictioner's Approach. McGraw-Hill. Google ScholarDigital Library
- D. Russo. 2016. Benefits of Open Source Software in Defense Environments. In Proc. 4th Int. Conf. in Software Engineering for Defence Applications (Advances in Intelligent Systems and Computing), Vol. 422. Springer-Verlag, Berlin, 123--131.Google ScholarCross Ref
- D. Russo, V. Lomonaco, and P. Ciancarini. 2018. A Machine Learning Approach for Continuous Development. In Proceedings of 5th International Conference in Software Engineering for Defence Applications. Springer, 109--119.Google Scholar
- C. Santana, F. Leoneo, A. Vasconcelos, and C. Gusmao. 2011. Using Function Points in Agile Projects. In Agile Processes in Software Engineering and Extreme Programming (Lecture Notes in Business Information Processing), Vol. 77. Springer, 176--191.Google Scholar
- StandishGroup. 2016. The CHAOS report. (2016). http://www.standishgroup.com/outlineGoogle Scholar
- C. Symons. 1988. Function Point Analysis: Difficulties and Improvements. IEEE Transactions on Software Engineering 14, 1 (January 1988), 2--11. Google ScholarDigital Library
- E. Wrubel and J. Gross. 2015. Contracting for Agile Software Development in the Department of Defense: An Introduction. Technical Report CMU-SEI-15-TN-06. Software Engineering Institute, Carnegie Mellon University.Google Scholar
- E. Wrubel, S. Miller, M. Lapham, and T. Chick. 2014. Agile Software Teams: How They Engage with Systems Engineering on DoD Acquisition Programs. Technical Report CMU-SEI-14-TN-13. Software Engineering Institute, Carnegie Mellon University.Google Scholar
Index Terms
- Contracting agile developments for mission critical systems in the public sector
Recommendations
A model using agile methodologies for defining metrics to be used by the public sector in Brazil to set remuneration for outsourced software development
ICSE '21: Proceedings of the 43rd International Conference on Software Engineering: Companion ProceedingsThe process of contracting software factories within the scope of the Federal Public Administration (APF, in Portuguese) in Brazil has undergone some changes due to legislative alterations and a model has been proposed to improve the rendering of ...
Adopting to Agile Software Development
Abstract Agile software development can be made successful, but there is no well-defined way how to achieve this. The problem is that the successful adoption of agile methods and practices is a complex process and this process should be customizable for ...
Achieving Standard Software Security in Agile Developments
ICICM '21: Proceedings of the 11th International Conference on Information Communication and ManagementThe introduction of agile software development methods has brought about diverse benefits to the industry. These range from rapid deployment of software products to satisfying the ever changing customer requirements among others. These have in turn ...
Comments