软件工程导论

房屋租赁管理系统

一、需求分析

      现在由于房价的高涨,越来越多的人选择了租房子,尤其是刚毕业的大学生。由此,如果有一个专门的网站或者软件能够提供租房的信息,那么它所产生的影响无疑是比较大的。

房屋租赁管理系统的功能性需求包括:

     在房屋租赁管理系统中,设置一个管理员,管理员有修改、添加、删除系统中任何资料的权限;普通用户可以直接进入系统,但只有查询信息的权限,不能增加、删除和修改信息。其中查询功能有多种,可按照房屋所在地址、价位和装修的程度进行查询。其功能可概括如下:

(1)创建房屋租赁信息并以磁盘文件保存。

(2)系统设置登陆界面,并分为用户和管理员两种权限。

(3)能按价位、装修程度、地址三种查询方式查询房子的信息, 并输出符合选  项的房子

(4)能随意进行添加、删除和修改房子的租赁信息

(5)能对手机号码、房屋租赁价格、房屋面积、门牌号、是否等进行检索,规范输入。

(6)选择退出系统时会将系统的信息重新写入文件中,并返回到登陆的界面,

 

二、用例建模

1.系统用例图

该用例图中主要包括普通用户和系统管理员两个参与者,在该用例中,普通用户只有查看信息的权限,系统管理员则具有查询、添加、修改、删除信息的权限。

 

三、流程图

四、数据表、函数

变量类型

变量名称

具体含义

int

n1

作为固定常数(5)传参进入判断输入是否为整数的函数

m

作为固定常数(4)传参进入判断输入是否为整数的函数

d

作为固定常数(3)传参进入判断输入是否为整数的函数

l

作为固定常数(2)传参进入判断输入是否为整数的函数

v

作为固定常数(1)传参进入判断输入是否为整数的函数

i1

作为计数器

price1

查询价位函数中判断价格的最低值

price2

查询价位函数中判断价格的最低值

temp

作为整个程序的标记,值为1时继续运行,值为0时退出

e1,

作为判断门牌号是否为整数函数的返回值接收变量

zj

判断最低价格是否大于最高价格的临时变量

mp1

e1相同,放在不同函数

*acd

指针变量,接受密码函数返回值。

char

flag

判断输入是否为提示数字函数时的形参

dp

装修程度类型,有"maopi","jianzhuang","jingzhuang"三种值

price3

作为输入价格的最低值

price4

作为输入价格的最高值

rank

作为判断装修程度函数的实参

m

 

作为一个标记

n

作为输入的数字判断选择的功能

d1

输入是否继续查询市的变量

d2

输入是否继续查询区县的变量

d3

输入是否继续查询街道的变量

 

d4

输入是否继续查询门牌号的变量

nn

作为判断是否需要清屏的输入变量

pd

作为标记

log

登陆界面的功能选择输入

judge

选择是否更改权限

select

判断是否修改密码

enum

lei

作为枚举类型的变量判断装修程度

### 关于《软件工程导论》学习资料与笔记 #### 一、定义理解 软件工程是指研究和应用如何以系统化、规范化以及可度量的方式开发、运行并维护软件的过程,即将工程方法应用于软件领域[^1]。 #### 二、组成部分解析 该学科主要由三大部分构成:程序设计、数据处理及文档编写。这三大要素共同作用确保了整个项目的顺利实施和发展。 #### 三、历史沿革与发展背景 随着信息技术的进步,特别是计算机硬件性能提升带来的复杂性增加,传统编程方式难以满足日益增长的需求。因此,在此背景下诞生了专门针对这些问题而设立的新分支—软件工程技术。其核心在于解决大型项目中存在的效率低下等问题,并通过引入新的理论和技术手段来提高生产率和服务质量[^2]。 #### 四、具体实践工具介绍-UML顺序图 作为一种可视化表达形式之一,UML中的顺序图用于描述对象间按时间序列发生的交互过程;它不仅能够清晰展示不同实体之间的关系变化情况,还支持对特定业务逻辑进行精确建模。绘制此类图表通常遵循以下几个原则: - 明确所需模拟的任务流程; - 合理布局参与交互的对象位置及其对应的生命线条目; - 基于实际需求补充必要的通信指令说明; - 整合局部视图为全局视角提供全面的支持[^4]。 ```python # Python UML Sequence Diagram Example (Pseudo Code) class Object: pass def draw_sequence_diagram(): obj_list = [] # List to hold all objects involved in the interaction. while True: action = input("Enter next action or 'done' when finished:") if action.lower() == "done": break sender, receiver, message_type = parse_action(action) add_message_to_timeline(sender,receiver,message_type,obj_list) draw_sequence_diagram() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值