Project

The course contains two individual projecs, and one team project.

Personal Knowledge Base (PKB) (individual project): Use a coding agent to design, implement, and maintain a personal knowledge base with entries in markdown format following Google’s OKF standard. You will use and enhance your PKB throughout the semester to store and take notes on articles, tools, blog posts, YouTube videos, etc. that you find interesting. You will use a markdown viewer such as Obsidian to view and author your PKB content. This project will have an “own it” flavor: once you have the basic functionality set up to meet project requirements, you can design your own enhancements, visualizations in Obsidian, automated workflows (e.g., to have agents grab, summarize, and categorize articles), etc. to make the application fit your needs and whims. Note that this same infrastructure can be used to organize study notes, etc. from other classes and for your research.

Develop a “Tic-Tac-Toe on Steroids” Game (individual project): Use a coding agent to enhance an existing Tic-Tac-Toe game with new features including automated play, a database backend for keeping scores, and graphical front-end for improved look-and-feel, etc. Tasks in the project will explore a variety of agentic software engineering features such as using different technology stacks, migrating the implementation of the game from one language to another, writing different forms of specifications, automating testing, etc. Classroom lectures will walk through artifacts and transcripts from the original agent-base development of the codebase that you are given as a starting point.

Develop a Software Engineering Assurance Framework for an industry-oriented model-based development framework (team project): The KSU SAnToS Research group has developed the HAMR model-based development tool chain for building high-assurance systems. HAMR is being used by several industry groups as part of the DARPA PROVERS program on the INSPECTA project lead by a team from Collins Aerospace. As discussed earlier in the course, enabling agents to efficiently understand the structure of a large code of models, code, and associated artifacts with accompanying traceability information is key to effective agentic development. The Neo4J Graph Database infrastructure is widely used in knowledge base applications. In this project, you will use agentic software engineering capabilities to develop a knowledge graph representation of HAMR projects, focusing on their traceability properties. This will involve designing and specifying appropriate Neo4J database schemas, using the Cypher query language to query the knowledge base, adding MCP interfaces to your Neo4J database so that you can have agents query and maintain the database, developing a variety of visualizations for the knowledge in the database.