三沣开发知识 购物 网址 游戏 小说 歌词 地图 快照 开发 股票 美女 新闻 笑话 | 汉字 软件 日历 阅读 下载 图书馆 编程 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题
autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程 CSS/HTML/Xhtml
html5 CSS XML/XSLT Dreamweaver教程 经验交流 开发者乐园 Android开发资料
站长资讯 .NET新手 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA VisualStudio ASP.NET-MVC .NET控件开发 EntityFramework WinRT-Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动 Html-Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP OracleERP DynamicsCRM K2 BPM 信息安全 企业信息 Android开发 iOS开发 WindowsPhone WindowsMobile 其他手机 敏捷开发 项目管理 软件工程 SQLServer Oracle MySQL NoSQL 其它数据库 Windows7 WindowsServer Linux
  IT知识库 -> 敏捷开发 -> 第一次个人项目 -> 正文阅读
 

[敏捷开发]第一次个人项目

第一次个人项目  源代码地址:https://github.com/qingchanghan/Software-engineering
1)开始实现程序之前,使用下列PSP表格估计将在程序的各个模块的开发上耗费的时间。
PSP 2.1
Personal Software Process Stages
Time
Planning
计划
  · Estimate
  · 估计这个任务需要多少时间
 26.5h
Development
开发
  · Analysis
  · 需求分析 (包括学习新技术)
 5h
  · Design Spec
  · 生成设计文档
 1h
  · Design Review
  · 设计复审 (和同事审核设计文档)
 1h
  · Coding Standard
  · 代码规范 (为目前的开发制定合适的规范)
 1h
  · Design
  · 具体设计
 5h
  · Coding
  · 具体编码
 8h
  · Code Review
  · 代码复审
 2h
  · Test
  · 测试(自我测试,修改代码,提交修改)
 2h
Reporting
报告
  · Test Report
  · 测试报告
 1h
  · Size Measurement
  · 计算工作量
 0.5h
  · Postmortem & Process Improvement Plan
  · 事后总结, 并提出过程改进计划
 1h
合计
 26.5h
 2)实现完程序之后,使用下列PSP表格记录在各个模块上实际花费的时间。
PSP 2.1
Personal Software Process Stages
Time
Planning
计划
  · Estimate
  · 估计这个任务需要多少时间
Development
开发
  · Analysis
  · 需求分析 (包括学习新技术)
 4h
  · Design Spec
  · 生成设计文档
 1h
  · Design Review
  · 设计复审 (和同事审核设计文档)
 1h
  · Coding Standard
  · 代码规范 (为目前的开发制定合适的规范)
 4h
  · Design
  · 具体设计
 6h
  · Coding
  · 具体编码
 12h
  · Code Review
  · 代码复审
 3h
  · Test
  · 测试(自我测试,修改代码,提交修改)
 3h
Reporting
报告
  · Test Report
  · 测试报告
 1h
  · Size Measurement
  · 计算工作量
 0.5h
  · Postmortem & Process Improvement Plan
  · 事后总结, 并提出过程改进计划
 1h
合计
 36.5h
 3)先贴一张性能分析图。

从这张图上可以看出,热路径中transfer2()函数占了85.14%,其中调用transfer3()函数占了80.09%,transfer3()调用自己又占了68.93%。为什么占了这么多呢?原因就是它是一个递归函数。
简单介绍一下我的算法吧,换乘最少的最短路线的算法。设起始点为sta1,目标点为sta2,首先求出sta1可直接到达的站点(即不经过换乘,下面不再重复),计算出sta2可直接到达的站点,看二者有没有交集。若没有,求出sta1必须换乘一次才能到达的站点,再看看有没有交集,重复此过程,直到有交集为止。但是有了交集以后,由于我们要求的是换乘最少的最短路径,所以要从终点回溯,这也就是这个递归函数的由来。正因为有了这个递归函数,程序执行相对较慢。一般换乘2-3次还可以无延迟出结果,4次就得等个几秒钟。
想过改进这个算法,但是一是时间比较紧张,二是也没有想出来好的办法,所以无奈就这样了。
其他的一些地方倒是改进了一点,主要是代码复用来减少了代码量。
4)测试用例
地铁四号线
地铁十号线
地铁机场线
-c 张郭庄 善各庄
-b 张郭庄 善各庄
-c 知春路 东直门
-b 知春路 东直门
-c 沙河 土桥
-b 沙河 土桥
-c 苏庄 俸伯
-b 苏庄 俸伯
-c 安河桥北 亦庄火车站
-b 安河桥北 亦庄火车站
-c 沙河 南锣鼓巷
-b 沙河 南锣鼓巷
这些用例涵盖了地图的大部分线路,也涵盖了几种要求,且结果都和百度地图的结果比对过,应该是正确的。
5)这次项目是第一次,老师当堂布置的任务。当时一看作业要求,必须用C++或C#,整个人都有点懵。好在C++的语法和C几乎一样,陆续花了几个小时,补充了C++的知识。
以前的OO和别的程序,我都是先想一点写一点,然后边写边想边修改。以前这样的方法还好,但是这次完成起来就显得尤为吃力。
所以我觉得以后在写代码之前,一定要认真完成分析和设计的工作,然后再动手写代码,这样的效率才更高。
  敏捷开发 最新文章
Git~分支真的很轻
分享一个开源免费、目前最好的API接口管理平
论「版本号」的正确使用方式
GitLab~当它是一个源代码管理工具时
Maven依赖解析
如何基于 eolinker 的进行接口管理
Docker与CI持续集成/CD
需求工程的基本过程
信息系统实践手记3
如何打造百亿级数据处理量的弹性调度容器平
上一篇文章      下一篇文章      查看所有文章
加:2016-09-15 12:12:38  更:2017-05-17 02:51:19 
 
技术频道: 站长资讯 .NET新手区 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA Visual Studio ASP.NET MVC .NET控件开发 Entity Framework WinRT/Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动设计 Html/Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP Oracle ERP Dynamics CRM K2 BPM 信息安全 企业信息化其他 Android开发 iOS开发 Windows Phone Windows Mobile 其他手机开发 敏捷开发 项目与团队管理 软件工程其他 SQL Server Oracle MySQL NoSQL 其它数据库 Windows 7 Windows Server Linux
脚本语言: vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题 autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程
网站开发: CSS/HTML/Xhtml html5 CSS XML/XSLT Dreamweaver教程 经验交流 开发者乐园 Android开发资料
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年7日历
2018-7-22 22:38:48
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT知识库