Software Engineering

Degree: BACHELOR
Duration: 4 years (8 semesters)
ECTS: 240
Language of instruction: Russian (English on request)


DESCRIPTION

The programme provides bachelor degree students with deep theoretical knowledge and practical skills in the field of research, development, introduction and support of software systems for different purposes.
In the course of study bachelor students acquire methods and tools of developing software products, acquire practical skills when designing complex software products, apply techniques of designing and controlling professional activity objects. Students should know standards of a software product life cycle, methods of planning and controlling resources of software life cycle, use modern technologies of software development.
Forms of in-class activity: lectures, laboratory classes, practical classes, review sessions, and students’ individual work.

AIMS

production and technological activity:
•    applying tools of software automated design, development, testing and support;
•    acquiring and applying methods and tools of controlling engineering activity and software life cycle processes;
•    using typical methods for software control, assessment and quality maintenance;
•    assuring compliance of the software under design and technical documentation with Russian and international standards, technical conditions, regulatory acts and enterprise standards;
•    interacting with the customer in the process of software development;
•    participating in the software development processes;
•    drawing up technical documentation on the results obtained.

organizational and management activity:
•    applying tools of software automated design, development, testing and support;
•    participating in drawing up technical documentation (work schedules, guidelines, plans, applications for materials, equipment, software) and reports;
•    planning and organizing their own work;
•    planning and coordinating work on software adjustment and support;
•    organizing work of small teams designing software;
•    drawing up technical and economic feasibility of software products.

service and operational activity:
•    applying tools of software automated design, development, testing and support;
•    putting software into operation (installation, parameter adjustment, adaptation, administration);
•    preventing and correcting software support in the course of operation;
•    teaching and counselling users on working with a software system;

research activity:
•    conducting research (experiments, observations, and quantity measurements) connected with professional activity objects (software products, projects, processes, methods and tools of software engineering);
•    modelling professional activity objects with the use of computer simulation tools;
•    describing the conducted research, preparing data for reviews and reports;

analytical activity:
•    conducting research (experiments, observations, and quantity measurements) connected with professional activity objects (software products, projects, processes, methods and tools of software engineering);
•    gathering and analyzing customer requirements to the software product;
•    formalizing the software product subject area on the results of  technical design and express checkup;
•    assisting the customer in evaluating and selecting software variants;
•    participating in drawing up commercial proposal to the customer, making a presentation and agreeing on contractual documents;

project activity:
•    designing software elements according to the given task;
•    creating software components (coding, adjusting, module and integrated testing);
•    measuring and refactoring the code according to the plan;
•    integrating the software component;
•    developing testing environment, creating testing scenarios;
•    developing and executing draft, technical and working documentation on the project;

teaching activity:
•    teaching and rating software systems users;
•    developing methods of teaching staff and preparing guidelines on using software systems.

LEARNING OUTCOMES

On successful completion of the course the student should be able to:
•    differentiate between the main concepts, principles, theories and facts connected with information science;
•    show understanding of computer architecture and systems;
•    demonstrate skills of using operational systems, networking technologies, tools of developing software interface, applying languages and methods of formal specifications, systems of database control;
•    use different technologies of software design;
•    apply concepts of software quality (reliability, safety, user-friendliness), including the role of people, processes, methods, tools and technologies of ensuring quality;
•    demonstrate the knowledge of standards and life cycle models;
•    apply classical concepts and management models in controlling projects;
•    use methods of developing requirements, evaluating risks, design, testing and support;
•    have a command of group dynamics, psychology and professional behaviour specific of software engineering;
•    control the project and its versions;
•    demonstrate an understanding of evolution concepts and models; evolutional activity from the point of view of both engineering and business (working with legacy systems, reverse engineering, reengineering, migration and refactoring).

EMPLOYMENT OPPORTUNITIES

The graduates can be employed in industrial enterprises, research organizations  and private firms engaged in research and development, introduction and support of software systems for different purposes.

On successful completion of the programme the graduates can continue their studies and take a master degree course.

Дата создания: 25.06.2019 16:07
Дата обновления: 25.06.2019 16:07