企业软件开发:步骤,时间表和成本因素

企业软件开发指南 -  SCIENCESTOFT

在自1989年以来的软件开发中,Sciencesoft进行了模块化多用户软件的开发,有效地控制复杂的业务运营。

企业软件开发:本质

企业软件开发意味着构建软件标准化和自动化业务流程(客户关系管理,企业资源规划,供应链管理,Web内容创建等)并同步企业范围的数据。企业应用软件(EAS)大多是具有许多同时用户的大型模块化系统,并支持高可用性。

企业软件开发计划

终端发展通常需要的企业软件或几个基本企业软件模块的第一版一年左右。确切的时间表取决于它用于所需模块的组成和组成和复杂性的业务域。下面我们描述了企业软件开发路线图的典型阶段。

第1.发现

持续时间:1-2个月

  • 记录关键业务流程以及它们如何涵盖现有软件,了解现有IT环境的功能和限制。
  • 引发业务需求和关注现有和期望的业务流程流程。
  • 分析广泛的业务战略(例如,计划公司的增长和IT预算),可以影响计划软件的建筑和技术选择。
  • 向软件提高高级功能和技术要求。
  • 根据新系统的引入,评估对业务流程可能的负面影响的风险(例如,与转换为新的数字流程,商业用户培训相关的生产力和停机时间)。

步骤2.企业软件规划和设计

持续时间:〜2个月。

  • 提高新企业软件的技术要求。
  • 决定新的企业软件系统的架构风格(主要是,点对点/事件驱动的服务或微服务)并开发其详细设计。

笔记 1

通常,它可以更具成本效益和更少的风险,可以重新使用传统企业系统的一部分而不是开发和实现新的软件模块,并启用与其他企业系统的通信。当您决定在新的企业软件开发中重新使用现有的遗留模块时,您需要计划以下所有活动或以下活动:

  • 遗留系统的逆向工程(包括所有连接和相互依赖),软件组件,数据结构和数据设计之间的接口。

