Skip to content

Commit

Permalink
Fixed deadlines and typos.
Browse files Browse the repository at this point in the history
  • Loading branch information
iebecker committed Nov 9, 2023
1 parent d92f160 commit e91a901
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 57 deletions.
23 changes: 4 additions & 19 deletions content/pages/project.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,10 @@ Date: 2023-11-08

### <a id="project-goal"></a><a class="anchor-link" href="#project-goal">Goal</a>

<!--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.-->

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.

### <a id="project-topic"></a><a class="anchor-link" href="#project-topic">Topic</a>

<!--The project topic is **spectral analysis**, which consists on the anaysis of data obtained from publicly available data that is 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 bound to face 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 SRS.-->

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).

### <a id="project-milestones"></a><a class="anchor-link" href="#project-milestones">Project Milestones</a>
Expand All @@ -29,14 +20,10 @@ The project topic is **spectral analysis**, which consists of the analysis of da
>
>| Milestone | Due | Total Points |
>|---------------------------------------------------------------|-------------------------------|--------------|
>| [Milestone 1]({filename}/project/milestone1/index.md) | Thu, November 9th, 09:59 PM | 2 |
>| [Milestone 2]({filename}/project/milestone2/index.md) | Fri, November 10th, 09:59 PM | 7 |
>| [Milestone 3]({filename}/project/milestone3/index.md) | Tue, November 14th, 09:59 PM | 14 |
>| **Total** | | 23 |
<!-- >| [Milestone 4]({filename}/project/milestone4/index.md) | | 2 | -->
<!-- >| [Milestone 5]({filename}/project/milestone5/index.md) | | 2 | -->
<!-- >| [Milestone 6]({filename}/project/milestone6/index.md) | | 30 | -->
<!-- >| [Final Milestone]({filename}/project/milestoneFinal/index.md) | Fri, December 14th, 09:59 PM | | -->
>| [Milestone 1]({filename}/project/milestone1/index.md) | Thu, November 2th, 09:59 PM | 1 |
>| [Milestone 2]({filename}/project/milestone2/index.md) | Thu, November 9th, 09:59 PM | 1 |
>| [Milestone 3]({filename}/project/milestone3/index.md) | Tue, November 14th, 09:59 PM | 21 |
>| **Total** | | 24 |


Expand All @@ -51,8 +38,6 @@ experienced coders. **Every person must contribute.**


## <a id="project-expectations"></a><a class="anchor-link" href="#project-expectations">Expectations</a>

<!--This project has a few non-negotiable expectations, which are outlined in **basic expectations** and in Annex A of the Contract. The project also has additional components, which are described in **additional expectations** and in Annex B of the Contract.-->
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.

### <a id="project-requirements"></a><a class="anchor-link" href="#project-requirements">Basic Expectations</a>
Expand Down
16 changes: 0 additions & 16 deletions content/pages/schedule.csv
Original file line number Diff line number Diff line change
@@ -1,16 +0,0 @@
1,"9/5, 9/7",Lecture 1: Unix and Linux,Lecture 2: Command line, ,
2,"9/12, 9/14",Lecture 3: Bash Scripting,Lecture 4: Version Control / git,Pair Programming Wk1(9/22),HW1: (9/12 - 9/27)
3,"9/19, 9/21",Lecture 5: git,Lecture 6: Python ,Pair Programming Wk2(9/29),
4,"9/26, 9/28",Lecture 7: Python / OOP,Lecture 8: Python,Pair Programming Wk3(10/06),HW2: (9/27 - 10/11)
5,"10/3, 10/5",Lecture 9: Python,Lecture 10: Databases I,Pair Programming Wk4(10/13)
6,"10/10, 10/12",,,,
7,"10/17, 10/19",,,,
8,"10/24, 10/26",,,,
9,"10/31, 11/2",,,,
10,"11/7, 11/9",,,,
11,"11/14, 11/16",,,,
12,"11/21, 11/23",,Thanksgiving Break,,
13,"11/28, 11/30",,,,
14,"12/5, 12/7",,Reading Period,,
15,"12/12,12/14",Final Exam Period ,Final Exam Period ,,

8 changes: 2 additions & 6 deletions content/project/milestone1/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Date: 2023-11-06
Slug: M1
Author: Fabian Wermelinger, Ignacio Becker

> **Due: Thursday, November 10th, 09:59 PM**
> **Due: Thursday, November 2th, 09:59 PM**
You will now begin your final project to develop a Python package for astronomical research. Please get together with your project group and complete the tasks below for Milestone 1.

