Seneca logo CPR101 — Final Project

CP4P_IT Projects and Project Management Project Management PowerPoint slides
Final Project Overview  READ THIS FIRST ...just what it says
Bb group - MS team set up

Project Milestones and Details
Project Launch notes

Milestone deadlines
Project Management notes reference
Final-Project-Plan template
Project Management Planning
Programming Comments requirements
Programming Comments DEMO.mp4
Commenting Source Code
There are AI utilities which purport to generate source code comments. They are good at commenting code which gets no marks in this project. Programmers do not need comments explaining code -- programmers understand code they read. Professional programmers need comments to explain the why of the code. (See the requirements document at left.)
When an AI can absorb the entire SDLC of a project and read the mind of the programmer who wrote the code, then AI can write source code comments. Until then, it is a very human task.
fgetsDemo.c This is a string input program with examples of good comments.
Program demonstrates, and documents for students, how fgets() works.
This is essential knowledge in making good test cases for the project's source code, especially edge cases.
Programming Test Cases requirements
Final-Project-Test-Cases template for submission
module-test-cases template for development
Creating Test Cases

Compiling modules documentation

Dealing with C modules

command line compilers: gcc and MS cl

git basics documentation

git version control for Project Ver.2 & 3

Project Source Code.zip (archive)

Source code images and templates

Examples of creating a module
Teamwork
THE PLAN
additional explanatory notes

Notes

See your Blackboard course for project specifics, milestones (due dates), and details that may differ or not be available here.

Most people have negative experiences with academic group work because project managment is done more ad hoc ("to this") than by agenda ("to drive on, set in motion").

Doing any project by gut feel, with the best of intentions, according to "Why waste time planning when there is so much to do?", "If it's not on fire, it's not important." is adequate for small tasks and things that can wait like eating, sleeping, hygiene, and other people. With proper neglect, the second-last will take care of the very last. If it is called a project, it is not a small task; projects requirement management.

It is possible for academic group work to be successful and enjoyable. The investment up front in explicit project management pays dividends quickly. Doing the management is a marked component of this project. It's not just overhead. We pay you to do it. (Industry does not pay Project Managers six figure salaries to do busywork and waste other people's time.)

There is indeed a lot of documentation here. Why? Because it answers all the who, what, when, where, how, and why questions students have previously asked about similar projects. Because it is the level of documentation you will see at the implementation stage of professional projects. Everything about the project arrives all at once because the senior project manager (your prof) expects each programmer (you) to be their own personal project manager. Those who do not project manage themselves are coders, not programmers. The SDDS CPP & CPA program is for programmers.

Any project has far too much documentation to be absorbed all at once whether one is a first term student or a seasoned professional.
Projects are managed in progressive stages so Everything does not happen Everywhere All at Once.
How do you eat an elephant? One bite at a time.

Real-Life Problems of Programmers