团队成员及分工
团队: 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纯属是无聊才学着玩的,也有一点点喜欢在里面,到了大二,其实还是怨自己吧,挺多不会的。张宇同学能带着我们学习真的是挺感动的,我想,他应该是最有可能走这条路的人,愿他能成功。
丁志愿:
经过上次团队合作,我们对这次的作业充满了信心。虽然这次的作业不是很多,但是我们还是按照要求,合理分工,每个成员都把自己的工作做得很到位。
这次的项目虽然只是一个开头,但这是很重要的一步,登录界面。团队中的成员经过上次的项目磨合,这次更加得心应手。每个人都把自己的工作认真完成,
通过一次次的团队模式,我们更加了解了自己,每一次的合作就是一次的成长,不论作业难度如何,我们都会努力做到最好。
经过每次的合作,我们也遇到过很多困难,数据库是上学期的课程,我们在合作过程中,,都在互相帮助,有时会有抱怨,有时会有牢骚,但是在我们的互相
帮助下,都克服了这些难题。每一次的困难都是一个成长路上的考验,经过一次次的考验,我们也会一次次的成长起来。
我相信,经过每次的团队合作,我们会学到更多,要努力克服自己的短处,增加自己的能力。在以后的路上,我们一定会学到更多,也会一步步增加自己的能力。