在独立程序员:实时软件开发_newuser_zhao的空间_百度空间

导言
你是否注意到,开发进度越来越短,而要求的名单变得越来越长?是否所有的时间都似乎是个关键时刻?你的要求清单似乎逐步包括更复杂的功能?您的软件正在使用越来越多的人?它似乎对定制软件方面的水平倒退?如果是这样,你并不孤单。我相信这一趋势将不仅继续而且会加快。面对这些问题和学习,以适应和蓬勃发展,是在这些限制将成为至关重要的长期成功。

你们中许多人肯定是读了“实时企业”的讨论21世纪企业的需求大约实时数据旋转的主题。这些文章讨论了软件应用的日益普及,提高业务部门之间,部门,合作伙伴,供应商和客户的沟通。对于这些应用程序的需求驱动的竞争压力,潜在利润,客户保留和收购要求,并日益较低程度的基金会的因素。其中一些应用是非常简单,而其他涉及TB的大小数据库,不同的数据库技术和平台,如Web服务,SOAP和断开互联网等技术日益紧迫的项目取得成功,这些技术不仅掩盖了复杂性是炒作现实,我们必须面对的。显然,这些通讯工具的开发是由你和我一样的人

一方面,这种新的商业环境是一个软件开发人员是件好事,因为这将创造工作机会,并希望增加工资。另一方面,这种新的商业环境需要的方式有所改变软件开发和软件开发人员如何对要求,安排和交付的想法。

这真的是新的?
难怪不少人问这个问题无疑。我相信,就像“新经济”,新闻媒体大肆宣传“一词实时企业超越一切承认”。在这个概念的核心,不过,有一种方式的根本转变企业的运行。这种变化是有一个从硬件根本举措是企业成功的关键(即工厂,缝纫机等),以软件成功的关键,(网上销售,即时股票报价,客户关系管理,ERP系统等)。业务的实际性质,但是,我不相信发生了变化,只有这样它的执行。五金商店将继续销售五金,汽车制造商将继续销售汽车,等

通信一直是重要的企业,但是从首席执行官,供应商,会计师实时满足需求,销售人员,政府和消费者最终在一个真正惊人的速度进展。为什么会发生?两个词:互联网。我不能说的地方开始,但它得到了重大的推动暴露时,消费者如购买产品,作为真正的互联网消费活动中,研究产品和公司,加工的回报,退款等,是在推实时系统,以支持日益增加的需求。 ,这是不是真正的开始。有人会说,这改变了{dy}台个人电脑创作开始。

所以,是这一新的?我相信答案是肯定的。有一个企业通信软件就是依赖这确实是新的重大变化。正是这种变化,是创造了所谓的实时今后一段时间企业的需求。正是这种变化,软件开发人员必须了解和努力解决的问题。正是这种变化,将会对软件开发的未来产生重大影响。

商务101
人们越来越清楚,我认为有一点是需要的软件开发是有一个对我们的业务服务,在技术水平的需要,不明确和深刻的理解,但在核心业务职能的水平。有了这些知识,我们可以把我们的人才工作,解决最相关的问题,我们面临的业务服务。撇开一时的企业文化,任人唯亲,不称职的管理人员等问题的讨论让后面的机械工业动力。我知道你们大部分将已经知道这(以及更多的),但我觉得在阅读的投资将是值得的。

大家都知道,企业存在的赚钱。但为什么特定业务存在吗?什么是驱动它需要的,什么是客户的需求是饲料的赚钱机器?企业如何获得和留住客户?什么竞争压力推动行业内的创新?显然,每个企业和行业是不同的,但是也有一些相似之处,有很理解为什么这些xx的重要原因是重要的,独立的开发人员。那么,为什么这些势力重要的理解?好吧,因为你已经经历毫无疑问,规格是一种水蒸气用品的很少,即使在那些努力发展要求的思想存在。在大多数企业来说,真正的规范定义的业务需求。无论国内政治,无能的管理者,从穷人的方向上级领导,大多数软件是为了解决一些业务需求。很多时候,该软件未能解决这一需要,不是因为软件无法工作或不符合它的规格,而是因为它解决了错误的问题或与其他关键业务功能的干扰,还是在错误的规范创建了一套创造了即席。

