• Unit 5: Software Requirements Analysis

    Requirements elicitation is when software engineers interact with the stakeholders, including users, to gather information about what the software system needs to do. In this unit, we examine what the software engineer does to elicit, analyze (or translate), validate, and manage this phase of the life cycle. Each step requires working with the customer to achieve a common understanding of the customer's goals. This set of activities is referred to as "analysis", and focuses on what the application will do, whereas "design" describes how the application will work.

    There are many ways to elicit and analyze customer requirements. The three most commonly used methodologies are data-oriented, process-oriented, and object-oriented. We will examine the conceptual foundations, activities, and deliverables in each of these methodologies. As you review this unit, focus on the object-oriented methodology and how it applies to software requirements and analysis. You will put it all together later in this course as part of a case study.

    Completing this unit should take you approximately 4 hours.

    • 5.1: Requirements Fundamentals

    • 5.2: The Requirements Process

    • 5.3: Conceptual Modeling

    • 5.4: Use Case Diagrams

    • 5.5: Sequence Diagrams

    • Unit 5 Assessment