CS107/AC207 Project

Project Overview

Goal

You will develop a software library for a client, the teaching staff. The development of this library will leverage modern software development practices covered in the course. By the end of the semester, the client should be able to easily install and run your package.

Topic

The project topic is spectral analysis, which consists of the analysis of data obtained from publicly available sources currently used by professional astronomers to perform state-of-the-art research. Moreover, spectral data appears in many fields of science and engineering, and you are likely to encounter it in your professional careers. Your final project is to write a Python library. Your library is not required to have every module implemented; that would simply be too much for a single semester. However, your library should meet the basic project expectations outlined in the Software Requirements Specification (SRS).

Project Milestones

The following weight table is used for individual milestones of the project. The individual milestones make up the final project grade listed under the Grading section in the syllabus. Additional milestones will be included in the near future. The due date for the final milestone is December 14th 2023, 09:59 PM. The due date for the final milestone is December 17th 2023, 09:59 PM.

Milestone Due Total Points
Milestone 1 Thu, November 2nd, 09:59 PM 1
Milestone 2 Thu, November 9th, 09:59 PM 1
Milestone 3 Tue, November 14th, 09:59 PM 21
Milestone 4 Tue, November 28th, 09:59 PM 23
Milestone 5 Mon, December 11th, 09:59 PM 55
Milestone 6 (Final) Sun, December 17th, 09:59 PM 225 + 15X
Total 326 + 15X

Groups

You will work in groups of 4-5 students. You are free to choose your project partners but groups sizes must consist of the number of students mentioned before. Some members of the group will be stronger than others. It is expected that you work together and help each other as needed. This is an opportunity for less experienced coders to improve their skills by working with more experienced coders. Every person must contribute.

Expectations

This project encompasses several mandatory requirements, detailed under basic expectations and within Annex A of the Contract. Furthermore, the project includes supplementary elements, specified under additional expectations and delineated in Annex B of the Contract.

Basic Expectations

Additional Expectations

In addition to the basic requirements of the library, you must also extend your package with at least two additional modules.

You are more than welcome to pitch your own idea, which must be approved by the Teaching Staff.