`
ahpo
  • 浏览: 4101 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

从项目化到产品化

阅读更多

软件公司一贯都是以项目实施的方式来完成业务需求的交付,项目型的软件开发中,开发语言和平台往往五花八门,开发人员在各个项目中疲于奔命。稍微好一点的公司,技术平台相对稳定,如使用.Net或者Java,但所谓的重用,只不过是把原项目的代码拷贝过来,小的改动就小修小改,大的改动就干脆重写。项目做得多了,软件技术水平在不断发展和提高,人员也在扩张,软件产品化是一个必然的需求。然而以项目运作的方式所带来的技术问题,是软件产品化需要面对和解决的。

公司平台历经三年的开发和营运长跑,技术方案和框架趋于稳定,人员扩展成长,也走到了产品化的路口。作为公共组,对项目化到产品化做了一些研究,整理了一些走向产品化需要提升或完善的阶段。

项目需求提升为产品需求

项目是面向单一用户或者几个用户,满足特定的需求,主要是体现个性化;希望在规定的时间完成相应的功能,使得产品能正常运行,项目是一个过程,有明确的起止时间

产品是面向大众或者行业,是大面积普及应用的需求,主要是侧重市场需求,有广泛性。包含若干项目,最终给用户使用,知道什么时候开始但并不知道什么时候结束。

产品化需要额外考虑以下几点:更高性能、更大数据和更快处理。

建立稳定的技术方案和框架

没有一套技术方案和框架能解决所有问题,在产品化的过程中,需要对目前系统进行评估。

技术方案是指首先对原有的一系列业务进行分析,分析出其共通性,从具体业务现象中,将需要解决的问题进行归类和抽象化,然后在技术框架的基础上,对框架进行扩展和实现,既保证技术方案的可行性,又能满足实际应用开发过程中的个性化需要。技术方案既具有一定的业务独立性,又同时具有行业性特点。只有真正能和行业特点相结合的技术方案和框架,才有真正的价值意义。单纯从技术层面的技术方案和框架,不是真正意义的技术框架,而是技术方案和框架的实现方法和细节。

Eclipse的产品化,支付宝便民缴费平台的产品化,Tomcat的产品化,有其行业特点和应用市场。他们被称为产品是无可争议的,但是SpringiBatis等,一般认为技术框架成分较多一点。

建立了技术方案和框架之后,还需要对其进行演进和发展。产品是只有开始没有结束的,所以产品涵盖的方案与框架都需要有演进的特征。学习汽车、通讯等行业成熟的产品经验。

项目到产品化再到项目实施

项目化到产品化,是一次技术方案和框架的评估与整改,在这之中是技术的传播、学习和掌握。产品化之后,这些经验成果是再反馈到项目实施过程中的,用来改良项目实施的过程。

产品化的进程中,需要将现有项目的工作进行划分,将基础性技术的研发、软件产品的研发与软件项目的实施进行分离,其中如何有效的将技术、产品在实际项目中进行实施,是软件产品化的关键。

了解领域知识,比客户还专业

通过自身的专业知识,帮助客户建立适合他自己的业务解决方案,这是软件产品化的成功标志。基于业务又要高于业务,跳出原有项目的视角和局限,站在行业和客户角度进行思考。这需要我们除了关心技术之外,也要以业务为基础,建立领域知识的管理体系。

产品的复用性与自动化

通过技术上的创新,解放开放人员,将其从简单的重复性的工作中解放处理,来处理更高级和更关键的问题。推进软件生产的自动化,包括代码自动生成、自动构建、自动测试、自动部署。

项目质量提升为产品质量

通过客户全程参与、人机交互体验、业务场景模拟、自动化技术测试,来提高软件的质量与用户体验

解决对关键性人员的依赖

      项目中往往只有少数几个关键人,决定着项目的成败与质量。需要通过技术方案的实施,推进自动化的开发、测试,将复杂变简单,将关键人员的知识和经验,除了转换为文档保存,更重要的是转换为技术方案和框架、领域知识,以及相应的自动化工具,从而解决对关键性人员的依赖。

4
5
分享到:
评论
5 楼 ahpo 2012-09-23  
lib 写道
深有感触。从项目转到产品,公司需要经历一段阵痛期。这需要企业和员工一起去承担。有很多公司都没有坚持到最后,还是回到了开发项目的老路。

嗯,这段过程可以让公司品质升华,也能成长自己
4 楼 lib 2012-09-21  
深有感触。从项目转到产品,公司需要经历一段阵痛期。这需要企业和员工一起去承担。有很多公司都没有坚持到最后,还是回到了开发项目的老路。
3 楼 ahpo 2012-09-21  
nail2008 写道
感觉像是我的公司,不过我在北京。很有借鉴价值,多谢博主分享!

一起探讨,呵呵
2 楼 nail2008 2012-09-21  
感觉像是我的公司,不过我在北京。很有借鉴价值,多谢博主分享!
1 楼 Bactryki 2012-09-21  
    

相关推荐

    软件产品化的相关文档

    接着,"软件项目产品化之路"可能涵盖了从项目初期到产品成熟的过程。在这一阶段,团队需要从项目管理的角度出发,确保项目按期交付并满足产品化的目标。这包括对项目进度的控制,资源的合理分配,风险管理,以及与...

    产品研发的项目化管理

    产品研发的项目化管理 产品研发的项目化管理是指将产品研发项目视为一个独立的项目,通过项目管理的方法和工具对其进行管理,以提高产品研发的效率和质量。这种管理方式可以帮助企业解决传统产品研发过程中的问题,...

    软件产品化的一点理解

    软件的项目化交付在技术或产品不成熟或相对短缺的年代是高端客户的唯一选择,但是对于中小型企业,软件的产品化交付才是他们最能接受的选择。 在资本市场,软件企业一般都享有高于资本市场平均水平的估值标准。其...

    高职项目化课程开发

    一是从过程来看,创造任何一种产品和服务,其过程需要经历构思、设计、实施和运行的全过程,这与当今国际上倡导的要完成一种产品和服务,必须经历其完整生命周期的C(Conceive)D(Design)I(Implement)O(Operate...

    maven产品化支持

    Maven产品化支持是指将Maven用于企业级项目的构建和部署,以实现标准化、自动化和可重复性的过程。通过Maven,开发者可以轻松管理项目的生命周期,构建出符合生产环境需求的可执行包。 【描述】(由于给出的描述为...

    单一窗口项目产品化及运营浅见.docx

    本文对单一窗口项目的产品化及运营进行了深入的分析和讨论,涉及到业务特点、技术能力、产品化需求、数据交换平台、业务流程引擎化、运维监控模块等方面。 一、单一窗口项目业务特点: * 广州单一窗口项目的初衷是...

    IT软件项目-产品国产化适配计划(参考示例)

    IT软件项目-产品国产化适配计划(参考示例) 项目计划表(模板) 物联网平台-产品国产化适配计划.xlsx

    OA软件开发走向产品化之路

    例如,九思软件作为OA领域的高端厂商,其产品化OA系统采用了标准产品结合定制开发的模式,成功服务了众多大型集团客户,保证了项目的稳定性和降低了总体拥有成本。 产品化OA软件的优势在于,通过预设的功能模块和...

    制造型企业的项目化管理.doc

    4. **质量管理**:项目化管理注重在整个产品生命周期中实施质量管理,从原材料到成品的每一步都进行严格控制,以确保最终产品的质量和客户满意度。 5. **时间管理**:缩短产品开发和生产周期是项目化管理的核心目标...

    《企业项目化管理范式》读后感 (4).docx

    《企业项目化管理范式》读后感 ...只有这样,企业才能真正从项目化管理中受益,实现可持续发展。在这个过程中,领导者的引领、员工的理解、目标的一致、文化的塑造以及激励机制的建立,都是缺一不可的要素。

    CMMI集成化项目管理

    【CMMI集成化项目管理】是软件开发和工程领域的一种成熟度模型,旨在提升组织的项目执行效率和产品质量。CMMI(Capability Maturity Model Integration)四级(Level 4)着重于量化管理和优化,强调过程性能的可预测...

    信息化项目项目总结报告模板.doc

    信息化项目项目总结报告模板是指对项目的总体情况进行总结和评价的文档模板,涵盖项目背景、项目完成情况、项目产品、主要功能和性能、项目进度状况、遗留问题、开发工作评价、经验和教训、对于今后项目开发工作的...

    《电子CAD技术》课程项目化教学研究.pdf

    项目化教学设计要遵循趣味性、适宜性、渐进性原则,将教学目标和内容融入到具体任务中。任务分解要层次分明,小任务之间相互联系,相互支持。教学过程中,教师应适当启发,指导学生独立解决问题。 6. 电子CAD技术...

    JQ公司的企业项目化管理研究-论文.zip

    在JQ公司的实践中,项目化管理可能涉及产品开发、市场推广、流程优化等多个方面。 首先,论文可能会探讨项目选择与启动阶段,JQ公司如何根据战略目标和市场趋势确定合适的项目,并制定明确的项目目标和计划。这涉及...

    《产品专题设计》课程项目化教学的深化改革与实践.docx

    总之,深化产品专题设计课程项目化教学的改革,需要从内容选择、课程体系、能力培养和学生参与度四个方面进行综合考虑。通过这些改革措施,不仅可以解决当前教学中存在的问题,还能提升教学质量和学生的实践能力,使...

    项目国际化

    项目国际化是将软件或网站...综上所述,项目国际化是一个复杂但必要的过程,它涉及到软件开发的多个层面,从设计到实现再到测试。理解并掌握这些知识点,可以帮助开发者创建更具包容性的产品,更好地服务于全球用户。

    Android项目之组件化

    通过集成友盟,开发者可以获取到用户活跃度、留存率、转化率等关键数据,从而优化产品功能,提升用户体验。此外,友盟还提供了崩溃报告服务,帮助开发者快速定位和修复程序错误。 腾讯Bugly是一款强大的移动应用...

Global site tag (gtag.js) - Google Analytics