Difference between revisions of "BSc: Software Systems Design"

From IU
Jump to navigation Jump to search
Line 22: Line 22:
   
 
* Data Structures and Algorithms I
 
* Data Structures and Algorithms I
* Data Structures and Algorithms II
+
* Data Structures and Algorithms II (merge with [this_course https://eduwiki.innopolis.university/index.php/BSc:IntroductionToProgrammingII.S22])
 
* Discrete Math/Logic
 
* Discrete Math/Logic
 
* Introduction to Programming I
 
* Introduction to Programming I

Revision as of 12:54, 29 November 2021

Software Systems Design

  • Course name: Software Systems Design
  • Course number: XYZ
  • Knowledge area: Software Development Fundamentals, Software Engineering, Systems Fundamentals

Administrative details

  • Faculty: Computer Science and Engineering
  • Year of instruction: 3rd year of BS
  • Semester of instruction: 1st semester
  • No. of Credits: 4 ECTS
  • Total workload on average: 144 hours overall
  • Class lecture hours: 2 per week
  • Class tutorial hours: 2 per week
  • Lab hours: 2 per week
  • Individual lab hours: 0
  • Frequency: weekly throughout the semester
  • Grading mode: letters: A, B, C, D

Prerequisites

Course outline

The need for building large scale Software has been increased in the last two decades. Nowadays, Software engineers are less likely to design data structures and algorithms from scratch. They are required to build systems from library and framework components. The Software System Design course aims to teach students the m ain concepts related to the construction of software systems. The course covers technical topics such as concepts of design for complex systems, object oriented programming, UML notation, among others.

Expected learning outcomes

After taking the course, students will

  • understand and apply object-oriented design techniques;
  • develop and evaluate software systems;
  • express the specifications and design of an application using UML;
  • specify parts of the design using a formal design language (OCL);
  • have experience designing medium-scale systems with patterns;
  • have experience testing and analysing software.

Expected acquired core competences

  • Formal Models and Semantics
  • Requirements Engineering
  • Software Design
  • Software Engineering
  • Software Evolution

Textbook

  • Grady Booch, Robert Maksimchuk, Michael Engle, Bobbi Young, Jim Conallen, and Kelli Houston. 2007. Object-Oriented Analysis and Design with Applications, Third Edition (Third ed.). Addison-Wesley Professional.
  • Hans-Erik Eriksson, Magnus Penker, Brian Lyons, David Fado, UML 2 Toolkit, OMG Press, 2004

Reference material

  • Lecturing and lab slides and material will be provided

Required computer resources

Students should have laptops with basic software for reading and editing document.

Evaluation

  • Course Project (30%)
  • Mid-term Exam (30%)
  • Final Exam (30%)
  • Class and lab participation (10%)