<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Accordance with Professional Requirements and Didactic Units in the IT Sphere?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Igor Kaftannikov</string-name>
          <email>kaftannikovil@susu.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Vlada Zhernova</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Maria Lykova</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Basis: Sets of Knowledge and Skill Components in Russian IT Standard and E-ICT Framework</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>South Ural State University</institution>
          ,
          <addr-line>Chelyabinsk</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <fpage>50</fpage>
      <lpage>56</lpage>
      <abstract>
        <p>Currently, the requirements for professional knowledge and programmer skills in the IT sphere are determined by a variety of factors. There is a su ciently signi cant di erentiation of the companies requirements of di erent directions and majors for projects of the same subject and level. Consideration of many requirements by educational institutions of various types (academic, applied and additional) is almost impossible. There are international and Russian documents that de ne the levelled structuring of requirements heuristically. At the same time, the cumulative sets of components of professional knowledge and basis of requirements skills are not de ned clearly. The above, as well as the lack of level structuring of the components, makes it di cult to compare the sets of knowledge components, skills requirements and the sets of didactic units of knowledge and skills provided in the disciplines and courses of educational establishments. The paper discusses the grounds and model for accordance between the components of professional requirements with educational didactic units, and also examines the possible procedure for implementing such an agreement on the example of the Russian professional standard \Programmer" and Europeane-Competence-Framework-3.0 CEN CWA 16234-1 2014.</p>
      </abstract>
      <kwd-group>
        <kwd>Russian professional standard \Programmer" Europeane-Competence-Framework-3</kwd>
        <kwd>0 educational standards competences education in the IT- eld</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>but, as indicated above, the structuring of the components by levels is not
provided here. \Programmer" is the professional standard of the Russian Federation
and lists 15 labor functions and 67 components of knowledge for them, as well as
52 components of very general skills (programming languages, formalization and
algorithmization of tasks, databases, information security, etc.), as well without
any structuring of the components themselves.
It makes sense to consider the cumulative set of requirements for both
documents, with the capacity of 81 knowledge components and 60 skill components
given the trends and requirements of global sta and academic mobility. Also,
there is the change in the power of sets with the addition of requirements for
other documents or their localization. So the procedures for forming groups of
sets and mapping their requirements to educational programs must be su
ciently universal. Besides as the relations of order are not de ned on the sets
under consideration (this does not make sense), the level structuring of
competencies and requirements of the standard should be provided by the level
structure of their components. There is the correspondence in the level structure of
educational programs presented which are in the sequence of didactic units.</p>
      <p>De ne the objects under consideration, their grouping, properties and
relations for them to formalize the above procedures. We assume that EAC is the set
of knowledge components from the \European e-Competence Framework (e-CF)
version 3.0". Set: EAC = feACij g with AC is an aggregated component, e is
localization pre x (document reference), j is component index in competence or
standard, i is index of competence or standard.</p>
      <p>We assume RAC is set of aggregated components of knowledge from the
Russian standard \Programmer". Set: RAC = frACjig.</p>
      <p>Similarly, we assume the set of aggregated skills components EAS and RAS.
Set: EAS = feASjig, RAS = frASjig</p>
      <p>We assume IAC is sets of components from all considered documents will
