Abstract:
Theory of scheduling and project planning is widely applied in diverse scientific and industrial areas. To effectively solve application-specific problems, it is necessary to state right objectives as well as to take into account a lot of factors, such as task execution models, precedence relationship between tasks, resource limitations, directive deadlines, working calendars, conditions for financial and logistics support of project tasks, specific spatio-temporal requirements, et al. Therefore, the development of scheduling applications becomes more and more complicated purposes, risky and costly ones. In this paper, we present an innovative object-oriented Scheduling Application Framework (SAF) designed to simplify and accelerate the software development processes. The presented SAF framework is a system of C++ classes that implement basic abstractions of the scheduling theory as well as provide ready-to-use components to build target applications of typical scheduling functionality. As a general-purpose mathematical library, the framework enables to set and solve so-called RCPSP problems (Resource-Constrained Project Scheduling Problem) in extended statements peculiar to popular project management systems. Branch and bound and linear dispatching algorithms have been implemented and included as a part of the framework. A dozen of heuristics has been implemented and has been provided by the framework too to solve large-scale problems more effectively. Thereby target application developers can adjust the application solver properly taking into account application-specific issues and making the search of suboptimum schedules more effective. As a software toolkit the framework enables developers to implement own components and to configure target applications in unified and flexible manner. Due to object-oriented paradigm, multi-layer architecture and class package organization, the application development takes relatively small efforts. The SAF framework has been successively validated during development of a software application intended for visual modeling and planning of projects under diverse spatial-temporal, resource and finance constraints. Due to achieved advantages, the framework looks promising for development of both sophisticated multi-disciplinary systems and effective domain-specific scheduling applications.
Keywords:
scheduling theory, project planning and scheduling, software application framework.
Bibliographic databases:
Document Type:
Article
Language: Russian
Citation:
A. S. Anichkin, V. A. Semenov, “Object-oriented framework for software development of scheduling applications”, Proceedings of ISP RAS, 29:3 (2017), 247–296
\Bibitem{AniSem17}
\by A.~S.~Anichkin, V.~A.~Semenov
\paper Object-oriented framework for software development of scheduling applications
\jour Proceedings of ISP RAS
\yr 2017
\vol 29
\issue 3
\pages 247--296
\mathnet{http://mi.mathnet.ru/tisp231}
\crossref{https://doi.org/10.15514/ISPRAS-2017-29(3)-14}
\elib{https://elibrary.ru/item.asp?id=29438849}
Linking options:
https://www.mathnet.ru/eng/tisp231
https://www.mathnet.ru/eng/tisp/v29/i3/p247
This publication is cited in the following 2 articles:
Artem E. Sobin, “Developing a graph-based algorithm for optimising scheduling and network planning as part of subway construction subject to limited resources”, Nadežnostʹ, 25:1 (2025), 19
A. S. Anichkin, S. V. Morozov, V. A. Semenov, O. A. Tarlapan, “Evolyutsionnaya razrabotka sistemy vizualnogo planirovaniya proektov na osnove ob'ektno-orientirovannogo karkasa”, Trudy ISP RAN, 29:5 (2017), 239–256