Projects
Feb'20 - Apr'20
PedalPals: Bicycle Rental and Marketplace Software
Database Management Systems, Prof. Shamik Sural
Domain: Database Management Systems, Software Engineering, Web Development, App Development
- As a part of the project, we developed a full-stack website and android application using SQLite database for renting and selling bicycles in a campus.
- We modelled the database for the system using Entity-Relationship Model and designed the relational database schema using the ER-diagram.
- The software was divided into two broad categories: admin and user. For the user, we included functionalities such as renting a bicycle, registering a bicycle and putting it up for rent, buying and selling bicycles, user and cycle feedback systems, etc. For the admin, we included functionalities such as viewing feedback and taking action on necessary users/cycles, setting up discount coupons for users, viewing customer queries, etc.
- The website was built using HTML, CSS, Bootstrap frontend and PHP backend. The android app was built using Java android programming
Aug'19 - Nov'19
Scalable Methods for Representing Large Scale Graphs
Scalable Data Mining, Prof. Sourangshu Bhattacharya
Domain: Network Embeddings, Scalable Data Representation, Community Detection
- The intent of the project was to be able to rerpresent large scale graphs using minimum dimensions. As a part of the project, we developed a hierarchical community-detection algorithm for low-dimensional network embedding of large scale graphs.
- We constructed the hierarchy tree for the graph using Louvain community detection method and established inter-community links at each level. Each node belonged to a specific community at each level of the hierarchy.
- We used the Node2vec method at each level to generate level-specific community embeddings. All the nodes belonging to a specific community at a certain level get the same embedding. Nodes belonging to neighbouring communities get similar embeddings.
- We finally combined the hierarchical embeddings for each node to get the overall network embedding. As a result, nodes belonging to common communities would have similar embeddings.
Aug'19 - Nov'19
Exploring Secure Monitor Calls in Trusted Execution Environments (TEE)
Advances in Operating Systems Design, Prof. Sandip Chakraborty
Domain: Kernel Programming, Secure Kernels, Interrupt Handling
- We assembled and built a secure OP-TEE OS on Raspberry Pi and developed a trusted server-client system on the OS.
- We booted Linux with OP-TEE using u-boot and developed interrupt handlers for managing Secure Monitor Calls in OP-TEE
- The project has a future pathway in military applications for secure transferring of acoustic signals across secure OS.
Mar'19
Simulation of Virtual Memory using Demand Paging
Operating Systems, Prof. Indranil Sengupta
Domain: C++ Programming, Operating Systems
- Simulated operation of Virtual Memory Management using demand paging with translation-lookaside buffer (TLB)
- Developed the page-fault handling routine using Free Frame List and local page replacement with LRU criteria
July'18 - Dec'18
NASA Space Voyage Linked Data
Knowledge Modelling and Semantic Technologies, Prof. Plaban Kumar Bhowmick
Domain: Semantic Web, RDF, RDFS, OWL, Web Scraping
- Developed knowledge graphs using semantic web technologies to represent information about NASA space missions
- Used RDF, RDFS and OWL concepts to add semantics to the knowledge graph and make it usable for applications
July'18 - Nov'18
Tiny-C to RISC Compiler and RISC Processor
Compilers, Computer Organisation and Architecture
Domain: Compilers, Verilog Programming, Processor
- Constructed a compiler to translate a code with a subset of C primitives to an RISC assembly language
- Developed a modular single-cycled RISC Processor using Verilog on Xilinx ISE and Block RAMs for data memory