DSA Faculty
API
← к списку преподавателей

Зыков Сергей Викторович

Высшая школа бизнеса

Публикаций
107
Языков
3
Наград
6
Конференций
0
Профиль Публикации (107) Курсы (10)

Профессиональные интересы

корпоративные информационные системыинтернет-порталы

Должности

  • ПрофессорВысшая школа бизнеса, Департамент бизнес-информатики

Био

  • · Начал работать в НИУ ВШЭ в 2008 году.
  • · Научно-педагогический стаж: 24 года.

Образование

  • 2017 · Доктор наук
  • 2007 · Ученое звание: Доцент
  • 2000 · Кандидат наук
  • 1994 · Специалитет: Московский государственный инженерно-физический институт (технический университет), специальность «Прикладная математика», квалификация «Инженер-математик»

Награды и поощрения

  • · Благодарственное письмо ректора НИУ ВШЭ (июль 2022)
  • · Персональная надбавка ректора (2016–2017)
  • · Надбавка за академическую работу (2013–2014, 2012–2013, 2011–2012, 2010–2011, 2009–2010)
  • · Надбавка за публикацию в международном рецензируемом научном издании (2022–2023, 2021–2022, 2019–2021, 2017–2019)
  • · Надбавка за регулярные публикации в международных рецензируемых научных изданиях (2023–2028)
  • · Надбавка за статью в зарубежном рецензируемом журнале (2014–2016)

