Please note! Course description is confirmed for two academic years, which means that in general, e.g. Learning outcomes, assessment methods and key content stays unchanged. However, via course syllabus, it is possible to specify or change the course execution in each realization of the course, such as how the contact sessions are organized, assessment methods weighted or materials used.

LEARNING OUTCOMES

On the course you learn to analyze customer problems and to design solutions that satisfies customer and user needs. You also learn to describe the essence of the key software engineering activities and how they relate to each other. After the course, you are able to compare modeling methods, assess their applicability for different software engineering activities, and select appropriate design practices for the development team. Additionally, you are able to apply a set of design and modeling methods in practice.

Credits: 5

Schedule: 10.09.2020 - 26.11.2020

Teacher in charge (valid 01.08.2020-31.07.2022): Lassi Haaranen

Teacher in charge (applies in this implementation): Lassi Haaranen

Contact information for the course (valid 07.08.2020-21.12.2112):

cs-c3180@aalto.fi

CEFR level (applies in this implementation):

Language of instruction and studies (valid 01.08.2020-31.07.2022):

Teaching language: English

Languages of study attainment: English

CONTENT, ASSESSMENT AND WORKLOAD

Content
  • Valid 01.08.2020-31.07.2022:

    We approach software engineering and development from two perspectives: (1) mapping out the problem and (2) designing a software solution for it. Requirement engineering and domain modeling are used to outline the the customers' problem. For designing and modeling the solutions, software architecture design and software testing are discussed. Emphasis is also placed on good teamwork practises and communication.

  • Applies in this implementation:

    To be a successful developer, you need more skills than just being a competent programmer. This course focuses on skills in software design and modeling. Specifically, we focus on the four important activities of software development that are 

    • requirement engineering
    • domain modeling
    • software architecture design
    • software testing.

    Through lectures, workshops, and a group project split into four assignments, you learn to analyze customer problems and design software solutions to satisfy customer's and end users needs.


Assessment Methods and Criteria
  • Valid 01.08.2020-31.07.2022:

    Group assignments and examination.

  • Applies in this implementation:

    Maximum points for the course is 60. Points are awarded as follows:

    Mandatory attainments

    • Max. 24 points from the oral exam, 10 points minimum required to pass
    • Max. 36 points from the group project, 15 points minimum required to pass.

    • The required and minimum points are equally split between the four assignments:
      • Max 9 points from each assignment of the group project, 3.75 required to pass each
      • Mandatory peer review for each group assignment. Student teams are required to read, write and discuss (in follow-up workshops) work done by maximum of two peer groups each assignment. Half a point is deducted from final score for missing reviews or follow-up workshops.

    Optional attainments

    • 6 extra points from active participation during lectures (individual)
      • First concept map exercise grants 0,5 points and serves as diary entry for first lecture
      • 8 following lectures (diary and lecture participation) grant 0,5 points each, in total of 4 points
      • Second concept map exercise grants 1,5 points and serves as diary entry for recap lectures.
    • 1 extra point for participating in course feedback survey.

Workload
  • Valid 01.08.2020-31.07.2022:

    Study sessions (lectures): 30h, Workshops and individual work: 40h, Group assignments: 60h

  • Applies in this implementation:

    The estimations are based on a student finishing the mandatory and optional attainments.

    Study sessions (30h)
    • 11 study sessions, each 1,5 hours long.
    • Studying the reading material for each session
    Workshops and individual work (40h)
    • 10 workshops, each 2 hours long
    • peer feedback preparation for 4 workshops 
    • individual learning diary and concept map exercises
    • preparing for the examination
    Group project (60 h)
    • 4 assignments that will be done iteratively
    • 15 hours per assignment per student  
    • The estimation includes the final (fifth) delivery of all the four assignments.

DETAILS

Study Material
  • Valid 01.08.2020-31.07.2022:

    Material of the study sessions. Articles related to the study sessions and assignments.

  • Applies in this implementation:

    Material of the study sessions introduces the core concepts and methods of the four important activities

    • requirements engineering
    • domain modeling
    • software architecture design
    • software testing
    The purpose of the study session material is to help students understand the essence of these four software development activities.

    Articles related to the study sessions and four assignments provide more detailed information about
    • requirements engineering
    • domain modelling
    • software architecture design
    • software testing
    • team work 
    The purpose of the articles is to help students gain a deeper understanding about these important activities and support them in applying design and modelling methods in practice. The list of the articles can be found in MyCourses.

SDG: Sustainable Development Goals

    3 Good Health and Well-being

    4 Quality Education

    5 Gender Equality

    12 Responsible Production and Consumption

    13 Climate Action