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.
Similar content being viewed by others
References
Yu. V. Kapitonova and A. A. Letichevsky, Paradigms and Ideas of Academician V. M. Glushkov [in Russian], Naukova Dumka, Kyiv (2003).
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).
I. V. Sergienko, I. P. Parasyuk, and N. I. Tukalevskaya, Automated Data Processing Systems [in Russian], Naukova Dumka, Kyiv (1976).
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).
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).
E. M. Lavrishcheva and V. N. Grishchenko, Communication of Different-Language Modules in ES OS [in Russian], Finansy i Statistika, Moscow (1982).
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).
V. G. Volkhover and L. A. Ivanov, Industrial Software Development Methods [in Russian], Finansy i Statistika, Moscow (1983).
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).
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.
E. M. Lavrishcheva, “Interface in programming,” Problemy Programuvannya, No. 2, 126–139 (2007).
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.
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.
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).
E. M. Lavrishcheva and V. N. Grishchenko, Assembly Programming [in Russian], Naukova Dumka, Kyiv (1991).
E. M. Lavrishcheva, “Assembly programming: Some results and prospects,” Problemy Programuvannya, No. 2, 20–31 (1999).
K. M. Lavrischeva, “Compositional programming: theory and practice,” Cybernetics and Systems Analysis, Vol. 45, No. 6, 1–12 (2009).
E. M. Lavrishcheva and V. N. Grishchenko, Assembly Programming: Foundations of the Industry of Software Products [in Russian], Naukova Dumka, Kyiv (2009).
E. M. Lavrishcheva, “Promising software engineering disciplines,” Visn. NANU, No. 9, 12–17 (2008).
E. M. Lavrischeva, “Classification of software engineering disciplines,” Cybernetics and Systems Analysis, Vol. 44, No. 6, 791–796 (2008).
L. M. Northrop, “Software SEI’s Product lineTenets,” IEEE Software, 19, No 4, 32–39 (2002).
V. N. Grishchenko and Ye. M. Lavrishcheva, “Methods and tools of component programming,” Cybernetics and Systems Analysis, Vol. 39, No. 1, 33–45 (2003).
V. M. Grishchenko, “Method of object-oriented component design of software systems,” Problemy Programuvannya, No. 2, 113–125 (2007).
G. Frege, Logic and Logical Semantics [Russian translation], Aspect Press, Moscow (2000).
E. M. Lavrishcheva, Programming Methods: Theory, Engineering, and Practice [in Russian], Naukova Dumka, Kyiv (2006).
C. A. R. Hoare, “Notes on data structuring,” in: Structured Programming [Russian translation], Mir, Moscow (1975), pp. 92–197.
W. Turski, Computer Programming Methodology [Russian translation], Mir, Moscow (1981).
V. N. Agafonov, “Data types and data abstraction in programming languages,” in: Data in Programming Languages, Mir, Moscow (1982), pp. 267–327.
A. V. Zamulin, Data Types in Programming Languages and Databases [in Russian], Nauka, Moscow (1987).
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).
K. Czarnecki and U. Eisenecker, Generative Programming: Methods, Tools, and Applications [Russian translation], Izd. Dom Piter, Moscow–St Petersburg–Kharkov–Minsk (2005).
K. M. Lavrischeva, “Generative programming of software systems and families,” Problemy Programuvannya, No. 1, 3–16 (2009).
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).
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).
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).
N. T. Zadorozhna and K. M. Lavrishcheva, Document Circulation Management in Educational Information Systems [in Ukrainian], Pedagogichna Dumka, Kyiv (2007).
L. P. Babenko, “Reuse problems in software engineering,” Cybernetics and Systems Analysis, Vol. 35, No. 2, 314–323 (1999).
L. P. Babenko and K. M. Lavrishcheva, Foundations of Software Engineering: A Textbook [in Ukrainian], Znannya, Kyiv (2001).
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.
J. Corbin, The Art of Distributed Applications: Programming Techniques for Remote Procedure Calls, Springer, Berlin (1992).
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).
I. Bei, Interaction of Polylingual Programs [Russian translation], Izd. Dom Williams, Moscow-St Petersburg-Kyiv (2005).
J. Greenfield, Software Factories [Russian translation], Izd. Dom Williams, Moscow-St Petersburg-Kyiv (2007).
S. Guckenheimer and J. I. Perez, Software Engineering with Microsoft Studio Team System, Adison-Wesley, Crawfordsville, USA (2006).
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.
O. Takovitsky, Grid Computing Technology, Htm.-Grid/doc/Byte Magazine Online.
K. M. Lavrischeva, Software Engineering [in Ukrainian], Akademperiodika, Kyiv (2008).
D. Carlson, Eclipse [Russian translation], Lori (2004).
K. M. Lavrischeva, “Theoretical, application-specific, and organizational foundations of software factories,” in: Trans. Intern. Conf. TAARST-2010 (2010), pp. 151–160.
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).
Author information
Authors and Affiliations
Corresponding author
Additional information
Translated from Kibernetika i Sistemnyi Analiz, No. 6, pp. 145–158, November–December 2011.
Rights 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
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10559-011-9376-5