Project Assignment 1 – Team and Application Selections and Initial Design Documents

This assignment has three 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 C is writing the initial design documents for app design. 

Part A – Team and App 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.

Also, useful for your team would be a team members that are already familiar with Web backend (scripting) and frontend (html, css and javascript) programming. All members do not need to have experience with web or database programming, you will learn web development, but a member with prior experience will be able to help with the initial app code design and getting programming started. If you have any experience with web or database programming, please try to find a team that does not have experienced members.

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.

Application Selection

Your team should list your preference for the applications from the list in the link below:

Potential Application List

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.

GitHub Account

Your team will get a repository on GitHub, therefore you need a GitHub account. If you do not already have a GitHub account get it now. You will need it for Part B of this assignment.

Email Me

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

Be sure to copy the subject line exactly. I use it to search for your email in my inbox.

The email should include:

  • List of members’ proper names
  • Application preference list

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

http://www.mtu.edu/it/services/email/

Make this email list immediately so that the graduate student can contact you. Also, add me (pastel at mtu.edu) to your list.

Team Charter

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.

Meeting Minutes

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

GitHub Repository

Your team will store code in a GitHub repository:

https://github.com/

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.

Email Me

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>

Be sure to copy the subject line exactly. I use it to search for your email in my inbox.

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 GitHub username
  • Identify team leaders, Project Technical Lead and Product Owner

I need the table so that I can match member name with GitHub username.

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.

Part C – App Summary Document

Immediately after you first meeting with your scientist, you should write App Summary Document which gives a brief description of the app you expect to design and implement. The App Summary Document is a one page document which includes the following sections

  • App Idea – a few sentences description of the main purpose of the app and what it will enable.
  • Users – a list of different user types with a one word description of the user and their role using the app.
  • Major Workflow – This is a list of the major interaction using the app through all the users
  • Data – List of general data types. This is NOT a detail list. For example you could list “form data”, “device gps coordinates” and “photos.”

After the first meeting with your scientist, I will ask you to read your App Summary to the class. We will discuss the different aspects of the App Summary. You should use the discussions and your App Summary to delineate what aspect of the app design is missed and prepare for your second scientist meeting.

After the second meeting with your scientist, you should write an updated App Summary Document.

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.