Team members and division of labor

Team: There are six members in Team Blue

Last four digits: Contribution Score:

Zhang Yu (Captain) 1152 1+1.8=2.8 points

1+0.7=1.7 points

1153 1+0.3=1.3 points

Kanghe 1169 1+0.3=1.3 points

1+0.4=1.4 points

1+0.5=1.5 points

1. Determine the team member performance evaluation method –> individual performance in the team

2. Zhang Yu and Li Jincheng are responsible for demand analysis and design ideas

3. Interface design and documentation shall be undertaken by Hou Heqi and Zhang Yumian

4. Specific coding (programming) Each team member should take responsibility for what they think they can accomplish

5. Ding Zhili and Kang He are responsible for testing and debugging

Objective: To promote the learning of all team members in order to successfully complete team tasks.

A Whether to arrive on time for each collection

B Whether it can promote team unity.

C is able to complete coding tasks in team work on time

D Whether can submit daily work log on time

To meet the above requirements, everyone will be scored according to their contribution to the team. Any behavior that is not conducive to team unity and project progress will be deducted corresponding points.

The name Ms. Cheung Hou Heqi Li Jincheng Kang He Zhang Yumian Ding volunteer
Whether they show up on time 100 100 100 70 100 100
Speak actively at meetings 100 100 90 100 80 100
Complete their tasks on time 100 90 95 90 80 90
Submit daily work log 100 90 80 80 90 80
Working condition score 400 380 365 340 350  370 

 

User requirements:

The user needs an MP3 player, and the program can open MP3 files and play them back.

User story: As a student who is always in front of the computer, I hope to have an MP3 player so that I can listen to songs and relax myself.

Specific design ideas:

1. To let the program know the path to the file, you can use an Add button to achieve this. Click on the button to open the file selection window, open a Filter: openFileDialog1. Filter = “*. Mp3 | *. Mp3”; So the program only gets mp3 files. 2. Open this file: At this point we are actually putting its info song title in the playlist. It has an index in the playlist. 3. Play this file: we use the COM component and add a WindowsMediaPlayer, so that we only need to assign the index of the song we want to play to the WMP URL. Just tell it which song to play. To achieve the playback. 4. Close the file after playing, and then the program can give a prompt that the song is finished: We judge the PlayState in WMP to determine whether the song is finished playing. If the state is Ended, “Ended!” will pop up. Message box.

** code implementation: **

1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Windows.Forms; 9 using System.IO; 10 using System.Threading; 11 12 namespace MusicPlayer 13 { 14 public partial class Form1 : Form 15 { 16 public Form1() 17 { 18 InitializeComponent(); 19} 20 public void PlaySong(int selectNum) // Playlist [selectNum]; 22 {22 musicPlayer1.url = playlist[selectNum]; 23 } 24 private string[] playlist = new string[1000]; Private int num; 26 public void AddFile(string path) // add music file method 27 {28 if (num < 1000) 29 {30 num++; 31 playlist[num] = path; Public void RemoveFile(int I = selectNum) public void RemoveFile(int I = selectNum) i < num - 1; i++) 37 { 38 playlist[i] = playlist[i + 1]; 39 } 40 } 41 private void Addbtn_Click(object sender, EventArgs e) / / add the button {42 and 43 / / open a Filter, only the following file. 44 openFileDialog1 Filter = "*. Mp3 | *. Mp3"; 45 if (openFileDialog1.ShowDialog() == DialogResult.OK) 46 { 47 string path = openFileDialog1.FileName; 48 FileInfo music = new FileInfo(path); 49 AddFile(music.FullName); 50 string Temp = convert.toString (num); 51 for (int i = 1; i <= 2-Temp.Length; i++) 52 { 53 Temp += ' '; 54 } 55 Temp += music.Name; // Music name 56 mlist.items.Add(Temp); Private void Removebtn_Click(object sender, EventArgs e) // Remove button 60 {61 if (mlist.selectedIndex >= 0) 62 {63 RemoveFile(mlist.selectedIndex); // Remove the selected music file 64 mlist.items.RemoveAt(mlist.selectedIndex); 61} 66} 67 private void Startbtn_Click(object sender, EventArgs e) // 70 if (mlist.items. Count <= 0) // If (mlist.items. Count <= 0) ); 73 return; 74} 75 if (mlist.selectedIndex < 0 && mlist.items.Count >0) // If the playlist has songs but no songs are selected, the first one will be played by default. 76 { 77 Selected = 1; 78 mlist.SelectedIndex = 0; 79 } 80 else 81 { 82 Selected = mlist.SelectedIndex + 1; 83} 84 PlaySong(Selected); Private void Stopbtn_Click(Object sender, EventArgs e) private void Stopbtn_Click(object sender, EventArgs e) } 90 private void MusicPlayer1_PlayStateChange(Object sender, Axwmplib._wmpocxevents_playstatechangeevent e) 91 {// This is a reminder when the music has finished playing. 92 the if (MusicPlayer1. PlayState = = WMPLib. WMPPlayState. WmppsMediaEnded) / / players play state, If the playing ends, a MessageBox 93 {94 messagebox. Show(" playing ends!" ); 95} 96} 97} 98}Copy the code

Testing:

PSP Time analysis:

 

Team programming summary:

Before this, our roommates would not practice or try to write some small programs on their own. So that the programming ability is not too high. So I decided to do this project with my roommate, otherwise I would never have learned anything without practicing. To take over a project, we should first have an overall understanding, and measure the situation of each module and team member of the project as a whole, so as to have a clear idea. Combined with the requirements of the project and the situation of the team members, according to the difficulty of the project and personal ability of the reasonable allocation of tasks, in order to give full play to the wisdom of everyone, so that the project can be successfully completed. First of all, we will do a requirement analysis for this project, that is, what functions are required by this program at present. Break the function into smaller tasks, and team members receive tasks that they think can be completed on time. Communication, coordination. **** because it is a team programming, so I and my team members to timely communication, we do not have a good foundation, it is inevitable that there will be confused, they will ask me, I will carefully explain. This is a good point. If there is a problem, go to the Team Leader. But I don’t get involved in their coding, it’s their business, I just point it out, and of course I get involved in the coding, and I get my own coding assignment. Whoever has a good idea will put forward, choose the best plan to implement, but also facilitate the smooth progress of the project. * * * *

The following is hou Heqi’s summary:

Personal summary of the team project summary: For this homework, our team leader Zhang Yu played a great role in leading us to start up, a few lazy people, very touched. Zhangyu classmate this software analysis is in place, so I understand very quickly, although I foundation is bad, but still understand somewhat, and tasks, the battalion chief task into several small task, song insertion, or prompt list, remove, or list of songs, and prompt the broadcast, the interpretation of the captain gave me in your spare time is also very in place, The questions I asked were explained in detail, which made me complete the task smoothly. In the following software production, I will try my best to cooperate with Zhang Yu and ask the teacher to give our software a high score.