====== Software Project Management ======
===== News =====
* **January 14th, 2022**: The **3rd Sprint Review** will take place on **24th January 2022** from 11:00 to 13:00 in **Team Lab**
* **December 23th, 2021**: The lecture of today has been held only in presence due to connection issues
* **December 5th, 2021**: The lecture of tomorrow is cancelled
* **November 22nd, 2021**: The lecture of November 25th is moved from Team Lab to AB3
* **November 16th, 2021**: The lecture of November 17th will be held by Prof. Fornari (Laboratory) in AB1 while the lecture of November 18th will be held by Prof. Polini (Theory)
* **November 15th, 2021**: The lecture of November 19th is moved to LA1
* **November 7th, 2021**: The lecture of tomorrow November 8th is cancelled
* **October 29th, 2021**: Today's lecture is moved to LA1
* **October 26th, 2021**: The October 27th lesson is cancelled as at the same time there are the L-31 and LM-18 graduation ceremonies
* **October 20th, 2021**: The lecture of tomorrow October 21st is moved to LB1 in the second building.
* **October 19th, 2021**: In order to permit the participation to the Hacktoberfest all the MSc classes are suspended on October 20th.
* **October 15th, 2021**: Laboratory Lecture of today is moved to LA1.
* **October 5th, 2021**: The lectures for the laboratory part of the course will start on October 14th.
* **October 2nd, 2021**: I would like to inform the students that Monday 4th lesson is scheduled at 9am and not at 11am.
* **September 27th, 2021**: I would like to inform the students that next lesson is scheduled for October 4th, 2021.
===== General Info =====
**Teachers**:
* [[http://docenti.unicam.it/pdett.aspx?ids=N&tv=d&UteId=626&ru=RD|Andrea Polini]]
* [[https://docenti.unicam.it/pdett.aspx?ids=N&tv=d&UteId=1179&ru=PROFCONTR|Fabrizio Fornari]]
**Course objectives and contents (ESSE3)**
* [[https://didattica.unicam.it/Guide/PaginaADErogata.do?ad_er_id=2018*N0*N0*S1*13532*8959&ANNO_ACCADEMICO=2020&mostra_percorsi=S|Software Project Management - A.Y. 2020/2021]]
**Lessons schedule**:
* Monday 11am-1pm (Theory)
* Wednesday 9am-11am (Theory)
* Thursday 9am-11am (Lab)
* Friday 11am - 1pm (Lab)
**Students Office hours**:
* Prof. Polini: Wednesday 5pm-6pm at my office (Polo Lodovici building) - please announce yourself via e-mail in advance
* Prof. Fornari: Immediately after each lesson or by requesting an appointment via e-mail.
**Communication channels**
* App YoUnicam channel: #SPM
* Relevant information will be inserted also in the news section above
----
===== Study material =====
**Course Slides**
* {{ :didattica:ay2122:spm:introduction.pdf |Course introduction}}
* {{ :didattica:ay2122:spm:intro2agile.pdf |Agile generalities}}
* {{ :didattica:ay2122:spm:scrum.pdf |SCRUM}}
* {{ :didattica:ay2122:spm:xp.pdf |eXtreme Programming (XP)}}
* {{ :didattica:ay2122:spm:bruf.pdf |Command and control - generalities}}
* {{ :didattica:ay2122:spm:activity.pdf |Managing activities}}
* {{ :didattica:ay2122:spm:riskmgmt.pdf |Risk management}}
* {{ :didattica:ay2122:spm:costs.pdf |Project cost prediction}}
* {{ :didattica:ay2122:spm:monitoring.pdf |Project execution monitoring}}
* Mock exam
* {{ :didattica:ay2122:spm:mockexam.pdf |Text of the Mock Exam}}
* Spreadsheet for the Mock Exam: {{ :didattica:ay2122:spm:esercitazione.ods |.ods}}, [[https://docs.google.com/spreadsheets/d/1FrtBpECRUBWa_Vq7JqcCU3K0XF8n5OrBOFuNpMqExVM/edit?usp=sharing| on-line version]]
**Laboratory Slides**
* {{ :didattica:ay2122:spm:lab_1_-_introduction_scrum.pdf | Introduction and Scrum}}
* {{ :didattica:ay2122:spm:lab_2_-_git_first_part.pdf | Git First Part}}
* {{ :didattica:ay2122:spm:3_-_git_second_part.pdf | Git Second Part}}
* {{ :didattica:ay2122:spm:4_-_project_planning_.pdf | Planning & Projects First Part}}
* {{ :didattica:ay2122:spm:5_-_maven_part_1.pdf | Maven First Part}}
* {{ :didattica:ay2122:spm:6_-_project_planning_-_part_2_.pdf | Planning & Projects Second Part}}
* {{ :didattica:ay2122:spm:lab_7_-_testing_junit.pdf | Testing & JUnit}}
* {{ :didattica:ay2122:spm:lab_8_-_project_time_team_status_check.pdf | User Stories Check}}
* {{ :didattica:ay2122:spm:lab_9_-_junit_maven_selenium.pdf | JUnit & Maven & Selenium}}
* {{ :didattica:ay2122:spm:lab_10_-_project_time_team_status_check.pdf | Sprint 0 to Sprint 1}}
* {{ :didattica:ay2122:spm:lab_11_-_maven_project_tomcat_jenkins.pdf | Maven Project & Tomcat & Jenkins}}
* {{ :didattica:ay2122:spm:lab_12-_project_time_team_status_check.pdf | Project Status Check}}
* {{ :didattica:ay2122:spm:lab_13_-_jenkins_part_2.pdf |Jenkins Part 2}}
* {{ :didattica:ay2122:spm:lab_14_-_project_time_team_status_check.pdf | Sprint 1 to Sprint 2}}
* {{ :didattica:ay2122:spm:lab_15-_acceptance_test_headless_browsers.pdf | Headless Browsers & Acceptance Test with Jenkins}}
* {{ :didattica:ay2122:spm:lab_16_-_project_time_team_status_check.pdf | Sprint 2 Status Check}}
* {{ :didattica:ay2122:spm:lab_17_-_documentation_github_actions_docker.pdf | Documentation, GitHub Actions, Docker}}
* {{ :didattica:ay2122:spm:lab_18_-_project_time_team_status_check.pdf | Sprint 2 to Sprint 3}}
* {{ :didattica:ay2122:spm:lab_19_-_database_in_ci_cd.pdf | Database in CI/CD}}
* {{ :didattica:ay2122:spm:lab_21_-_course_overview.pdf | Course Overview}}
**Lessons**
Theory:
* [[https://unicam.webex.com/webappng/sites/unicam/recording/383e7461fc2110399e5f0050568260ce|September 20th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/bbda1f8f0711103abf8f005056826359|October 4th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/a31088a908a3103ab4ef00505682a964|October 6th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/14bec7190ca2103aabef00505682d685|October 11th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/434250bc0e23103ab77d005056826359|October 13th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/92d939631221103abe7f00505682b8c5|October 18th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/2623152b17a3103abdaf00505682d685|October 25th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/56421f461eac103abefe005056821190|November 3rd, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/1c3a19ad242d103ab3970050568221e0|November 10th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/8eb944e8282b103aaeef005056820bc1|November 15th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/a9817c6e2a75103abbf9005056823e96|November 18th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/d17460642dab103a87cf005056827143|November 22nd, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/893cb6ce2f2c103a9be700505682331e|November 24th, 2021]] - {{ :didattica:ay2122:spm:activityexercise.xlsx |Exercise on resources allocation}}
* [[https://unicam.webex.com/webappng/sites/unicam/recording/5c5cd206332b103ab3fb005056826359|November 29th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/e683130434ac103abfff00505682b8c5|December 1st, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/d842f4833e2b103ab7a400505682337e|December 13th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/34a1d0ec3fad103ab37f005056825359|December 15th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/0c709b1c43ac103abe8f005056822abc|December 20th, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/02a99de2452e103aabff00505682dd73|December 22nd, 2021]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/4beec17b542c103abf77005056826359|January 10th, 2022]]
* [[https://unicam.webex.com/webappng/sites/unicam/recording/6153cfa055ae103ab3bf005056828c5a|January 12th, 2022]]
Lab:
* [[https://docs.google.com/forms/d/e/1FAIpQLSdsRrooafPFRHEmIx18r1JG78ECpiPNACMETE73Mez9_bRRSQ/viewform?usp=sf_link |Questionnaire]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=8d8e172e542031f511ff56918c4dc129|October 14th, 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=22e722945df1c81801519860428e40c3|October 15th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=a5d2605bf4fbbff1d2efaa04bff68563|October 21st 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=ad90014b3efced64743b7eca2de934f6|October 22nd 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=340e0139785dfa0c93fdf8180672b74e|October 28th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=e3188302f2db334d44318eb3aef99fb0|October 29th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=3f99231441958af9b1e3746243a158a8|November 4th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=7e97ab6541db38cbb388d28639192a08|November 5th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=a452fee44a383b18bf71cc58c427dc93|November 11th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=e5f19c0888d16a62e12b70faa14ecece|November 12th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=c770236627b78e16ae516318e09dcaef|November 17th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=c5e42cf10a29629c499e9549db1f1b6c|November 19th 2021]]
* The lecture of November 25th 2021 about Jenkins Part 2 has not been recorded by mistake (sorry for that)
* [[https://unicam.webex.com/unicam/ldr.php?RCID=724add1147605ea074dc9e4961f5cbe3|November 26th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=dec0f46267fe5471bb7893254c737d34|December 2nd 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=91ee03516626d0cda8f1e6082c5f4cff|December 3rd 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=99ff5cf69cd8e39dc7cbf7905b6eddae|December 9th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=2631af362a3b2185f137769841a08325|December 10th 2021]]
* [[https://unicam.webex.com/unicam/ldr.php?RCID=2268de723b8458bc689781f6ef85b34d|December 16th 2021]]
* The lecture of December 23th 2021 about the course overview has not been recorded due to connection issues
**Textbooks**
* **[HC]** Bob Hughes, Mike Cotterell - [[http://www.mheducation.co.uk/9780077122799-emea-software-project-management|Software Project Management]], 5th Ed. - McGraw-Hill, 2009
* **[SG]** Andrew Stellman, Jennifer Greene - [[http://shop.oreilly.com/product/0636920025849.do|Learning Agile - Understanding Scrum, XP, Lean and Kanban]] - O'Reilly Media, 2015
**Reference books**
* **[IS]** Ian Sommerville - [[https://www.pearsonhighered.com/program/Sommerville-Software-Engineering-10th-Edition/PGM35255.html|Software Engineering]], 10th Ed. - Pearson Education, 2016
* **[RP]** Roger Pressman, Bruce Maxim - [[http://highered.mheducation.com/sites/0078022126/information_center_view0/index.html|Software Engineering: A Practitioner's Approach]], 8th Ed. - McGraw-Hill, 2015
* **[ML]** Mitch Lacey - [[http://www.pearsoned.co.uk/bookshop/detail.asp?item=100000000579661|The SCRUM Field Guide]], 2nd Ed. - Pearson 2016.
* **[RW]** Robert K. Wysocki - [[https://www.wiley.com/en-it/Effective+Project+Management:+Traditional,+Agile,+Extreme,+7th+Edition-p-9781118729311|Effective Project Management]], 7th Ed. - John Wiley and Sons 2014.
----
===== Exam =====
** Project**
**Exam Dates A.Y. 2021/2022**
* Wednesday, February 2nd and 23rd, 2022 -- at 9am, room AB1
* Wednesday, June 15th, 2022 -- at 9am, room AB1
* Wednesday, July 13th, 2022 -- at 9am, room AB1
* Wednesday, September 7th and 28th, 2022 -- at 9am, room AB1
* Wednesday, February 1st and 22nd, 2023 -- at 9am, room AB1
**Exam rules**:
* students have to manage and develop a software project over the duration of the semester with intermediate checkpoints (meeting with the teacher). The group will have to adopt and simulate the practices typical of a SCRUM team. The group will have to apply the methodologies and the tools explained during lecture hours.
* {{ :didattica:ay2122:spm:spm-projects-proposal.pdf | Projects Proposal}}
* [[https://docs.google.com/spreadsheets/d/1tOdMoBKzBjcHGQI3ACmrkkcaFbc2TuPfgmFQM2jL9BU/edit?usp=sharing|Groups Definition]]
* [[https://docs.google.com/spreadsheets/d/1Ysy8JWuopAN_Tt_PnjVwlaUK0K3rWcnyAh2K-mdoEMY/edit?usp=sharing|Project Evaluation Schema]]
* The course also foresees a final written exam in which the student will have to answer questions and solve exercises on the different parts of the course. The exam will last around 2 hours. Students willing to improve their final mark can ask for an additional oral examination.
** Exam Results **
* [[https://docs.google.com/spreadsheets/d/1sffC75ee01k0HRFd11Bb8kqqaIaXV2xYYxDB0iSTkjE/edit?usp=sharing|February 2nd exam results and solutions]] - [[https://drive.google.com/file/d/1uTt0ojFUDdSbWwyMcwVM6My85Fbin2ts/view?usp=sharing|Pert and CPM Networks]]
* Correction will be discussed on February 10th at 2.30pm in AB3
* [[https://docs.google.com/spreadsheets/d/1SUiNhd3GcViHUQt1dHLJgNt71jGwadd95aohmYjsE9E/edit?usp=sharing|February 23rd exam results and solutions]] - [[https://drive.google.com/file/d/1Exdqb1AAo_vo-UyWXcZwyif7dyyISBWk/view?usp=sharing|Pert and CPM Networks]]
* Correction will be discussed on March 7th at 2.30pm in my office
* [[https://docs.google.com/spreadsheets/d/1MAZE1a5Jar_tybPtBMdpv32I9Jajg2o5ygDekjjCXHk/edit?usp=sharing|June 15th exam results (no solutions included)]]
* Correction will be discussed on June 30th at 9.30am in my office