java面试官问有没有写过文档(面试java程序员),我想知道写文档是指什么,是设计文档还是需求文档还是其他

java面试官问有没有写过文档(面试java程序员),我想知道写文档是指什么,是设计文档还是需求文档还是其他,第1张

我想他的文档是指在项目开发过程中 不同阶段的文档

我们项目组开发基本是基于瀑布模型开发 每个阶段都会输出文档指导后续工作开展
一般se下发需求后 由我们出 详细需求设计文档
代码开发完成了 转测试时我们会写 数据库设计文档 , *** 作手册 (这个也算)
还有就是 版本升级说明书 版本功能清单 软件介绍
这个是大概的文档 还有其他的文档编写时间 主要是代码开发前 与 转测试后

1 软件工程论文

[编辑本段]基本信息 软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义: 软件工程(1)、BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

(2)、IEEE在软件工程术语汇编中的定义:软件工程是:1将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2在1中所述方法的研究 (3)、FritzBauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 目前比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

(4)、《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。

其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。 [编辑本段]目标 软件工程的目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用软件工程性、可适应性、可移植性、可追踪性和可互 *** 作性并且满足用户需求的软件产品。

追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。下面分别介绍这些概念。

(1)可修改性(modifiablity)。容许对系统进行修改而不增加原系统的复杂性。

它支持软件的调试与维护,是一个难以达到的目标。 (2)有效性(efficiency)。

软件系统能最有效地利用计算机的时间资源和空间资源。各种计算机软件无不将系统的时/空开销作为衡量软件质量的一项重要技术指标。

很多场合,在追求时间有效性和空间有效性方面会发生矛盾,这时不得不牺牲时间效率换取空间有效性或牺牲空间效率换取时间有效性。时/空折衷是经常出现的。

有经验的软件设计人员会巧妙地利用折衷概念,在具体的物理环境中实现用户的需求和自己的设计。 (3)可靠性(reliability)。

能防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因 *** 作不当造成软件系统失效的能力。对于实时嵌入式计算机系统,可靠性是一个非常重要的目标。

因为软件要实时地控制一个物理过程,如宇宙飞船的导航、核电站的运行,等等。如果可靠性得不到保证,一旦出现问题可能是灾难性的,后果将不堪设想。

因此在软件开发、编码和测试过程中,必须将可靠性放在重要地位。 (4)可理解性(understandability)。

系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。

(5)可维护性(maintainability)。软件产品交付用户使用后,能够对它进行修改,以便改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化,等等。

由于软件是逻辑产品,只要用户需要,它可以无限期的使用下去,因此软件维护是不可避免的。软件维护费用在软件开发费用中占有很大的比重。

可维护性是软件工程中一项十分重要的目标。软件的可理解性和可修改性有利于软件的可维护性。

(6)可重用性(reusebility)。概念或功能相对独立的一个或一组相关模块定义为一个软部件。

软部件可以在多种场合应用的程度称为部件的可重用性。可重用的软部件有的可以不加修改直接使用,有的需要修改后再用。

可重用软部件应具有清晰的结构和注解,应具有正确的编码和较低的时/空开销。各种可重用软部件还可以按照某种规则存放在软部件库中,供软件工程师选用。

可重用性有助于提高软件产品的质量和开发效率、有助于降低软件的开发和维护费用。从更广泛的意义上理解,软件工程的可重用性还应该包括:应用项目的重用,规格说明(也称为规约)的重用,设计的重用,概念和方法的重用,等等。

一般来说,重用的层次越高,带来的效益也就越大。 (7)可适应性(adaptability)。

软件在不同的系统约束条件下,使用户需求得到满足的难易程度。适应性强的软件应采用广为流行的程序设计语言编码,在广为流行的 *** 作系统环境中运行,采用标准的术语和格式书写文档。

适应性强的软件较容易推广使用。 (8)可移植性(portability)。

软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。为了获得比较高的可移植性,在软件设计过程中通常采用通用的程序设计语言和运行环境支撑。

对依赖于计算机系统的低级(物理)特征部分,如编译系统的目标代码生成,应相对独立、集中。这样,与处理机无关的部分就可以移植到其他系统上使用。

