csc 510-001, (1877)
fall 2024, software engineering
Tim Menzies, timm@ieee.org, com sci, nc state
Extend the project you selected from the last project.
Important notes:
One pdf with
Notes | evidence |
---|---|
Workload is spread over the whole team (one team member is often Xtimes more productive than the others… | |
but nevertheless, here is a track record that everyone is contributing a lot) | evidence in GH |
Number of commits | in GH |
Number of commits: by different people | in GH |
Issues reports: there are many | |
Issues are being closed | evidence in GH |
Docs: doco generated, format not ugly | in GH |
Docs: what: point descriptions of each class/function (in isolation) | |
Docs: how: for common use cases X,Y,Z mini-tutorials showing worked examples on how to do X,Y,Z | doc page entries |
Docs: why: docs tell a story, motivate the whole thing, deliver a punchline that makes you want to rush out and use the thing | |
Docs: short video, animated, hosted on your repo. That convinces people why they want to work on your code. | |
Use of version control tools | |
Test cases exist | dozens of tests and those test cases are more than 30% of the code base |
Test cases are routinely executed | E.g. travis-com.com or github actions or something |
Issues are discussed before they are closed | even if you discuss in slack, need a sumamry statement here |
Chat channel: exists | Link or screenshots |
Test cases: a large proportion of the issues related to handling failing cases. | If a test case fails, open an issue and fix it |
Evidence that the whole team is using the same tools: everyone can get to all tools and files | |
Evidence that the whole team is using the same tools (e.g. config files in the repo, updated by lots of different people) | |
Evidence that the whole team is using the same tools (e.g. tutor can ask anyone to share screen, they demonstrate the system running on their computer) | |
Evidence that the members of the team are working across multiple places in the code base | |
Short release cycles | (hard to see in short projects) project members are committing often enough so that everyone can get your work |
The file .gitignore lists what files should not be saved to the repo. See [examples]i(https://github.com/github/gitignore) | in GH |
The file INSTALL.md lists how to install the code | in GH |
The file LICENSE.md lists rules of usage for this repo | in GH |
The file CODE-OF-CONDUCT.md lists rules of behavior for this repo; e.g. see example | in GH |
The file CONTRIBUTING.md lists coding standards and lots of tips on how to extend the system without screwing things up; e.g. see example | in GH |
The file README.md contains all the following | in GH |
Video | 2min video of new functionality, showing a significant delta from prior. |
DOI badge: exists. To get a Digitial Object Indentifier, regiser the project at Zenodo. DOI badges look like this: | in GH |
Badges showing your style checkers | config files in GH showing your config, badges in README |
Badges showing your code formatters. | config files in GH showing your this formatter’s config, badges in README |
Badges showing your syntax checkers. | config files iin GH showing this checker’s config, badges in README |
Badges showing your code coverage tools | config files in GH, badges in README |
Badges showing any other Other automated analysis tools | config files in GH, badges in README |
One anti-patterns seen in the prior posters (and don’t let this happen to you):
Your poster: