# Paperwork related to EPQ ## P304 - Project Proposal Form ### Section 1 #### Metadata Learner Name: Zhongheng Liu Centre Name: Byron College? Teacher Assessor: Mr Charis Dedousis Proposed project title: Designing and implementing an open-source, privacy-oriented Internet Relay Chat (IRC) application with modern programming paradigms. Title or working title of project: ibid. #### Project objectives I would like to find out how enterprise-level text chatting applications such as WhatsApp and Telegam operate on the code infrastructure level by designing a similar application myself using open-source technologies. I would also like to learn, in the creation of this artifact, how several programming paradigms like object-oriented programming, functional programming, and annotation-based programming interact with each other to achieve best results. I would also like to find out to what extent can unit testing and integration testing coverage contribute to test-driven development (TDD) as a practice in enterprise-level software design. #### Role or responsibility in a group project Not a group project. ### Section 2 #### Reasons for choosing the project The development of this IRC chat application directly links to the field of computer science and similarly software engineering, both fields which I have a large interest in and would like to pursue in the future. In the past, I have taken less care than desirable into the security of my software and the usage of test-driven development through unit, integration, and penetration testing. Additionally, I would like to make use of, in the construction of my Java backend API, the principles defined in Erich Gamma et. al.'s book Design Patterns to create clean and maintainable software that can be refactored easily in the future through the construction of sufficient and robust data structures and paradigms. ### Section 3 #### Activities to be carried out during the project | Activities | Duration | | ----------------------------------------------------------------- | -------- | | Research into the use of the technologies employed in the project | idk | | | |