深色模式
Summary & Highlights ! Coursera
Congratulations! You have completed this module. At this point, you know:
恭喜!您已完成本模块。此时,您知道:
Software engineering is the application of scientific principles to the design and creation of software.
软件工程是将科学原理应用于软件设计和创建的过程。Responsibilities of a software engineer include designing, building, and maintaining software systems.
软件工程师的职责包括设计、构建和维护软件系统。Using the SDLC can improve efficiency and reduce risks by:
通过使用 SDLC 可以提高效率并降低风险:letting team members know what they should be working on and when
让团队成员知道他们应该做什么以及何时做facilitating communication between the customer, other stakeholders, and the development team
促进客户、其他利益相关者和开发团队之间的沟通letting stakeholders know where they fit into that process and
让利益相关者了解他们在该过程中的位置及letting cross-domain teams know when they have completed their tasks so development can move to the next phase.
让跨域团队知道他们何时完成他们的任务,以便开发可以进入下一阶段。
Common software engineering processes are requirements gathering, design, coding, testing, releasing, and documenting.
常见的软件开发流程包括需求收集、设计、编码、测试、发布和文档编制。The requirement gathering process entails identifying stakeholders, establishing goals and objectives, eliciting requirements from the stakeholders, documenting the requirements, analyzing, prioritizing, and confirming the requirements.
需求收集过程包括确定利益相关者、建立目标和目标、从利益相关者那里获取需求、记录需求、分析、优先排序和确认需求。An SRS is a document that captures the functionalities that the software should perform and also establishes benchmarks or service levels for its performance.
SRS 是一种文档,它记录了软件应执行的功能,并为其性能建立基准或服务水平。A URS is a subset of the SRS that details user specification requirements.
URS 是 SRS 的子集,详细说明了用户需求规格。The SysRS contains the same information as an SRS, but can also additionally include system capabilities, interfaces, and user characteristics, policy requirements, regulation requirements, personnel requirements, performance requirements, security requirements, and system acceptance criteria.
SysRS 包含与 SRS 相同的信息,但还可以额外包括系统功能、接口、用户特征、政策要求、法规要求、人员要求、性能要求、安全要求和系统验收标准。Waterfall, V-shape model, and agile are all different methodologies for implementing the software development life cycle.
瀑布模型、V 形模型和敏捷都是实施软件开发生命周期的不同方法。Functional testing is concerned with inputs and corresponding outputs of the system under test, non-functional testing tests for attributes such as performance, security, scalability, and availability. Whereas regression testing confirms that a recent change to the application, such as a bug fix, does not adversely affect already existing functionality.
功能测试关注于被测系统的输入和相应的输出,非功能测试则测试性能、安全性、可扩展性和可用性等属性。而回归测试则确认对应用程序的最近更改,如错误修复,不会对已存在的功能产生不利影响。Types of documentation include requirements, design, technical, quality assurance, and user.
文档类型包括需求、设计、技术、质量保证和用户。There are many different roles involved in a software engineering project. Some of them include project manager or scrum master, stakeholder, system or software architect, UX designer, software developer, tester or QA engineer, site reliability or Ops engineer, product manager or owner, and technical writer or information developer.
软件工程项目中涉及许多不同的角色。其中包括项目经理或敏捷大师、利益相关者、系统或软件架构师、用户体验设计师、软件开发者、测试员或质量保证工程师、站点可靠性或运维工程师、产品经理或所有者,以及技术作家或信息开发者。