Abstract
Very Large Organization (VLO) develops and manufacturers hardware and software products, with each product being developed in its own project. Each project, from its inception, maintains a database that contains a wealth of data pertaining to its software development lifecycle. To empirically study VLO’s software development process, the authors mined the data from seven consecutive VLO projects to determine whether the data exhibit any anomalies and whether these anomalies can help assess a project’s level of success. Some anomalies provide evidence of what VLO does well, while other anomalies highlight possible areas of improvement. Through the anomalies in the mined data, the organization can direct additional focus and research to specific areas of the development process, particularly its requirements engineering, to improve the likelihood of success for future projects.
While describing the results of the empirical study, the paper also shows how such a study can be conducted even when the mined data are not very detailed.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
In empirical work, the golden data are the data to which each subject’s data are compared to evaluate the subject’s data. The researchers try to make the golden data completely correct, but know that they may not be.
- 2.
In the rest of this paper “deviation” means “deviation from the golden project criteria”.
- 3.
Lest the reader think that DeMarco’s point is only a tautology, please note that DeMarco’s observation is that in the typical late project he has known, the project was started well after the date that it should have been started in order to be able to guarantee finishing by the required deadline, everyone on the project knew that the project was starting late, and all on the project agreed to start the project anyway despite the certainty that the project had no chance to finish on time.
References
Hassan, A.E.: The road ahead for mining software repositories. In: Frontiers of Software Maintenance (FOSM), pp. 48–57 (2008)
Werner, C.M.: A case study of a very large organization. Master’s thesis, University of Waterloo, Waterloo (2012)
Agrawal, K., Aschauer, M., Thonhofer, T., Bala, S., Rogge-Solti, A., Tomsich, N.: Resource classification from version control system logs. In: IEEE 20th International Enterprise Distributed Object Computing Workshop (EDOCW), pp. 1–10 (2016)
Graves, T.L., Karr, A.F., Marron, J.S., Siy, H.: Predicting fault incidence using software change history. IEEE Trans. Software Eng. 26(7), 653–661 (2000)
Engler, D., Chen, D.Y., Hallem, S., Chou, A., Chelf, B.: Bugs as deviant behavior: a general approach to inferring errors in systems code. In: 18th ACM Symposium on Operating Systems Principles (SOSP), pp. 57–72 (2001)
Charette, R.N.: Why software fails [software failure]. IEEE Spectr. 42(9), 42–49 (2005)
Ruhe, G., Greer, D.: Quantitative studies in software release planning under risk and re- source constraints. In: International Symposium on Empirical Software Engineering (IS-ESE), pp. 262–270 (2003)
Hooper, J.W., Hsia, P.: Scenario-based prototyping for requirements identification. SIG- SOFT Softw. Eng. Notes 7(5), 88–93 (1982)
Davis, A.M.: Operational prototyping: a new development approach. IEEE Softw. 9(5), 70–78 (1992)
Li, P.L., Kivett, R., Zhan, Z., Jeon, S.-e., Nagappan, N., Murphy, B., Ko, A.J.: Characterizing the differences between pre- and post- release versions of software. In: 33rd International Conference on Software Engineering (ICSE), pp. 716–725 (2011)
Coldrick, S., Lawson, C.P., Ivey, P.C., Lockwood, C.: A decision framework for R&D project selection. In: IEEE International Engineering Management Conference (IEMC), vol. 1, pp. 413–418 (2002)
Bowers, J., Pycock, J.: Talking through design: requirements and resistance in cooperative prototyping. In: SIGCHI Conference on Human Factors in Computing Systems (CHI), pp. 299–305 (1994)
DeMarco, T.: All late projects are the same. IEEE Softw. 28(6), 104 (2011)
Ferens, D.V.: The conundrum of software estimation models. IEEE Aerosp. Electron. Syst. Mag. 14(3), 23–29 (1999)
Grimstad, S.: Understanding of estimation accuracy in software development projects. In: 11th IEEE International Software Metrics Symposium (METRICS), pp. 2–42 (2005)
Moloekken-Oestvold, K., Joergensen, M., Tanilkan, S.S., Gallis, H., Lien, A.C., Hove, S.W.: A survey on software estimation in the norwegian industry. In: International Symposium on Software Metrics, pp. 208–219 (2004)
Ellis, K., Berry, D.M.: Quantifying the impact of requirements definition and management process maturity on project outcome in large business application development. Requirements Eng. J. 18(3), 223–249 (2013)
Damian, D., Chisan, J., Vaidyanathasamy, L., Pal, Y.: Requirements engineering and down- stream software development: findings from a case study. Empirical Softw. Eng. 10(3), 255–283 (2005)
Blyth, A.J.C., Chudge, J., Dobson, J.E., Strens, M.R.: A framework for modelling evolving requirements. In: 17th Annual International Computer Software and Applications Conference (COMPSAC), pp. 83–89 (1993)
Liou, Y.I., Chen, M.: Integrating group support systems, joint application development, and computer-aided software engineering for requirements specification. In: 26th Hawaii International Conference on System Sciences (HICSS), vol. 3, pp. 4–12 (1993)
Bowles, J.B.: Better software reliability by getting the requirements right. In: Annual Reliability and Maintainability Symposium (RAMS), pp. 110–115 (2006)
Moloekken-Oestvold, K., Joergensen, M.: A comparison of software project overruns — flexible versus sequential development models. IEEE Trans. Software Eng. 31(9), 754–766 (2005)
Acknowledgment
Daniel Berry’s work was supported in part by a Canadian NSERC grant NSERC-RGPIN227055-15.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Werner, C.M., Berry, D.M. (2018). An Empirical Study of the Software Development Process, Including Its Requirements Engineering, at Very Large Organization: How to Use Data Mining in Such a Study. In: Kamalrudin, M., Ahmad, S., Ikram, N. (eds) Requirements Engineering for Internet of Things. APRES 2017. Communications in Computer and Information Science, vol 809. Springer, Singapore. https://doi.org/10.1007/978-981-10-7796-8_2
Download citation
DOI: https://doi.org/10.1007/978-981-10-7796-8_2
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-10-7795-1
Online ISBN: 978-981-10-7796-8
eBook Packages: Computer ScienceComputer Science (R0)