Add second year
This commit is contained in:
@ -0,0 +1,101 @@
|
||||
- #[[CT216 - Software Engineering I]]
|
||||
- **Previous Topic:** [[Software Processes]]
|
||||
- **Next Topic:** [[SCRUM Roles & Ceremonies]]
|
||||
- **Relevant Slides:** _1663848442133_0.pdf)
|
||||
-
|
||||
- # Software Development Lifecycle
|
||||
- What is the **Software Lifecycle**? #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.5
|
||||
card-next-schedule:: 2022-09-22T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-09-22T20:28:27.102Z
|
||||
card-last-score:: 1
|
||||
- The **software lifecycle** is an abstract representation of a software process. It defines the steps, methods, tools, activities, and deliverables of a software development project.
|
||||
- The following **lifecycle phases** are considered:
|
||||
- 1. Requirement Analysis
|
||||
2. System Design
|
||||
3. Implementation
|
||||
4. Integration & Deployment
|
||||
5. Operation & Maintenance
|
||||
- ## SDLC Limitations
|
||||
- Classical project planning methods have a lot of disadvantages:
|
||||
- Huge efforts during the planning phase (requirements + design).
|
||||
- Poor requirements conversion in a rapidly changing environment.
|
||||
- Treatment of staff as a factor of production.
|
||||
-
|
||||
- # Agile
|
||||
- What is **Agile**? #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.36
|
||||
card-next-schedule:: 2022-09-30T12:14:38.542Z
|
||||
card-last-reviewed:: 2022-09-26T12:14:38.542Z
|
||||
card-last-score:: 3
|
||||
- There is no single definition of Agile, but the Agile Manifesto is the closest to a defintion.
|
||||
- Set of principles.
|
||||
- Developed by Agile Alliance.
|
||||
- Agile methods focus on:
|
||||
- Individuals & interactions over processes & tools.
|
||||
- Working software over comprehensive documentation.
|
||||
- Customer collaboration over contract negotiation.
|
||||
- Responding to change over following a plan.
|
||||
- The [Agile Alliance](www.agilealliance.org) is a non-profit organisation promotes agile development.
|
||||
- ## Agile Motivation
|
||||
- Agile proponents argue:
|
||||
- Software development processes relying on lifecycle models are too heavyweight or cumbersome.
|
||||
- Too many things are done that are not directly related to the software product being produced, i.e., design, models, requirements docs, documentation that isn't shipped as part of the product.
|
||||
- Difficulty with incomplete or changing requirements.
|
||||
- Short development cycles (Mobile Apps).
|
||||
- More active customer involvement needed.
|
||||
- There are several Agile methods, including **Scrum** and **Extreme Programming (XP)**.
|
||||
- ## SCRUM
|
||||
- What is **SCRUM**? #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.5
|
||||
card-next-schedule:: 2022-09-22T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-09-22T20:41:57.926Z
|
||||
card-last-score:: 1
|
||||
- **Software Project Management Methodology (SCRUM)** is an agile project management methodology for managing product development.
|
||||
- It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
|
||||
- The business sets the priorities. The teams **self-manage** to determine the best way to deliver the highest priority features.
|
||||
- Every two weeks to a month, anyone can see real, working software and decide to release it as is or continue to enhance it for another iteration.
|
||||
- ### Characteristics of SCRUM #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.36
|
||||
card-next-schedule:: 2022-09-30T12:13:39.492Z
|
||||
card-last-reviewed:: 2022-09-26T12:13:39.493Z
|
||||
card-last-score:: 3
|
||||
- Self-organising teams.
|
||||
- No need for project manager (in theory).
|
||||
- Product progresses in a series of month-long or biweekly **sprints**.
|
||||
- Assumes that the software cannot be well defined and requirements will change frequently.
|
||||
- Requirements are captured as items in a list of **product backlog**.
|
||||
- No specific engineering practices prescribed.
|
||||
- XP, TDD, FDD.
|
||||
- Best approach is to start with Scrum and then invent your own version using XP, TDD< FDD, etc.
|
||||
- ### Daily SCRUM / Standup #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.6
|
||||
card-next-schedule:: 2022-09-30T12:14:54.429Z
|
||||
card-last-reviewed:: 2022-09-26T12:14:54.429Z
|
||||
card-last-score:: 5
|
||||
- Parameters:
|
||||
- Daily.
|
||||
- 15-minutes.
|
||||
- Stand-up.
|
||||
- Not for problem solving.
|
||||
- Only team members, ScrumMaster, & Product Owners should talk.
|
||||
- Should help to avoid additional unnecessary meetings.
|
||||
- Commitment in front of peers to complete tasks.
|
||||
- Answer 3 questions:
|
||||
- What did you do yesterday?
|
||||
- What will you do today?
|
||||
- Is anything in your way?
|
||||
- The Daily SCRUM is **not** a problem-solving session and is **not** a way to collect information about who is behind the schedule.
|
||||
- It is a meeting in which members make commitments to each other and to the SCRUM Master.
|
||||
- It is a good way for a SCRUM Master to track the progress of the team.
|
||||
-
|
@ -0,0 +1,101 @@
|
||||
- #[[CT216 - Software Engineering I]]
|
||||
- **Previous Topic:** [[Software Processes]]
|
||||
- **Next Topic:** [[SCRUM Roles & Ceremonies]]
|
||||
- **Relevant Slides:** _1663848442133_0.pdf)
|
||||
-
|
||||
- # Software Development Lifecycle
|
||||
- What is the **Software Lifecycle**? #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.6
|
||||
card-next-schedule:: 2022-10-07T11:41:44.734Z
|
||||
card-last-reviewed:: 2022-10-03T11:41:44.735Z
|
||||
card-last-score:: 5
|
||||
- The **software lifecycle** is an abstract representation of a software process. It defines the steps, methods, tools, activities, and deliverables of a software development project.
|
||||
- The following **lifecycle phases** are considered:
|
||||
- 1. Requirement Analysis
|
||||
2. System Design
|
||||
3. Implementation
|
||||
4. Integration & Deployment
|
||||
5. Operation & Maintenance
|
||||
- ## SDLC Limitations
|
||||
- Classical project planning methods have a lot of disadvantages:
|
||||
- Huge efforts during the planning phase (requirements + design).
|
||||
- Poor requirements conversion in a rapidly changing environment.
|
||||
- Treatment of staff as a factor of production.
|
||||
-
|
||||
- # Agile
|
||||
- What is **Agile**? #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.36
|
||||
card-next-schedule:: 2022-10-04T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-10-04T12:14:50.132Z
|
||||
card-last-score:: 1
|
||||
- There is no single definition of Agile, but the Agile Manifesto is the closest to a defintion.
|
||||
- Set of principles.
|
||||
- Developed by Agile Alliance.
|
||||
- Agile methods focus on:
|
||||
- Individuals & interactions over processes & tools.
|
||||
- Working software over comprehensive documentation.
|
||||
- Customer collaboration over contract negotiation.
|
||||
- Responding to change over following a plan.
|
||||
- The [Agile Alliance](www.agilealliance.org) is a non-profit organisation promotes agile development.
|
||||
- ## Agile Motivation
|
||||
- Agile proponents argue:
|
||||
- Software development processes relying on lifecycle models are too heavyweight or cumbersome.
|
||||
- Too many things are done that are not directly related to the software product being produced, i.e., design, models, requirements docs, documentation that isn't shipped as part of the product.
|
||||
- Difficulty with incomplete or changing requirements.
|
||||
- Short development cycles (Mobile Apps).
|
||||
- More active customer involvement needed.
|
||||
- There are several Agile methods, including **Scrum** and **Extreme Programming (XP)**.
|
||||
- ## SCRUM
|
||||
- What is **Scrum**? #card
|
||||
card-last-score:: 1
|
||||
card-repeats:: 1
|
||||
card-next-schedule:: 2022-10-04T23:00:00.000Z
|
||||
card-last-interval:: -1
|
||||
card-ease-factor:: 2.5
|
||||
card-last-reviewed:: 2022-10-04T12:33:02.463Z
|
||||
- **Scrum** is an agile project management methodology for managing product development.
|
||||
- It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
|
||||
- The business sets the priorities. The teams **self-manage** to determine the best way to deliver the highest priority features.
|
||||
- Every two weeks to a month, anyone can see real, working software and decide to release it as is or continue to enhance it for another iteration.
|
||||
- ### Characteristics of SCRUM #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.36
|
||||
card-next-schedule:: 2022-10-04T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-10-04T12:13:22.626Z
|
||||
card-last-score:: 1
|
||||
- Self-organising teams.
|
||||
- No need for project manager (in theory).
|
||||
- Product progresses in a series of month-long or biweekly **sprints**.
|
||||
- Assumes that the software cannot be well defined and requirements will change frequently.
|
||||
- Requirements are captured as items in a list of **product backlog**.
|
||||
- No specific engineering practices prescribed.
|
||||
- XP, TDD, FDD.
|
||||
- Best approach is to start with Scrum and then invent your own version using XP, TDD< FDD, etc.
|
||||
- ### Daily SCRUM / Standup #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.7
|
||||
card-next-schedule:: 2022-10-08T12:15:05.415Z
|
||||
card-last-reviewed:: 2022-10-04T12:15:05.415Z
|
||||
card-last-score:: 5
|
||||
- Parameters:
|
||||
- Daily.
|
||||
- 15-minutes.
|
||||
- Stand-up.
|
||||
- Not for problem solving.
|
||||
- Only team members, ScrumMaster, & Product Owners should talk.
|
||||
- Should help to avoid additional unnecessary meetings.
|
||||
- Commitment in front of peers to complete tasks.
|
||||
- Answer 3 questions:
|
||||
- What did you do yesterday?
|
||||
- What will you do today?
|
||||
- Is anything in your way?
|
||||
- The Daily SCRUM is **not** a problem-solving session and is **not** a way to collect information about who is behind the schedule.
|
||||
- It is a meeting in which members make commitments to each other and to the SCRUM Master.
|
||||
- It is a good way for a SCRUM Master to track the progress of the team.
|
||||
-
|
@ -0,0 +1,101 @@
|
||||
- #[[CT216 - Software Engineering I]]
|
||||
- **Previous Topic:** [[Software Processes]]
|
||||
- **Next Topic:** [[SCRUM Roles & Ceremonies]]
|
||||
- **Relevant Slides:** _1663848442133_0.pdf)
|
||||
-
|
||||
- # Software Development Lifecycle
|
||||
- What is the **Software Lifecycle**? #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.6
|
||||
card-next-schedule:: 2022-10-07T11:41:44.734Z
|
||||
card-last-reviewed:: 2022-10-03T11:41:44.735Z
|
||||
card-last-score:: 5
|
||||
- The **software lifecycle** is an abstract representation of a software process. It defines the steps, methods, tools, activities, and deliverables of a software development project.
|
||||
- The following **lifecycle phases** are considered:
|
||||
- 1. Requirement Analysis
|
||||
2. System Design
|
||||
3. Implementation
|
||||
4. Integration & Deployment
|
||||
5. Operation & Maintenance
|
||||
- ## SDLC Limitations
|
||||
- Classical project planning methods have a lot of disadvantages:
|
||||
- Huge efforts during the planning phase (requirements + design).
|
||||
- Poor requirements conversion in a rapidly changing environment.
|
||||
- Treatment of staff as a factor of production.
|
||||
-
|
||||
- # Agile
|
||||
- What is **Agile**? #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.22
|
||||
card-next-schedule:: 2022-10-11T10:14:18.767Z
|
||||
card-last-reviewed:: 2022-10-07T10:14:18.769Z
|
||||
card-last-score:: 3
|
||||
- There is no single definition of Agile, but the Agile Manifesto is the closest to a defintion.
|
||||
- Set of principles.
|
||||
- Developed by Agile Alliance.
|
||||
- Agile methods focus on:
|
||||
- Individuals & interactions over processes & tools.
|
||||
- Working software over comprehensive documentation.
|
||||
- Customer collaboration over contract negotiation.
|
||||
- Responding to change over following a plan.
|
||||
- The [Agile Alliance](www.agilealliance.org) is a non-profit organisation promotes agile development.
|
||||
- ## Agile Motivation
|
||||
- Agile proponents argue:
|
||||
- Software development processes relying on lifecycle models are too heavyweight or cumbersome.
|
||||
- Too many things are done that are not directly related to the software product being produced, i.e., design, models, requirements docs, documentation that isn't shipped as part of the product.
|
||||
- Difficulty with incomplete or changing requirements.
|
||||
- Short development cycles (Mobile Apps).
|
||||
- More active customer involvement needed.
|
||||
- There are several Agile methods, including **Scrum** and **Extreme Programming (XP)**.
|
||||
- ## SCRUM
|
||||
- What is **Scrum**? #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 2
|
||||
card-next-schedule:: 2022-10-10T04:23:23.437Z
|
||||
card-last-interval:: 2.77
|
||||
card-ease-factor:: 2.36
|
||||
card-last-reviewed:: 2022-10-07T10:23:23.438Z
|
||||
- **Scrum** is an agile project management methodology for managing product development.
|
||||
- It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
|
||||
- The business sets the priorities. The teams **self-manage** to determine the best way to deliver the highest priority features.
|
||||
- Every two weeks to a month, anyone can see real, working software and decide to release it as is or continue to enhance it for another iteration.
|
||||
- ### Characteristics of Scrum #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 2
|
||||
card-next-schedule:: 2022-10-11T10:49:04.551Z
|
||||
card-last-interval:: 4
|
||||
card-ease-factor:: 2.22
|
||||
card-last-reviewed:: 2022-10-07T10:49:04.552Z
|
||||
- Self-organising teams.
|
||||
- No need for project manager (in theory).
|
||||
- Product progresses in a series of month-long or biweekly **sprints**.
|
||||
- Assumes that the software cannot be well defined and requirements will change frequently.
|
||||
- Requirements are captured as items in a list of **product backlog**.
|
||||
- No specific engineering practices prescribed.
|
||||
- XP, TDD, FDD.
|
||||
- Best approach is to start with Scrum and then invent your own version using XP, TDD< FDD, etc.
|
||||
- ### Daily SCRUM / Standup #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.7
|
||||
card-next-schedule:: 2022-10-08T12:15:05.415Z
|
||||
card-last-reviewed:: 2022-10-04T12:15:05.415Z
|
||||
card-last-score:: 5
|
||||
- Parameters:
|
||||
- Daily.
|
||||
- 15-minutes.
|
||||
- Stand-up.
|
||||
- Not for problem solving.
|
||||
- Only team members, ScrumMaster, & Product Owners should talk.
|
||||
- Should help to avoid additional unnecessary meetings.
|
||||
- Commitment in front of peers to complete tasks.
|
||||
- Answer 3 questions:
|
||||
- What did you do yesterday?
|
||||
- What will you do today?
|
||||
- Is anything in your way?
|
||||
- The Daily SCRUM is **not** a problem-solving session and is **not** a way to collect information about who is behind the schedule.
|
||||
- It is a meeting in which members make commitments to each other and to the SCRUM Master.
|
||||
- It is a good way for a SCRUM Master to track the progress of the team.
|
||||
-
|
@ -0,0 +1,101 @@
|
||||
- #[[CT216 - Software Engineering I]]
|
||||
- **Previous Topic:** [[Software Processes]]
|
||||
- **Next Topic:** [[SCRUM Roles & Ceremonies]]
|
||||
- **Relevant Slides:** _1663848442133_0.pdf)
|
||||
-
|
||||
- # Software Development Lifecycle
|
||||
- What is the **Software Lifecycle**? #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.6
|
||||
card-next-schedule:: 2022-10-08T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-10-08T15:00:18.476Z
|
||||
card-last-score:: 1
|
||||
- The **software lifecycle** is an abstract representation of a software process. It defines the steps, methods, tools, activities, and deliverables of a software development project.
|
||||
- The following **lifecycle phases** are considered:
|
||||
- 1. Requirement Analysis
|
||||
2. System Design
|
||||
3. Implementation
|
||||
4. Integration & Deployment
|
||||
5. Operation & Maintenance
|
||||
- ## SDLC Limitations
|
||||
- Classical project planning methods have a lot of disadvantages:
|
||||
- Huge efforts during the planning phase (requirements + design).
|
||||
- Poor requirements conversion in a rapidly changing environment.
|
||||
- Treatment of staff as a factor of production.
|
||||
-
|
||||
- # Agile
|
||||
- What is **Agile**? #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.22
|
||||
card-next-schedule:: 2022-10-11T10:14:18.767Z
|
||||
card-last-reviewed:: 2022-10-07T10:14:18.769Z
|
||||
card-last-score:: 3
|
||||
- There is no single definition of Agile, but the Agile Manifesto is the closest to a defintion.
|
||||
- Set of principles.
|
||||
- Developed by Agile Alliance.
|
||||
- Agile methods focus on:
|
||||
- Individuals & interactions over processes & tools.
|
||||
- Working software over comprehensive documentation.
|
||||
- Customer collaboration over contract negotiation.
|
||||
- Responding to change over following a plan.
|
||||
- The [Agile Alliance](www.agilealliance.org) is a non-profit organisation promotes agile development.
|
||||
- ## Agile Motivation
|
||||
- Agile proponents argue:
|
||||
- Software development processes relying on lifecycle models are too heavyweight or cumbersome.
|
||||
- Too many things are done that are not directly related to the software product being produced, i.e., design, models, requirements docs, documentation that isn't shipped as part of the product.
|
||||
- Difficulty with incomplete or changing requirements.
|
||||
- Short development cycles (Mobile Apps).
|
||||
- More active customer involvement needed.
|
||||
- There are several Agile methods, including **Scrum** and **Extreme Programming (XP)**.
|
||||
- ## SCRUM
|
||||
- What is **Scrum**? #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 2
|
||||
card-next-schedule:: 2022-10-10T04:23:23.437Z
|
||||
card-last-interval:: 2.77
|
||||
card-ease-factor:: 2.36
|
||||
card-last-reviewed:: 2022-10-07T10:23:23.438Z
|
||||
- **Scrum** is an agile project management methodology for managing product development.
|
||||
- It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
|
||||
- The business sets the priorities. The teams **self-manage** to determine the best way to deliver the highest priority features.
|
||||
- Every two weeks to a month, anyone can see real, working software and decide to release it as is or continue to enhance it for another iteration.
|
||||
- ### Characteristics of Scrum #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 2
|
||||
card-next-schedule:: 2022-10-11T10:49:04.551Z
|
||||
card-last-interval:: 4
|
||||
card-ease-factor:: 2.22
|
||||
card-last-reviewed:: 2022-10-07T10:49:04.552Z
|
||||
- Self-organising teams.
|
||||
- No need for project manager (in theory).
|
||||
- Product progresses in a series of month-long or biweekly **sprints**.
|
||||
- Assumes that the software cannot be well defined and requirements will change frequently.
|
||||
- Requirements are captured as items in a list of **product backlog**.
|
||||
- No specific engineering practices prescribed.
|
||||
- XP, TDD, FDD.
|
||||
- Best approach is to start with Scrum and then invent your own version using XP, TDD< FDD, etc.
|
||||
- ### Daily SCRUM / Standup #card
|
||||
card-last-interval:: 11.2
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.8
|
||||
card-next-schedule:: 2022-10-20T02:54:31.522Z
|
||||
card-last-reviewed:: 2022-10-08T22:54:31.568Z
|
||||
card-last-score:: 5
|
||||
- Parameters:
|
||||
- Daily.
|
||||
- 15-minutes.
|
||||
- Stand-up.
|
||||
- **Not** for problem solving.
|
||||
- Only team members, Scrum Master, & Product Owners should talk.
|
||||
- Should help to avoid additional unnecessary meetings.
|
||||
- Commitment in front of peers to complete tasks.
|
||||
- ^^Answer 3 questions:^^
|
||||
- ^^What did you do yesterday?^^
|
||||
- ^^What will you do today?^^
|
||||
- ^^Is anything in your way?^^
|
||||
- The Daily SCRUM is **not** a problem-solving session and is **not** a way to collect information about who is behind the schedule.
|
||||
- It is a meeting in which members make commitments to each other and to the SCRUM Master.
|
||||
- It is a good way for a SCRUM Master to track the progress of the team.
|
||||
-
|
@ -0,0 +1,101 @@
|
||||
- #[[CT216 - Software Engineering I]]
|
||||
- **Previous Topic:** [[Software Processes]]
|
||||
- **Next Topic:** [[SCRUM Roles & Ceremonies]]
|
||||
- **Relevant Slides:** _1663848442133_0.pdf)
|
||||
-
|
||||
- # Software Development Lifecycle
|
||||
- What is the **Software Lifecycle**? #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.6
|
||||
card-next-schedule:: 2022-10-10T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-10-10T11:32:31.602Z
|
||||
card-last-score:: 1
|
||||
- The **software lifecycle** is an abstract representation of a software process. It defines the steps, methods, tools, activities, and deliverables of a software development project.
|
||||
- The following **lifecycle phases** are considered:
|
||||
- 1. Requirement Analysis
|
||||
2. System Design
|
||||
3. Implementation
|
||||
4. Integration & Deployment
|
||||
5. Operation & Maintenance
|
||||
- ## SDLC Limitations
|
||||
- Classical project planning methods have a lot of disadvantages:
|
||||
- Huge efforts during the planning phase (requirements + design).
|
||||
- Poor requirements conversion in a rapidly changing environment.
|
||||
- Treatment of staff as a factor of production.
|
||||
-
|
||||
- # Agile
|
||||
- What is **Agile**? #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.22
|
||||
card-next-schedule:: 2022-10-11T10:14:18.767Z
|
||||
card-last-reviewed:: 2022-10-07T10:14:18.769Z
|
||||
card-last-score:: 3
|
||||
- There is no single definition of Agile, but the Agile Manifesto is the closest to a defintion.
|
||||
- Set of principles.
|
||||
- Developed by Agile Alliance.
|
||||
- Agile methods focus on:
|
||||
- Individuals & interactions over processes & tools.
|
||||
- Working software over comprehensive documentation.
|
||||
- Customer collaboration over contract negotiation.
|
||||
- Responding to change over following a plan.
|
||||
- The [Agile Alliance](www.agilealliance.org) is a non-profit organisation promotes agile development.
|
||||
- ## Agile Motivation
|
||||
- Agile proponents argue:
|
||||
- Software development processes relying on lifecycle models are too heavyweight or cumbersome.
|
||||
- Too many things are done that are not directly related to the software product being produced, i.e., design, models, requirements docs, documentation that isn't shipped as part of the product.
|
||||
- Difficulty with incomplete or changing requirements.
|
||||
- Short development cycles (Mobile Apps).
|
||||
- More active customer involvement needed.
|
||||
- There are several Agile methods, including **Scrum** and **Extreme Programming (XP)**.
|
||||
- ## SCRUM
|
||||
- What is **Scrum**? #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 2
|
||||
card-next-schedule:: 2022-10-10T04:23:23.437Z
|
||||
card-last-interval:: 2.77
|
||||
card-ease-factor:: 2.36
|
||||
card-last-reviewed:: 2022-10-07T10:23:23.438Z
|
||||
- **Scrum** is an agile project management methodology for managing product development.
|
||||
- It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
|
||||
- The business sets the priorities. The teams **self-manage** to determine the best way to deliver the highest priority features.
|
||||
- Every two weeks to a month, anyone can see real, working software and decide to release it as is or continue to enhance it for another iteration.
|
||||
- ### Characteristics of Scrum #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 2
|
||||
card-next-schedule:: 2022-10-11T10:49:04.551Z
|
||||
card-last-interval:: 4
|
||||
card-ease-factor:: 2.22
|
||||
card-last-reviewed:: 2022-10-07T10:49:04.552Z
|
||||
- Self-organising teams.
|
||||
- No need for project manager (in theory).
|
||||
- Product progresses in a series of month-long or biweekly **sprints**.
|
||||
- Assumes that the software cannot be well defined and requirements will change frequently.
|
||||
- Requirements are captured as items in a list of **product backlog**.
|
||||
- No specific engineering practices prescribed.
|
||||
- XP, TDD, FDD.
|
||||
- Best approach is to start with Scrum and then invent your own version using XP, TDD< FDD, etc.
|
||||
- ### Daily SCRUM / Standup #card
|
||||
card-last-interval:: 11.2
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.8
|
||||
card-next-schedule:: 2022-10-20T02:54:31.522Z
|
||||
card-last-reviewed:: 2022-10-08T22:54:31.568Z
|
||||
card-last-score:: 5
|
||||
- Parameters:
|
||||
- Daily.
|
||||
- 15-minutes.
|
||||
- Stand-up.
|
||||
- **Not** for problem solving.
|
||||
- Only team members, Scrum Master, & Product Owners should talk.
|
||||
- Should help to avoid additional unnecessary meetings.
|
||||
- Commitment in front of peers to complete tasks.
|
||||
- ^^Answer 3 questions:^^
|
||||
- ^^What did you do yesterday?^^
|
||||
- ^^What will you do today?^^
|
||||
- ^^Is anything in your way?^^
|
||||
- The Daily SCRUM is **not** a problem-solving session and is **not** a way to collect information about who is behind the schedule.
|
||||
- It is a meeting in which members make commitments to each other and to the SCRUM Master.
|
||||
- It is a good way for a SCRUM Master to track the progress of the team.
|
||||
-
|
@ -0,0 +1,101 @@
|
||||
- #[[CT216 - Software Engineering I]]
|
||||
- **Previous Topic:** [[Software Processes]]
|
||||
- **Next Topic:** [[SCRUM Roles & Ceremonies]]
|
||||
- **Relevant Slides:** _1663848442133_0.pdf)
|
||||
-
|
||||
- # Software Development Lifecycle
|
||||
- What is the **Software Lifecycle**? #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.6
|
||||
card-next-schedule:: 2022-10-20T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-10-20T08:38:27.177Z
|
||||
card-last-score:: 1
|
||||
- The **software lifecycle** is an abstract representation of a software process. It defines the steps, methods, tools, activities, and deliverables of a software development project.
|
||||
- The following **lifecycle phases** are considered:
|
||||
- 1. Requirement Analysis
|
||||
2. System Design
|
||||
3. Implementation
|
||||
4. Integration & Deployment
|
||||
5. Operation & Maintenance
|
||||
- ## SDLC Limitations
|
||||
- Classical project planning methods have a lot of disadvantages:
|
||||
- Huge efforts during the planning phase (requirements + design).
|
||||
- Poor requirements conversion in a rapidly changing environment.
|
||||
- Treatment of staff as a factor of production.
|
||||
-
|
||||
- # Agile
|
||||
- What is **Agile**? #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.22
|
||||
card-next-schedule:: 2022-10-11T10:14:18.767Z
|
||||
card-last-reviewed:: 2022-10-07T10:14:18.769Z
|
||||
card-last-score:: 3
|
||||
- There is no single definition of Agile, but the Agile Manifesto is the closest to a defintion.
|
||||
- Set of principles.
|
||||
- Developed by Agile Alliance.
|
||||
- Agile methods focus on:
|
||||
- Individuals & interactions over processes & tools.
|
||||
- Working software over comprehensive documentation.
|
||||
- Customer collaboration over contract negotiation.
|
||||
- Responding to change over following a plan.
|
||||
- The [Agile Alliance](www.agilealliance.org) is a non-profit organisation promotes agile development.
|
||||
- ## Agile Motivation
|
||||
- Agile proponents argue:
|
||||
- Software development processes relying on lifecycle models are too heavyweight or cumbersome.
|
||||
- Too many things are done that are not directly related to the software product being produced, i.e., design, models, requirements docs, documentation that isn't shipped as part of the product.
|
||||
- Difficulty with incomplete or changing requirements.
|
||||
- Short development cycles (Mobile Apps).
|
||||
- More active customer involvement needed.
|
||||
- There are several Agile methods, including **Scrum** and **Extreme Programming (XP)**.
|
||||
- ## SCRUM
|
||||
- What is **Scrum**? #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 3
|
||||
card-next-schedule:: 2022-10-29T05:29:46.102Z
|
||||
card-last-interval:: 8.88
|
||||
card-ease-factor:: 2.22
|
||||
card-last-reviewed:: 2022-10-20T08:29:46.102Z
|
||||
- **Scrum** is an agile project management methodology for managing product development.
|
||||
- It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
|
||||
- The business sets the priorities. The teams **self-manage** to determine the best way to deliver the highest priority features.
|
||||
- Every two weeks to a month, anyone can see real, working software and decide to release it as is or continue to enhance it for another iteration.
|
||||
- ### Characteristics of Scrum #card
|
||||
card-last-score:: 3
|
||||
card-repeats:: 2
|
||||
card-next-schedule:: 2022-10-11T10:49:04.551Z
|
||||
card-last-interval:: 4
|
||||
card-ease-factor:: 2.22
|
||||
card-last-reviewed:: 2022-10-07T10:49:04.552Z
|
||||
- Self-organising teams.
|
||||
- No need for project manager (in theory).
|
||||
- Product progresses in a series of month-long or biweekly **sprints**.
|
||||
- Assumes that the software cannot be well defined and requirements will change frequently.
|
||||
- Requirements are captured as items in a list of **product backlog**.
|
||||
- No specific engineering practices prescribed.
|
||||
- XP, TDD, FDD.
|
||||
- Best approach is to start with Scrum and then invent your own version using XP, TDD< FDD, etc.
|
||||
- ### Daily SCRUM / Standup #card
|
||||
card-last-interval:: 11.2
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.8
|
||||
card-next-schedule:: 2022-10-20T02:54:31.522Z
|
||||
card-last-reviewed:: 2022-10-08T22:54:31.568Z
|
||||
card-last-score:: 5
|
||||
- Parameters:
|
||||
- Daily.
|
||||
- 15-minutes.
|
||||
- Stand-up.
|
||||
- **Not** for problem solving.
|
||||
- Only team members, Scrum Master, & Product Owners should talk.
|
||||
- Should help to avoid additional unnecessary meetings.
|
||||
- Commitment in front of peers to complete tasks.
|
||||
- ^^Answer 3 questions:^^
|
||||
- ^^What did you do yesterday?^^
|
||||
- ^^What will you do today?^^
|
||||
- ^^Is anything in your way?^^
|
||||
- The Daily SCRUM is **not** a problem-solving session and is **not** a way to collect information about who is behind the schedule.
|
||||
- It is a meeting in which members make commitments to each other and to the SCRUM Master.
|
||||
- It is a good way for a SCRUM Master to track the progress of the team.
|
||||
-
|
Reference in New Issue
Block a user