|
Week - 1
|
|
Course introduction, presentation of course structure and assessment method, the history of AI assisted software development and its place today, an overview of the impact of generative AI on the software industry. |
|
|
Week - 2
|
|
Fundamental concepts of large language models, tokens and context windows, temperature and sampling parameters, comparison of models designed for code generation. |
|
|
Week - 3
|
|
Introduction to developer assistants, code completion, inline suggestions, chat based help, installation of developer assistants and their integration into daily workflow. |
|
|
Week - 4
|
|
Fundamentals of prompt engineering, effective prompt design, the role, task and example triplet, context enrichment approaches, common prompt mistakes and their correction.
|
|
|
Week - 5
|
|
Context window management, working with long contexts, staged prompt design, constraint and format guidance, reuse of prompt templates.
|
|
|
Week - 6
|
|
Code generation scenarios, function and module generation, refactoring of existing code, comment and documentation generation, review and validation processes for generated code.
|
|
|
Week - 7
|
|
Debugging support, interpretation of error messages, prompt patterns for root cause analysis, test case generation and use of AI for unit test writing.
|
|
|
Week - 8
|
|
Midterm examination.
|
|
|
Week - 9
|
|
The retrieval augmented generation approach, embedding models, vector databases, AI assisted search applications for project documents and code base.
|
|
|
Week - 10
|
|
Agent based development environments, autonomous code generation and task completion, multi step workflows, division of labor between developer and agent, success and risk examples.
|
|
|
Week - 11
|
|
Integration of AI into frontend development processes, component generation, style suggestions, accessibility checks, use of AI for user interface prototypes.
|
|
|
Week - 12
|
|
Security and copyright issues, code leakage risk, license compliance, data privacy, corporate policies, evaluation of AI assisted contributions in open source projects.
|
|
|
Week - 13
|
|
Ethical principles of AI assisted development, responsible use, the concepts of bias and hallucination, validation of generated outputs, human oversight and accountability.
|
|
|
Week - 14
|
|
Project based application, development of a small scale frontend project with AI assistants, end to end execution of design, coding, testing and documentation processes, evaluation of results and general recap.
|
|