如何开发一个系统

article/2025/5/14 10:04:56

文章目录

  • 前言
  • 一、流程
  • 二、需求分析
    • 1、调研
    • 2、画图
  • 三、系统设计
    • 1、架构
      • 2、模块设计
      • 3、画图
  • 四、系统开发
      • 1、开发
      • 2、协作
      • 3、测试
  • 总结
  • 体会


前言

作为一名大二学生,参加校内比赛做了一个绩效管理系统,所以写一下如何开发一个系统。


系统图片

一、流程

制作一个系统有三步,首先进行需求分析,其次进行系统设计,最后进行系统开发。

前面的步骤做好以后,系统开发和进度规划方面就有了参考,不会在开发过程中感到迷茫。

二、需求分析

只有准确了解了用户需求,才能设计出一个实用的系统。

如果只是让系统成为技术的载体,这个系统是称不上一个作品的,一定要完成某些能够称之为需求的任务,并且是准确完成用户需求才好。

1、调研

做一个简单的系统,可以直接询问你的用户,想要让系统完成什么事情。比如想做一个社区,为了让某个群体有交流的平台,再细致一点,想要交流得更舒适,喜欢用语音、图片交流或者日志等。

也可以在网上搜索,通过对比,补全、优化想要的需求。

还可以通过实际考察和数据平台上调研的方式获取最贴近实际的需求,找出当前这个用户群体最缺乏什么,比如互联网+刚兴起时,很多传统的企业都需要摆脱复杂的纸质记账,或者只能在本地设备使用的系统,需要一个随处可以登录、并且操作简单、数据安全、处理高效的财务管理系统。

需求调研,甚至是为了让系统做得更好而去做竞品分析,这在做产品方面,有更加成熟的模式进行参考。

如:如何做需求调研

2、画图

我们可以利用画图工具,抽象出用户的需求

例如,系统要被不同的人使用,登录后有普通用户和管理员。普通用户的需求就是修改自己的账户信息,查看自己的一些排名,而管理员的需求除了修改信息还要管理排名数据库、账户数据库。

管理员
登录
修改账户信息
管理数据库
普通用户
登录
修改账户信息
查看排名

三、系统设计

根据分析得到的系统需求,我们要进行系统架构的设计和功能模块的设计。

1、架构

一个简单的系统一般具有界面和数据库两个部分架构,也就是开发中常提到的前端和后端。

当前业界常见的架构设计

除此之外,系统部署在网络上,还是本地,这也叫做架构。
从前有C/S模式(Client/Server,客户/服务器模式),现在基本都是B/S模式(Browser/Server,浏览器/服务器模式)了

C/S和B/S模式

2、模块设计

一个系统不可避免的具有许多模块,他们之间有的互相独立,有的相互联系,而每个模块又有自己许多的功能和事件等,这一步仍然需要依靠需求部分的结果来设计相应的模块。

3、画图

我们仍需将架构和模块设计画成实体图或者根据需要画出流程图、时序图、类图等,对于一个系统来说,功能模块间如何互相作用,以及作用的顺序也是需要详细设计的,同样,这个部分也要画图。画图有利于直观的理解和程序开发。

现在有各种画图工具通过点击、拖拽图形就能够画好图,这里不做推荐。作者喜欢使用输入文本生成图片的工具,比如Typroa支持的mermaid工具,进行画图,“a((圆形))–>b[矩形]”可以生成下面这样的图片

圆形
矩形

四、系统开发

1、开发

按照前面的设计开发系统,这时候主要是代码怎么实现逻辑和界面布局的设计了,具有一定的专业性

2、协作

开发一个系统可能会遇到多个人协作的情况。
简单一点的协同工具可以使用SVN,适合小组内有程序功底不强的成员,理解和学习能力较强建议使用git。

3、测试

开发一个系统,难免会有需求考虑不周到、需求没有完全完成、代码逻辑有漏洞等情况发生,所以我们需要测试,对每一个函数编程时需要测试,对每一个功能、模块开发时需要测试,最后,整个系统是否完善等等也需要测试。

软件测试方法


总结

本文仅仅简单介绍了如何开发一个系统,提供了一个思路和一些参考,可实际操作部分很少,实际开发还需要对各部分进行深入了解和学习。

第一篇博客,多有不足,欢迎指正。

