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

agile

Uploaded by

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

agile

Uploaded by

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

Assignment #1

Agile Methodologies

Submitted by:

Laiba Tahir 23-Arid-3064


Hamna Rani 23-Arid-3050

Submitted To:
Mr. Awais Illyas
Course title:
Software Engineering.
Department:
BS (CS) 3rd.

Gujrat Institute of Management Sciences


PMAS-Arid Agriculture University, Rawalpindi
Develop Implementation Plans for the Following Agile Methodologies:

 Crystal Agile Methodology


 Extreme Programming (XP)
 Dynamic Systems Development Method (DSDM)
 Scrum

Scrum:

Overview:
Scrum is a framework used in agile project management, ideal for handling complex and
evolving projects.

Core Principles:
The foundation of Scrum rests on transparency, inspection, and adaptation.

Focus:
Emphasis is placed on team collaboration and iterative, sprint-based development.

Key Scrum Elements:

 Roles:
o Product Owner: Responsible for defining the project vision and prioritizing the backlog.
o Scrum Master: Ensures that Scrum practices are followed and removes obstacles.
o Development Team: A cross-functional group that develops and delivers product
increments.

 Artifacts:
o Product Backlog: A prioritized list of features and tasks.
o Sprint Backlog: Tasks selected for a specific sprint.
o Increment: A usable product version delivered at the end of a sprint.

 Events:
o Sprint: A time-boxed cycle (typically 1-4 weeks) for focused work.
o Sprint Planning: A meeting to define the sprint goal and the tasks to complete.
o Daily Scrum: A 15-minute meeting for team members to report progress and issues.
o Sprint Review: A session to present completed work to stakeholders for feedback.
o Sprint Retrospective: A reflection on the sprint to identify process improvements.

Example: Implementation Plan for School Management System (SMS)

Phase 1: Project Setup and Planning


1. Define Key Roles
o Product Owner: Represents the school and sets priorities for SMS features.
o Scrum Master: Facilitates Scrum events and ensures smooth communication.
o Development Team: Builds and tests the SMS features.

2. Outline Project Goals and Requirements


o Collect input from stakeholders (e.g., teachers, students, administrators).
o Create and prioritize the Product Backlog based on essential features.
o Set initial sprint goals that target the core functionality.

3. Establish Sprint Schedule


o Sprint Duration: 2-week cycles.
o Daily Scrum: Short, 15-minute check-ins to discuss progress.

Phase 2: Sprint Cycles for Incremental Development

1. Sprint 1: Develop Student and Teacher Management Modules


o Focus on features like enrollment, profiles, and contact info.
o Gather feedback from stakeholders after review.

2. Sprint 2: Build Attendance Tracking and Grading Modules


o Implement attendance tracking and grading functionalities.
o Present features to users for feedback.

3. Sprint 3: Develop Timetable and Reporting Modules


o Focus on scheduling and report generation.
o Conduct sprint reviews for feedback and improvements.

Phase 3: Testing, Feedback, and Refinement

1. Comprehensive Testing: Ensure modules function well together.


2. User Feedback: Gather insights from users and refine features.
3. Project Retrospective: Review the development process for future improvements.

Phase 4: Deployment and Post-Launch Support

1. Final Approval and Deployment: Gain stakeholder approval and deploy the system.
2. Training and Support: Provide training to users and ensure ongoing support.
3. Continuous Improvement: Collect ongoing feedback and refine the system as needed.

Extreme Programming (XP) Methodology:

Overview:
XP focuses on improving software quality and adapting quickly to changes in customer
requirements.
Core Principles:

 Communication, Simplicity, Feedback, Courage, and Respect.

Key Practices:

 Pair Programming: Two developers work together on the same code.


 Test-Driven Development (TDD): Tests are written before code to ensure reliability.
 Continuous Integration: Regular merging of code to catch issues early.
 Frequent Releases: Deliver smaller, more frequent updates to gather feedback quickly.
 Refactoring: Regularly improving code quality without changing its functionality.

Example: Implementation Plan for School Management System (SMS) using XP


Methodology

Phase 1: Project Setup and Planning

1. Core Team Assembly


