一、软件开发生命周期定义
软件的生命周期,是指软件从设计开发到上线运营再到停止使用的完整过程,分为“三个时期八个阶段”,分别为:
可行性研究阶段 | 需求分析阶段 ----> 软件定义期
概要设计阶段 | 详细设计阶段 | 开发实现阶段 | 项目测试阶段 ----> 软件开发期
部署阶段 | 维护阶段 ----> 软件维护期
二、软件开发生命周期详细介绍:
1.软件定义期
(1)可行性研究阶段 --> 《可行性研究报告》、《项目开发计划》
分析软件各方面的可行性(IF CAN DO),例如:技术(选择一个可以实现该功能的技术)、人员、资金、时间、设备、政策法规、风俗、回报率等。
(2) 需求分析阶段 --> 《需求分析报告》
分析软件需要实现的功能和需要具备的性能(WHAT TO DO),例如:软件必须完成的主要/次要功能点,软件的安全性、可靠性、精度等性能需求。
2.软件开发期
(3) 概要设计阶段 --> 《概要设计说明》
从总体上对项目进行设计(HOW TO DO 1.0),例如:技术选型(软件、硬件、网络)、功能模块划分、数据结构设计、制定开发和测试计划。
(4) 详细设计阶段 --> 《详细设计说明》
在概要设计的基础上,由各模块负责人拟定可供实施的开发指导(HOW TO DO 2.0),主要需要完成:模块的输入输出、模块内部的数据结构、模块内部的处理算法、模块内部的状态转换过程。
(5) 开发实现阶段 --> 《开发进度报告》...
由前后端工程师协同完成项目各部分的编码工作,例如:UI/UE设计师、前端工程师、后台工程师
(6)项目测试阶段
在软件开发完毕之后,制定详细的测试计划并严格按照测试计划对软件进行错误检查,主要分为三个阶段:单元测试、组装测试及系统测试。测试方法主要有白盒测试和黑盒测试两种。
3.软件维护期
(7)部署阶段
软件开发完毕并完成严格且详细的测试之后,需要从开发模式(development mode)部署到用户的生产环境即生产模式(production mode)之下。
(8) 维护阶段
这一阶段是软件开发周期中持续时间最长的一个阶段,主要分为纠错性维护和改进性维护。
三、服务器概述
1.什么是服务器?
简单的来说,服务器就是网络环境中的高性能计算机,它响应客户端的各种请求,并为其提供相应的各种服务。设计模式分为C/S模型和B/S模型。
2.硬件服务器
指提供计算服务的设备,和普通计算机类似,具有CPU、内存、系统总栈、硬盘等。由于其需响应大量请求并提供服务,在安全性可靠性上也有一定要求,所以与通用计算机相比,其各方面性能要求较高。按照大小可以分为工作站、小型机、中型机、大型机和超级计算机等。
3.软件服务器
主要指服务器应用程序,它负责监听特定端口,并接收客户端的请求。通常将其按照提供服务的不同主要分为:DNS服务器(把域名解析为计算机的IP地址)、Web服务器,数据库服务器,FTP服务器,域名服务器等等。
4.如何访问服务器?
访问网络上任一台服务器,必须提供以下三个信息:
(1)访问协议:规定两者之间沟通的语言,如TCP/IP、FTP等
(2)主机地址:服务器的域名或IP地址
(3)端口号:一台计算机上采用不同端口提供不同服务,所以需要告知所需服务采用的端口号。
附:阿里面试题
Question:在浏览器地址栏中输入:www.taobao.com回车后,直到页面上出现淘宝页面,这之间的过程是怎样的?
![07ef4438-a614-eb11-8da9-e4434bdf6706.png](http://p03.5ceimg.com/content/07ef4438-a614-eb11-8da9-e4434bdf6706.png)
————————————————
版权声明:本文为CSDN博主「Aimee_ice」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Aimee_ice/article/details/81838046