显示所有活动

  • 代码重新定位以简化条件,删除不需要的代码部分,改进代码结构,查看复杂或内存密集型算法。
  • 添加新的直观和集成接口。
  • 使用新软件设计和实施传统模块的集成(请参阅注释中的软件集成信息更多信息。

隐藏

笔记 2

当需要与其他企业或第三方软件集成时,添加到计划:

  • 识别集成接触点。
  • 选择集成方法(通过通用数据存储,通过消息代理/ ESB或PAAS中介SOA / MicroServices的集成,通过UI / RPA等的点对点集成,集成(例如,基于ESB的基于ESB集成 - Talend ESB和SAP PI,用于基于IPAAS的集成 - Azure IPAAS或Informatica IPAAS)。

n

非侵入性集成(通过UI / RPA的集成,数据存储)不太灵活,但也不太昂贵和危险。侵入性集成(例如,通过使用通过ESB通信的可重复使用功能模块的SOA)可以改善企业敏捷性,并且长期成本高,但在短期内昂贵,架构风险昂贵,可能需要相当深度初步的代码更改(对于旧的遗留应用程序非常危险,没有良好地记录的代码)。我们建议在涉及遗留软件时优先考虑非侵入性集成方法,并考虑采用更复杂的侵入性集成来更好地控制风险,并证明早期迭代中的架构可行性。

  • 企业应用集成架构设计。
  • 规划数据如何流出,是否需要将其转换为不同的格式。
  • 检查将使用集成应用程序之间的通信协议数量。
  • 设计额外的安全增强功能。
  • 准备全面的QA策略来验证集成系统,备份和恢复机制之间的所有单向和双向呼叫,集成系统如何在建立的带宽限制内工作等。

步骤3. UX和UI设计

持续时间:1 - 3个月。

  • UX设计师和业务分析师在UX研究中合作,了解目标受众及其需求,目标和心理模型。
  • UX设计人员描述了用户如何与系统交互(识别数字接触点)和设计信息架构。
  • UX设计师s创建线程范围,其演示基本内容布局和功能。
  • 线框组合成一个原型申请。
  • 原型经过用户测试。
  • 一旦原型传递用户测试,UI设计人员将它们转换为全彩色图形界面样机,然后将其移交给前端开发人员。

步骤4. EAS开发和测试

持续时间:从〜6个月到几年(取决于软件复杂性)。

  • 后端开发 - 构建新企业软件的服务器端和API。它还包括与所需的业务应用程序集成。
  • 前端开发 - 将UI设计人员提供的静态接口图像转换为全功能企业客户端,并确保其与服务器通信。
  • 查看系统是否与功能,性能,安全性和集成要求匹配。测试通常与开发并行运行。
  • 与软件开发并行,应准备培训材料来帮助用户采用新系统。

笔记

您可以缩短时间释放和优化开发预算的时间开发MVP.。它是一个只有基本功能的软件版本,可帮助您测试软件是否满足关键的用户需求。确认或调整初始EA概念后,您可以向MVP添加其他功能。 Enterprise软件的第一个工作版本的小于中等复杂性,可以在4到8个月内交付,在每2-6周的主要版本期间增加了新功能。

步骤5.数据转换和上传

持续时间:3-6周。

  • 检查遗留数据迁移,避免重复或不一致的数据。
  • 如果正在使用多种数据格式,则决定支持的数据格式并处理所需的转换。
  • 提取,转换和加载遗留数据。
  • 进行ETL测试以确保数据保持完整和充分变换(也是可行的,开发和运行自动ETL测试,例如,使用工具作为QuerySurge,Informatica DVO,ETL验证器)

步骤6. EAS部署

持续时间:1-2周。

软件部署并与所需的公司基础架构集成。复杂软件应首先通过暂存和测试环境移动,以便在发布之前安全地引入更改或捕获剩余错误。

笔记

建议使用试用实施,以便申请以最大限度地减少生产中可能的下降时间。试用实施是为有限数量的用户完成的,并且在遇到任何问题时需要全面的技术支持。试验阶段通常需要1-3个月。

第7步。监管合规性评估和认证程序

持续时间:高达几个月。

该阶段与企业软件或其落在政府或行业规定下的零件有关,例如,HIPAA,CGMP,PCI DSS。在此阶段,团队编制在所有阶段创建的全面文档 - 从软件设计验证和验证 - 证明软件和软件开发生命周期满足标准或规范的所有必要要求。

步骤8.进一步缓解迭代中的演变

发布持续时间:1-3-6个月(取决于开发和部署策略)。

新工作软件模块的开发和交付根据以下方案迭代地继续:

企业软件开发项目所需的技能

下面我们描述了复杂的企业软件开发项目中涉及的共同角色。可能需要额外的人才,这取决于项目的性质,例如,您可能需要数据科学家,3D设计师等技能。

专案经理

  • 按计划和范围和预算保持项目。
  • 控制项目里程碑和可交付成果
  • 促进和协调所有团队成员之间的沟通。
  • 管理项目风险。

业务分析师

  • 揭示需要解决的潜在业务问题。
  • 将业务需求转换为企业应用程序功能。
  • 对来自所有利益相关者的新企业软件系统组织,指定和记录要求。
  • 在系统设计和软件配置规划期间代表业务利益。

系统架构师

  • 设计软件架构。
  • 设计与其他内部和第三方软件系统的集成。

笔记:系统架构师应良好地了解高级软件架构方法,包括ESB驱动的面向服务的架构和微服务。

UX设计师

  • 执行UX研究。
  • 设计用户与应用程序的交互。
  • 设计信息架构。
  • 进行可用性测试。

UI设计师

  • 决定应用程序GUI的颜色,图标和屏幕布局。
  • 创建UI套件以便快速开发用户界面。

数据库开发人员

  • 开发和实施数据库,构建数据模型。
  • 优化所需的资源消耗和存储空间。
  • 开发和支持ETL / ELT流程。

后端开发人员

  • 写回端码和API。
  • 执行单元测试。

前端开发人员

  • 创建用户界面的功能组件。

QA.

  • 设计测试策略。
  • 选择测试工具。
  • 设计,开发和维护测试。
  • 记录,实施,监控和改进测试过程。
  • 跟踪测试结果,查找和报告错误。

Devops工程师

  • 基础设施。
  • 包含基础架构的代码方法。
  • 优化Orchestration。
  • 设计和创建用于自动部署的CI / CD管道。
  • 选择和配置工具以执行Enterprise应用程序系统的日常监视。
  • 执行eas性能故障的根本原因分析。

整个EAS开发过程是内部的

优点:

  • 直接监督发展过程和团队生产力。

缺点:

  • 高成本。
  • 缺乏经验和资源可以导致项目延迟,设置和管理风险。
  • 所有招聘和管理努力都在您身边。

内部团队和外包咨询的混合

优点:

  • 内部团队对内部流程和软件环境深入了解,并直接访问所有资产。
  • 外包咨询提供专家指导,导师通过最具挑战性的迁移活动,缩短了特定技术技能的差距。

缺点:

  • 与供应商选择相关的风险。
  • 需要时间和经验来建立内部和咨询团队之间的平稳合作和沟通。
  • 项目团队协调,对快速和质量交付的担忧,风险管理部分/完全在您身边。

完全EAS开发过程正在外包

优点:

  • 建立了EAS设计和开发过程。
  • 供应商承担全部责任团队安排和管理,项目可交付成果的质量和相关风险管理。

缺点:

  • 高供应商风险。

用于企业软件开发的热门技术

我们建议云开发,以便EAS作为提供可扩展,弹性和适应性的企业应用程序的成本效益和快速的方法。

微软Azure.

最适合:具有严格合规性要求的应用程序,高级AI需求。

描述

Gartner魔法象限的领导者云基础设施和平台服务,全生命周期API管理,企业集成平台作为服务(EIPAAS)。

  • 200 +服务(计算,容器,CI / CD,集成,迁移,数据库,IOT,AI等)。
  • 60多个可用区域。
  • 存储:Azure Blobs,Azure文件,Azure表,Azure队列,Azure磁盘。
  • Etl:Azure HDInsight。
  • 分析:Azure Databricks,Azure流分析,Azure数据厂,Azure Data Lake Analytics等。
  • 机器学习:天蓝色机器学习。
  • BI:Power BI,Azure Analysis Services,Azure Synapse Analytics。
  • 符合CIS基准; ISO 20000-1:2011,22301,27001,27017,27018; SOC; Wcag; HIPAA;赫特ferpa; FDA CFR标题21第11部分; FFIEC; GXP;秒17A-4; SOX; CCPA。
  • 提供最小的实例:VCPU - 2,RAM - 8 GB,价格 - 每月70美元。
  • 提供最大的实例:VCPU - 128,RAM - 8.89 TB,价格 - 每小时6.79美元。
  • 长期使用折扣(1 - 3年):Microsoft企业协议(最高可达72%)。

AWS.

最适合:大规模应用。

描述

  • 连续9年一直是云基础设施和平台服务领先的Gartner魔法象限。
  • 175+服务(存储,数据库,容器,无服务器计算,应用程序集成,迁移,应用程序管理,ML,AR& VR, IoT, etc.).
  • 77可用区域。
  • 存储:亚马逊简单存储服务(S3),亚马逊弹性文件系统,亚马逊弹性块商店。
  • 分析:亚马逊数据流水线,亚马逊红移,亚马逊Kinesis分析,亚马逊Elasticsearch Service等
  • 机器学习:Amazon Sagemaker,Amazon AI:智能搜索,自动化数据提取和分析,语言,视觉,工业,商业度量分析。
  • BI:亚马逊Quicksight。
  • 遵守CSA; ISO 9001,27001,27017,27018; PCI DSS等级1; SOC 1,2,3; ferpa; GXP; HIPAA;居住CSF; mpaa; Pipeda; SEC规则17A-4(F)等。
  • 提供最小的实例:VCPU - 2,RAM - 8 GB,价格 - 每月69美元。
  • 提供最大的实例:VCPU - 128,RAM - 3.84 TB,价格 - 每小时3.97美元。
  • 长期使用折扣(1 - 3年):EC2保留实例可提供高达72%的折扣。

谷歌云

最适合:构建弹性企业软件

描述

Gartner的第三个是云基础设施和平台服务的魔法象限。

  • 100+服务(存储,无服务器,操作,迁移,数据库,容器,AI& ML, IoT, etc.).
  • 73可用区域。
  • 遵守HIPAA,COPPA,FERPA,加州消费者隐私法(CCPA),安大略省的个人健康信息保护法(PHIPA),GDPR,PIPEDA等
  • 存储:Google云存储,持久磁盘。
  • 分析:BigQuery,DataProc,DataFlow。
  • AI和机器学习:建议AI,媒体翻译,医疗保健自然语言,翻译,视觉,视频,文本到语音,语音到文本,DialogFlow,搜索API(App Engine),Google Genomics等。
  • BI:Looker,BigQuery Bi。
  • 提供最小的实例:VCPU - 2,RAM - 8 GB,价格 - 每月52美元。
  • 提供最大的实例:VCPU - 160,RAM - 3.75 TB,价格 - 每小时5.32美元。
  • 长期使用折扣:
    • (1-3岁)根据资源类型,使用折扣(高达57-70%)。
    • (在结算月期间)持续使用折扣(高达20-30%)。

在我们的经验中,中小企业可以预期自定义企业软件的成本在任何地方从50,000美元到200,000美元。对于大型企业而言,费用通常会有所不同在200,000美元到50万美元之间。

主要成本因素:

  • 应用类型(Web,Mobile,Desktop);支持的平台和操作系统版本(适用于移动)。
  • 应用功能的数量和复杂性。
  • 涵盖的业务人数(金融,SCM,生产,人力资源,CRM等)。
  • 涵盖的业务流程数量(例如,用于销售和营销:电子邮件营销,铅培育,案例升级)。
  • 用户角色的数量。
  • 应用程序逻辑和工作流的复杂性。
  • 与定制/第三方系统集成的数量和复杂性。
  • 应用可用性,性能,安全性,潜在容量和可扩展性要求。
  • 需要维护现有数据的必要性(在迁移的情况下)。
  • 应用更新和改进的频率。
  • 法规合规要求。
  • 所需特殊功能(机器学习能力等)。
  • UI设计的唯一性和复杂性。

那么,我的企业软件开发了多少钱?

Sciencesofts顾问,建筑师和认证专家可以帮助您为未来企业开发项目的习俗报价。

企业软件开发服务SCIENCESTOFT

企业软件开发咨询

我们的顾问:

  • 澄清企业应用愿景,引出和结构软件要求。
  • 评估企业软件开发项目的技术和经济可行性。
  • 计划应用安全和合规(HIPAA,FDA,GLBA,PCI DSS等)。
  • 制定商业案例。
  • 形成一套整体企业应用程序功能。
  • 提供poc。
  • 设计企业应用程序架构,选择一个技术堆栈。
  • 提供详细的开发路线图。
  • 计划Devops战略。

端到端企业软件开发

我们的团队接管:

  • 企业应用程序开发项目规划:需求分析,要求规范,应用架构设计。
  • UX和UI设计。
  • MVP开发。
  • 迭代企业软件开发,每2-4周大幅发布。
  • 与其他内部和第三方商业软件(SCM,CRM,BI,HR软件等集成。
  • 测试和QA。
  • 后启动支持。
  • 持续管理和新企业申请演变(按需)。

关于Sciencesoft.

Sciencesoft是一个美国总部全球软件开发公司拥有32年的市场。我们采用广泛的技术专长和实际知识为30 行业,专业的业务分析,基于KPI的开发,帮助我们的客户重新设计,建立和集成企业软件涵盖复杂的业务流程。 作为ISO 9001和ISO 27001认证的持有者,我们依靠成熟的质量管理,保证合作对客户的数据安全性没有任何风险。