o Roles: Project Manager, Developers (using pair programming), Testers, UI/UX Designers,
School Representatives.
o Communication: Daily standups to discuss progress and challenges.

2. Requirement Definition
o User Stories: Define system needs with stakeholders (e.g., student management,
attendance).
o Prioritize: Focus on high-priority features for early development.

3. Prepare for Test-Driven Development (TDD)


o Write tests for each feature before coding starts.

4. Set Up Continuous Integration (CI)


o Automate testing to facilitate continuous integration and delivery.

Phase 2: Iterative Development with Small Releases

1. Iteration 1: Core Student and Teacher Management


o Modules: Enrollment, profiles, and scheduling.
o Pair programming and TDD ensure high code quality.
o Release: Deploy and gather user feedback.

2. Iteration 2: Attendance and Grading Modules


o Implement attendance tracking and basic grading functionality.
o Release: Gather feedback and refine features based on user insights.

3. Iteration 3: Timetable and Reporting Modules


o Implement scheduling and reporting features.
o Gather user feedback and adjust as needed.
Phase 3: Testing, Feedback, and Refinement

1. End-to-End Testing: Ensure all modules integrate properly and meet quality standards.
2. User Feedback: Refine features based on user feedback.
3. Simplicity: Simplify features by removing unnecessary complexity.

Phase 4: Final Review and Deployment

1. Final Review: Ensure all modules meet requirements and expectations.


2. Deployment: Roll out the system and provide user support.
3. Continuous Improvement: Ongoing updates based on user feedback.

Success Metrics

 User Satisfaction: Positive feedback on user needs being met.


 System Stability: Performance consistency over time.
 User Adoption: Seamless integration of the system into daily operations.

Crystal Agile Methodology:

Overview:
Crystal emphasizes adaptability, communication, and tailoring processes based on project size
and team needs.

Core Principles:

 People over Process: Prioritize skilled, effective team members and interactions.
 Frequent Delivery: Deliver small, regular updates to maintain momentum.
 Reflective Improvement: Continuously reflect on and improve processes as the project evolves.

Variants by Project Size:

 Crystal Clear: For small teams (1-6 members).


 Crystal Yellow: For medium-sized teams (7-20 members).
 Crystal Orange: For larger teams (21-40+ members).
 Crystal Red: For large-scale projects, employing more structured practices.

Key Practices:

 Frequent Communication: Daily standups and close collaboration.


 Ongoing User Feedback: Constant feedback from end-users.
 Automated Testing: Regular checks for code quality and functionality.
 Flexibility: Team members may switch roles as needed.

Example: Implementation Plan Summary for School Management System (SMS)


1. Define Project Goals
o Simplify administrative tasks (attendance, grading).
o Improve communication among students, teachers, and parents.
o Centralize student information.

2. Build a Flexible Team


o Roles: Project Champion, Core Team (developers, testers, designers), User
Representatives.

3. Follow Key Principles


o Frequent Delivery: Release updates every 2-3 weeks for feedback.
o Open Communication: Daily check-ins to discuss progress.

4. User-Focused Development
o User Stories: Define needs (e.g., “As a teacher, I want to take attendance quickly”).
o Continuous Feedback: Involve user representatives in review cycles.

5. Implementation Phases
o Phase 1: Develop core features like registration and attendance.
o Phase 2: Add grading and reporting, refined by Phase 1 feedback.
o Phase 3: Introduce advanced features (e.g., parent portals, analytics).

6. Testing and Training


o Conduct usability testing with real users.
o Provide staff training to ensure smooth adoption.

7. Deployment and Support


o Gradual rollout to ensure smooth implementation.
o Establish a support system for users.

8. Review and Adapt


o Hold retrospectives after each phase to assess progress and make improvements.

Dynamic Systems Development Model (DSDM):

Overview:
DSDM is designed for rapid application development with an emphasis on delivering business
value early and iteratively.

Core Principles:

 Focus on the Business Need


 Deliver on Time
 Collaborate
 Iterate and Increment
 Build in Quality

Key Features:

 Timeboxing: Defined development periods to encourage timely delivery.


 Prototyping: Create prototypes to validate and visualize requirements.
 User Involvement: Continuous user feedback throughout development.

You might also like