可移植性支持软件的课重用性和课适应性。 (9)可追踪性(tracebility)。

根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力。软件可追踪性依赖于软。

2 软件工程毕业论文怎么写

软件工程可以写的题目多啊。开始也不怎么懂,还是学姐给的文方网,写的《基于Windows平台的HIPS系统设计与实现》,靠谱的说

研究生教育网络管理系统的设计与实现

WMS-2000A轮机模拟器数据通信系统设计与实现

洗衣机模拟运行控制系统的设计与实现

机车信号记录器数据分析处理系统的设计与实现

分布式自动检测系统RS485通信网络的设计与实现

计划生育管理信息系统的设计与实现

医院“一卡通”系统的设计与实现

列车三维驾驶仿真系统的设计与实现

一种图书外采查重系统的设计与实现

基于C/S模式的网络文件管理系统的设计与实现

自动化仓库管理系统的设计与实现

四川省卫生统计数据采集与决策支持系统设计与实现

ATM应用系统EMV迁移的设计与实现

基于B/S模式的药品信息咨询系统的设计与实现

基于LFAP的网络流量统计分析系统的设计与实现

传真管理信息系统的设计与实现

工业机器人三维仿真系统的设计与实现

单位网络设备环境智能监控系统设计与实现

基于CC1020芯片无线传输系统的设计与实现

公安派出所综合信息管理系统设计与实现

基于WEB的库存管理系统设计与实现

基于工作流的AUTOBANK管理系统设计与实现

具有主动功能的连锁经营企业配送中心管理信息系统的设计与实现

基于JavaEE技术的在线考试系统的设计与实现

学生评教系统的设计与实现

微小型电动无人机动力系统试验台的设计与实现

基于F1103 GPRS MODEM的家校通系统设计与实现

基于嵌入式Linux的远程家庭医疗监护系统设计与实现

基于Windows *** 作系统的智能建筑物综合布线管理系统的设计与实现

基于NET技术的网上购物管理系统的设计与实现

变电检修管理信息系统设计与实现

天津地铁1号线车站乘客向导系统的设计与实现

基于B/S结构的电路分析网上答疑系统的设计与实现

应用PDA组建无线IC卡表抄收系统的设计与实现

非计算机专业计算机课程考试系统设计与实现

基于GPRS网络的煤矿瓦斯监控系统的设计与实现

惯性组合导航系统接口子系统的设计与实现

人寿保险老业务综合处理系统的设计与实现

FORTRAN语言题库管理系统的设计与实现

楼宇信息系统的设计与实现

倒闸实训系统无线遥控的设计与实现

C/S模式下的电子邮件系统设计与实现

基于LINQ三层架构仓库管理系统的设计与实现

一种宽带无线移动视频调度系统的设计与实现

浅谈远程监控机房温湿度报警系统的设计与实现

学术论文共词分析系统的设计与实现

基于Web的SQLServer远程备份管理系统的设计与实现

基于Spring框架的北京林业大学图书馆门户系统设计与实现

基于XML的研究生网络选课系统设计与实现

3 一个软件工程师应该具备什么样的素质

最低027元开通文库会员,查看完整内容> 原发布者:北大青鸟广安门校区 软件工程师应该具备的技能有哪些 软件工程师应该具备的技能有哪些?我认为,软件工程师用该具备的技能主要为以下几点: 1编程语言能力 作为一名专业的软件工程师,应该能够熟练掌握JAVA语言,并且能够深入理解OOP、OOA、OOD等编程思想。

精通一门编程语言能为以后的软件开发打下坚实的基础。 2编码能力 这里说的编码可不是照着书本敲代码,而是能够独立的运用代码,编写一个程序出来。

有很多软件工程师,他们都是随意堆砌网上搜来的代码,根本不管可读性和可维护性,只要能实现功能就行了,缺乏最基本的职责素养。 我认为,对于软件工程师或程序员来说,代码就像自己的孩子一样,一定要付出感情,这样才能编写出好的程序。