体会

比赛体会:由于作者参加的比赛是创新创业作品设计大赛,在比赛最后评委老师说有的选手没有做到创新,这一点让我印象深刻。

关于创新:有的作品说自己的创新点在于,用上了B/S架构,但是B/S模式早就已经流行;有的作品里有很多新兴的技术,比如做出来一个大数据分析平台,上面有很多花哨的可视化数据…但其实,包括作者在内,很多作品都没有做到创新,只是学习了自己没有学过的技术,或者用上了没有用过的技术。真正的创新一定是要对当下的市场或者说行业做调研,有足够多的信息对比、数据支撑下,才能有自己的想法,做出创新。不一定是用最新的技术,创新也不是只比谁学习能力强,短期内谁先掌握某种技术谁就获胜。

开发收获:开发过程中还涉及到了时间管理、资料查找、团队协作、文档写作、答辩等方面的锻炼,作者确实体会到了以赛促学,用项目带动自己技术提升的好处,有可能会另写博客介绍这些方面。


http://chatgpt.dhexx.cn/article/CLOXuYVX.shtml

相关文章

个人微信机器人开发

目前大多数公司中的消息通知使用邮件、短信、钉钉、企业微信等等,而微信或者QQ这种使用量较大的工具,通知和管理机制并不完善。特别是很多利用微信来进行客户管理沟通的人,例如我,只好借助微信机器人来实现通知和管理功能。 本篇…

手把手教你从零基础开始搭建个人网站

曾有不少人问过我怎么搭建自己的博客。其实搭建个人博客的方式有很多,有使用Git Page的,有使用一些博客平台的,也有自己购买网站空间或服务器搭建的,更有大神索性自己开发一套博客程序来用的。本文所介绍的方法全部基于Linux系统服…

手把手从零到有的个人网站开发

前言 很多人都想有一个自己的网站。那么,刚好Romki最近打算开始创建一个自己的个人网站。 就开始和我一起从零开始吧! 一、整个云服务器吧 Romki 这里买的是腾讯的云服务器,具体购买什么鸭子的服务器,如果大家强烈需要&#xff0…

【个人网站开发 · 记录三】制定开发方案阶段 —— 技术角度分析如何去做一个个人网站