Гранты и проекты

  • · Разработка программы учебной дисциплины на английском языке: Software Lifecycle Management ("Управление жизнненым циклом программного обеспечения)
  • · Разработка концепции научно-исследовательского семинара на английском языке: "Software Engineering: Development Management" (Программная инженерия: управление разработкой)
  • · Преподавание учебной дисциплины на английском языке: Information Systems Design ("Проектирование информационных систем", для Нижегородского филиала НИУ ВШЭ)
  • · Создание образовательного продукта на базе LMS: учебный курс Information Systems Design ("Проектирование информационных систем", для Нижегородского филиала НИУ ВШЭ

Идентификаторы исследователя

Публикации (107)

Message from Program Committee

2021 · CHAPTER · en

We are very pleased to welcome you to the First International Conference on Code Quality at the HSE University in Moscow, Russia. This special conference kicks off the new series, and therefore, we hope it launches a tradition to follow, and an opportunity for a rapid spin up. This ICCQ conference was organized by the HSE and a few leading IT innovative companies such Huawei and Yandex. We are happy that the ICCQ 2021 attracted such renowned experts as Jens Palsberg, Anders Møller, and David West, to mention a few. The papers were submitted from the world over, and choosing the best of best was a challenge even for our lofty jury. The conference attracted speakers and attendees from the USA, Europe, and Asia; therefore, this is truly an international event.

Трансформация функционально-потоковых параллельных программ в императивные

2021 · ARTICLE · ru

Функционально-потоковая парадигма параллельного программирования ориентирована на разработку параллельных переносимых программ. Исходный код функционально-потоковых программ транслируется в набор графов, отражающих информационные и управляющие зависимости. Основным способом их исполнения является интерпретация, что не позволяет эффективно выполнять вычисления на реальных параллельных вычислительных системах и ведет к низкой производительности. Для непосредственного выполнения программ на существующих вычислительных системах требуется использование специфических методов оптимизации и трансформации, учитывающих особенности как языка программирования, так и архитектуры исполнителя. В настоящее время наиболее распространенной является архитектура Фон-Неймана, параллельное программирование для которой в большинстве случаев осуществляется с использованием языков, поддерживающих императивный стиль и ориентированных на статическую систему типов. Для различных архитектур параллельных вычислительных систем существуют разнообразные подходы к написанию параллельных программ. Трансформация функционально-потоковых параллельных программ в императивные позволяет сформировать общий каркас из фрагментов императивного кода, непосредственно отображающих последовательные вычисления, который в дальнейшем может быть адаптирован к конкретной параллельной архитектуре. В работе рассматривается подход к выполнению такого типа трансформации, заключающийся в выделении фрагментов функционально-потоковых параллельных программ в качестве шаблонов, заменяемых впоследствии на эквивалентные фрагменты императивных языков. Предлагаемые методы трансформации позволяют порождать программный код, к которому в дальнейшем можно применять различные оптимизирующие преобразования, включая распараллеливание с учетом целевой архитектуры.

Mission-Critical Goals Impact onto Process Efficiency: Case of Aeroflot Group

2021 · CHAPTER · en

There is a certain problem of goal-articulation correctness and strategic management of big and mission-critical socio-technical systems (STS). Therefore, the goal of the work is a prove of hypothesis that correct semantic strategic goal definition is the utmost influenceable success factor for progressing STS. The concept of “goal-setting vertical” is defined in the work. Semantic analysis of goal-setting vertical in the case of “Aeroflot Group” with statistical study of practical dependence of regulatory mechanisms is provided. On that basis, the number of management conclusions and recommendations for mission-critical companies is formulated.

Eolang: Toward a New Java-Based Object-Oriented Programming Language

2021 · CHAPTER · en

Object-oriented programming (OOP) is one of the most common programming paradigms used for building software systems. However, despite its industrial and academic value, OOP is criticized for its high complexity, low maintainability and lack of rigorous principles. Eolang (a.k.a. EO) was created to solve the above problems by restricting its features and suggesting a formal object calculus for this programming language. This paper seeks to analyze the Eolang language and compare it to other OOP languages in order to develop the core features of this new language.

Affection of Java Design Patterns to Cohesion Metrics

2021 · CHAPTER · en

The idea of code quality assessment is well known for a long time; class connectivity metrics were proposed by community several years ago and have not become generally applicable practice in industrial programming. The objective of the study, part of which we present in this paper, is to critically analyze the metrics available for today: Are they completely unusable, or considering their specifics can be useful helpers for software specialists. Specifically, we try to answer the questions: Are there any connection between design patterns and cohesion metrics, and how these patterns affect metrics if they do.

Applicative-Frame Model of Medical Knowledge Representation

2021 · CHAPTER · en

The modern stage of digital transformation of healthcare has defined the creation and application of intelligent decision support systems as one of the main tasks. The basis of systems of this class is the knowledge base management system, in which medical knowledge is formalized and accumulated. The medical knowledge representation model should adequately correspond to the decision-making process. The authors propose such a model based on the data flow graph described by means of combinatorial logic. As a unit of knowledge storage in the developed applicative-frame model is proposed that contains input attributes and a target attribute, the relationship between which is set by the application function. The decision inference procedure is a reduction of the tree of applicative frames. Formal reduction rules are given.

Validating New Method for Measuring Cohesion in Object-Oriented Projects

2021 · CHAPTER · en

Class cohesion, understood as the degree of how tightly are bound or related its internal elements to one another, is often a critically important for quality assurance (QA) of object-oriented software. Typically, a low cohesive class contains disparate and/or isolated members; therefore, cohesion level is useful for detecting of poorly designed classes and ensuring faster and better system reconfiguration. There are over thirty different metrics to measure cohesion, based on class member analysis in terms of number and structure of attributes and methods. Utilizing class cohesion metrics can promote Java code static analysis quality, improve object-oriented programming practices, and suggest advanced and efficient ones. The jPeek tool with its library for inspecting objects in Java was developed by Huawei Technologies Co. Ltd. to achieve these goals [1]. The idea of code quality assessment is well known for a long time; class connectivity metrics were proposed by community several years ago and have not become generally applicable practice in industrial programming. The main goal of this study is to make a methodology for using cohesion metrics to analyze code that allows users to estimate their projects in the most appropriate way. During the study, each of the metrics was studied in detail, the influence of programming patterns on the result of the metrics was evaluated, and as a result a methodology for using the metrics to obtain the most reliable estimate was formulated.

Exploring the Eolang-Java Integration and Interoperability

2021 · CHAPTER · en

In recent times, the subject of interoperability has become very popular. In large-scale software applications development, it is a common practice to combine multiple languages in solving peculiar problems and developing robust solutions. The ability to combine multiple languages allows an easy migration of an existing project from one language to another or use existing libraries in another language. This makes interoperability a force to be reckoned with when developing new programming languages. The Eolang programming language is a new research and development initiative aimed at achieving true Object-Oriented Programming by having all components of the program as objects. As such, the construct and syntax of Eolang is vastly different from that of Java. This makes integration and interoperability between these two languages a challenging issue related to method/object naming conventions, keywords and operators, etc. In this paper we explore the potential of Eolang interoperability with Java by looking at the interoperability mechanisms of some other languages with Java, describe ways to overcome these challenges with Eolang and develop the solution. Specifically, we focus on the possibility to call Java code from Eolang while the semantics of both languages remain preserved. Our solution allows Java code to be called in Eolang through wrappers that turn Java classes and methods into Eolang Objects.

Software Development Crisis: Human-Related Factors’ Influence on Enterprise Agility

2021 · CHAPTER · en

Software development is critically dependent on a number of factors. These factors include techno-logical and anthropic-oriented ones. Software production is a multiple party process; it includes customer and developer parties. Due to different expectations and goals of each side, the human factors become mission-critical. Misconceptions in the expectations of each side may lead to misbalanced production; the product that the developers produce may significantly differ from what the customers expect. This misbalanced vision of the software product may result in a software de-livery crisis. To manage this crisis, the authors recommend using software engineering methods. Software engineering is a discipline which emerged from the so-called “software crisis” in the 1960s: it combines technical and anthropicoriented “soft” skills. To conquer the crisis, this chapter discusses general architecture patterns for software and hardware systems; it provides instances of particular industries, such as oil and gas and nuclear power production.

Введение в теорию программирования. Объектно-ориентированный подход : учебное пособие

2021 · BOOK · ru

Учебное пособие является вводным курсом в объектно-ориентированное программирование и теоретический фундамент программирования. Оно охватывает основные разделы программирования в приложении к объектно-ориентированным языкам программирования (теория вычислений, представление синтаксиса и семантики выражений, теория типов и др.). Издание проиллюстрировано примерами, связывающими фундаментальные понятия теории с особенностями программирования на языке C# (типизация, наследование, инкапсуляция, полиморфизм, динамическое связывание и др.) и языке SML («ленивые» вычисления, расширенный полиморфизм, выводимость типов и т.д.). Базовые аспекты профессионального программирования излагаются в сравнении языков C# и SML на единой платформе Microsoft .NET. Сравнительное изучение языков программирования «нового поколения» SML и C# дает возможность более глубоко проникнуть в суть процесса создания программных систем.

Курсы (10)