3学习能力 IT技术可谓是更新换代最快的了,从市面上的电脑和手机就可以看出来。所以,只依靠自己之前学到的知识,很快就会被这个时代所淘汰,软件工程师应具备的技能里很重要的一点就是学习能力。

因为只有具备了学习能力,才能在离开学校之后仍然能够独立地学习最新的技术,同时能够自主的发现现在有什么新技术,市场上流行的技术元素与市场需求的变化。 4设计能力 一个优秀的软件工程师不仅仅具备扎实的专业知识与技能,而且还要具备一定的设计能力。

因为只有这样,才能使一个软件或者应用更加完美,更加容易受到人们的欢迎,从而获得更广阔的市场。 5团队协作能力 软件开发并不是孤军奋战,很多时候一个软件需要几个人。

4 软件工程对写毕业论文有什么用处

当今中国软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义: 软件工程(1)、BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

(2)、IEEE在软件工程术语汇编中的定义:软件工程是:1将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2在1中所述方法的研究 (3)、FritzBauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 目前比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

(4)、《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。

其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。[编辑本段]目标 软件工程的目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用软件工程性、可适应性、可移植性、可追踪性和可互 *** 作性并且满足用户需求的软件产品。

追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。下面分别介绍这些概念。

(1)可修改性(modifiablity)。容许对系统进行修改而不增加原系统的复杂性。

它支持软件的调试与维护,是一个难以达到的目标。 (2)有效性(efficiency)。

软件系统能最有效地利用计算机的时间资源和空间资源。各种计算机软件无不将系统的时/空开销作为衡量软件质量的一项重要技术指标。

很多场合,在追求时间有效性和空间有效性方面会发生矛盾,这时不得不牺牲时间效率换取空间有效性或牺牲空间效率换取时间有效性。时/空折衷是经常出现的。

有经验的软件设计人员会巧妙地利用折衷概念,在具体的物理环境中实现用户的需求和自己的设计。 (3)可靠性(reliability)。

能防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因 *** 作不当造成软件系统失效的能力。对于实时嵌入式计算机系统,可靠性是一个非常重要的目标。

因为软件要实时地控制一个物理过程,如宇宙飞船的导航、核电站的运行,等等。如果可靠性得不到保证,一旦出现问题可能是灾难性的,后果将不堪设想。

因此在软件开发、编码和测试过程中,必须将可靠性放在重要地位。 (4)可理解性(understandability)。

系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。

(5)可维护性(maintainability)。软件产品交付用户使用后,能够对它进行修改,以便改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化,等等。

由于软件是逻辑产品,只要用户需要,它可以无限期的使用下去,因此软件维护是不可避免的。软件维护费用在软件开发费用中占有很大的比重。

可维护性是软件工程中一项十分重要的目标。软件的可理解性和可修改性有利于软件的可维护性。

(6)可重用性(reusebility)。概念或功能相对独立的一个或一组相关模块定义为一个软部件。

软部件可以在多种场合应用的程度称为部件的可重用性。可重用的软部件有的可以不加修改直接使用,有的需要修改后再用。

可重用软部件应具有清晰的结构和注解,应具有正确的编码和较低的时/空开销。各种可重用软部件还可以按照某种规则存放在软部件库中,供软件工程师选用。

可重用性有助于提高软件产品的质量和开发效率、有助于降低软件的开发和维护费用。从更广泛的意义上理解,软件工程的可重用性还应该包括:应用项目的重用,规格说明(也称为规约)的重用,设计的重用,概念和方法的重用,等等。

一般来说,重用的层次越高,带来的效益也就越大。 (7)可适应性(adaptability)。

软件在不同的系统约束条件下,使用户需求得到满足的难易程度。适应性强的软件应采用广为流行的程序设计语言编码,在广为流行的 *** 作系统环境中运行,采用标准的术语和格式书写文档。

适应性强的软件较容易推广使用。 (8)可移植性(portability)。

软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。为了获得比较高的可移植性,在软件设计过程中通常采用通用的程序设计语言和运行环境支撑。