对于大多数行业,是有其存在的明确理由。其原因可能是人类的基本需要,如为农业产业化的原因,也可能是一种休闲活动,如为旅游和娱乐行业的理由的需求。不管是什么原因,有一个在对产品和需求,因此结果/或服务。一个行业内的客户国王,因为最终,他们驾驶的赚钱机器。客户可以是个人消费者喜欢你和我,其他企业或政府。当涉及到客户,获取和保留的两个关键问题,每个企业都必须面对。通常情况下,收购变得更加困难,成本比保留。

在一个特定的业务,经常出现的存在,也影响了在新的软件开发的需求与兴趣的独特情况。有关公司的业务计划的问题(如果有的话),资金流动问题,地理上的限制等,这些独特的特点,是同样重要的理解,因为他们经常会影响到软件需要如何运作的细节。

重要的是软件开发商,在获得的不仅仅是个别企业的深入了解,但整个行业,使我们可以作出更好的决定。越来越多,我们被要求开发周期短的发展是功能丰富和规范穷人在短时间内系统。理解创建该软件的需要为基本要求,是非常重要的,能够在正确的时间正确的解决方案。这方面的知识将影响从建筑设计到用户界面设计和更多的知识,我们就越好微调这些决定将是满足客户实际需要的一切。

旧习难改
图书,图书到处而不是一个字读
出于某种原因,软件开发者往往很难过去我们的技术末看到。我明白这个趋势存在于所有的人,但软件开发人员,我们需要有许多非广泛而深入的了解,技术学科,以生产高质量的软件。虽然我没有到过办事处,许多开发商,我十分怀疑,如果你浏览他们的书架上,你不会找到市场营销,广告多本书籍,销售,管理的人,特定行业书籍等我当然明白这个习惯,因为它是其中特别困难需要克服,而是一个需要被克服,我们实现我们的{zd0}潜能。

我建议你认为软件开发作为一个B2B服务。因此,了解你的目标市场是重要的。除非您开发的软件在其他软件开发人员为目标,所有这些书籍在C + +,。NET的设计模式,安全等,而有趣和有用的,不足以让过去的年龄及与客户沟通的老问题,了解客户提供真正需要和重大成果。我不是说你停止阅读的书籍阅读现在任何,只是你花一些时间调查严重的企业和雇主问题的用户工作要求的性质。

那么,什么样的材料你应该阅读?我建议你通过你的经理和同事的书架上寻找开始。我的老板已与书装在书架上的业务,管理的人,广告,只要等我回报他们,我很欢迎借用其中的任何。我怀疑你的同事将同样愿意分享他们的资源,如果问。还有,不,很多杂志,你的雇主运输业的疑问。我觉得更易于阅读1比1只是因为时间限制,图书杂志。我的工作在一家市场调查公司,和我的雇主保持与近正门入口的市场研究杂志一表。欢迎任何人来接他们的阅读。我还订阅了许多非包括商业周刊和财富的技术杂志。我发现,跟上{zx1}的正在发生的事情在商业世界就有助于理解不只是生意,但软件开发的方向将英寸

我一直在寻找的方向,深入了解软件开发是软件开发的同时,因为不存在为自己。对于软件的需求和需要驱动寻求做自己最擅长的业务:赚钱。经到会在业务洞察力,客户需要的是什么,竞争对手是怎么做,都有助于保持{lx1}一步的要求,将不可避免地在我们的土地办公桌。

