This site is from a past semester! The current version will be here when the new semester starts.
TE3201 2020
  • Full Timeline
  • Week 1 [Jan 13]
  • Week 2 [Jan 20]
  • Week 3 [Jan 27]
  • Week 4 [Feb 3]
  • Week 5 [Feb 10]
  • Week 6 [Feb 17]
  • Week 7 [Mar 2]
  • Week 8 [Mar 9]
  • Week 9 [Mar 16]
  • Week 10 [Mar 23]
  • Week 11 [Mar 30]
  • Week 12 [Apr 6]
  • Week 13 [Apr 13]
  • SE Textbook
  • Programming Textbook
  • Admin Info
  • Forum
  • Instructors
  • Announcements
  • repl.it link
  • Files (slides, handouts etc.)
  • Project Info
  • Week 7 [Mar 2] - Summary

    SE Topics

    • [W7.1] Automated Testing of Text UIs

    • [W7.2] Integration Approaches

    • [W7.3] Code Quality

    • [W7.4] Refactoring

    • [W7.1] Automated Testing of Text UIs
    • [W7.1a] Quality Assurance → Testing → Introduction → What

    • [W7.1b] Quality Assurance → Testing → Regression Testing → What

    • [W7.1c] Quality Assurance → Testing → Test Automation → What

    • [W7.1d] Quality Assurance → Testing → Test Automation → Automated testing of CLI applications

    • [W7.2] Integration Approaches
    • [W7.2a] Implementation → Integration → Introduction → What

    • [W7.2b] Implementation → Integration → Approaches → Late and one time versus early and frequent

    • [W7.2c] Implementation → Integration → Approaches → Big-bang versus incremental integration

    • [W7.2d] Implementation → Integration → Approaches → Top-down versus bottom-up integration : OPTIONAL

    • [W7.3] Code Quality

       Coding Standards

    • [W7.3a] Implementation → Code Quality → Introduction → What

    • [W7.3b] Implementation → Code Quality → Style → Introduction

    • [W7.3c] Implementation → Code Quality → Style → What : OPTIONAL

       Readability

    • [W7.3d] Implementation → Code Quality → Readability → Introduction

    • [W7.3e] Implementation → Code Quality → Readability → Basic → Avoid long methods

    • [W7.3f] Implementation → Code Quality → Readability → Basic → Avoid deep nesting

    • [W7.3g] Implementation → Code Quality → Readability → Basic → Avoid complicated expressions

    • [W7.3h] Implementation → Code Quality → Readability → Basic → Avoid magic numbers

    • [W7.3i] Implementation → Code Quality → Readability → Basic → Make the code obvious : OPTIONAL

       Naming

    • [W7.3j] Implementation → Code Quality → Naming → Introduction

    • [W7.3k] Implementation → Code Quality → Naming → Basic → Use nouns for things and verbs for actions

    • [W7.3l] Implementation → Code Quality → Naming → Basic → Use standard words

       Unsafe Practices

    • [W7.3m] Implementation → Code Quality → Error-Prone Practices → Introduction

    • [W7.3n] Implementation → Code Quality → Error-Prone Practices → Basic → Don't recycle variables or parameters

       Code Comments

    • [W7.3o] Implementation → Code Quality → Comments → Introduction

    • [W7.3p] Implementation → Code Quality → Comments → Basic → Do not repeat the obvious

    • [W7.3q] Implementation → Code Quality → Comments → Basic → Write to the reader

    • [W7.4] Refactoring
    • [W7.4a] Implementation → Refactoring → What

    • [W7.4b] Implementation → Refactoring → When : OPTIONAL

    Tasks

    1. Submit weekly exercises
    2. Submit weekly project increment Level 8. Support Deadlines