对依赖于计算机系统的低级(物理)特征部分,如编译系统的目标代码生成,应相对独立、集中。这样,与处理机无关的部分就可以移植到其他系统上使用。

可移植性支持软件的课重用性和课适应性。 (9)可追踪性(tracebility)。

根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力。软件可追踪性依赖于软件开发各个阶段文档和程序的完整性、一致性和可理解性。

降低系统的复杂性会提。

5 软件工程的三大文档是什么

01立项调查报告

02立项建议书

03立项评审报告

04项目设计开发任务书

05项目计划

06质量保证计划

07配置管理计划

08需求分析说明书

09概要设计说明书

10详细设计说明书

11数据库设计说明书

12数据库表详细设计

13单元测试计划

14测试脚本

15单元测试报告

16系统测试计划

17验收申请书

18验收评审报告

19客户验收报告

21审核反馈表

22软件评审报告

23变更需求报告

24设计变更报告

26项目管理报告

27项目总结报告

一共这么多,三大报告是

需求分析说明书

概要设计说明书

详细设计说明书

6 各位前辈,我要写软件工程研究生毕业论文,但不懂该专业,可有热心

1、论文题目:要求准确、简练、醒目、新颖。

2、目录:目录是论文中主要段落的简表。(短篇论文不必列目录) 3、提要:是文章主要内容的摘录,要求短、精、完整。

字数少可几十字,多不超过三百字为宜。 4、关键词或主题词:关键词是从论文的题名、提要和正文中选取出来的,是对表述论文的中心内容有实质意义的词汇。

关键词是用作机系统标引论文内容特征的词语,便于信息系统汇集,以供读者检索。 每篇论文一般选取3-8个词汇作为关键词,另起一行,排在“提要”的左下方。

主题词是经过规范化的词,在确定主题词时,要对论文进行主题,依照标引和组配规则转换成主题词表中的规范词语。 5、论文正文: (1)引言:引言又称前言、序言和导言,用在论文的开头。

引言一般要概括地写出作者意图,说明选题的目的和意义, 并指出论文写作的范围。引言要短小精悍、紧扣主题。

〈2)论文正文:正文是论文的主体,正文应包括论点、论据、论证过程和结论。主体部分包括以下内容: a提出-论点; b分析问题-论据和论证; c解决问题-论证与步骤; d结论。

6、一篇论文的参考文献是将论文在和写作中可参考或引证的主要文献资料,列于论文的末尾。参考文献应另起一页,标注方式按《GB7714-87文后参考文献著录规则》进行。

中文:标题--作者--出版物信息(版地、版者、版期):作者--标题--出版物信息所列参考文献的要求是: (1)所列参考文献应是正式出版物,以便读者考证。 (2)所列举的参考文献要标明序号、著作或文章的标题、作者、出版物信息。

7 软件工程师主要学什么

需要掌握以下的知识 : (一)NET方面的开发⒈熟悉开发体系,熟悉C# ASP NET;⒉熟悉SQLServer,Oracle数据库开发;⒊具有企业管理系统项目经验;4了解企业ERP及财务管理软件(用友,金蝶)者优先;5善于沟通,能独立撰写方案。

为人诚实,善于学习,做事认真负责,积极主动,具有敬业精神,有团队精神。(二)JAVA应用程序开发1熟练使用Struts2+Spring+Hibernate2掌握Jquery3掌握Java4熟悉Oracle5掌握xml/webservice6掌握OOD、OOP7基本文档写作能力(三)web、数据库方面的开发⒈练掌握ASP,NET;等编程语言,熟悉Net开发环境,理解Net Framework,理解并能熟练使用WebService、O/R mapping、Remoting、多线程等技术;2热衷于互联网WEB开发,热衷于钻研最新的前沿技术,精通XML,Javascript,CSS,AJAX等WEB前端技术;3熟练的技术文档编写能力,熟练使用Rose,Power Design,Visio等建模和设计软件,有一定的架构设计能力;4精通SQL server数据库技术,了解数据库性能调优者优先(四)php项目开发⒈使用PHP语言开发互联网应用程序;⒉网站产品和网站功能模块的开发与维护;⒊与页面设计师协调沟通,编写部分Javascript和HTML;⒋参与底层MVC框架的编写与维护。

