| University | University of London (UOL) |
| Subject | CM2015 Programming with Data |
CM2015 Midterm Coursework Assignment
This coursework is worth 50 marks.
Chatbot Project
Now that you have had a chance to explore some techniques and tools in Python, it is time to start integrating them into your own chatbot project. This is a chance for you to build a practical application using your knowledge of Python and Data Programming.
Expectations
- Develop a functional and interactive chatbot without errors.
- Demonstrate a strong use of core Python concepts, including:
o Data structures (dictionaries, lists, tuples) to managing intents, patterns, and responses. o Using Conditional logic and loops appropriately to drive chatbot interaction.
o Implementing functional and modular programs breaking logic into clear, reusable functions with well-defined inputs and outputs. o Organising code into multiple files (code + data) or modules to enhance maintainability and readability. - Adopt software engineering best practices by keeping code modular and reusable using functions, classes (optional), and configuration files (e.g., JSON).
- Write test cases to verify and highlight the chatbot’s functionality and robustness.
- Include clear and consistent documentation using comments.
- Utilise Data Processing Techniques to clean and tokenise input data (e.g., user queries or pattern sets).
- Uses libraries like NLTK, re (regex) for pattern matching, and tokenisation.
- Implements basic NLP features, such as stop word removal, stemming/lemmatisation, or part-of-speech tagging.
- (Optional) Incorporates sentiment analysis, keyword extraction, or named entity recognition for more intelligent responses.
Submission Requirements
For the midterm coursework, you will submit the following documents on the submission page:
- A shareable link to the Jupyter notebook environment that has o A single Jupyter notebook file with chatbot demo (ipynb file) o Supplementary dataset (intents.json file). The dataset (intents.json) should not be more than 10MB in total size.
o A PDF report - Project ZIP file o ZIP file with all the files in the Jupyter notebook environment (ipynb, intents.json, PDF).
- An exported HTML file o Export the Jupyter notebook code into a HTML file and submit it.
- PDF report o A copy of the PDF report.
đč Need Help With CM2015 Programming with Data Coursework?
Native Singapore Writers Team
- 100% Plagiarism-Free Essay
- Highest Satisfaction Rate
- Free Revision
- On-Time Delivery
CM2015Â Marking rubric
The marking rubric includes a description of expectations and deliverables. Sections and corresponding marks given below.
| Sub
part |
Criteria | Marks awarded | Mark breakdown |
| 1 | Title/Domain of chatbot | 1 | Provide the title of chatbot in the Jupyter notebook |
| 2 | Main loop | 3 | Chatbot uses a main loop that takes in user input and terminates only when the user types âexitâ or âquitâ. |
| 3 | Data Structures | 3 | The data structures used to manage intents, patterns, and responses are compact and involve the use of Python dictionaries. |
| 4 | Code
organisation |
5 | The different chatbot components are specified as functions that are called from the main loop or other associated functions. This includes:
Correct Interaction between main loop and functions (argument passing and return calls). |
| 5 | Pattern recognition | 5 | The chatbot must use pattern recognition incorporating regular expression-based matching.
Students are expected to: |
|
|||
| 6 | Response generation | 5 | The chatbot must demonstrate diversity in response generation. The basic functionality involves retrieving one response for one input. Implement these additional techniques for more diverse responses:
|
| 7 | File usage | 5 | To promote modularity, reusability, and scalability, all chatbot data including intents, patterns, and responses must be stored and loaded from external JSON files. Key expectations include:
|
| 8 | Preprocessing | 5 | Expectations regarding text preprocessing techniques include:
|
| 9 | Other Advanced features | 3 | Any other advanced feature that you have added and features that you have added beyond lecture material. |
| 10 | Process
reflection |
5 | Discuss the week-by-week iterative development of your chatbot. What was the feedback you received? How did you work on the feedback to improve chatbot? What new features did you add? |
| 11 | Report | 5 | Report should cover the main aspects of chatbot such as:
|
| 12 | Code | 5 | Code should:
|
[END OF COURSEWORK ASSIGNMENT]
đč Trusted Programming with Data Assignment Help for UOL Students
CM2015 Programming with Data coursework requires students to design a fully functional Python chatbot while meeting strict expectations for code structure, data handling, and documentation. At the University of London, markers closely assess modularity, use of data structures, NLP techniques, testing, and reflective reporting, not just whether the chatbot runs. Managing intents, regex patterns, preprocessing, and multiple submission formats together can be demanding, which is why python programming assignment help becomes a practical option. At Singapore Assignment Help, we provide 100% human-written, AI-free, and plagiarism-free assignments aligned with official rubrics. For trust, you can explore our python programming course to see the academic standard delivered by our CM2015 Assignment Help specialists.
Looking for Plagiarism free Answers for your college/ university Assignments.
- CM2030 Graphics Programming Assignment Brief 2026 | UOL
- AVET205 Veterinary Anatomy & Physiology (VAP) Practical Assignment 2026
- S2559C Advanced Integrated Care Planning Graded Assignment 2026
- S1519C Integrated Care and the Singapore Health System Graded Assignment 2026
- S3589C Project on Communication and Health Coaching Graded Assignment 2026
- PSB5037EE Manufacture of Electronic Systems for Regulatory Compliance Assignment CW 1
- A2859C Pharmacotherapeutics I Graded Assignment Brief 2026
- ISIT332 Business Process Management Individual Assignment 1
- A3740C Complementary and Alternative Medicine Graded Assignment
- A3750C Dietary Supplements Graded Assignment Individual Report 2026
