Here are some important things the course expects of you.
Use of AI
This course aims to get you started on AI-assisted SE in a way that does not compromise (and possibly enhances) your learning of basic SE skills.
A non-trivial amount of AI use is expected. Aim to use AI at least 20% of the time when doing course-related work.
The level of AI use in coding tasks can vary as follows -- based on how much manual work happens and at which point.
- No AI use. Hand-code everything. Use AI as a 'smart search engine' to ask general questions.
- Hand-code first, with AI's feedback: You hand-code the first version as if there is no AI. Ask AI to review. Refine based on AI's feedback.
- Hand-code to start, get AI to finish: You hand-code a minimal version, just a proof-of-concept. Get AI to strengthen it to a full-fledged version e.g., handle edge cases, add tests.
- Visualize and compare: Think of how you would do the task manually. Get AI to do it. Compare the solution you 'imagined' with the one AI produced.
- AI codes, you review: Get AI to do the task. Review it yourself fully, including the code, tests, behavior etc.
- Full AI: Get AI to do the task, fully, including the review. Only review the outcome (e.g., the feature behavior).
Which level to use? Depends on how much you already know, and your learning goals. Using AI more will save time and also teach you how to use AI for SE. Hand-coding will teach you basic SE skills.
Workload
As 70% of this course is based on CA (see grade breakdown), it can appear to be heavy. However, it is not expected that you will spend more time on this course than its .
- Note that the course contains more things than a typical student can do, so that even the strongest students have enough opportunities to learn as much as they wish to.
- This means it is perfectly OK if you don't have time to learn everything the course offers. Control your workload based on the time you spend on the course in a week, e.g., 1-1.5 days per week.
- We have provided a topic levels system (explained below) to guide you when prioritizing what to do.
Topic Levels
We use a topic levels system to indicate the progression of course components. Start with things that are rated level-1 and progress to topics at higher levels. Things rated level-4 are optional.
Levels for lesson topics (and textbook sections):
- Level-1 topics are essential to keep up with the course. We recommend that you learn these topics if you want to pass the course (i.e., up to a C grade).
- Level-2 topics can get you up to a B+.
- Level-3 topics can get you up to an A.
- Level-4 topics : OPTIONAL can push you beyond the limits of the course and help you reach a level above those who limit themselves to the course topics. They are not .
Topic levels for other things, e.g., admin info sections:
- The course uses a similar topic levels system to indicate the importance of other info in this website. i.e., information rated as level-1 is the most essential. Info rated level-4 is optional and can be ignored without affecting your ability to follow the course.