软件工程师一般指从事软件开发职业的人。软件工程师是一个认证考试,具体地说是从事软件职业的人员的一种职业能力的认证,通过它说明具备了工程师的资格。

软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言/C++/JAVA等)、数据库技术(SQL/ORACLE/DB2等)等,还有诸多如JAVA SCRIPT、AJAX、HIBERNATE、SPRING等前沿技术。此外,关于网络工程和软件测试的其他技术也要有所涉猎。

对于软件工程师,不太重视学历,但并不是对学历没有要求,重点关注项目的经验和学习知识的能力,能否利用软件工程专业知识来解决问题,根据岗位不同,对软件工程师的要求也有所不同。具体能力要根据岗位和自己的兴趣爱好选定自己的职业规划方向,一方面要详细了解软件工程师的要求,可以关注企业的招聘信息;一方面自己要贮备通用的知识技能,广泛阅读相关的计算机材料对自己以后的发展大有帮助。

可以确定的是软件工程师的前途在未来的发展依然是不断升温的职业,比较需要有技术和良好前景的专业之一。工作内容:1、指导程序员的工作;2、参与软件工程系统的设计、开发、测试等过程;3 、协助工程管理人保证项目的质量;4 、负责工程中主要功能的代码实现;5 、解决工程中的关键问题和技术难题;6 、协调各个程序员的工作,并能与其它软件工程师协作工作;7、还要编写各种各样的软件说明书,如:需求说明书,概要说明书等考试科目。

工程师是中级职称,考试的题目包括了计算机体系结构、软件工程、数据库、数据结构、编译原理等计算机学科的基础课程。

GitHubPages。
现在大多程序员都会使用通用代码库Github,所以对于希望保存文档的程序员来说,Github是一个不错的选择,尽管很多人只是利用代码库中的readme功能来为项目提供简单的 *** 作指南,但这并非是最好的办法。
ReadtheDocs。
顾名思义,ReadtheDocs为开发人员提供了一个集中的平台来保存文档,这样用户就可以直接阅读文档了。它的工作原理有点类似GitHubpages,因为开发人员可以从他们喜欢的版本控制系统(包括Git、Bazaar、Mercurial等)中推送文档更新。

产品需求文档分很多种,这里我只说一种让程序员看起来舒服的需求文档格式吧:

作为程序员,在需求文档当中,最关注的内容是哪几种呢?
1、流程:包括业务流程和基本流程;
2、数据:包括输入数据和展示数据;
3、事件流:特别是分支事件流和例外事件流,感觉很多需求文档中,缺少了这部分;

那么,文档的模板是怎么样的呢?
1、需求说明:主要阐述为什么要做这个需求;
2、业务流程:最好使用VISIO来绘制,画出整个业务的流程图,特别是其中所要涉及的判定,分支等,都要画出来,越详细越好;
3、基本流程:继续使用VISIO,画出基本流程即可,一般来说都是业务流程中的最主要部分,但是可以加入更多的细节;
4、分支事件流:VISIO,各种分支事件的详细流程,越详细越好;
5、例外事件流:这里要使用表格,示例如下:主要是系统判定和对应的提示;6、输入数据:用户可以输入数据的字段,已经相应的定义,包括是否必填,字段长度,录入方式,对应规则等;
7、显示数据:页面显示给用户的数据,对应的字段,取数规则,对应规则等;
8、补充说明;这个需求文档模板,更倾向于传统的软件模板,而不是网络上比较流行的AXURE文档。

java程序员工作描述这样写:
1、负责研发公司应用软件的模块设计、开发和交付,
2、负责编码,单元测试,
3、按照功能组件的详细设计,
4、对其他软件工程师的代码进行审核,
5、参与新知识的学习和培训,
6、修复程序BUG,
7、参与与其业务相关的需求变更评审,
8、完成上级交办的其他事宜,
9、编写技术设计文档


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/12713037.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-27
下一篇 2023-05-27

发表评论

登录后才能评论

评论列表(0条)

保存