什么事情也做{yt}
有多少次有人问你多长时间的特定任务是需要和你的反应是可笑的时间少量如一日,4小时,甚至几分钟?而且,有多少次你错过了这些时间表的商标?我不知道别人,但对我来说这是一个巨大的来源问题。至少有一个理由,我继续犯这种错误是,我倾向于认为在“节目时间”的条款(类似于“子弹时间”),这是一个神奇的时间系统,不存在的现实之一。如果我{wy}要做的就是完成这一个要求,和必要的工具,源代码,数据库配置等已经出现在必要的地方,我的时间的估计可能,只是可能是准确的。

大部分时间,但是,还有更多的满足,而并非只是单纯的编码方面的要求。不仅有更多的不仅仅是编码,有安排上的冲突将不可避免地干扰这些短期的请求。会议出现,电子邮件必须作出回应,处长时间,午餐,其他要求,都是有可能发生在任何一周{yt}。没有考虑到这些问题时,估计时间,并承诺肯定是火灾的方法失去信誉,睡眠或两者兼而有之。

为应对概算申请时间是重要的,因为你会被要求作出这样的估计很多次,一般,你会预计将在这些时间。一个常见的错误,我做的是尝试发出口头估算的现场。这是错误的。给予口头估计数现场轻视实际所需的努力,使这些估计数,几乎总是产生不准确的结果。虽然我还没有xx克服这个习惯,我在努力。该战略我试图采取的是告诉人们,我会检查我的时间表及取回几分钟后他们。然后,我坐下来与Outlook打开并把他们与时间的估计电子邮件。而不是写一分钟数/小时/天,首先,我写了什么我在我的计划已经简要概述。这包括正在进行的项目和计划的活动(即会议,期限,休假等)。接下来,我写了我的请求给予简要说明。一旦做到这一点,我估计多少时间将需要做的“实时”,然后我建议,当我可以做到这一点,并指出任何变动,将是必要的。{zh1},我重新安排电子邮件中的文本,以便当时时间的估计是{dy},第二和规范目前的时间表/正在进行的活动是{zh1}一次。很多时候,我发现有问题,我需要,然后才能回答。

通过采取需要5分钟写这封电子邮件,我一般保存有自己的修改时间,加班工作,失去信誉xx。我学到的是,即使是最小的要求,要求所有的软件开发的典型采取措施。这包括需求收集,规范文档和设计阶段。不尊重这些简单的项目,并争取以信誉求更难有公信力,因为大型项目一起去。

为什么这个特别重要的实时企业?我看到了看似微不足道的要求,把更大的问题是增加的趋势。还记得那些要求名单越来越长的应用,功能更丰富,而且这些通常必须考虑这些更复杂的应用集成的很小的请求。

接受和/或免除缺陷
有一个软件开发人员倾向于接受刚才是该进程的一部分的缺陷。在某种程度上,这是必要的,但我们必须作出正确的决定时,决定什么缺陷,使生存一个发布。内实时企业而言,沟通是关键,因此任何缺陷的不利影响提供了通讯,或由软件驱动之前必须释放处理的支持。了解背后的软件业务发展的需要,我们将访问缺陷的严重程度令人难以置信的简单。如果一个缺陷,影响商业的需要,它必须是固定的。这是这么简单。如果一个缺陷不能被固定在调度的要求,功能,暴露了必须停用或删除,直到它的缺陷得到纠正。

我想强调足够的xx缺陷,我们的通信软件提供的重要性。提供不正确的数据,数据不一致,甚至是交付不及时或格式不正确是不能被允许生存在野外的关键问题的准确数据。和数据并不是{wy}的通信方面,我们必须认真对待。简报信息,特别是在客户端或在年底针对系统的用户,也很关键,因为它提供了一个公司他们做生意的印象,并最终取决于软件开发人员反映。

