Software Platforms Of Information and Communication Systems

Major: Information and Communication Systems
Code of subject: 6.126.02.E.058
Credits: 5.00
Department: Telecommunication
Lecturer: DSc. in enineering, Assoc. Prof. Demydov I.V.
Semester: 5 семестр
Mode of study: денна
Мета вивчення дисципліни: The purpose of teaching the discipline is to prepare students for the development (programming) and support of software platforms of distributed information and communication systems and networks, taking into account aspects of their security.
Завдання: The study of an educational discipline involves the formation of competencies in students of education: integral - the ability to solve complex specialized tasks and practical problems in the field of information systems and technologies, or in the learning process, characterized by the complexity and uncertainty of conditions that require the application of theories and methods of information technologies. general competences: 1. Ability to abstract thinking, analysis and synthesis; 2. Ability to apply knowledge in practical situations; 3. Ability to understand the subject area and professional activity; 4. Ability to communicate in a foreign language; 5. Ability to search, process and generalize information from various sources; 6. Ability to evaluate and ensure the quality of the work performed; 7. The ability to preserve and multiply moral, cultural, scientific values and achievements of society based on an understanding of history and patterns of development; professional competences: 1. Ability to analyze the object of design or functioning and its subject area; 2. Ability to design, develop, debug and improve system, communication and software and hardware of information systems and technologies, the Internet of Things (IoT), computer-integrated systems and system network structure, their management; 3. Ability to design, develop and use the means of implementing information systems, technologies and information communications (methodical, informational, algorithmic, technical, software and others); 4. Ability to evaluate and take into account economic, social, technological and environmental factors at all stages of the life cycle of information and communication systems; 5. Ability to use modern information systems and technologies (production, decision support, intelligent data analysis, and others), cyber security methods and techniques when performing functional tasks and duties; 6. Ability to select, design, deploy, integrate, manage, administer and support information systems, technologies and information communications, services and infrastructure of the organization; 7. Ability to select, design, deploy, integrate, manage, administer and support information systems, technologies and information communications, services and infrastructure of the organization; 8. Ability to manage and use modern information and communication systems and technologies (including those based on the use of the Internet); 9. Ability to conduct computational experiments, compare the results of experimental data and obtained solutions.
Learning outcomes: Learning outcomes of this discipline detail the following programmatic learning outcomes: • Apply the knowledge of fundamental and natural sciences, system analysis and simulation technologies, standard algorithms and discrete analysis in solving problems of designing and using information systems and technologies; • To use basic knowledge of computer science and modern information systems and technologies, programming skills, technology of safe work in computer networks, methods of creating databases and Internet resources, technology for the development of algorithms and computer programs in high-level languages ??using object- oriented programming to solve the tasks of designing and using information systems and technologies; • Conduct systematic analysis of design objects and substantiate the choice of structure, algorithms and methods of information transfer in information systems and technologies; • To argue the choice of software and hardware for the creation of information systems and technologies based on the analysis of their properties, designation and specifications, taking into account the requirements of the system and operating conditions; have skills of debugging and testing of software and technical means of information systems and technologies; • Demonstrate knowledge of the state-of-the-art information technology technologies, practical skills in programming and use of applied and specialized computer systems and environments for the purpose of their implementation in professional activities; • To substantiate the choice of the technical structure and to develop the corresponding software that is part of the information systems and technologies. As a result of studying a discipline, a specialist should know: • features of object-oriented and functional programming of telecommunication system platforms (infocommunication systems); • basic approaches to the creation of distributed service architecture, in particular, cross-platform; • The basics of developing, debugging and maintaining effective information communication software solutions based on the use of parallel programming languages ??in complex distributed infocommunication system platforms; • languages ??and programming algorithms; operating systems and network technologies; computer methods for collecting, processing, analyzing, transmitting and storing information; methods and means of distributed systems and parallel computing; • methods and means of information technologies; technologies and tools for the development of information systems in various sectors of the economy; • mathematical methods, computer models, modeling languages ??and software tools for practical tasks in this specialty; • Information technologies for solving tasks of classification, development, deployment and operation of various information systems and their components. A trained specialist should be able to: • choose the most effective software platform for implementing the necessary information communication solution based on efficiency / reliability criteria; • apply the parallel programming skills of distributed infocommunication platforms and cross-platform systems; • create distributed client-server solutions for infocommunication purposes; • Integrate heterogeneous technologies of system programming in a single infocommunication software platform using DBMS; • formulate new tasks and ideas in the field of intellectual information technologies, choose the appropriate directions and appropriate methods for their solution; • to apply methods and means of modern information technologies for design, development and deployment of application information systems in various fields; • apply methods and means of modern information technology for modeling, designing and developing communication systems, Web-oriented systems, smart systems, sensor systems, embedded systems, micro / nano-systems and their analogues; • deploy, administer and accompany information systems based on network technologies and the ability to develop technical documentation; • Develop functional environments using open systems, application programming interfaces, applications and applications with properties: expandability, scalability, interoperability, integrity and reliability.
Required prior and related subjects: Previous academic disciplines: Operating Systems; Algorithmization and programming; System programming. Associate and the following academic disciplines: Web-oriented information systems; Designing a subsystem of information security; Workshop on the development of software platforms for information and communication systems; Technologies of information systems programming.
Summary of the subject: Currently, hardware and software platforms and technologies are rapidly evolving, continuously emerging new and new opportunities. At the same time, there is a known tendency towards interoperability of platforms and compatibility of technologies. Within this discipline are considered the main trends of this development. Having studied the training material of this course, students will learn or add their knowledge about the existing major hardware and software platforms, architectural peculiarities of their implementation; learn or supplement their knowledge of core cross platform technologies (including CORBA, SOAP, COM / DCOM, .NET, EJB, JINI, Web technologies, etc.), IDL language, Enterprise Java Beans application technology, JNDI technology, network protocol LDAP The entire course is based on the consideration of specific examples. Within the limits of the actual lecture course the following questions are considered: • Major software platforms and technologies: main hardware and software platforms; processor architecture; Microsoft platform (Windows NT / XP / ...); cross-platform technologies. • Technologies: CORBA; SOAP; COM / DCOM and .NET 8; Enterprise Java Beans; JINI 10 • Web technologies; CGI scripts; special interpreted scripting languages. • Applets; Servlets • CORBA Technology: CORBA Technology Basics; CORBA architecture. • Language IDL: Link to IDL; Creation of CORBA-systems; examples. • Java Stored Procedures. • Appendix: Dictionary of terms for CORBA 71. • Enterprise Java Beans Technology. Part 1: History and the need for the emergence of EJB; general description of EJB architecture; session components; examples. • Enterprise Java Beans Technology. Part 2: Object components; examples; message-driven components. • Transaction Mechanism in EJB. • Security in EJB. • Example: limiting access to EJB methods. • JNDI and applications: JNDI. General information about JNDI. Example: use JNDI to access DataSource. • General information about LDAP. Example: user authorization system based on LDAP. • Features of installing and configuring software: installing the Oracle 9i database; Install Eclipse-WTP; install XDoclet. • Security of Java and .NET software platforms.
Опис: Main software platforms and technologies: main hardware and software platforms; processor architecture; Microsoft platforms (Windows NT / XP / ...); cross-platform technologies. Technologies: CORBA; SOAP; COM / DCOM and .NET 8; Enterprise Java Beans; JINI 10. Web technologies. CGI scripts; special interpreted script languages. Applets Servlets CORBA technology: basics of CORBA technology; CORBA architecture. IDL language: binding to IDL; creation of CORBA systems; examples Features of using Java Stored Procedures. Enterprise Java Beans technology. Part 1: the history and necessity of EJB; general description of the EJB architecture; session components; examples Enterprise Java Beans technology. Part 2: object components; examples; message-driven components. Mechanism of transactions in EJB. Security in EJB. JNDI and applications: JNDI. General information about JNDI. Example: Using JNDI to access a DataSource. LDAP overview. Example: user authorization system based on LDAP. Examples of developing Web applications in J2EE and .NET Security of Java and .NET software platforms.
Assessment methods and criteria: During the study, students conduct a laboratory workshop containing dozens of various practical-oriented tasks, the solution of which requires substantial theoretical training in accordance with this program. Evaluation of the results of laboratory work is provided as the main form of ongoing control. Blitz testing at lecture and laboratory classes is also foreseen. Evaluating the results of an individual research task by means of their protection allows students to be motivated in order to improve their quality and receive additional marks. Semester examinations are conducted in written form on the basis of the developed set of exam papers, which is approved at the corresponding meeting of the department.
Критерії оцінювання результатів навчання: During their studies, students perform laboratory practice, which contains dozens of various practical-oriented tasks, the solution of which requires significant theoretical training in accordance with this program. Evaluation of the results of laboratory work is provided as the main form of current control. Blitz testing during lectures and laboratory sessions is also planned. Evaluating the results of an individual research task by defending them allows you to motivate students with the aim of better learning and obtaining additional points. Semester examination control is carried out in writing on the basis of a developed set of examination tickets, which is approved at the appropriate meeting of the department. 6. Criteria for evaluating student learning outcomes Maximum score in points Current control (PC) Examination control Together for the discipline • Assessment of laboratory classes - up to 25 points; • Stream blitz testing – up to 10 points; • Evaluation of an individual research project (defense) - up to 20 points. Written together on a PC the oral component component 40 45 15 100
Recommended books: 1. Томпсон С., Чезарини Ф. Программирование в Erlang / Пер. с англ. Холомьёва А. О. - М.: ДМК Пресс, 2012. - 488 с.: ил. (Серия "Функциональное программирование"). 2. Armstrong J. Programming Erlang. Software for a Concurrent World. Dallas, TX: The Pragmatic Bookshelf, 2007. – 519 pp.: illustrated. 3. Фримен А. Pro .NET 4 Parallel Programming in C#. М.: Apress, 2010. – 328 c.: ил. 4. Neward T. Server-Based Java Programming. Grinwich: Manning, 2013. – 556 pp. 5. В.В. Кулямин. Технологии программирования. Компонентный подход. М.: Бином, 2014. – 464 с. 6. И. Соммервилл. Инженерия программного обеспечения. М.: Вильямс, 2002. 7. Г. Буч. Объектно-ориентированный анализ и проектирование с примерами приложений на C++. Второе издание. М.: Бином, СПб.: Невский диалект, 2000. 8. У. Ройс. Управление проектами по созданию программного обеспечения. М.: Лори, 2002. 9. А. Якобсон, Г. Буч, Дж. Рамбо. Унифицированный процесс разработки программного обеспечения. СПб.: Питер, 2002. 10. К. Бек. Экстремальное программирование. СПб.: Питер, 2002. 11. E. Yourdon. Modern Structured Analysis. Prentice Hall, 1988. 12. T. DeMarco. Structured Analysis and System Specification. A Yourdon Book, Yourdon Inc., NY, 1979. 13. C. Sarson, T. Gane. Structured Systems Analysis. Englewood Cliffs, NJ.: Prentice-Hall, 1979.