This assignment has two parts. Part A consists of making the team and app preference list. After I have received the team memberships, I will assign the app and have directory spaces made for you. Part B consists of selecting a team name and making the email list for your team.
Part A – Team Selection
The project is a semester long team project: designing and implementing an web app. The team size should be about 5 or 6 students in CS4760 and 2 or 3 students in HU4628.
While choosing teams consider schedules, jobs, where prospective members live and work, and anything else that might impact how well the team will function.
I also advise that one of your team members knows about databases or is interested in learning about databases. Each project will make a database and provide access to the database. It is not necessary for your database expert to have taken the database course, but the database expert will need to have basic understanding of tables, their use and familiar with SQL queries.
You should schedule meetings well in advance to ensure participation of all team members. During your meetings, take notes on your design decisions and how you reached your decision, so that you can use the notes in preparing your reports. Record your notes in the post meeting form (resources/PostMeetingForm.docx) and upload them to your project directory and website.
Your team should list your preference for the applications from the list in the link below:
List the applications in order such that your first choice is first on the list, second choice is second on the list, etc. All 6 applications should be on the list.
Your team will get a repository on GitHub, therefore you need a GitHub account. If you do not already have a GitHub account git now. You will need it for Part B of this assignment.
Your team should send me (pastel at mtu.edu) and Karla Kitalong (kitalong at mtu.edu) an email by 5 pm on the due date of Project Assignment 1 Part A. The subject line of the email should be
cs4760-hu4628 Part A Project Assignment 1
The email should include:
- List of members’ proper names
- Separate list of members’ usernames
- Application preference list
- Identify any members with database or have programming experience
Please send the email promptly because I need time to have your group directories setup.
I will use the order that I receive the emails to resolve conflicts between teams’ app preferences, meaning if two teams choose the same app as their first choice then I will assign the app to the team that emailed me first. I will also use this order to resolve scheduling conflicts. Emailing your team’s selection first will be a distinct advantage throughout the semester.
Part B – Team Name and Email List
After I have received all the emails from Part A, I will assign the apps to teams. Then your team should choose a name. The name should make all of you proud, but it should not be too long. If your team name is inappropriate I will change it.
Each team should have two leaders, a project technical lead, and a product owner. The technical lead will take the lead on the implementation concerns; the product owner will take the lead on the clients and users’ requirement concerns. Two leaders will collaborate to help coordinate the team and should share the responsibilities with all other team members.
Your team should also make an email list for your team. See
Make this email list immediately so that the graduate student can contact you. Also, add me (pastel at mtu.edu) to your list.
Your team will make a team charter. In the team charter you will give your team name. You will also list all team members and contact information: name, email address and phone numbers. The team charter describes the team’s and individuals’ goals. In addition the team delineates how the team will govern and the expectation of members. See Teams lecture notes.
The form for the team contract is in the resources/TeamCharter.docx.
Your team is to keep meeting meeting notes and post them on the team website. This a lecture about teams for a detail description of meeting notes. Karla and I plan to study your team process and plan to use your meeting minutes to learn the details of your team process. So, Karla and I request that your minutes contain:
- Team Name
- Date, time and duration of the meeting
- Location or Media of the meeting, for example “in-person at Reki 101” or by “Google Hangouts”
- Attendance – list of team members present at the meeting.
- Action Items – list of tasks and team member assigned to do the work
- Discussions, Decisions and Rationale – list of topics and decisions made with rational for the decision.
- Next Steps – list of topics for the next meeting
Post your meeting minutes on the website immediately after the meeting.
Scientist Meeting Notes
Your team should make notes during your meeting with scientists and post them on your team websites. These notes are different from team minutes. These meeting notes are for recording all that you learn from your meeting with the scientists. So you will try to record as much as you can during the scientists meeting. See my lectures on interviewing for more details. Karla and I plan to study the interaction between your team and scientist. We plan to use your scientists meeting minutes to learn the details of your interaction with your scientists. So, Karla and I request that your notes contain:
- Team and Scientists Names
- Date, time and duration of the meeting
- Location or Media of the meeting, for example “by Zoom” or “by Phone”
- Attendance – list of team members and scientists present at the meeting.
- Discussion items – list of items discussed with specifics about the topics.
Scientist meeting notes should posted on the your team website immediately after the meeting
Your team will store code in a GitHub repository:
Each team member should have a GitHub account. So if you do not already have an GitHub account, you should make an account now. I will need your GitHub account name to add you to the team.
When I assign your team to a repository, you will get an invite email from GitHub. You need to respond to the email in order to have access to the repository. The GitHub user interface does not allow me resend the invite, so be sure to respond to it. I will announce in class that I have sent the GitHub invite. If you did not get the email, check your trash or spam email folders.
Your team should send me (pastel at mtu.edu) and Karla Kitalong (kitalong at mtu.edu) an email by 5 pm on the due date of Project Assignment 1 Part B. The subject line of the email should be:
cs4760-hu4628 Part B Project Assignment 1 – <team name>
The email should include your team name and table of members. The table of members should be in an attached Excel or CSV file. The heading of the table should have columns:
- Member proper name
- Member MTU email address
- Member GitHub user name
- Identify the any members with database, web development (backend or frontend) experience
- Identify team leaders, Project Technical Lead and Product Owner
The bullet list is correct. I am asking you to repeat some information that you gave me in the prior email so that I can check my records.
The email should also identify initial team leaders. This can be changed during the semester.
The email should also include your team name and team email list name.
The email should also have attached a PDF or your team contract.
Please send the email promptly so that the graduate student can contact your team early for the next assignment.
CS4760 & HU4628 Students Collaborating
Throughout the semester, students in CS4760 and HU4628 will work together developing the web application and make up a single team. Be sure to keep the students in both courses involved in the design of the app and informed on its progress.