而不仅仅是保险,我们的软件开发提供了准确,及时,一致和可靠的结果,我们也必须考虑如何将我们的软件使用和推广,创造系统和流程,确保该通信不受损害脆弱点的路线。你可能想知道我所谈的,所以让我解释一下。该系统有很多我开发(毫无疑问,你还开发)提供了功能,使用户的系统配置和扩展他们的行为。作为一个例子,是我开发的系统之一,是一个互联网测量包。在这个制度的核心是Windows NT服务集,处理逻辑代表的调查,处理的一项调查流程,坚持答辩数据等等。这个核心系统进行了测试比较彻底使每一个问题的类型(如单选按钮,复选框,网格等)的工作,因为他们的目的是,根据需要生成HTML和执行合理的限度内。有进入代码以确保各项防范措施,事情的工作按计划,当事情出错,条件是检测,记录,有人通知。

所有这一切都好,重要的,但还不够。除了这个系统,有调查设计软件,该软件允许用户创建新的调查和测试。此软件提供了一个基于Web的用户界面添加问题,编辑问题,创建脚本来控制流量的调查以及更多。该系统也受到了考验,以确保每一个功能的工作预期,并生成所需的结果。但是,我们的最终调查某人创建?与此软件从本质上讲,这是一个全新的应用。它可以在运行时环境(设置的Windows NT服务前面提到),载流逻辑,可以包含脚本和一般可以做任何东西任何Web应用程序可以做。我怎么能肯定的是,调查别人创建的工作方式,其实他们打算?

许多开发商会说,这不是我们的工作以确保人的东西与我们的软件也将做他们想做的,只是我们的软件做什么我们的目的是做。不久以前,我会同意这一点,在许多情况下,我仍然不同意这种说法,但在一个实时企业而言,这是不够的。我们必须关注我们的软件将如何使用,我们必须采取措施,xx潜在的问题,其他人将介绍。为什么?因为我们是一个B2B提供服务,不仅是一次交付的软件作品,但在通讯是越来越重要的雇主和客户生活的机制。

软件是不够的
正如我以前说过,软件开发人员有一种倾向,没有看到我们的工作以外的技术方面。我们必须认识到,我们开发的软件将被其他人用来实现某些业务的需要。我们需要思考如何将我们的软件使用和计划的问题和问题,将不可避免地出现。这方面的一个方面是实现文件,使文件的重要性,是我们发展进程的一部分。然而,文件是不够的。我们还必须考虑在程序方面。我们需要问自己,我们的用户可以使用我们的软件,毫无疑问都知道,什么软件生产(其规格)就是他们的实际需要。

考虑上面的例子问题,我就被人使用这项调查设计软件给其他人创建的调查。怎样做才能让这些用户创建总信心调查?我所采取的技术措施包括:

提供一个测试环境,用户可以创建,测试和预览不影响生产系统的调查。
提供脚本调试功能。
提供一个工具来自动生成测试数据。
为观赏调查记录的数据的工具。这包括诸如频率问题的报告,以及访问收集的原始数据。

这些步骤很重要,极大地推动了有用户在调查相信,他们计划的目标。但是,这些技术措施是不够的。必须在地方,目的是找到了调查,这次技术测试的所有问题的过程中不能。一些非技术过程中,我们将实施包括:

有人要求比原来的调查者审查的准确性最终调查设计等。
要求测试数据生成和该数据至少有两个人进行审查的结果。
要求实时数据后的最初数受访者已经采取了检查。
提供易于使用的系统和记录问题,这些问题的通知我。

凭借这些技术特性和发生的过程,我觉得创作者可以感受到调查,调查中他们创造信心,但我觉得如何在调查中他们创造有信心?为此,我已在代码广泛的诊断功能,驱动这些系统。这与调查设计的已知问题的诊断代码检查,(如不使用了{zx1}的演示文稿模板,没有正确设置已完成调查,对突发情况如脚本等),也从未检查返回状态(即无限循环),这让一再要求,失败的SQL查询等任何时候这样的情况发生的问题,条件是记录连同有关的调查,有问题,答辩人的问题以及需要其他细节细节隔离和诊断的问题。除了被记录在案,我可以让系统自动通知我,通过电子邮件对这些条件的。