前言 当下的自媒体时代,体现在一个爱折腾的程序猿身上,那么最好的方式莫过于 —— 搭建自己的个人网站。网站上可以有自己的个人介绍,技术博客,项目总结,生活分享等等。简直是COOL !(面试神器有…

【个人网站开发 · 记录二】UI设计阶段 —— 设计角度分析如何去做一个个人网站

前言 当下的自媒体时代,体现在一个爱折腾的程序猿身上,那么最好的方式莫过于 —— 搭建自己的个人网站。网站上可以有自己的个人介绍,技术博客,项目总结,生活分享等等。简直是COOL !(面试神器有…

个人网站开发——全栈项目开发日记

文章目录 第一种部署方式(前端打包到后端)打包前端后端 第二种部署方式(Nginx代理-推荐)nginx代理配置访问路径端口后端端口 服务器运行传到服务器在服务器后台运行 功能实现记录axios请求使后端响应数据对访问者ip获取对访问者ip…

c语言:输入字符串,并判断字符串的长度

c语言中表示输入数据的类型,其格式符和意义下表所示。 格式 字符意义 d 输入十进制整数 o 输入八进制整数 x 输入十六进制整数 u 输入无符号十进制整数 f或e 输入实型数(用小数形式或指数形式) c 输入单个字符 s 输入字符串 转义字符 转义字符是一种特殊的字符常量。…

C语言:字符数组的输入输出

目录 用printf输出 用scanf输入 用gets输入 用puts输出 用printf输出 输出方法1&#xff1a;printf 逐个字符输出。 void main(void){ char c[ ] "I am happy"; int i; for(i 0; i < 10; i){ printf("%c", c[i]); } pri…

c语言---字符输入

1 getchar() getchar接受一个字符 可输入任何字符 结束标志由自己决定,需在后面手动补全\0 输入 &#xff1a;abcd d 打印&#xff1a;6 2 fgets() fgets(); 函数原型 char *fgets(char *str, int n, FILE *stream) 输入读取&#…

C语言学习(十一)之字符输入/输出

文章目录 一、单字符I/O&#xff1a;getchar()和putchar()二、缓冲区2.1 什么是缓冲区2.2 为什么需要缓冲区2.3 缓冲区分类2.3.1 完全缓冲I/O2.3.2 行缓冲I/O 三、结束键盘输入3.1 文件、流和键盘输入3.2 文件结尾 四、重定向和文件4.1 重定向输入4.2 重定向输出4.3 组合重定向…

C语言_输出字符串和获取字符串

输出字符串和获取字符串 01——输出字符串 使用puts函数来输出字符串 使用printf函数来输出字符串 通过puts函数和printf函数都能够实现字符串输出 02——获取字符串 使用scanf函数来获取字符串 使用gets()函数来获取字符串. gets函数原型&#xff1a;char* gets(char *st…

c语言之printf函数输出字符数据

//用printf函数输出字符数据 #include <stdio.h> int main() {//定义两个变量char c a;int i 97;//输出变量%c以字符形式输出&#xff0c;%d以十进制整型形式输出printf("c%c,c%d\n", c, c);printf("i%c,i%d\n", i, i);return 0; } 运行结果&…

在C语言中怎样定义一个字符串并输入输出

在C语言中没有字符串类型&#xff0c;用字符数组处理字符串 字符数组定义&#xff1a;char 数组名 [常量表达式][常量表达式] 说明&#xff1a;一维字符数组&#xff0c;用于存储和处理一个字符串 。二维字符数组&#xff0c;用于同时存储和处理多个字符串 输入输出方法&…

用C语言输出一个字符串的所有子串

前言 啥是子串? 串中任意个连续字符组成的子序列称为该串的子串。 包含子串的串相应地称为主串。 ①空串是任意串的子串。 ②任意串是其自身的子串。 例&#xff1a;字符串"12"它的字串为"1",“2”,“12”,空串。共四个字串。 原理 懂了子串的概念我们…

C语言 字符数据输入输出

文章目录 C语言的标准库函数头文件 字符数据的输入输出putchar 函数&#xff08;单字符输出函数&#xff09;输出一个字符&#xff1a;输出控制字符输出转义字符 getchar 函数&#xff08;单字符输入函数&#xff09; 所谓数据的输入输出是从计算机角度出发的。 C语言本身没有…

c语言输出汉字字符串,c语言怎么输出字符串

C语言输出简单的字符串&#xff0c;例如个人信息的相关字符串&#xff0c;包括姓名、出生日期、号码。我们可以通过printf()函数直接打印输出指定信息字符串。 推荐教程&#xff1a;《C视频教程》 下面我们就通过简单的代码示例&#xff0c;给大家介绍c语言输出个人信息相关字符…

C语言程序——输出字符

为学日益&#xff0c;为道日损 文章目录 前言一、使用C语言一般格式显示字符二、编写代码2.运行结果 总结 前言 一个标准的C语言程序具有的一般格式&#xff1a; 预处理命令和全局性的声明 main() 主函数 { 局部变量声明 语句序列 } fun1()函数1 { 局部变量声明 语句序列 } fu…

C语言字符和字符串的输入与输出

C语言 一、输入单个字符 1、scanf函数输入单个字符 C语言scanf输入时缓冲区问题 scanf函数是标准输入流&#xff08;从键盘接收数据)&#xff0c;接收的数据放入输入缓冲区中&#xff0c;其中就包括在键盘输入的空格、回车这类字符&#xff0c;当你用%d接收时是不会影响的&a…

【C语言--字符数据的输入输出】

1、putchar函数–字符输出函数 功能是在显示器上输出单个字符。形式为&#xff1a;putchar(字符变量); 例如&#xff1a; putchar(A);//输出大写字母A putchat(x);//输出字符变量x的值2、getchar函数–键盘输入函数 功能是从键盘上输入一个字符。形式为&#xff1a;getchar(…

C语言打印输出字符串的几种方法

思路分析 知识点补充 1&#xff0c;在C语言中&#xff0c;一维数组的数组名实际上就是指向数组首项元素的指针。 2&#xff0c;如果指针p已经指向一个字符串&#xff0c;判断字符串是否结束&#xff0c;一般采用while(*p!\0)的办法。 以打印输出arr[30]"hello world&qu…