0% found this document useful (0 votes)
3 views16 pages

3.Unit-3 Software engineering

The document discusses the importance of requirements engineering in software development, emphasizing the need for clear communication between stakeholders and developers to avoid costly changes and ensure alignment with business goals. It outlines techniques for eliciting requirements, challenges faced during the process, and various modeling approaches to translate requirements into actionable designs. Additionally, it highlights common pitfalls in requirements engineering and provides examples of mistakes that can occur during the development process.

Uploaded by

deepanshukahlon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views16 pages

3.Unit-3 Software engineering

The document discusses the importance of requirements engineering in software development, emphasizing the need for clear communication between stakeholders and developers to avoid costly changes and ensure alignment with business goals. It outlines techniques for eliciting requirements, challenges faced during the process, and various modeling approaches to translate requirements into actionable designs. Additionally, it highlights common pitfalls in requirements engineering and provides examples of mistakes that can occur during the development process.

Uploaded by

deepanshukahlon
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

CSE374

Advance Software Engineering


Unit-3:Lecture 1
Introduction to Requirements Engineering

1.Defines needs for system development.

2.Ensures software meets stakeholder needs.

3.Helps avoid scope creep issues.

4.Involves gathering, documenting, and analyzing.

5.Bridges users and development teams.

6.Improves software quality and reliability.


Importance of Requirements Engineering
1.Prevents costly changes post-development.
2.Ensures alignment with business goals.
3.Identifies user expectations clearly.
4.Reduces ambiguity in project execution.
5.Supports better project risk management.
6.Leads to successful software implementation.
Eliciting Requirements – Introduction
1.Process of gathering user expectations.
2.Involves stakeholders, users, and developers.
3.Identifies system goals and constraints.
4.Uses various techniques for collection.
5.Ensures completeness and requirement accuracy.
6.Forms basis for further development.
Techniques for Requirement Elicitation
1.Interviews with stakeholders and users.
2.Surveys and questionnaires for input.
3.Workshops to discuss system needs.
4.Observations of existing work processes.
5.Prototyping to clarify user expectations.
6.Brainstorming for innovative requirement ideas.
Challenges in Requirement Elicitation
1.Miscommunication between stakeholders and developers.
2.Changing requirements during development process.
3.Lack of stakeholder availability issues.
4.Unclear business objectives and goals.
5.Incomplete or missing requirement details.
6.Conflicts among different user expectations.
Developing Use Cases – Introduction
1.Describes system interactions with users.
2.Captures functional requirements systematically.
3.Defines user actions and system responses.
4.Helps visualize system behavior effectively.
5.Supports validation and requirement verification.
6.Uses diagrams for better requirement understanding.
Introduction to Analysis Models
1.Represents system structure and behavior.
2.Converts requirements into graphical representations.
3.Identifies functional and non-functional elements.
4.Uses diagrams for clarity and visualization.
5.Helps define relationships between components.
6.Supports structured software development process.
Requirements Modeling - Introduction
1.Translates requirements into detailed models.
2.Defines interactions, structure, and behavior.
3.Helps refine and validate system design.
4.Uses various modeling techniques effectively.
5.Supports development and testing processes.
6.Reduces misunderstandings and misinterpretations.
Scenario-Based Modeling
1.Focuses on user interactions and behavior.
2.Represents different system usage scenarios.
3.Uses storyboards and activity diagrams.
4.Helps understand system flow intuitively.
5.Identifies potential system failure scenarios.
6.Aids in testing and validation processes.
Class-Based Modeling
1.Represents objects within the software system.
2.Defines attributes, relationships, and behaviors.
3.Uses class diagrams for representation.
4.Helps establish object-oriented software structure.
5.Supports modular and reusable design.
6.Provides clarity for developers and designers.
Tools for Requirements Modeling
1.UML for structured system representation.
2.Use case diagrams for functional modeling.
3.Sequence diagrams for interaction flow.
4.State diagrams for system behavior.
5.Data flow diagrams for process modeling.
6.Prototyping tools for early validation.
Common Pitfalls in Requirements Engineering
1.Unclear or ambiguous requirement statements.
2.Ignoring stakeholder input and feedback.
3.Lack of proper documentation practices.
4.Changing requirements without impact analysis.
5.Inadequate validation and verification processes.
6.Overlooking non-functional system requirements.
A startup is developing an AI-powered resume screening system for HR
professionals. Initially, the stakeholders provided a high-level requirement: "The
system should automatically rank candidates based on resume content." However,
after development started, the stakeholders complained that the system was not
filtering candidates based on years of experience and skill proficiency.

Question: What fundamental mistake in requirements engineering led to this


issue?

A) The team focused only on functional requirements and ignored non-functional


ones

B) The team failed to properly define and validate requirements with stakeholders

C) The team gathered too much detail in the requirement, slowing development

D) The team did not prioritize performance testing early in the development
process
A company is building a self-driving car navigation system. After months of
requirement gathering, the engineering team believes they have a complete and
correct requirements document. However, when testing begins, they find several
safety-critical features missing, such as collision avoidance alerts.

Question: What mistake did the team likely make in the requirements validation
process?

A) They did not perform a formal requirements validation step

B) They focused too much on behavioral requirements and ignored class-based


modeling

C) They relied only on user feedback instead of system constraints

D) They documented requirements but did not use UML diagrams

You might also like