Expand All @@ -13,19 +13,15 @@ You will now begin your final project to develop a Python package for astronomic
1. Find team members you would like to work with and establish a way to communicate.
2. Register your team on Canvas. Send an email to `[email protected]` with your team number and members. You should also create your team name, which will be used to represent your team.
3. Your team ID will be `team01` if you are `Project - Group # 1` or `team10` if you are `Project - Group # 10` and so on.
4. The project code will be hosted in _private_ repositories within the [CS107 organization](https://code.harvard.edu/CS107). A member of your team must create a private repository named after your team ID (e.g., `team01` for Team 1). After creating the repository, add all team members to it. The teaching staff will have automatic access and do not need to be added.


## Final Deliverables

1. Form a project team and communicate with the teaching staff.
2. Create a private team repository in CS107 organization.


## Grading breakdown

> | **Points** | **Task** |
> |------------|---------------------------------|
> | 1 | Team formation |
> | 1 | Creation of team repository |
> | 2 | **Total** |
> | 1 | **Total** |
14 changes: 3 additions & 11 deletions content/project/milestone2/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,29 +4,21 @@ Date: 2023-11-06
Slug: M2
Author: Ignacio Becker

> **Due: Tuesday, November 9th, 09:59 PM**

<!--You will read the (**mockup**) contract and identify the key points that you should develop. This will simulate a professional setting, and it is not binding for legal purposes.-->
> **Due: Thursday, November 9th, 09:59 PM**
You are required to review the mockup contract and identify the critical elements that need to be developed. This exercise is designed to emulate a professional environment and is strictly for simulation purposes; it carries no legal obligations.

## Software Requirements Specification (SRS)

We expect you and your team to read and understand the SRS. From the SRS, identify the API your library should present.
We expect you and your team to thoroughly read and comprehend the SRS. Based on the SRS, you are to identify the Application Programming Interface (API) that your library is required to provide.
We expect you and your team to read and understand the SRS. From the SRS, identify the API your library should present. We expect you and your team to thoroughly read and comprehend the SRS.

## Steps to complete

1. Every team member must sign the contract and upload the signed document into the root folder of the team's repository.
2. Within your project repository, create a folder named `API_draft`. Inside this folder, provide a README file detailing the modules, classes, and functions planned for inclusion to meet the SRS requirements. Use this phase to outline your pipeline and begin task allocation among team members. Don't try to be overly specific on the details, as this is likely to change as your code evolves.
3. Within the `API_draft` folder, also upload a schematic diagram that illustrates the modules and the API structure your library will present.

## Grading breakdown

> | **Points** | **Task** |
> |------------|---------------------------------|
> | 1 | Uploading the signed contract |
> | 4 | Describing the API |
> | 2 | Diagram |
> | 7 | **Total** |
> | 1 | **Total** |
20 changes: 15 additions & 5 deletions content/project/milestone3/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,33 +4,43 @@ Date: 2023-11-06
Slug: M3
Author: David Sondak, Fabian Wermelinger, Ignacio Becker

> **Due: Tuesday, October 4th, 11:59 PM**
> **Due: Tuesday, November 14th, 09:59 PM**
You will now further configure your group repository

## Software Requirements Specification (SRS)
Based on the SRS, you are to identify the Application Programming Interface (API) that your library is required to provide.

## Git Conventions

We expect all work from this point onward do be done on feature branches and merged into `master` or `main` via Pull Requests.

Try to work with different branches and "approve" each others pull requests by reviewing their code and then merge into your default project branch.


**You must work with your project Git repository. The teaching staff will frequently check the history of your project.**


## Steps to complete

1. Within your project repository, you must set up *two* workflows with [GitHub Actions](https://docs.github.com/en/actions). One workflow will be used for tests and the other for [code coverage](https://en.wikipedia.org/wiki/Code_coverage). You will need two `.yml` files in the `.github/workflows` directory in your project repository.
1. Create a private team repository in CS107 organization.
2. The project code will be hosted in _private_ repositories within the [CS107 organization](https://code.harvard.edu/CS107). A member of your team must create a private repository named after your team ID (e.g., `team01_2023` for Team 1). After creating the repository, add all team members to it. The teaching staff will have automatic access and do not need to be added.
3. Within your project repository, create a folder named `API_draft`. Inside this folder, provide a README file detailing the modules, classes, and functions planned for inclusion to meet the SRS requirements. Use this phase to outline your pipeline and begin task allocation among team members. Don't try to be overly specific on the details, as this is likely to change as your code evolves.
4. Within the `API_draft` folder, also upload a schematic diagram that illustrates the modules and the API structure your library will present.
5. Within your project repository, you must set up *two* workflows with [GitHub Actions](https://docs.github.com/en/actions). One workflow will be used for tests and the other for [code coverage](https://en.wikipedia.org/wiki/Code_coverage). You will need two `.yml` files in the `.github/workflows` directory in your project repository.
The `.yml` do not need to have meaningful declarations at this point but you should have at least the `name:` option and the `on:` option defined. See [this link](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions) for more details.
Make sure the `README.md` file at the root of your repo includes badges indicating whether your CI workflows are passing or failing. Your workflows are expected to be failing at this point. You should end up with a rendered `README.md` file that looks like this (workflows may *fail* or have *no status*):
![M1B_badges]({static}/pages/media/M1B_badges.png)
2. In the root of your project repo, you should create a directory called `docs`.
6. In the root of your project repo, you should create a directory called `docs`.
You can use this directory to organize documentation and tutorials for your final package. You will begin creating this documentation as part of the next milestone.

## Grading breakdown

> | **Points** | **Task** |
> |------------|---------------------------------|
> | 1 | Creation of team repository |
> | 4 | Describing the API |
> | 2 | Diagram |
> | 5 | Configuring test action |
> | 5 | Configuring coverage action |
> | 4 | Creating project structure |
> | 14 | **Total** |
> | 21 | **Total** |

0 comments on commit e91a901

Please sign in to comment.