團隊成員及分工
團隊: Blue 團隊共有六人
姓名: 學號后四位: 貢獻分:
張 宇(隊長) 1152 1+1.7=2.7分
丁志願 1011 1+1=2分
侯賀琦 1027 1+1=2分
李錦城 1040 1+0.3=1.3分
張玉冕 1153 1分
康 賀 1169 1分
1.確定團隊成員績效評估方法 -->個人在團隊中的績效
2.需求分析及設計思路 由張 宇、侯賀琦 負責
3.界面設計及文檔記錄 由康賀、張玉冕負責
4.具體代碼編寫(程序設計) 每個成員都要認領自己認為可以完成的任務
5.測試與調試 由丁志願、李錦城負責
目標:為了順利完成團隊任務,促進每一個成員的學習。
A 每次集合是否按時到場
B 是否能促進團隊的團結。
C 是否能按時在團隊合作中按時完成編碼任務
D 是否能按時提交每日的工作日志
達到以上要求,根據每個人對團隊所做的貢獻來評分,凡做一件不利於團隊團結和項目進度的行為皆扣相應的分數。
姓名 |
張宇 |
侯賀琦 |
李錦城 |
康賀 |
張玉冕 |
丁志願 |
是否按時到會 |
100 |
100 |
100 |
90 |
90 |
100 |
會上積極發言 |
100 |
100 |
90 |
70 |
80 |
100 |
按時完成各自任務 |
100 |
100 |
90 |
75 |
80 |
100 |
提交每日的工作日志 |
100 |
100 |
90 |
90 |
90 |
100 |
工作狀況分值 |
400 |
400 |
370 |
325 |
340
|
400
|
用戶需求:
可以通過輸入用戶名和密碼來進行登錄!並且在登錄的時候,如果用戶名不存在,亦或是密碼不對,此時要給出提示!
具體設計思路:
第一步:先創建一個數據庫!畢竟沒有用戶也沒辦法登錄是吧,在VS服務器資源管理器里新建一個名為repair的數據庫,添加一個名為user_info的表,並插入了兩條測試記錄!
第二步:新建一個窗體,擺上三個Lable,兩個文本框,兩個按鈕,給每個控件起一個好記的Name,界面布置一下!
第三步:准備工作做好,下面開始寫登錄按鈕事件,這時就要連接數據庫了,那么新建一個DBConn類,把連接字符串封裝到DBConn.cs里面。
第四步:請看代碼實現↓↓↓
代碼實現:
DBConn.cs
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Data.SqlClient; 6 using System.Data; 7 8 namespace sixth 9 { 10 class DBConn 11 { 12 //連接字符串 13 public static string connStr = "Data Source=.;Initial Catalog=repair;Integrated Security=True;Pooling=False"; 14 public static SqlConnection conn = new SqlConnection(connStr); 15 } 16 }
FormLogin.cs
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.Data.SqlClient; 10 11 namespace sixth 12 { 13 public partial class FormLogin : Form 14 { 15 public FormLogin() 16 { 17 InitializeComponent(); 18 } 19 20 private void btnLogin_Click(object sender, EventArgs e) 21 { 22 try 23 { 24 if (txtUsn.Text.Trim() == "") 25 { 26 labMessage.Text ="用戶名不能為空!"; 27 txtUsn.Focus();//獲取焦點 28 return; 29 } 30 else if (txtPwd.Text.Trim() == "") 31 { 32 labMessage.Text ="密碼不能為空!"; 33 txtPwd.Focus(); 34 return; 35 } 36 37 //老師說了:下面這種方法會有通過文本框輸入SQL語句來惡意損壞數據庫的可能,所以用了參數的形式來獲取文本框的值! 38 //string sqlStr = "select userName,passWord from user_info where userName='" + txtUsn.Text.Trim() + "'"; 39 40 string sqlStr = "select userName,passWord from user_info where userName=@userName"; 41 DataSet ds = new DataSet(); 42 DBConn.conn.ConnectionString = DBConn.connStr; 43 DBConn.conn.Open(); 44 SqlCommand cmd = new SqlCommand(sqlStr, DBConn.conn); 45 cmd.Parameters.Add(new SqlParameter("@userName", SqlDbType.VarChar, 50));//添加參數 46 cmd.Parameters["@userName"].Value = txtUsn.Text;//把用戶名文本框里的東西給@userName 47 SqlDataReader sdr = cmd.ExecuteReader(); 48 if (!sdr.Read())//因為是通過userName查詢數據的,所以如果沒有讀到這條數據,肯定是用戶名不存在 49 { 50 labMessage.Text = "用戶名不存在!請重新輸入"; 51 txtUsn.Text = "";//文本框置空 52 txtPwd.Text = ""; 53 txtUsn.Focus(); 54 } 55 else if (sdr["passWord"].ToString().Trim() == txtPwd.Text.Trim()) 56 { 57 labMessage.Text = "恭喜您已成功登錄!"; 58 } 59 else 60 { 61 labMessage.Text = "密碼錯誤!請重新輸入!"; 62 txtPwd.Text = ""; 63 txtPwd.Focus(); 64 } 65 } 66 catch (Exception ex) 67 { 68 labMessage.Text = "登錄異常:" + ex.Message; 69 txtUsn.Text = ""; 70 txtPwd.Text = ""; 71 txtUsn.Focus(); 72 } 73 finally 74 { 75 DBConn.conn.Close();//最重要的是要關閉數據庫! 76 } 77 } 78 79 private void btnCancel_Click(object sender, EventArgs e) 80 { 81 Application.Exit();//退出 82 } 83 } 84 }
測試:
1.數據庫、表格及測試數據
2.成功登錄
3.用戶名不存在;其實當用戶名不存在的時候,是讓文本框置空的,這里為了
方便展示
4.密碼錯誤,密碼文本框置空,焦點轉移至此
PSP耗時分析:
團隊編程總結:
一個團隊,要做好一個項目,要有十分全面的考慮以及分析。可能一個人並不能把整個項目都考慮的非常到位,所以Team Leader先組織開個小會,以便收集大家的意見。其實這次,大家都挺積極的配合,個別同志由於各種原因大家也都能理解。但我們始終遵循一條原則,多勞多得!
其實這次只是一個開始,但我們一樣要按照流程來完成任務,要把開始做到完美,那么后續工作才可以陸續開來。
團隊編程之個人總結:
侯賀琦:
這次的作業比較簡單,當然,是相對於我們隊長來說。他能帶動我們完成任務,已經是功不可沒。雖然任務簡單,但隊長仍舊分為幾個小任務來交給我們完成,這次的做作業有用到數據庫的知識,我數據庫是最薄弱的,不得不重拾以前的知識,我面對庫時真的是手忙腳亂慌得一塌糊塗,畢竟也是上個學期掛掉數據庫的人,然而這並沒有什么用,關鍵時刻還得靠隊長,此時隊長挺身而出,狂補數據庫連接知識,最終將其完成。其實窗體應用挺好的,我喜歡窗體的方方正正。其實怎么說,代碼這東西與我無緣,我並不是那么喜歡,大一時的HTML純屬是無聊才學着玩的,也有一點點喜歡在里面,到了大二,其實還是怨自己吧,挺多不會的。張宇同學能帶着我們學習真的是挺感動的,我想,他應該是最有可能走這條路的人,願他能成功。
丁志願:
經過上次團隊合作,我們對這次的作業充滿了信心。雖然這次的作業不是很多,但是我們還是按照要求,合理分工,每個成員都把自己的工作做得很到位。
這次的項目雖然只是一個開頭,但這是很重要的一步,登錄界面。團隊中的成員經過上次的項目磨合,這次更加得心應手。每個人都把自己的工作認真完成,
通過一次次的團隊模式,我們更加了解了自己,每一次的合作就是一次的成長,不論作業難度如何,我們都會努力做到最好。
經過每次的合作,我們也遇到過很多困難,數據庫是上學期的課程,我們在合作過程中,,都在互相幫助,有時會有抱怨,有時會有牢騷,但是在我們的互相
幫助下,都克服了這些難題。每一次的困難都是一個成長路上的考驗,經過一次次的考驗,我們也會一次次的成長起來。
我相信,經過每次的團隊合作,我們會學到更多,要努力克服自己的短處,增加自己的能力。在以后的路上,我們一定會學到更多,也會一步步增加自己的能力。