BSc in Computer Science / Бакалавр в Области Компьютерных Наук

Course Details

Course Information Package

Course Unit TitleSOFTWARE ENGINEERING PROJECT I
Course Unit CodeACSC389
Course Unit Details
Number of ECTS credits allocated3
Learning Outcomes of the course unitBy the end of the course, the students should be able to:
  1. To apply in practice previously learned software development knowledge and independently learn new skills to build a software system according to client requirements and deadlines. In addition the students develop research skills to identify and use appropriate software development tools and other resources.
  2. Build ability of students to extract requirements from the client, analyze and organize the information, formulate ideas and to communicate all the information and ideas effectively and fluently, in both written and oral forms using appropriate communication technologies.
  3. To describe the meaning and significance of agile software development of real systems based mainly on team work and prototyping. Through assigning respective team positions and rotating them throughout the development life cycle the students will understand the process of project management.
  4. Students will be able to formulate user requirements and convert them into software specifications applying modern methods and techniques as well as respective CASE tools.
  5. Having software specifications the students will be able to plan their next steps according to the software development life cycle, including implementation and testing.
Mode of DeliveryFace-to-face
PrerequisitesACSC223,ACSC382,ACSC383Co-requisitesNONE
Recommended optional program componentsNONE
Course Contents

Project and team organization: Objectives of the project. Team structure and roles and responsibilities of different team positions.

Software system development life cycle: Review of different models of SDLC. Transition to agile software development.

Problem domain and system components: Text description of the problem domain and expected functionalities of the system. Identification of the basic system components and necessary interfaces.

Use Case modeling: Identification of system functionalities and respective actors and use cases and their representation using Use Case modeling tools. Formal description of identified use cases.

Creating the information model of the system: Allocating use cases to the system components. Identification of objects supposed to implement each use case. Creating the system requirements specification document.

Recommended and/or required reading:
Textbooks
  • Teaching materials by the instructor
References
  • Students are expected to find and refer to a number of books, journals and materials from the Web, related to the relevant modules taught.
Planned learning activities and teaching methodsThe basic teaching style applied is learning by listening and discussions on detailed PowerPoint slides as teaching materials. In addition, the students should apply discovery learning through searching literature about assigned problems in a form of readings. Working in teams is compulsory requirement. Discussions and debates are strongly recommended and encouraged.
Assessment methods and criteria
Evaluation (including report and pr75%
Team members evaluation (individual25%
Language of instructionEnglish
Work placement(s)NO

 Печать  E-mail