diff --git a/final/final.pdf b/final/final.pdf index f2f20e7..fef5dca 100644 Binary files a/final/final.pdf and b/final/final.pdf differ diff --git a/final/final.tex b/final/final.tex index 1be59fa..bca328a 100755 --- a/final/final.tex +++ b/final/final.tex @@ -40,11 +40,12 @@ Submitted to\\ Mr. Thomas M. Keating\\ Assistant Teaching Professor\\ School of Computer Science\\ +Carnegie Mellon University\\ Pittsbugh, PA 15289 \vspace{10 mm} -Prepared by\\ +Prepared by:\\ {\bf Aaron Gutierrez}\\ {\bf Shyam Raghavan}\\ Mitchell Plamann\\ @@ -61,13 +62,12 @@ Carnegie Mellon University\\ {\bf Abstract} \end{center} \par -This project is a proposal for C0 Debugger, a browser-based debugger for the -C0 programming language. -Students in Carnegie Mellon University's 15-122: Principles of Imperative -Computation and other classes learn to program in C0. -This project will allow students to better write C0 code by providing a -powerful and easy-to-use system for debugging their C0 programs. -This proposal goes over a detailed plan for how our team will create the C0 Debugger. +Finding problems in code is a difficult and time consuming task, one especially +difficult for programmers learning a new language. To help students more quickly +find bugs and understand how their programs run, we created an online debugger +for the {\tt C0} programming language. The {\tt C0} debugger enables users to +run programs in their browser and break apart the execution when they don't run +correctly. \end{titlepage} \pagenumbering{roman} @@ -81,6 +81,33 @@ This proposal goes over a detailed plan for how our team will create the C0 Debu \section{Approach} \section{Results} +\par +We originally aimed to evaluate our performance against user feedback from both +current and past students. However, due to setbacks in the early stages of +development we were unable to receive significant use feedback from students. +That said, we were able to gather feedback and support from current 15-122 +course staff. + +In terms of our original vision, the {\tt C0} debugger includes almost every +feature we planned to implement. Users can input code and either run the program +straight through or step through execution instruction by instruction. The only +significant feature that is not currently implemented completely is breakpoints. +Implementing breakpoints turned out to be significantly more difficult than we +anticipated, and given our limited time frame, we were unable to come up with an +adequate solution. We are currently working with Rob Simmons, 15-122 instructor +and maintainer for the {\tt C0} language standard, to extend the language to +support breakpoints more easily going forward. + +\begin{figure}[h] + \includegraphics[width=\linewidth]{new-gantt} + \caption{Revised project Gantt chart} + \label{gantt} +\end{figure} +Relative to our revised Gantt Chart (Figure \ref{gantt}) we hit every milestone +on time. Both the front-end and back-end teams completed their tasks by the end +of April, at which point we transitioned everyone to user testing, revisions, +and polishing. Both teams were able to recover from the lag reported in our +progress report to complete the {\tt C0} debugger. \section{Discussion} diff --git a/final/new-gantt.png b/final/new-gantt.png new file mode 100644 index 0000000..735dbfc Binary files /dev/null and b/final/new-gantt.png differ diff --git a/final/proposal.tex.project.vim b/final/proposal.tex.project.vim deleted file mode 100644 index 1d422b8..0000000 --- a/final/proposal.tex.project.vim +++ /dev/null @@ -1,26 +0,0 @@ -" ATP project vim script: Tue Apr 14, 2015 at 02:43 PM -0400. - -let b:atp_MainFile = 'proposal.tex' -let g:atp_mapNn = 0 -let b:atp_autex = 1 -let b:atp_TexCompiler = 'pdflatex' -let b:atp_TexOptions = '-synctex=1' -let b:atp_TexFlavor = 'tex' -let b:atp_auruns = '1' -let b:atp_ReloadOnError = '1' -let b:atp_OutDir = '/Users/shyam/Dropbox/cdb/proposal' -let b:atp_OpenViewer = '1' -let b:atp_XpdfServer = 'proposal' -let b:atp_Viewer = 'okular' -let b:TreeOfFiles = {} -let b:ListOfFiles = [] -let b:TypeDict = {} -let b:LevelDict = {} -let b:atp_BibCompiler = 'bibtex' -let b:atp_StarEnvDefault = '' -let b:atp_StarMathEnvDefault = '' -let b:atp_updatetime_insert = 4000 -let b:atp_updatetime_normal = 2000 -let b:atp_LocalCommands = [] -let b:atp_LocalEnvironments = [] -let b:atp_LocalColors = [] diff --git a/final/qualifications.txt b/final/qualifications.txt deleted file mode 100644 index 137dd72..0000000 --- a/final/qualifications.txt +++ /dev/null @@ -1,6 +0,0 @@ -Qualifications of Team Members - We are a team of sophomore CS majors who have varied experience in the field. - Suhaas Reddy has had two years of programming experience. He has also served as a course assistant for the School of Computer Science for three semesters which gives him an understanding of what computer science students may need from a debugging tool. This spring Suhaas competed in his first Hackathon where he and a group of three other students worked to create a webapp which eliminated unwanted Craigslist postings from view using machine learning, and sorted the rest based on specific attributes. He is well-versed in Python, C$_0$, and C. - Shyam Raghavan has had seven years of programming experience. He has served as a teaching assistant for the School of Computer Science for two semesters, specifically for 15-122, which makes him especially prepared to create a teaching tool for C$_0$, the main language used in the course.. In the past, Shyam has interned at Thumbtack, a west coast company which specializes in enabling consumers to hire experience professionals from a variety of fields. Shyam has experience with C, JavaScript, and C$_0$. - Aaron Gutierrez has had ten years of programming experience. He has also served as a teaching assistant for the School of Computer Science for two semesters, specifically for 15-122 just like Shyam. Aaron is very well-versed in JavaScript, C, and C$_0$. - Mitchell Plamann has had years of programming experience. He is very experienced in creating projects designed to . Mitchell has coded extensively in , , and .