0% found this document useful (0 votes)
13 views

Software ENGASS3

The document is an assignment submission for a software engineering course. It addresses three questions about agile software development principles, problems that can arise with agile implementation, and differences between plan-driven and agile methods. For the first question, it lists 12 agile principles such as customer satisfaction, rapid delivery, collaboration, and adaptability. The second question outlines challenges like maintaining engagement and handling conflicting priorities. The third question provides a table comparing plan-driven and agile methods across factors including activities organization, iterations, team skills needed, and more.

Uploaded by

ezfortech
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

Software ENGASS3

The document is an assignment submission for a software engineering course. It addresses three questions about agile software development principles, problems that can arise with agile implementation, and differences between plan-driven and agile methods. For the first question, it lists 12 agile principles such as customer satisfaction, rapid delivery, collaboration, and adaptability. The second question outlines challenges like maintaining engagement and handling conflicting priorities. The third question provides a table comparing plan-driven and agile methods across factors including activities organization, iterations, team skills needed, and more.

Uploaded by

ezfortech
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

CSCI320: Software Engineering

Assignment #3
Name: Abdulaziz AL-Thaowr
ID: 62110255

Chapter#3 – Agile Software Development

Q: Answer All the Questions below:

1) What are the principles of agile method?

Principles of Agile Method:

 Customer satisfaction by rapid, continuous delivery of useful software.


 Embracing changing requirements, even late in development.
 Working software is delivered frequently (weeks rather than months).
 Collaboration between business people and developers throughout the
project.
 Motivated individuals build projects, giving them the environment and
support they need, and trust them to get the job done.
 Face-to-face conversation is the best form of communication (co-
location).
 Working software is the primary measure of progress.
 Sustainable development, able to maintain a constant pace.
 Continuous attention to technical excellence and good design.
 Simplicity, maximizing the amount of work not done is essential.
 Self-organizing teams encourage great architectures, requirements,
and designs.
 Regular reflections on how to become more effective, then tuning and
adjusting behavior accordingly.

2) List the critical problems that may arise when implementing agile
methods?
critical problems that may arise when implementing agile methods:

 Difficulty in maintaining customer engagement throughout the


development process.
 Challenges in team dynamics and collaboration due to incompatible
personalities.
 Difficulty in prioritizing changes when multiple stakeholders have
conflicting priorities.
 Contractual issues due to the dynamic and evolving nature of agile
development.
 Potential problems related to the retention of implicit knowledge if the
development team is disbanded.
 The challenge of supporting maintenance in addition to new
development efforts.

3) Distinguish between plan-driven method and agile method in terms of


(activities organization, iteration occurrence, system size. system type,
versions, development team skills/capabilities, development team
location, development team size, and development organization
culture).

Comparison between Plan-Driven and Agile Method:

 Activities Organization:

 Plan-Driven: Activities are organized in separate stages with


pre-planned outputs.

 Agile: Activities are inter-leaved, with negotiation-based


decision-making during the process.

 Iteration Occurrence:

 Plan-Driven: Iteration occurs within activities.

 Agile: Iteration occurs across activities.

 System Size:

 Plan-Driven: Suitable for large systems requiring extensive


analysis and documentation.

 Agile: Effective for small and medium-sized projects with a


small, co-located team.

 System Type:
 Plan-Driven: Well-suited for systems requiring detailed
analysis, such as real-time systems.

 Agile: Particularly useful for custom system development and


projects with rapidly changing requirements.

 Versions:

 Plan-Driven: Typically focuses on a single final version after


sequential stages.

 Agile: Involves creating and delivering multiple versions, each with


added functionality.

 Development Team Skills/Capabilities:

 Plan-Driven: May not require as high a skill level as agile methods.

 Agile: Requires high skill levels as development is a collaborative


and dynamic process.

 Development Team Location:

 Plan-Driven: Suitable for distributed teams or outsourced


development.

 Agile: Works best with co-located teams for informal and


continuous communication.

 Development Team Size:

 Plan-Driven: Adaptable to larger development teams working on


complex systems.

 Agile: More effective with small, tightly-integrated teams for quick


decision-making.

 Development Organization Culture:

 Plan-Driven: Common in traditional engineering organizations with


a long history of plan-based development.

 Agile: Might face resistance in organizations with established


norms of conventional engineering processes.

You might also like