从零开始编写自己的C#框架(10)——项目实施计划与甘特图

简介:

不知不觉本系列已经写了一个月,编码前的各项工作到此也终于结束了。回头看看这一个月走过来,白天上班晚上码字查资料,写写改改,挺不容易的。很多时候有些知识会用,知道是怎么回事,但并不等于能写出来。错别字、表达不清、言不达意这些就很常见了。虽然有了这么多年的工作积累,真正写后才感觉到自己还远远不足。在这个期间查看了很多博客、相关的书籍,在写博的过程中明显感到自己提升了,所以还未写博的朋友也赶紧尝试一下吧。

  在写本系列的过程中,没有想到多次得到了编辑推荐,同时也得到了众多网友的支持,让我非常激动,在此表示万分感谢,同时也希望大家不要光看贴不评论,好的坏的都发表一下,大家多多交流。

  另外,本文主要针对的是初学者和中小型项目,所以使用的技术、文档和工具会更偏向个性化,对此一些朋友给了不少建议,我个人觉得,无论是白猫黑猫,抓得到老鼠的就是好猫,所以最主要的是要合适和好用,而不必在乎它是什么。无论什么软件都有它自身的优缺点,我们只要利用得好就可以了。当然我本人未曾在大公司呆过,对很多工具与一些规范性的东西都是一知半解,所以也就不可能用那些高大上的东西在本系列中应用了。不过对于快捷简单的开发一个中小型项目来说已经足够了,希望初学者们也不要一下子定位太高,我们从中小型项目做起,至于那些更好的工具,我也在学习当中,大家空闲时间从逛逛那些大神的博客努力学习就可以了。

 

 

  对于很多初学者来说,项目经验不是很足,在实际开发过程中很难把控好项目的进度,项目延期和加班加点那是家常便饭了,当然有一部分的原因可能是需求方的变动,而更多的是初学者们制定的开发计划不合理,预计时间不准确有关。

  为什么会出现预计的开发时间不准确呢?

  据我了解,主要有这几种情况:

  1、对项目需求、功能不太了解,不清楚项目涉及的业务逻辑与将要使用的算法,以及功能之间联动产生的影响;

  2、对开发框架或代码不够熟悉,不知道开发一个具体功能要调用到那些模块,需要花多长时间才能完成;

  3、预计的时间只是自己的代码编写完成时间,没有考虑错误修复与自测时间;

  4、在需求方、相关部门或上级领导的压力下(项目完成时间压力),挤压自己的休息时间,将工作以外的加班时间添加到实际开发时间中;

  5、开发经验不足或项目需要的技术不了解,解决问题与Debug占用太多时间;

  6、项目前期规划不好,存在结构性问题,导致代码量大增;

  7、需求方不断变动,未考虑需求变化对项目进度的影响;

  8、UI设计或其他同事开发进度影响;

  9、个人有事请假或其他外因影响,占用了大量开发时间;

  ......

 

  如何预计开发时间和控制项目进度呢?

  首先要做的就是前面章节的各项准备工作,了解需求、画出原型,然后设计各界面详细功能,绘制出相关流程图,再了解框架代码和项目中所需要使用的技术细节,做完这些细节一个项目到底要开发多少个界面,使用什么算法,花多时间基本上就心理有数了。

  当然这些都是影响预计开发时间的内在因素,除了这些以外,还有很多外在的不可控因素存在,会对项目进度造成更直接的影响。所以初学者在预估开发时间时,还需要注意下面几点:(由于时间关系对于每一点就不再举例说明了,大家自行理解)

  1、在设计项目时,考虑好扩展性,方便需求变动时容易添加新功能;

  2、评估时间须包括自测时间与Bug修复时间;

  3、对于功能开发,不要随意加入自己的创意,除非必要功能(需要与需求方确认),多余的功能一律不给予实现;(这一点在很多新人身上都会发生,他们大多思路活跃,喜欢在项目中加入自己觉得很不错的小功能或想法,这样的话就会令项目变得不可控了,多余的功能会占用开发时间,又会令项目产生更多的Bug)

  4、需求变更或增加时,必须通过项目经理或负责人统一规划安排,非必须项一律放到二期以后开发,新增需求必须重新评估开发时间;

  5、开发进度必须严格遵守实施计划的安排,可以提前完成,但不能延期;

  6、与需求方、项目经理、设计师以及部门同事做好充分的沟通工作,有问题主动请教别人,不耻下问;

  7、多请教部门中的前辈和技术部负责人;

  除了上面这些外,还有很多其他工作也是需要注意的,如项目更改后原型与文档的同步更新工作(对后期维护与二次开发会产生影响)、测试用例(设计得合理可以提高开发效率,不明白这些的人自测基本上都不会到位的,写出的代码会被测试人员反复的一虐再虐)、项目性能与安全优化(这个就更不用说了,经验不够的就算完成基本代码编写,但后面花费在这上面的时间将更长)、后期的项目部署等等,都会对进度产生一定的影响,这里就不再一一细说了。初学者不可能一开始开发时间就预估得很准,这需要开发经验的不断学习与积累。

 

  本项目开发进度安排(只列出一部分,具体请下载附件查看)

  

  

  

 

  本项目开发甘特图

  

 


 下载地址:项目实施计划与甘特图.rar

 (实施计划与甘特图在下载文件的《数据字典》中,另附上《项目开发计划》与《开发进度月报》模板)

 

 

 



    本文转自 AllEmpty 博客园博客,原文链接:http://www.cnblogs.com/EmptyFS/p/3660211.html,如需转载请自行联系原作者






