软工实践第五次小组作业

这周我们小组学习了第十一章学习内容-----软件设计与实现

首先我们要分析与设计方法

在“需求分析”阶段,我们要搞清楚:在问题领域中的现实世界里,都有哪些实体?如何抽象出我们真正关心的属性?实体之间的关系是什么?用户关心的是什么?

在“设计与实现阶段”,我们要搞清楚:软件是怎么解决这些需求的?

在“测试”和“发布”阶段,我们要搞清楚:软件真的解决了这些需求吗?

软件团队的所有相关人员都需要处理,了解这些信息,如果在处理的过程中有误解和遗失,就会导致开发过程出现问题,以至最终产品不能满足用户的需求。

分析与设计有许多方法:

以文字为主的:Word、PowerPoint文档。

以图形为主的:Mind Map,ERD,DFD,UML的各种图

用数学语言描述:Vienna Development Method

用类自然语言+代码构造的描述,如Literate Programming

图形建模和分析方法

我们要给事物建造出一个“模型”,描述事物、事物的属性、事物之间的关系以及各个事物之间的信息传递。

思维导图:人们经常用图形来帮助他们了解概念,强化记忆。思维导图没有严格的语法意义,一般来说都是从图形的正中开始写下一个概念,然后按照绘图者所关心的属性扩展。

实体联系图:当我们注重与表达现实世界中的实体和他们之间的关系,那么就需要用到实体关系图ERD。这是一个理解和抽象的过程。

UCD:用例图的元素简单,绘图简明,它的主要目的是尽快让团队成员和利益相关者理解系统的需求。

从SPEC到实现

n         一个开发人员拿到设计文档(Spec)他会做以下几件事情:

估计开发所需的时间。

n        
试着写一些快速原型的代码。

n        
看到初始效果后开始设计文档。

n        
按照设计文档写代码,并从中发现意外的问题。

n        
写好代码后进行自我复审。

n        
进行单元测试。

n        
交给相关的测试人员。

n        
修改测试人员发现的问题,然后交给同时进行复审。

开发阶段的日常管理

闭门造车

当场景,功能都计划好的时候,要给员工足够多的时间,让他们投入到工作中去,而不要经常打断他们。要尽量减少非开发时间,团队成员自我时间管理也很重要。

每日构建

在我们的全球调查中,我们发现成功公司中有94%每天或至少每周完成构建,而不成功公司绝大多数每月甚至更少去构建。当有一个能运行的系统时,即使只是一个简单的系统,团队积极性也会上升。

小强地狱

在开发过程中,开发人员一定会遇到很多小强。但是如果我们每遇到一个小强就去修复的话太过于浪费时间。这就导致有些开发人员积攒了大量的小强,进而影响了其他测试人员的任务。因此就要进行小强地狱!如果开发人员的小强数量超过一规定值,则此开发人员将被送入“小强地狱”,在“地狱”中,只能进行小强的修复,不能进行开发,直到小强数量低于规定阈值。当然,阈值由团队根据实际情况来定,不能过低而让全队人员都去“地狱”,也不能过高影响测试进度。

目前小组的实践项目进度:正努力实现计算一年内两天间隔天数的代码,目前得出以下实现功能的模块

//日期结构体

typedef sruct D

{

int year;

int month;

int day;

}Date;

//判断是否闰年

int IsLeapYear(int year)

{return(year%400==0||year%4==0&&year%100!=0)};

//获得某年某月最大天数

int GetMaxDay(int year,int month)

{

switch(month)

{

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

return 31;

case 4:

case 6:

case 9:

case 11:

return 30;

case 2:

return IsLeapYear(year)?29:28;

default:

return -1;

}

}

时间: 2024-10-12 05:16:45

软工实践第五次小组作业的相关文章

软工实践第四次小组作业

<构建之法>小组学习心得 baba爱你小组  组长:阮俊  组员:钱洪章.黄维.光萍.张启飞.王学飞 这周我们小组学习了第九章学习内容-----项目经理 PM是啥?典型的软件团队里除了能写代码,测试代码和画图做设计的成员,还有一类角色,不做上面这些事情也很重要,我们叫他项目经理---PM. 随着业务的发展和团队的壮大,团队成员之间交流的成本急剧增长以及有很多开发和测试之外的事情需要专人负责,PM由此诞生. 有些事情是程序员往往不会花时间去做的,比如和客户交谈,组织用户调查,发现用户需求,了解和

该死的软工实践

这学期给我最大的感觉是比之前的每学期过得都快,可能是比较忙吧.还记得刚开始的时候,栋哥说可以退选实验的时候,有人和我说:”好像软工实践很麻烦的样子,要不我们退了吧“.其实,我也有打过退堂鼓,以为自己学也可以做点东西,但是我还是抱着这样的想法”找个大腿抱,水一水吧,毕竟过了这学期,又可以少修几学分了“,然后就没有去退选了.接下来就是开始这软工实践的日子.该开始总是想得很美好,以为这学期结束会有一个产品,上面写着made by ***,到最后还是生出了一个比较low的东西,那是第一次真正实践的东西,

