The importance of requirements specifications for successful IT projects

  • Oliver Skroch


Today, information technology not only shapes inevitable parts of daily life in modern societies, but also counts for one of the most important success factors in business. By strengthening their own, unique selling propositions, enterprises can achieve particular competitive advantages on the market. IT must support these individual propositions, respectively enable them in the first place. In order to plan, procure, develop, and operate the corresponding IT solutions in today’s efficient and divided value creation processes, the exact requirements for the solutions need to be specified as dearly as possible. All parties involved in the divided work – including, for instance, the principal contractor, end-users, computing centers, systems integrators or developers - profit fromunambig-uous and resilient agreements, which reduce the numerous project risks along steadily globalizing value creation chains.


Unify Modeling Language Requirement Specification Acceptance Test Expert Witness Legal Dispute 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Achermann, F.; Nierstrasz, O. (2005), “A calculus for reasoning about software composition”, Theoretical Computer Science, 331 (2–3): 367–396.CrossRefGoogle Scholar
  2. Atkinson, C.; Bunse, C.; Groß, H.; Kühne, T. (2002), “Towards a general component model for Web–based applications“, Annals of Software Engineering, 13 (1): 35–69.CrossRefGoogle Scholar
  3. Bernstein, P.; Haas, L. (2008), “Information integration in the enterprise”, Communications of the ACM, 51 (9): 72–79.CrossRefGoogle Scholar
  4. Bruss, T. (1984), “A unified approach to a class of best choice problems with an unknown number of options”, The Annals of Probability, 12 (3): 882–889.CrossRefGoogle Scholar
  5. Bruss, T. (2000), “Sum the odds to one and stop”, The Annals of Probability, 28 (3): 1384–1391.CrossRefGoogle Scholar
  6. Dynkin, E.; Juschkewitsch, A. (1969), Sätze und Aufgaben über Markoffsche Prozesse, Springer, Heidelberg.Google Scholar
  7. Gamble, T.; Gamble, R. (2008), “Monoliths to mashups: Increasing opportunistic assets”, IEEE Software, 25 (6): 71–79.CrossRefGoogle Scholar
  8. Lindley, D. (1961), “Dynamic programming and decision theory”, Applied Statistics, 10 (1): 39–51.CrossRefGoogle Scholar
  9. Parnas, D. (1972). “On the criteria to be used in decomposing systems into modules”, Communications of the ACM, 15 (12): 1053–1058.CrossRefGoogle Scholar
  10. Shaw, M.; Garlan, D. (1996), Software architecture: Perspectives on an emerging discipline, Prentice Hall, Upper Saddle River, USA.Google Scholar
  11. Skroch, O.; Turowski, K. (2007), “Improving service selection in component–based architectures with optimal stopping”, Proceedings of the 34th Euromicro conference on software engineering and advanced applications, IEEE Computer Society, 28–31 Aug. 2007, Lübeck: 39–46.Google Scholar
  12. Szyperski, C.; Gruntz, D.; Murer, S. (2002), Component software: Beyond object–oriented programming, 2nd edn, Addison Wesley, London, UK.Google Scholar


  1. Achermann, F.; Nierstrasz, O. (2005), “A calculus for reasoning about software composition”, Theoretical Computer Science, 331 (2–3): 367–396.CrossRefGoogle Scholar
  2. Ackermann, J.; Brinkop, F.; Conrad, S.; Fettke, P.; Frick, A.; Glistau, E.; Jaekel, H.; Koltar, O .; Loos, P.; Mrech, H.; Ortner, E.; Raape, U.; Overhage, S.; Sahm, S.; Schmietendorf, A.; Teschke, T.; Turowski, K. (2002), “Standardized Specification of Business Components”, Gesellschaft für Informatik, Augsburg.Google Scholar
  3. Baber, R.; Parnas, D.; Vilkomir, S.; Harrison, P.; O’Connor, T. (2005), “Disciplined methods of software specification: A case study”, Proceedings of the international symposium on information technology: Coding and computing, IEEE Computer Society, 4–6 Apr. 2006, Las Vegas, USA: 428–437.Google Scholar
  4. Beizer, B. (1995), Black–box testing: Techniques for functional testing of software and systems, Wiley, New York, USA.Google Scholar
  5. Biggerstaff, T.; Richter, C. (1987), “Reusability framework, assessment, and directions”, IEEE Software, 4 (2): 41–49.CrossRefGoogle Scholar
  6. Boehm, B. (2005), “The future of software processes”, Unifying the software process spectrum: Proceedings of the international software process workshop: Revised selected papers, Lecture Notes in Computer Science 3840, Springer, 25–27 May 2005, Beijing, China: 10–24.Google Scholar
  7. Briand, L.; Labiche, Y. (2002), “A UML–based approach to system testing”, Journal of Software and Systems Modeling, 1 (1): 10–42.CrossRefGoogle Scholar
  8. Brooks, F. (1987), “No silver bullet: Essence and accidents of software engineering”, IEEE Computer, 20 (4): 10–19.CrossRefGoogle Scholar
  9. Choi, Y.; Heimdahl, M. (2003), “Model checking software requirement specifications using domain reduction abstraction”, Proceedings of the 18th IEEE international conference on automated software engineering, IEEE Computer Society, 6–10 Oct. 2003, Montreal, Canada: 314–317.CrossRefGoogle Scholar
  10. Dietz, J. (2006), Enterprise ontology: Theory and methodology, Springer, Berlin.CrossRefGoogle Scholar
  11. Edler, H.; Hörnstein, J. (2003), Component+ final report 1.1., accessed on 12 Oct. 2005, http:// www. component– report 1.l. pdf.Google Scholar
  12. Fidge, C. (2002), “Contextual matching of software library components”, Proceedings of the 9th Asia–Pacific software engineering conference, IEEE Computer Society, 4–6 Dec. 2002, Gold Coast, Australia: 297–306.Google Scholar
  13. Gao, J.; Tsao, H.; Wu, Y. (2003), Testing and quality assurance for component–based software, Artech House, Boston, USA.Google Scholar
  14. Gordijn, J.; Akkermans, H. (2001), “Designing and evaluating e–business models”, IEEE Intelligent Systems, 16 (4): 11–17.CrossRefGoogle Scholar
  15. Grabowski, J.; Hogrefe, D.; Réthy, G.; Schieferdecker, I.; Wiles, A.; Willcock, C. (2003), “An introduction to the testing and test control notation (TTCN–3)”, Computer Networks, 42 (3): 375–403.CrossRefGoogle Scholar
  16. Hummel, O.; Atkinson, C. (2005), “Automated harvesting of test oracles for reliability testing”, Proceedings of the 29th annual international computer software and applications conference, IEEE Computer Society, 25–28 Jul. 2005, Edinburgh, UK: 196–202.Google Scholar
  17. Maarek, Y.; Berry, D.; Kaiser, G. (1991), “An information retrieval approach for automatically constructing software libraries”, IEEE Transactions on Software Engineering, 17 (8): 800–813.CrossRefGoogle Scholar
  18. McIlroy, M. (1969), “Mass produced software components”, Software engineering: Report on a conference sponsored by the NATO Science Committee, NATO Scientific Affairs Division, 7–11 Oct. 1968, Garmisch: 138–155.Google Scholar
  19. Meyer, B. (1992), “Applying ‘design by contract”’, IEEE Computer, 25 (10): 40–51.CrossRefGoogle Scholar
  20. Meyer, B. (2003), “The grand challenge of trusted components”, Proceedings of the 25th international conference on software engineering, IEEE Computer Society, 3–10 May 2003, Portland, USA: 660–667.CrossRefGoogle Scholar
  21. Mili, H.; Mili, F.; Mili, A. (1995), “Reusing software: Issues and research directions”, IEEE Transactions on Software Engineering, 21 (6): 528–562.CrossRefGoogle Scholar
  22. Moormann Zaremski, A.; Wing, J. (1997), “Specification matching of software components”, ACM Transactions on Software Engineering and Methodology, 6 (4): 333–369.CrossRefGoogle Scholar
  23. Myers, G. (1979), The art of software testing,Wiley, New York, USA.Google Scholar
  24. Object Management Group (2005), Unified modeling language: Superstructure version 2.0, accessed on 31 Mar. 2006,–07–04.pdf.Google Scholar
  25. Object Management Group (2006), UML 2.0. OCL specification, accessed on 24 Oct. 2006,–bin/apps/doc?formal/06–05–01.pdf.Google Scholar
  26. Offutt, J.; Abdurazik, A. (1999), “Generating tests from UML specifications”,The Unified Modeling Language– Beyond the Standard: Proceedings of the 2nd International Conference, Lecture Notes in Computer Science 1723, Springer, 28–30 Oct. 1999, Fort Collins, USA: 416–429.Google Scholar
  27. Overhage, S. (2006), “Vereinheitlichte Spezifikation von Komponenten: Grundlagen, UnSCom Spezifikationsrahmen und Anwendung”, Dissertation, Universität Augsburg, Augsburg.Google Scholar
  28. Parnas, D. (1993), “Predicate logic for software engineering”, IEEE Transactions on Software Engineering, 19 (9): 856–862.CrossRefGoogle Scholar
  29. Parnas, D. (2001), “Software aspects of strategic defense systems”, in Hoffman, D.; Weiss, D. (eds), Software fundamentals: Collected papers by David L. Parnas. Addison Wesley, Boston, USA: 497–518.Google Scholar
  30. Penix, J.; Alexander, P. (1999), “Efficient specification–based component retrieval”, Automated Software Engineering, 6 (2): 139–170.CrossRefGoogle Scholar
  31. Pretschner, A.; Philipps, J. (2005), “Methodological issues in model–based testing”, in Broy, M.; Jonsson, B.; Katoen, J.; Leucker, M.; Pretschner, A. (eds), Model–based testing of reactive systems: Advanced lectures, Lecture Notes in Computer Science 3472, Springer, Berlin: 281–291.CrossRefGoogle Scholar
  32. Prieto–Díaz, R.;Freeman, P. (1987), “Classifying software for reusability”, IEEE Software, 4 (1): 6–16.CrossRefGoogle Scholar
  33. Skroch, O. (2007), “Validation of component–based software with a customer centric domain level approach”, Proceedings of the 14th annual IEEE international conference and workshop on the engineering of computer based systems, IEEE Computer Society, 26–29 Mar. 2007, Tucson, USA: 459–466.Google Scholar
  34. Szyperski, C.; Gruntz, D.; Murer, S. (2002). Component software: Beyond object–oriented programming, 2nd edn, Addison Wesley, London, UK.Google Scholar
  35. Turing, A. (1939), “Systems of logic based on ordinals”, Proceedings of the London Mathematical Society, s245 (1): 161–228.CrossRefGoogle Scholar
  36. Turowski, K. (2003), Fachkomponenten: Komponentenbasierte betriebliche Anwendungssysteme, Shaker, Aachen.Google Scholar
  37. Van Der Aalst, W.; ter Hofstede, A.; Kiepuszewski, B.; Barros, A. (2003), “Workflow patterns”, Distributed and Parallel Databases, 14 (1): 5–51.CrossRefGoogle Scholar
  38. Vincenzi, A.; Maldonado, J.; Delamaro, M.; Spoto, E.; Wong, W. (2003), “Component–based software: An overview of testing”, in Cechich, A.; Piattini, M.; Vallecillo, A. (eds), Component–based software quality: Methods and techniques, Lecture Notes in Computer Science 2693, Springer, Berlin: 99–127.Google Scholar
  39. Weyuker, E. (1982), “On testing non–testable programs”,The Computer Journal, 25 (4): 465–470.Google Scholar
  40. Weyuker, E. (1998), “Testing component–based software: A cautionary tale”, IEEE Software, 15 (5): 54–59.CrossRefGoogle Scholar
  41. Yellin, D.; Strom, R. (1997), “Protocol specifications and component adaptors”, ACM Transactions on Programming Languages and Systems, 19 (2): 292–333.CrossRefGoogle Scholar
  42. Yourdon, E. (1995), “When good enough software is best”, IEEE Software, 12 (3): 79–81.CrossRefGoogle Scholar
  43. Zaha, J. (2004), “Automated compatibility tests for business related aspects of software components”, On the move to meaningful Internet systems: Workshop proceedings, Lecture Notes in Computer Science 3292,Springer,25–29 October 2004, Agia Nepa, Cyprus: 834–841.Google Scholar

Copyright information

© Gabler Verlag | Springer Fachmedien Wiesbaden GmbH 2010

Authors and Affiliations

  • Oliver Skroch

There are no affiliations available

Personalised recommendations