相关文章
|
7月前
|
数据可视化 网络协议 C#
C#/.NET/.NET Core优秀项目和框架2024年3月简报
公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(每周至少会推荐两个优秀的项目和框架当然节假日除外),公众号推文中有项目和框架的介绍、功能特点、使用方式以及部分功能截图等(打不开或者打开GitHub很慢的同学可以优先查看公众号推文,文末一定会附带项目和框架源码地址)。注意:排名不分先后,都是十分优秀的开源项目和框架,每周定期更新分享(欢迎关注公众号:追逐时光者,第一时间获取每周精选分享资讯🔔)。
202 1
|
2月前
|
测试技术 C# 数据库
C# 单元测试框架 NUnit 一分钟浅谈
【10月更文挑战第17天】单元测试是软件开发中重要的质量保证手段,NUnit 是一个广泛使用的 .NET 单元测试框架。本文从基础到进阶介绍了 NUnit 的使用方法,包括安装、基本用法、参数化测试、异步测试等,并探讨了常见问题和易错点,旨在帮助开发者有效利用单元测试提高代码质量和开发效率。
157 64
|
26天前
|
开发框架 C# iOS开发
基于C#开源、功能强大、灵活的跨平台开发框架 - Uno Platform
基于C#开源、功能强大、灵活的跨平台开发框架 - Uno Platform
|
26天前
|
开发框架 网络协议 .NET
C#/.NET/.NET Core优秀项目和框架2024年10月简报
C#/.NET/.NET Core优秀项目和框架2024年10月简报
|
26天前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
|
2月前
|
开发框架 前端开发 API
C#/.NET/.NET Core优秀项目和框架2024年9月简报
C#/.NET/.NET Core优秀项目和框架2024年9月简报
|
3月前
|
编译器 C# Android开发
Uno Platform 是一个用于构建跨平台应用程序的强大框架,它允许开发者使用 C# 和 XAML 来创建适用于多个平台的应用
Uno Platform 是一个用于构建跨平台应用程序的强大框架,它允许开发者使用 C# 和 XAML 来创建适用于多个平台的应用
319 8
|
2月前
|
边缘计算 开发框架 人工智能
C#/.NET/.NET Core优秀项目和框架2024年8月简报
C#/.NET/.NET Core优秀项目和框架2024年8月简报
|
3月前
|
JSON 测试技术 C#
C#/.NET/.NET Core优秀项目框架推荐榜单
C#/.NET/.NET Core优秀项目框架推荐榜单
173 0
|
4月前
|
开发者 C# Android开发
Xamarin 与 .NET:解锁现代化移动应用开发的超级武器——深入探讨C#与.NET框架如何赋能跨平台应用,实现高效编码与卓越性能
【8月更文挑战第31天】Xamarin 与 .NET 的结合为开发者提供了强大的平台,用于构建现代化移动应用。通过 C# 和 .NET 框架,Xamarin 可以实现一次编写、多平台运行,覆盖 iOS、Android 和 Windows。这种方式不仅节省了开发时间和成本,还保证了应用的一致性和高质量。Xamarin 是一个开源框架,专为跨平台移动应用开发设计,允许使用 C# 语言和 .NET 核心库构建原生应用,并访问各平台特定功能。微软维护的 Xamarin 是 Visual Studio 生态系统的一部分,极大地提高了开发效率。
89 0