调研《构建之法》指导下的全国高校的历届软工实践作品、全国互联网+竞赛、物联网竞赛等各类全国性大学生信息化相关的竞赛平台的历届作品及其看法

1,豌豆荚一览 作品内容:主要是一款聚合阅读类作品,他收录了500+应用的内容,可以在一个应用里面,看完自己感兴趣的应用的最近更新的内容,更通俗的讲就是用一个应用代替其他阅读类的应用,你可以在豌豆荚一览中看到其他应用最新更新内容,比如可以看知乎日报,开眼,一个等等之类的..... 作品源于的平台:豌豆荚设计奖里的作品,链接:http://sspai.com/30278 作品的优势:我们手机里面有很多的应用,每天都要在这些应用花费很多时间,其中有一些可能下载下来都不会打开几次,但是删掉又可惜的,于

软工实践之团队项目

我们的队名: Clean Code 031302511 林培兴 031302623 张衍坤 031302223 翁翰帅 031302536 苏丽玲 031302505 黄晓辉(组长) 团队项目描述: 校园通 团队成员介绍:    林培兴:我和组长是结对项目中的队友,在结对项目中,我们很好地合作分工,结对作业也取得不错的成绩.我有一定的Java基础,软工实践以来,也开始在努力学习安卓,在安卓编程方面有一定的进步.在我们的队伍中,我的定位主要是编程方面,负责我们项目的一部分模块的编程任务. 张衍坤:

第一次软工实践体会

不知不觉,软工实践小学期已经进行了三天,一开始,老师就明确了我们最终要做出什么:一个客户信息维护软件 首先,我们需要安装编写软件的环境:my eclipse Java enterprise 要说明的是my eclipse和之前我们学习java语言所用的eclipse稍有出入MyEclipse企业级工作平台(My Eclipse Enterprise Workbench,简称MyEclipse)是对EclipseIDE的扩展,利用它可以在数据库和J2EE的开发.发布,以及应用程序服务器的整合方面极

往届软工实践作品评述

描述 作品的内容:作品源于的平台或链接:你觉得的作品的优势和不足:你觉得入选你心目中最佳前三的理由:经过调研后,你的感受和对自己团队项目的期待. 作品一 作品的内容: Phylab-Web 官方描述: 支持通过选择物理实验序号进入相应物理实验预习报告页面. 个人理解: 一个制作物理实验预习报告的页面. 作品源连接: https://github.com/buaase/Phylab-Web/blob/master/docs/User-Interface.md 优势: 贴近大学生的实际需要,并且制作

软工实践总结作业

忽然间,说结束就结束了. 明明是一直以来觉得头疼无比.时间占用巨大的这门课程,在结束的时候,却没有想象中的轻松,反而有一丝失落. 1.课程总结: 翻开刚刚开课时写下的目标,字里行间读出的,半是憧憬,半是迷茫.计划中要做的,有一些没有完成: 原打算学习java,最后却学习了一些php和mysql: 想要学会更好的管理时间,熬夜的次数好像却更加频繁: 原以为可以初步成长为一个合格的pm,但是回头看看自己做的好像也不怎么样.. .当然,也有不少的收获: 学会了一些软件的使用,例如原型开发软件Axure

【讨论帖】关于大学软工实践课程的教学模式讨论

背景介绍:某大学一门大三软工实践课,学生平时的时间较紧,所有科目一周总的学时通常在30学时以上.课程的主线主要以设计一个app或者实际应用系统的方式来进行,并且只在课后时间进行(上课时间要另外介绍各种工具比如android studio或者用例图工具.原型开发工具.单元测试工具等):课程中助教要求以博客的形式来进行贯穿,即平时的每次的项目安排都要以博客的形式发布,征得助教同意,公布发布课程项目的博客的地址http://www.cnblogs.com/easteast/,里面有每次作业的具体要求等

软工实践第一次作业-黄紫仪

软工实践第一次作业 前言:emmmm之前因为没太注意,想着计算机专业怎么会有软工实践.所以之前一直都没去管.等到开学才发现突然翻车.QAQ现在赶紧先来补交一下. (1)回想一下你初入大学时对计算机专业的畅想 当初你是如何做出选择计算机专业的决定的? 你认为过去两年中接触到的课程是否符合你对计算机专业的期待,为什么? 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗?   说到选择计算机,emmmm,某种意义上来说是打RPG游戏打出来的想法,因为很喜欢这类的游戏,所以也想去试着写一个属于自己的这种