2022-10-03

一.软件开发的主要过程 核酸软件(小程序端、web端)开发的实际流程实际流程遵循瀑布模型

1.需求采集

随着疫情进入常态化防控,为了能及时发现确诊病例,也为了能及时阻断疫情的扩散及其穿播,也需要能方便市民及时知道自己的健康状况,能简化做核酸的流程的软件

2.需求设计

软件分为客户端和后台处理端,客户端能方便客户扫码进行核酸检测并能很方便的查询结果,后台管理端能收集,分析,及使用核酸检测的相关信息

3.概要设计

也称总体设计,主要任务是基于数据流图和数据字典,确定系统的整体软件结构,划分软件的各个子模块,确定他们之间的关系。概要设计是要完成体系结构设计、数据设计和界面设计。

体系结构设计:

确定各子系统模块间的数据传递与调用关系;

界面设计:

包括与系统交互的人机界面设计,以及模块间、系统与外部系统的接口关系;

数据设计:

包括数据库、数据文件和全局数据结构的定义。

4.详细设计

详细设计的任务就是在概要设计的基础上,具体实现各部分的细节,直至系统的所有的内容都有足够详细的过程描述,使得编码的任务就是将详细设计的内容翻译成代码就可以了。详细设计就是完成过程设计。

5.程序编码

要求如图



部分编码如下(来自于网络)


import sys

import qrcode

import base64

import datetime

import os

import sys

import requests,json

def InformationReporting(name, id, phone):

    id = str(id)

    char = id[16]

    gender_num = int(char)

    if gender_num%2 == 1:

        gender = '男'

    else:

        gender = '女'

    url = "http://36.133.44.216:9100/hsxxdj-service/p/core/yidd/addPerson?name=" + name + "&idcard=" + id + "&linkPhone=" + phone + "&currAddr=虞城县/城关镇/虞城县北街居委会/某某村&sex=" + gender + "&cardType=身份证"

    req = requests.get(url)

    result = req.json();

    print(result)

    result = str(result)

    if result[12:16] == "True":

        return True

    else:

        return False   

def GenerateQRCode(name, id):

    qr=qrcode.QRCode(version = 2,error_correction = qrcode.constants.ERROR_CORRECT_L,box_size=10,border=10,)

    strInput = '{"idcard":"' + id + '","name":"' + name +'"}' 

    print('本码:'+strInput)

    bs=str(base64.b64encode(strInput.encode('utf-8')),"utf-8")

    print('转码:'+bs)

    qr.add_data(bs)

    qr.make(fit=True)

    img = qr.make_image()

    img.show()

    #path = 'E:/Aurora/Desktop/核酸/1/' + str_1 + '.jpg'

    #img.save(path)

def check_id_length(id):    #核验身份证号长度是否合理

    if len(str(id)) != 18:

        print("只支持18位身份证号查询")

        return False

    else:

        return True

def check_id_data(id):  #核验身份证号是否合理

    var=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]

    var_id=['1','0','x','9','8','7','6','5','4','3','2']

    id = str(id)

    sum = 0

    if int(id[16])%2==0:

        gender="女"

        same=int(int(id[16])/2)

    else:

        gender="男"

        same=int((int(id[16])+1)/2)

    for i in range(0,17):

        sum += int(id[i])*var[i]

    sum %= 11

    CheckBit = str(id[17]);

    if "X"==CheckBit:

        CheckBit = "x"

    if (var_id[sum])==CheckBit:

        print("身份证号规则核验通过,校验码是:",var_id[sum])

        print("出生于:",id[6:10],"年",id[10:12],"月",id[12:14],"日","性别:",gender,"\n当地同性别同生日排名:",same)

        return sum

    else:

        print("出生于:",id[6:10],"年",id[10:12],"月",id[12:14],"日","性别:",gender,"\n当地同性别同生日排名:",same)

        print("但身份证号规则核验失败,校验码应为",var_id[sum],",当前校验码是:",id[17])

        return -1       

def main(name, id, phone):

    if check_id_length(id) == False:

        return False

    if check_id_data(id) == -1:

        return False

    if InformationReporting(name, id, phone):

        GenerateQRCode(name, id)

name = str(sys.argv[1])

id = str(sys.argv[2])

phone = str(sys.argv[3])

main(name, id, phone)

6.集成测试

准备测试整合计划

确定集成测试方法的类型

相应地设计测试用例,测试场景和测试脚本

一起部署所选模块并运行集成测试

跟踪缺陷并记录测试结果,重复上述步骤,直到测试完整个系统

7.验收

验收测试范围有1.界面测试:检验页面的功能按钮以及浏览界面显示是否正确

                  2、功能测试:需求文档里描述的所有功能是否可正确实现

                  3、性能测试:系统性能指标能否满足上线需求

                4、安全性测试:系统方面是否符合安全性规范以及是否有安全性漏洞

流程是1、准入条件检测

  1)文档:进入验收测试的文档准备齐全。

      (2)缺陷:软件开发方需在不同浏览器兼容环境里对需求文档上的功能全部进行测试,提交验收测试时,承建方发现的所有缺陷都已解决。

  (3)测试环境:测试环境需与线上真实环境保持一致,确保测试过程中测试环境一致、稳定。

   (4)沟通和联系:测试过程中所有需要的联系人沟通渠道建立完毕,确保可以及时准确的反馈。

   2、验收测试

  1)文档验收:文档准备必须齐全且符合标准,可以进入文档验收流程

  2)程序功能验收

  3)验收测试完成

  3、验收完成后提交程序:

  验收完成锁定的程序最终版本,要求保存至版本库中。

8.维护

系统维护是项目管理过程的最后一个阶段,是旧项目的结束,亦是新项目的开始。一旦系统进入维护阶段,说明新的需求又开始诞生了。

因此,在系统正式上线之前就应制定好系统维护的工作规则, 包括对可能出现的问题进行分类、制定问题处理流程等,以避免种种异常情况造成的工作混乱。

维护的核心目的还是解决客户的问题,满足客户的需求

至此全部步骤完毕

二.软件开发进度

表图




三.软件开发团队组成以及开发成本


以上各步都由不同的开发角色完成,如下图


假设开发周期一个月,地点在广州

各开发人员的薪资分别为产品经理(兼项目经理)20k,后端开发程序员18k,安卓端程序员15k、ios端程序员18k,测试8k,UI设计师15k

一个月的总工资为 20+18+15+18+8+15 全员三险一金等 总计100k

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,670评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,928评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,926评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,238评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,112评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,138评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,545评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,232评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,496评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,596评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,369评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,226评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,600评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,906评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,185评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,516评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,721评论 2 335

推荐阅读更多精彩内容

  • 数字测试 课程分享21 这是通识选修课《经济研究中的计算方法》第七讲的内容之一。 数字测试是行为经...
    彭求实阅读 304评论 0 1
  • 今天忘记更新了 这几天在医院忙, 今天收拾所有的东西 明天还要去医院 最近疫情比较紧张 每天做着核酸 希望我们每个...
    是余同学啊阅读 80评论 0 0
  • 2022.10.2周日阴 放假第二天,其实和大礼拜差不多。控制饮食。 老公要送妹妹去机场。因为是十点多就睡了于是五...
    偏偏喜欢你sky阅读 105评论 0 1
  • 也许是昨天午休时间睡得太长的缘故吧,今天早上起来,感觉胸部有些疼痛,跑步回来之后,疼痛有所缓解,几乎不疼了。今年刚...
    桂亘阅读 163评论 1 4
  • 作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:638302184,不管你是小白...
    iOS开发之家阅读 3,564评论 0 18