Topic outline

  • General description

    This course aims to introduce students to the most important topics covered by software engineering, which is the general framework within which the development of software. There are many topics in this article, some of which may be the subject of an independent course. However, reviewing these concepts together, understanding their relationships and interacting with each other gives a holistic view and allows understanding of the mechanisms of software development and the techniques adopted in their management. Outcomes: - Understand the definition of software engineering, its importance and the foundations on which it is based, and define procedural programming models and basic activities in procedural programming, known as software engineering tools with computer aid. - Understand the concept of project management and the activities carried out within it (project planning, use of time tables in project management, risk management), identify quality management procedures and activities, and standards and standards used to support software quality. - Know how to organize the requirements document with a focus on the concepts of functional and non-functional requirements and the method of writing requirements and the modeling methods used to describe them (visual and non-visual). - Recognize the importance of change and maintenance of software and factors that affect their costs and identify the management of change and management of formations and versions and clouds.