《软件工程导论》期末复习总结(12)


(3)社会可行性分析:设计范围较广,包括法律及道德可行性、安全因素、对经济政策和市场发展趋势的分析、用户组织的管理模式、业务规范、应用操作可行性即产生的后果与隐患等 。
通过进行可行性分析,可以帮助项目团队确定项目的可行性和潜在风险,决定了整个软件项目是否立项及研发的成败,对于避免研发机构的重大经济损失及信誉危机,减少软件开发的盲目性,立项失误,节省人力、物力、财力等资源,简化提高软件开发后续的需求分析与设计工作效率,减少软件研发重大失误的风险都具有极其重要的经济意义和现实意义 。
2、你认为该软件系统应具备的最重要的特性是什么?

《软件工程导论》期末复习总结

文章插图
答:一般来说,一个好的软件系统应该具备以下几个重要特性:
可靠性:软件系统应该在不同的环境和使用场景下都能够保持稳定,并且能够正常运行,不会出现崩溃或错误 。可扩展性:软件系统应该具备良好的可扩展性,即在未来可以方便地添加新功能或扩展现有功能,以满足用户的需求 。易用性:软件系统应该具备良好的用户体验,让用户能够方便地使用它,而不需要过多的培训和学习 。安全性:软件系统应该具备良好的安全性,能够保护用户的隐私和数据不被非法访问或窃取 。易维护性:软件系统应该具备良好的易维护性,即能够方便地进行修改和维护,以保持软件系统的稳定性和可靠性 。
3、你认为怎样分工是最合理的?
答:软件开发过程中,分工合理是非常重要的,可以提高团队的效率和软件开发的质量 。以下是一些可能的分工方式:
按照技能分工:将团队成员按照技能和专业领域划分为不同的组别,如前端开发、后端开发、测试、UI设计等 。按照功能分工:将团队成员按照软件系统的不同功能模块进行划分,每个人负责开发和维护自己负责的模块 。混合式分工:将团队成员按照技能和功能模块的不同组合进行划分,以便更好地协同工作和解决问题 。
不同的分工方式适用于不同的软件开发项目,最合理的分工方式应该是根据具体项目的需求和团队成员的技能和经验来确定的 。此外,分工时还需要考虑到团队成员的负荷均衡和合理的沟通协调,以确保整个软件开发过程的高效性和质量 。
4、目前流行的软件生命周期模型有哪些?分别举例说明?
答:目前流行的软件生命周期模型有以下几种:
瀑布模型:瀑布模型是最早的软件开发模型,它将软件开发过程分为问题定义、可行性研究、需求分析、概要设计、详细设计、软件实现、软件测试、运行维护八个阶段,每个阶段都是顺序进行的,并且要完成前一个阶段的工作才能开始下一个阶段的工作 。这种模型适用于软件需求明确,开发技术成熟,工程管理严格的场合下使用 。快速原型模型:快速原型模型是一种快速开发的模型,它通过构建原型来获取用户的反馈和需求,然后根据反馈和需求进行迭代开发 。这种模型适用于需求不明确或者变化频繁的项目 。增量模型:增量模型是将需求分为多个增量,每个增量都是一个可用的软件系统,每个增量都会在前一个增量的基础上进行开发和测试 。这种模型适用于需求不稳定或者需要快速交付的项目 。螺旋模型:螺旋模型是一种风险驱动的模型,它将软件开发过程分为多个迭代,每个迭代都包括制定计划,风险分析,实施工程,客户评估等步骤 。这种模型适用于大型、复杂、高风险的项目 。敏捷模型:敏捷模型是一种快速迭代的模型,它强调团队合作、用户参与和快速反馈,通过不断迭代开发来逐步完善软件系统 。这种模型适用于需求变化频繁、开发周期短、要求快速交付的项目 。喷泉模型:喷泉模型是一种面向对象技术的模型,它将软件开发过程规定为需求分析、总体设计、详细设计、实现四个阶段,每个阶段相互重叠,是一个迭代的、逐步提炼的过程 。它弥补了瀑布模型不支持软件重用和多项开发活动集成的不足,使开发过程具有迭代性和无间隙性 。