软件评估需要基于非常仔细的分析,并应得到所有人的支持。软件经济学上的改进应来自减小规模,改善软件流程,提高团队效率,通过软件环境改善自动化以及达到所需的质量。
提高团队效率:
无论团队的生产力如何,总有一些方法可以帮助我们将工作场所的生产率提高到一个全新的水平。效率通常表示绩效水平,该绩效水平解释和描述了仅使用最低数量的投入来开发或创建最大或最高数量的产出的过程。如今,团队合作比个人的总和更为有效和重要。每当团队失去平衡时,它就会变得脆弱。团队管理的一些真实陈述如下:
- 在名义上的或非专家的工程团队的帮助下,一个经过良好且精心管理的项目可以成功实现其目标。
- 即使工程师团队是非常专业的专家,但管理不当的项目也永远无法成功实现其目标。
- 在不是专家或名义上的软件开发人员或开发人员的帮助下,可以开发或构建结构良好的系统。
- 即使在专家的软件构建者或开发者团队的帮助下,架构不佳的系统也将遇到许多困难。
Boehm(1981)提出并总体上提出了五种人员编制原则,以研究如何对软件项目进行人员编制。这些原则如下:
- 顶尖人才的原则–
该原则只是建议使用更少或更少的更好的人。人的素质是非常重要和重要的。因此,强烈建议使用少量具有更多技能和才华的人。 - 职位匹配原则–
该原则只是建议根据现有人员的技能和动力进行调整和调整并承担任务。人们的技能通常各不相同。最好的程序员可能不适合担任架构师或经理。同样,架构师或经理不适合作为程序员。因此,强烈建议激励他们去做自己的工作。 - 职业发展原则–
该原则指出,从长远来看,组织可以为自己的员工实现自我实现提供最佳和更好的服务。该组织具有教育价值的所有培训计划和项目培训计划对所有个人发展职业生涯都非常有帮助和必不可少。 - 团队平衡原则–
这一原则只是建议使用和选择将彼此互补和和谐的人。所有团队成员的心理状况将有助于平衡团队。他们所有人都应该友好,并应迅速与团队中的其他成员融为一体。 - 淘汰原则–
这个原则表明,保持团队不适应不会使任何人受益。基本而言,失配给了确定更好的人或与更少的人生活的理由。这可能会挫败其他团队成员,甚至无法自我实现,并且通常会破坏团队平衡。
通过软件环境改善自动化:
如今,市场上有许多软件工具可帮助自动化工件的开发和维护。其中一些工具可以是计划工具,需求管理工具,可视化建模工具,质量保证工具等等。开发环境还应该支持需求管理,文档自动化,主机/目标编程工具,测试以及功能/缺陷跟踪等。所有工具都应允许设计人员或开发人员轻松地在各种工件之间进行遍历。工具和环境被视为实现过程自动化和改进的主要工具,因此效果和影响也越来越大。一些重要的概念包括:
- 前向工程–
它是通常在软件工程原理,概念和方法中应用的过程,用于简单地重新创建现有应用程序。正向工程是一种工件与另一种更抽象的表示形式之间的自动化。示例包括编译器,链接器等。 - 逆向工程 –
通常,这是从其代码分析中恢复产品的设计,需求规格和功能的过程。逆向工程是从现有工件生成更抽象的表示形式。示例包括从源代码创建或开发可视模型。 - 往返工程–
它实际上是软件开发工具的功能,可以简单地同步两个或多个相关的软件工件,例如源代码,模型等。往返工程术语用于描述和解释通常支持迭代开发的环境的关键功能。 。
实现所需的质量:
该软件的某些最佳实践通常来自于开发过程和技术。所有这些实践都对提高成本效率产生了更大的影响。其中一些还允许并允许以相同的成本提高质量。下面给出了通过现代化流程进行的一些质量改进:
Quality Driver | Conventional Process | Modern Iterative Processes |
---|---|---|
Requirements misunderstandings | It is usually discovered late | Usually resolved early |
Development risk | It is unknown till date | Usually understood and resolved at early stage |
Commercial components | It is mostly not available | It is still a quality driver, but resolving trade-offs is essential to be done at early stage in the life cycle |
Change management | It is discovered late in the life cycle | It is resolved at early stage in the life cycle process |
Software Process Rigor | It is document based/ | It is managed, measured or calculated, and tool supported |
从根本上提高软件质量的关键要素包括:在整个生命周期过程中尽早关注强大的需求和用例,在生命周期过程中尽早关注需求的完整性和可追溯性,指标和指标仅用于衡量架构的进度和质量等。