那么,如何应用此向您的应用程序和项目?

我建议,当你开发软件,您与实际用户的工作,以确定如何软件将实际用于什么用它们来。使用此信息,以便更好地设计软件,以适应日常任务和自动化多步过程可能的情况下。
除了基本的系统功能,包括功能,使用户更容易测试没有应用到生产系统的变化。对于GUI和批处理应用程序,这通常不是问题,但基于Web和服务为基础的应用程序,这通常需要特殊考虑。
只要有可能,落实到你的软件保障措施,以防止影响了软件的整体运作用户配置问题。例如,计划提供一种自动终止用户脚本/宏是不会再回来。
文件的步骤,用户应采取的核实和确认工作。通常,这些措施将涉及到使用一些软件功能,但有时它可能需要涉及第二人回过头来,它们的配置和结果。
为用户提供一种手段,共同的问题报告,问题和关切。
可见作出尽可能配置系统。例如,如果一个特定的软件配置需要设置一块各种对话小组的20种不同的设置,提供一份报告,列出每一个选项。
能见度提供尽可能多你可以运行包括数据涉及的系统,配置,性能信息等,你可能想限制谁可以访问各种信息,但具有这方面的资料是至关重要的能见度迅速隔离和恢复的当出现问题时。
跟上
我曾谈到所期待的,习惯,我们需要打破,但如何才能真正应付日益增加的功能列表,更短的时间安排和我们的应用程序更多地接触?独立的开发人员需要准备应付这些变化的需求和需要能够留在他们的{df}。的事情,我建议一些包括掌握的通信工具,如XML,掌握如HTML的演示工具,保持对新的通讯工具,可以受惠组织眼睛了。一个额外的事,我认为,重要的是独立的开发人员必须找到或建立一个平台,使他/她的申请,可以兴建。我将讨论以下为这些每一个项目的原因。

精通XML的
这几乎是虚伪的,我这样说,因为我自己没有掌握XML和相关技术,但我的确打算。我认为,现在是独立的开发人员必须掌握XML,因为我们将看到它用在我们的数据库,我们的一切表示层越来越多。 XML是一个功能强大,但往往被误解,在系统间传输信息的媒介,人,部门等在我的老foggie说,没有什么特殊的XML,设置它除了几乎任何其他基于文本的信息传递机制。从纯技术的角度来看,这可能是事实,但现实情况是,XML是迅速成为数据通信的标准,将成为整个软件开发过程中无处不在。

有关XML是什么力量使得如此重要的实时企业? XML提供了新的软件系统的能力,报告等消费迅速从其他软件系统的数据。当掌握了将软件开发更加xx许多常见的数据转换和数据定义的任务时,通常需要联网系统的有效这种能力。一些开发商说,毫无疑问的工作类型,他们是不符合的数据处理了。我认为,即使用户的喜好,配置选项和企业政策,将可以通过XML和代表我们的应用程序将需要了解这些。

由于掌握了能够读取和解译XML,我们必须将注意力转向利用XML的,我们在软件开发。我们开发的软件越来越丰富的功能和相互关联的,XML提供了一个分享共同的数据和功能的手段。在设计新的软件,我们需要考虑我们如何可以将XML的支持,不仅有利于应用程序本身,而是要促进该应用程序暴露了其数据和服务与其他应用程序。这带来了一个软件是如何在实时企业使用的一个重要方面。相反的应用,实时的企业正在寻找的服务。

掌握演示技术
我怀疑我需要多说这件事。我们都知道重要的互联网和HTML已成为软件开发。有一件事,我相信我们需要保持重点,不过,是正在进步的网站是如何被用来向用户提供信息的。拥有先进的Web浏览器从早期的文本只是浏览相当多,这些进步继续。我们需要做好准备,学习如何运用新的技术,方法,语言等,是开发,以配合我们的竞争,以及在可能时,保持{lx1}的曲线了。我们要保持目前的发展趋势与用户界面是如何传递到用户和知道什么时候使用的内容提供的各种方法。