be called integrated. Set: IAC = EAC [ RAC = feACji; rACjig or IAC =
fACmng = feACjig [ frACjig; IAS = EAS [ RAS = fASmng = feASji; rASjig =
feASjig [ frASjig.</p>
      <p>Individual analysis of each of ACmn, ASmn is not constructive, due to the fact
that the subject areas that are indistinctly de ned by the names of components
have many intersections due to their inclusion in the more global subject area
\Application Development, Programmer". (e.g.: programming languages,
languages, utilities and programming environments, software development
methodologies, etc.). Therefore, in our opinion, it is preferable to pre-decompose IAC,
IAS into subsets including aggregated components closest to the semantics of
functional purpose (subject domains), allowing to determine common metrics
for all ACmn, ASmn, included in them. We assume such sets as grouping: GAC,
GAS. Wherein: GACt 2 IAC, GASt 2 IAS.</p>
      <p>For example, GAC1 is a set including AC5, AC6:</p>
      <p>AC5
AC6</p>
    </sec>
    <sec id="sec-2">
      <title>Typical software metrics</title>
      <p>The main methods for measuring and evaluating the
characteristics of software
and de nes the subject area \Characteristics and metrics of software".</p>
      <p>GAC3 includes:</p>
      <p>AC6
AC7
AC8</p>
    </sec>
    <sec id="sec-3">
      <title>Methods and methods of formalizing tasks Methods and techniques for algorithmizing tasks Algorithms for solving typical problems, areas and methods of their application</title>
      <p>And de nes the subject area \Methods and techniques of algorithmizing and
formalizing tasks".</p>
      <p>Level structuring of directly grouping components (GAC, GAS) can be
performed only through the complex expert formation of the relations of order due
to the fuzzy de nition of the domain. At the same time a simpler method of
implementing the level structuring of each group can be the decomposition of
the group as a whole into components (call them CC, CS). Each of such de nes
is a much more speci c domain. For example, programming languages, software
metrics for which metrics can be formed according to certain procedures, which
can be either formal or pseudo formal, as required.
2</p>
      <p>METHODS AND PROCEDURES OF LEVEL
STRUCTURIZATION
Proposed methods and procedures are considered in the example of the CC
\Programming Languages". A component of this type is called composite, rstly, due
to the fact that set of the programming languages numbers several hundred,
(maximum - more than 700). At the same time, several new ones appear each
year. Naturally, there is also a degradation in the use (dying out) of languages
and the current group of leaders, which can be determined using ratings
generated by certain resources that are signi cant for the IT community and, at
the same time, using these ratings to form the metrics applicable to building
the level structure of components. For the programming languages component,
there are several most signi cant resources. In this case we used the following
three:
1. GitHub: https://github.com/, ranking by the number of lines of code;
2. TIOBE Programming Community Index: https://tiobe.com, the ranking on
the popularity of the language, expressed in the number of search queries;
3. The RedMonk Programming Language Rankings: http://redmonk.com, a
comprehensive rating.</p>
      <p>According to these sources (at the beginning of 2017) the following rating
table was compiled (Table 1) for the 15 most popular programming languages
for each resource:</p>
      <p>In all three ratings, the following fteen programming languages are present:
C, C++, C#, Java, JavaScript, PHP, Python, Ruby, Go. These languages are
used today in virtually all software technologies and platforms, while
programming most components of software systems.</p>
      <p>In our opinion this means that the veri cation of knowledge of programming
languages can be done on the basis of knowledge of the languages listed above,
since other (close) languages can be quite quickly mastered, with a good
knowledge of the above. Naturally, it is possible to specialize in languages as well as
dynamic changes in ratings and entries in the tops of popularity. This means
that the tiered system of knowledge components must also be easily
modernized, migratory and expandable. Secondly, the components of knowledge consist
not only of the current set of the most popular languages, but must take into
account their structure, properties, application features, and so on. in our opinion
the second component of knowledge components is quite fully re ected in good
(most popular) textbooks and monographs on languages. Similarly, the selection
of the textbooks themselves is simple enough to provide for popularity, taking
into account the opinion of experts.</p>
      <p>
        Assuming the use of 5 levels of structuring according to [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], we, used junior
/ middle level textbooks or reference type books. In our opinion these books
usually include knowledge and skills in programming languages corresponding
to the rst three levels of structuring, as they are designed to master the basic
capabilities of the language or present a review of it.
      </p>
      <p>Further, the reconciliation procedure included the selection of books by
analyzing the subjective estimates of users obtained using professional resources
and forums (habrahabr, tproger, geektimes, toster, github,
stackoverow, etc.). In order to simplify the analysis and publication so far we used only
one language (C ++) and four most popular Russian-language and translated
publications:</p>
    </sec>
    <sec id="sec-4">
      <title>1. Podbelsky V.V. C ++ language; 2. Straustrup B. The programming language C ++; 3. Prata S. C ++ Programming Language; 4. Eckel B. Philosophy of C ++.</title>
      <p>Obviously, similar procedures can be performed with respect to other
programming languages. Naturally, the number and list of publications can be
changed. For each book an enlarged table of contents (chapters) was taken for
consideration, which can be de ned as the didactic units of the corresponding
work program. The follow table of contents is a kind of information about a
language structured according to the complexity of mastering (\from simple to
complex").</p>
      <p>Expert structuring on 1-3 levels (and also, in some cases, for 4 levels) is
presented in Figure 2 for each source separately.</p>
      <p>The structuring of levels 4 and 5 seems more complicated because it involves
expanding the objects of the subject areas of languages, comparing their
relationships and relationships, as well as existing practical experience. The above
books do not include didactic units related to these levels. Therefore, to structure
the knowledge and skills of 4-5 levels, it is necessary to consider the literature
on specialized extensions / libraries / programming languages frameworks, since
the standard tools of any language are not su cient for writing projects other
than educational ones.</p>
      <p>It should also be taken into account that the structuring of knowledge of
levels 4 and 5 will be speci c for each language separately. If for the rst three
levels it is possible, in some approximation, to allocate opportunities and features
inherent in the whole group of languages, and thus abstract from the choice of
language, then for the 4th and 5th level, it is necessary to choose a speci c
technology (a set of libraries, a framework) evaluation.</p>
      <p>The choice of technology, in our opinion, should be based on the speci cs of
the project or subject area (web, mobile, desktop, etc.). This will allow more
fully assess to the knowledge of a specialist for a speci c application task.</p>
      <p>Also one should note one more di erence between 4 and 5 level. If level 4
assumes knowledge of both language and applied technology (libraries,
framework), then level 5 can be de ned as the level of development of the full-stack
project. Full-stack is development from scratch, a fully operational project. That
is, a specialist with level 5, apart from having knowledge of the language and
the chosen technology, is competent and capable of creating a workable project
from scratch using these technologies, and is also competent in managing the
team / developer department to create a project from scratch in this area using
the language and the chosen technology.</p>
      <p>Competence and the \Programmer" standard were taken by us as an
example of one of the broadest subject areas with a wide range of requirements, both
in terms of knowledge and skills. In this example, we hope to demonstrate the
principle possibility (using the proposed methodology and procedures) to create
a system of structured level components of GAC, GAS consisting of a
structured level system of knowledge and skills of the \lower" level that are part of
CK, CS and are the fundamental basis For a certain formalization (pseudo
formalization) of the requirements of the subject area of professional quali cation
(competence). Also, at the same time, the methodology of professional
requirements transformation into didactic units of the training, retraining, advanced
training programs and, accordingly, a certain, logically justi ed harmonization
of professional requirements and educational programs was proposed. It should
also be noted that expert opinions and approvals at all levels are supposed to be
conducted with the involvement of representatives of the business community,
for which the necessary procedures are determined at the computer department
of the SUSU and a corresponding portal is being developed.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Europeane-CompetenceFramework (</surname>
          </string-name>
          e-CF) http://www.ecompetences.eu/.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <article-title>2. Professional Standard of the Russian Federation http</article-title>
          ://www.rosmintrud.ru/docs/mintrud/orders/138/.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <source>version 3</source>
          .0; \Programmer";
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>