Skip to main content
Log in

Theory and practice of software factories

  • Software–Hardware Systems
  • Published:
Cybernetics and Systems Analysis Aims and scope

Abstract

In 1975, Academician Glushkov proposed the concept of conveyor production of software from ready-made programs. This paper presents new theoretical results and analyzes the development of this concept on the basis of examples of earlier and current software factories. This makes it possible to testify to fact of emergence of the following two basic production concepts: interface as a stub in transmitting and transforming given software and as an integrated environment for assembling various ready-made products in some programming languages. Over the years, they were constantly being improved and become the basis for a modern software factory including an assembly infrastructure with the use of human, technological, and tool resources for assembling ready-made programs. Within the framework of a system, new interface tools will be developed for heterogeneous programs to convert standard data types to those available in many programming languages.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Yu. V. Kapitonova and A. A. Letichevsky, Paradigms and Ideas of Academician V. M. Glushkov [in Russian], Naukova Dumka, Kyiv (2003).

    Google Scholar 

  2. V. M. Glushkov, E. M. Lavrishcheva, A. A. Stognii, et al., The Computer-Aided Programming System APROP [in Russian], Institute of Cybernetics of AS of UkrSSR, Kyiv (1976).

    Google Scholar 

  3. I. V. Sergienko, I. P. Parasyuk, and N. I. Tukalevskaya, Automated Data Processing Systems [in Russian], Naukova Dumka, Kyiv (1976).

    Google Scholar 

  4. V. M. Glushkov, Yu. V. Kapitonova, and A. A. Letichevskii, “Application of the method of formalized technical assignments to the design of data structure processing programs,” Cybernetics, Vol. 14, No. 6, 31–43 (1978).

    Google Scholar 

  5. I. V. Velbitskii, V. N. Khodakovskii, and L. I. Sholmov, Technological Complex for Software Design on ES and BESM-6 Computers [in Russian], Statistika, Moscow (1980).

    Google Scholar 

  6. E. M. Lavrishcheva and V. N. Grishchenko, Communication of Different-Language Modules in ES OS [in Russian], Finansy i Statistika, Moscow (1982).

    Google Scholar 

  7. M. I. Kakhro, A. P. Kal’ya, and E. Kh. Tyugu, A Programming Support System for ES Computers (PRIZ) [in Russian], Finansy i Statistika, Moscow (1982).

    Google Scholar 

  8. V. G. Volkhover and L. A. Ivanov, Industrial Software Development Methods [in Russian], Finansy i Statistika, Moscow (1983).

    Google Scholar 

  9. E. M. Lavrishcheva, Foundations of Technological Preparation for the Development of Applied DPS Software [in Russian], Prepr. V. M. Glushkov Institute of Cybernetics of ASU, Kyiv (1987).

    Google Scholar 

  10. G. I. Koval, T. M. Korotun, and E. M. Lavrishcheva, “An approach to solving the problem of intermodular and technological interfaces,” in: Interactive Systems: Intersect. Collected Articles of the Academy of Sciences of the USSR and Ministry of Higher Education of the USSR, Moscow (1988), pp. 121–136.

  11. E. M. Lavrishcheva, “Interface in programming,” Problemy Programuvannya, No. 2, 126–139 (2007).

  12. E. M. Lavrishcheva, “The problem of interoperability of heterogeneous objects, components, and systems: Approaches to solving it,” in: Proc. 7th Intern. Conf. UKRProg’2010, IPS NANU, Kyiv (2010), pp. 28–41.

  13. D. Castelli, L. Candela, P. Pagano, and M. Simi, “DILIGENT: A DL Infrastructure for supporting Joint Research,” in: IEEE 2005–CS Intern. Symp. Global Data Interoperability: Challenges and Technologies, IEEE Comput. Soc. (2005), pp. 56–99.

  14. E. M. Lavrishcheva, Formation and Development of Module-Component Software Engineering in Ukraine [in Russian], Prepr. 1, V. M. Glushkov Institute of Cybernetics of ASU, Kyiv (2008).

  15. E. M. Lavrishcheva and V. N. Grishchenko, Assembly Programming [in Russian], Naukova Dumka, Kyiv (1991).

    Google Scholar 

  16. E. M. Lavrishcheva, “Assembly programming: Some results and prospects,” Problemy Programuvannya, No. 2, 20–31 (1999).

  17. K. M. Lavrischeva, “Compositional programming: theory and practice,” Cybernetics and Systems Analysis, Vol. 45, No. 6, 1–12 (2009).

    Article  MathSciNet  Google Scholar 

  18. E. M. Lavrishcheva and V. N. Grishchenko, Assembly Programming: Foundations of the Industry of Software Products [in Russian], Naukova Dumka, Kyiv (2009).

    Google Scholar 

  19. E. M. Lavrishcheva, “Promising software engineering disciplines,” Visn. NANU, No. 9, 12–17 (2008).

  20. E. M. Lavrischeva, “Classification of software engineering disciplines,” Cybernetics and Systems Analysis, Vol. 44, No. 6, 791–796 (2008).

    Article  Google Scholar 

  21. L. M. Northrop, “Software SEI’s Product lineTenets,” IEEE Software, 19, No 4, 32–39 (2002).

    Article  Google Scholar 

  22. V. N. Grishchenko and Ye. M. Lavrishcheva, “Methods and tools of component programming,” Cybernetics and Systems Analysis, Vol. 39, No. 1, 33–45 (2003).

    Article  MathSciNet  MATH  Google Scholar 

  23. V. M. Grishchenko, “Method of object-oriented component design of software systems,” Problemy Programuvannya, No. 2, 113–125 (2007).

  24. G. Frege, Logic and Logical Semantics [Russian translation], Aspect Press, Moscow (2000).

    Google Scholar 

  25. E. M. Lavrishcheva, Programming Methods: Theory, Engineering, and Practice [in Russian], Naukova Dumka, Kyiv (2006).

    Google Scholar 

  26. C. A. R. Hoare, “Notes on data structuring,” in: Structured Programming [Russian translation], Mir, Moscow (1975), pp. 92–197.

  27. W. Turski, Computer Programming Methodology [Russian translation], Mir, Moscow (1981).

    Google Scholar 

  28. V. N. Agafonov, “Data types and data abstraction in programming languages,” in: Data in Programming Languages, Mir, Moscow (1982), pp. 267–327.

  29. A. V. Zamulin, Data Types in Programming Languages and Databases [in Russian], Nauka, Moscow (1987).

    Google Scholar 

  30. F. I. Andon, G. I. Koval, T. M. Korotun, E. M. Lavrishcheva, and Yu. V. Suslov, Fundamentals of Software Systems Quality Engineering [in Russian], Akademperodika, Kyiv (2007).

    Google Scholar 

  31. K. Czarnecki and U. Eisenecker, Generative Programming: Methods, Tools, and Applications [Russian translation], Izd. Dom Piter, Moscow–St Petersburg–Kharkov–Minsk (2005).

  32. K. M. Lavrischeva, “Generative programming of software systems and families,” Problemy Programuvannya, No. 1, 3–16 (2009).

  33. T. M. Korotun, Models and Methods of Software Systems Test Engineering under Limited Resources [in Ukrainian], Abstract of Ph.D. Thesis in Phys.-Math. Sciences, IK NANU, Kyiv (2005).

  34. O. O. Slabospitska, Models and Methods of Expert Assessment in Life Cycles of Software Systems [in Ukrainian], Abstract of Ph.D. Thesis in Phys.-Math. Sciences, IK NANU, Kyiv (2008).

  35. N. T. Zadorozhna, Controlled Document Circulation Design in Information-Management Systems [in Ukrainian], Abstract of Ph. D. Thesis in Phys.-Math. Sciences, IK NANU, Kyiv (2004).

  36. N. T. Zadorozhna and K. M. Lavrishcheva, Document Circulation Management in Educational Information Systems [in Ukrainian], Pedagogichna Dumka, Kyiv (2007).

    Google Scholar 

  37. L. P. Babenko, “Reuse problems in software engineering,” Cybernetics and Systems Analysis, Vol. 35, No. 2, 314–323 (1999).

    Article  Google Scholar 

  38. L. P. Babenko and K. M. Lavrishcheva, Foundations of Software Engineering: A Textbook [in Ukrainian], Znannya, Kyiv (2001).

    Google Scholar 

  39. K. M. Lavrishcheva, “Lines of software engineering development,” in: Proc. Intern. Conf. “50 years of the V. M. Glushkov Institute of Cybernetics of NAS of Ukraine,” Kyiv (2008), 336–345.

  40. J. Corbin, The Art of Distributed Applications: Programming Techniques for Remote Procedure Calls, Springer, Berlin (1992).

    Google Scholar 

  41. W. Emmerich, Engineering Distributed Objects: Methods and Tools for Programming Interoperable Objects in the Architectures of OMG/CORBA, Microsoft/COM, and Java/RMI [Russian translation], Mir, Moscow (2002).

    Google Scholar 

  42. I. Bei, Interaction of Polylingual Programs [Russian translation], Izd. Dom Williams, Moscow-St Petersburg-Kyiv (2005).

    Google Scholar 

  43. J. Greenfield, Software Factories [Russian translation], Izd. Dom Williams, Moscow-St Petersburg-Kyiv (2007).

    Google Scholar 

  44. S. Guckenheimer and J. I. Perez, Software Engineering with Microsoft Studio Team System, Adison-Wesley, Crawfordsville, USA (2006).

    Google Scholar 

  45. A. Meglio, M. E. Begin, P. Couvares, E. Ronchieri, and E. Takacs, “ETICS: The International software engineering service for the Grid,” in: J. of Physics Conf. Ser. 119 (2008), pp. 1–11.

  46. O. Takovitsky, Grid Computing Technology, Htm.-Grid/doc/Byte Magazine Online.

  47. K. M. Lavrischeva, Software Engineering [in Ukrainian], Akademperiodika, Kyiv (2008).

    Google Scholar 

  48. D. Carlson, Eclipse [Russian translation], Lori (2004).

  49. K. M. Lavrischeva, “Theoretical, application-specific, and organizational foundations of software factories,” in: Trans. Intern. Conf. TAARST-2010 (2010), pp. 151–160.

  50. G. I. Koval, A. L. Kolesnik, K. M. Lavrischeva, and O. O. Slabospitska, “Improving the process of developing families of software systems with the help of elements of flexible methodologies,” Problemy Programuvannya, Nos. 2–3, 261–270 (2010).

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to K. M. Lavrischeva.

Additional information

Translated from Kibernetika i Sistemnyi Analiz, No. 6, pp. 145–158, November–December 2011.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lavrischeva, K.M. Theory and practice of software factories. Cybern Syst Anal 47, 961–972 (2011). https://doi.org/10.1007/s10559-011-9376-5

Download citation

  • Received:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10559-011-9376-5

Keywords

Navigation