作为一个例子,有超过上滚动的影响做了很多年的研究已在网站的用户。在互联网初期,这些研究表明,用户往往不滚动滚动时被一个网站有必要,用户往往会放弃该网站。最近我看到的资料显示,虽然滚动仍然是一个问题,用户更熟悉,并且倾向于接受(除水平滚动)。感兴趣的其他领域包括网页下载时间。{zh1}我检查,5秒,是{zd0}页面下载时间开发的目标应为拨号上网的用户。其他领域包括标签(如亚马逊),为弹出菜单使用时,右键菜单,使用多个打开的窗口,框架等

除了目前的网页浏览经验,提供技术与客户/用户沟通的方式越来越多。掌上电脑,手机,电子邮件和即时消息都被用来提供关键业务数据提供给客户。新技术无疑将是发展一种革命性的能力,与用户沟通和客户。我认为,我们必须跟上这些进步,使我们可以把这些技术对我们的雇主和提高他们的通信系统。

寻找或建立一个平台
我不是在谈论建立自己的操作系统,也不是我对J2EE或。NET的交谈。我所谈论的是一个代码基地您建立许多人来说,并非所有的应用程序。这可能会比只是类和函数库多,可能会在某些建筑类型的代码,它封装通用的功能和服务暴露从中可以建立接口的支持。我建议,这个平台包括数据表示,数据持久化,数据验证,工作流程管理,一些安全机制的形式和在适当情况下演示功能。

为什么是这样一个平台的重要?仅仅因为它是{wy}的方式,我有独立开发生产软件发现,不断增加的功能集,仍然保持了整体产品的高品质。拥有一个平台,意味着你可以实现的功能已超越简单的应用程序的功能集,但不仅加强了具体的应用,但提高的能力,继续提供高品质的成果。功能,我超越了基本的应用功能设置考虑(对于大多数应用程序)包括:

诊断记录既自动化,可与应用程序特定的信息补充。
仪表的数据流。
跟踪数据库活动。
增强的数据,如发现变化,改变历史,交易管理持久化服务。
池服务,以增强可扩展性。
审计用户活动。
表达式求值。

在一个平台上建立了不应忽视的优势。事实上,这些优势应该尽可能利用了。有的认为,来我首先想到的优点包括:

时间更短,提供最终产品。
原型可以离开,用“限量版”取代应用程序。
更容易实现全面全面增强。
新的应用和功能测试通常是简单的,因为很多核心技术是预先存在的。
在复杂的应用测试通常是简单的感谢诊断日志记录,仪器仪表,跟踪等
开发更多可扩展的解决方案更容易。
核心功能通常用于比较严重,因此,测试比较彻底。
获得工作的申请,具体更快。
在开始之前,我也应该发出的警告平台的单词。虽然平台可伟大的事情,他们也可以是一个监狱,防止取得预期的成效。平台需要更多的思维过程,并要求在平台使用的代码进行彻底的验证和{zg}性能,可扩展性和内存占用的往往是冲突的要求设计。平台必须设计,以提供{zd0}的利益应用程序使用的平台,同时将在该应用程序设计的要求也{zd1}。考虑Microsoft基础类(MFC)库。这是发展中小型优秀的Windows GUI应用程序框架,但使用非MFC的GUI应用程序往往是不明智和危险的。

结论

许可
这篇文章没有明确的许可,但连接到它可能包含在文章中文字的使用条件或下载文件本身。如有疑问请通过讨论板下面的作者。

作者的许可可能使用名单可以在这里找到

本文来自: 翻译工具:Google



郑重声明:资讯 【在独立程序员:实时软件开发_newuser_zhao的空间_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——