zoukankan      html  css  js  c++  java
  • 最课程阶段大作业02:实现自己的利息计算器

           上文描述了版本控制后,此篇才真正到了作业本身。我们第一次大作业要完成的是一个利息计算器。

           利息计算器或者说融资计算器有自己的图形化版本,每一个学习的同学如果想要直观的了解下功能,可以管自己的老师要或者加文末的QQ群向老师索取。不过我们今天要实现的是非图形化的界面,是CS版本的,简而言之就是你要利用自己在SE阶段学到的知识,实现一个在console下的利息计算器。当然,按照我们最课程的造性,肯定还要带点超纲题。

           在强调要做作业之前,我们先来看一下作业是怎么被描述来送到你手里的。

    一:需求的地位

           作业是什么?你是一个程序员,你的作业就是完成一个软件的功能。功能是什么?功能就是需求。在整个软件开发体系(在我们这里,被描述为SPP:精简并行过程)中,它占据重要的一环。我们先来回顾下SPP模型:

           看到没,它处在整个项目研发过程的第一环。同时,在项目管理过程中,它也占据了一个重要的过程:需求管理。

           有一点需要强调,任何质量管理体系,评判是否完善的一个重要标志是:是否留下了一套完整的资产(软件领域中所谓资产,可以是代码、文档、数据库等等)。那么,涉及到需求的文档资产,就包括如下几个:

           而今天,我们的作业,就要以产品需求规格的形式被描述出来。

    二:需求该怎么被描述

           不存在具体的“需求改怎么被描述”的形式,每个公司甚至于每个项目组都可以有自己习惯的方式去描述需求,在我们的SPP模型中,一份完整的需求包括大概包含如下部分:

           而具体描述功能需求的是一个个的用例(即“用户故事”,Use Case),它大致长这样。

           用例名称

           除了用例本身的描述以外,初学者不容易把握的另一个地方是,功能点应该细化到何种程度才能被归为一个“用例”?

           注意,一种简单粗暴但不是非常正确的做法是:一个页面就是一个用例。比如说,用户注册常常是一个页面,同时它也被称之为一个用例。但是,过于复杂的用户注册页面(或者说功能),可能就会是多个用例。比如,我们在注册用户的时候需要验证用户的手机号是否正确,那就需要获取手机验证码,那这里就会包含一个发送手机验证码的用例。

           一个典型的包含当前迭代全部用例的故事墙:

           你没看错,上面就是一个个的用例,如果你在我的软件公司里面进行开发,我们每天就会对着这堵墙来安排任务,然后根据状态移动这些case。故事墙也有专业的工具形成电子版,但我们更喜欢这种直观的方式。要知道这样一来,每个人当前都在负责什么,case进行到什么程度了,都一清二楚哦。

    三:利息计算器的用例

           好了,接下来让我们描述用例。

           第一次大作业,并不要求大家自己去写用例。

           我们把主要的用例罗列如下:

    1. 主界面

    2. 等额本息页面

    3. 按月付息到期还本页面

    4. 一次性还本付息页面

    5. 数据存储

    6. 导出计算结果

    7. 退出

    四:作业完成标识

           1:首先,功能必须要实现,没有明显的bug;

           2:此处有超纲功能,就是对称加密。试着解决,解决不了,则明文存储;

           3:项目commit到SVN服务中;

           4:代码要优美,想想代码规范,同时整个应用程序的实现要有面向对象的思想;

           5:再一个超纲题,把类图画出来。这不是我们在课上讲解的内容,但我猜想你一定可以自己搞定。要注意哦,从现在开始就要养成:没有困难,制造困难也要上的习惯了~~。

           以上作业,我们还没加入测试协作。但能做到这种程度,说明你已经会写代码了,同时对于SE阶段的整个知识掌握的还不错。

           在未来的大作业中,我们将会整合更多的SPP流程,并且很重要的,我们要学会怎么跟测试部打交道哦。

    华丽分割线

    ===========================================================

    最课程JavaEE+互联网分布式新技术开班进行中,来http://www.zuikc.com看看吧。你想参加不一样的培训班,并且一毕业就NB,那就来加入我们吧;

    更多技术文章和开班信息请加入,

    QQ群:

  • 相关阅读:
    MVC4.0系统开发新手历程1
    hdu1205(类似 分布垃圾数列)
    python manage.py startapp app 时候报错No module named _sqlite3
    delphi 文件夹权限设置(执行一个小脚本的笨办法)
    FreeBSD 10安装KDE桌面环境简介(亲测bsdconfig命令有效)
    Qt的目录依赖问题----怎样生成一个绿色的Qt软件包
    Qt5位置相关函数异同详解(附源码)
    Qt 设置背景图片3种方法(三种方法:QPalette调色板,paintEvent,QSS)
    简单实现android和wp聊天
    进程间通讯之mmap文件共享
  • 原文地址:https://www.cnblogs.com/luminji/p/9441982.html
Copyright © 2011-2022 走看看