• 项目笔记


     

    前言

           最近突发奇想,想以我现在负责的项目为基础写一点关于软件开发方面的东西,之所以有这种想法主要是出于以下几个方面进行考虑:

    1.        02开始参加工作到现在,在软件开发这一行业也摸爬滚打了七年多,现在回头看看,这七年多时间我竟然什么也没有留下,除了自己的技术水平提高了一点、业务分析能力提高一点之外(自我感觉)。

    2.        一直在看别人写的技术博客,觉得很好,也许几年之后回过头来看看写的这些东西,确实是一种财富。

    3.        在担任项目经理的时候带过一些刚毕业的学生,从他们的身上可以看到我刚入这一行时的懵懂及无助,也许这个文档可以帮助我们这些刚毕业的学生快速进入自己的角色。

    4.        对自己工作七年以来的一个总结。

    5.        以此纪念我刚出生的儿子、劳苦功高的老婆,还有我已经逝去的亲爱的爷爷。

    现在我负责的是一个报刊发行管理系统,系统包括征订管理、发行管理、储运管理、仓库管理、财务管理等八个子系统,系统将采用VS2008作为前台开发工具,以Oracle10G为数据库支撑平台,整个系统大约的开发时间为4-6个月,系统涉及到的主要业务知识包括:进销存知识、财务知识,在此文档中将尽量以业务人员的角度去考虑,这也是我们软件开发过程中所遵循的一个基本原则,软件开发的基本原则就是“易学易用”,我们现在很多的开发人员都在犯一个很大的毛病:系统研发过程中以技术为主,不去关心用户体验,然而一个优秀的程序是一定是这二者兼顾的,用户体验也是我们软件开发过程中一个很重要的环节。

    在此文档编写的过程中,大量地参考了其它前辈网上的博客资料和图书资料,相关的参考资料我将在文档完成之后详细列出。


    第一章   如何进行需求分析

    1.1 软件需求定义

    我们在进行软件研发过程中一直都要非常强调"需求",那么什么是软件需求呢?软件需求就是系统必须要完成的事或者说是必须要具备的某种品质,具体来说一般的软件需求包括功能需求、非功能需求及设计约束三方面的内容。

    功能需求:是指系统必须完成的那些事,即系统要完成用户提出的各种功能要求。

    非功能需求:是指软件必须具备的品质或属性,如可靠性、性能、系统响应时间、容错、系统可扩展性等。

    设计约束:一般是由客户提出的解决方案中的一些补充约束说明,如系统必须基于SOA设计模式、必须采用Oracle数据库、必须做应用服务器的负载均衡、必须采用Unix服务器等技术要求。

    而我们在实际软件开发过程中,经常听到的是“业务需求”、“用户需求”、“系统需求”等概念,实际上这三类需求本质上与上面提到的三个需求基本一致,但也存在差异,可以将这三个需求理解成为需求的三个不现层次,从目标到执行,从整体到局部,从概念到细节,这些不同层次,不同类型的需求之间的关系可以参考下图(图1-1

    业务需求:强调组织机构或客户对系统、产品的具体目标要求

    用户需求:是指产品必须完成什么样的内容,如何完成的需求,通俗一点就是需求的调研,在问题定义的基础上对用户进行访谈、调查,对系统功能模块的使用场景进行归类整理等。

    系统需求:强调从系统应用的角度去考虑软件的需求,如软件的功能需求、质量属性、设计约束等。

    (图1-1

  • 相关阅读:
    几款免费的支持HTML5的音频视频转换软件推荐
    2 宽度优先爬虫和带偏好的爬虫(4)
    Hadoop源代码分析(三)
    Hadoop源代码分析(四)
    C# 收邮件
    关于Adobe flash palyer 安装出现的问题解决方案
    C#调用java类、jar包方法。
    EF 4.3 的一些基础使用
    .net数据库连接池问题:在同一页面使用一段时间后,提示超时,连接池不够用这类的提示!
    使用Google CDN的JSAPI服务来提供加载各类JS库的方法
  • 原文地址:https://www.cnblogs.com/hzj3099/p/1496964.html
Copyright © 2020-2023  润新知