Software Engineering

¡Supera tus tareas y exámenes ahora con Quizwiz!

Product owner

An individual (or possibly a small group) whose job is to identify product features or requirements, prioritize these for development, and continuously review product backlog to ensure that the project continues to meet critical buisness needs. The product manager can also be the customer but also might be a product manager in a software company or other stakeholder representative.

The first practice a team needs to master when using Kanban is to___________________ their workflow

visualize

The Japanese word for continuous improvement is ___________

Kaizen

ScrumMaster

The ScrumMaster is responsible for ensuring that the scrum process is followed and guides the team in the effective use of scrum. He or she is responsible for interfacing with the rest of the company and for ensuring that the Scrum team is not diverted by outside interference

The Scrum Master is responsible of deciding what the team should be working on and in what order it should be completed

false

The product owner provides the team with an estimate for how long it will take to implement each backlog item

false

Sprint Planning meeting

-A list of team members - their commitment levels -A sprint backlog - a list of stories included in the sprint -A defined sprint demo date. -A defined time and place for the daily scrum.

Roles in Scrum

-Scrum Master (Project manager) -Product Owner (voice of the customer) - Prioritizes stories in the product backlog -Team - Design, development, testing, etc.

What are the two fundamental types of software product?

1. Generic products - Stand-alone systems that are marketed and sold to any customer who wishes to buy them. 2. Customized products - Software that is commissioned by a specific customer to meet their own needs.

What is the four fundamental activities in software processes?

1. Software specification, where customers and engineers define the software that is to be produced and the constraints on its operation. 2. Software development, where the software is designed and programmed. 3. Software validation, where the software is checked to ensure that it is what the customer requires. 4. Software evolution, where the software is modified to reflect changing customer and market requirements.

Sprint

A development iteration. Sprints are usually 2 to 4 weeks long.

Estimating Velocity

Available man days * focus factor = estimated velocity Actual velocity / available man days = focus factor given : Estimated Velocity = 26 Actual Velocity = 18 Available man days = 30 1. find focus facor 18/30 = .60 2. find estimated velocity .60 * 60 = 36 Estimated Velocity ?(answer is 36) Available mandays = 60

What do the system stakeholders require or expect from the system?

Brainstorming, Document analysis, Interview, Prototyping, Observation, Survey and Use Case Modeling

Lean teams try to quantify how time-critical a feature is using a metric called

Cost of Delay

Scrum board, burn down chart

Graphics representation of remaining effort vs. time Measures remaining effort in hours / number tasks Time measured in days

Disadvantages of the waterfall model

It is often difficult to get customer requirements explicitly. Thus specifications can't be froze. No working software is produced until late during the life cycle. Once an application is in the testing stage, it is very difficult to go back and change something

External quality

Lecture 3 - 22/60 What is perceived by the users of the system

Internal quality

Lecture 3- 22/60 Refactoring, Test coverage, and code readability

What are the essential attributes of good software?

Maintainability,Dependability and security, Efficiency, Acceptability

This type of waste is the Japanese word for unreasonableness

Muri

__________Thinking gives a Lean team choices until the last responsible moment

Option

Advantages of the waterfall model

Output is generated after each stage (as seen before), therefore it has high visibility. The client and project manager gets a feel that there is considerable progress. Clear milestones Easy to manage Easy to understand Extensive documentation

Self-Organizing

Partial definition of self-organizing - Scrum Teams are self-organizing..... Self-organizing teams choose how best to accomplish their work, rather than being directed by others outside the team

Product backlog

Product backlogs - Prioritized list of requirements. - stories, backlog items ID - a unique identification, auto incremented number. Name - descriptive name of the story Importance - the product owner's importance rating for this story - ex) 10 or 150 , High = more important Initial estimate - how much work is needed to implement this story compared to other stories. - ex) "with 3 guys locked into a room it will take approximately 4 days" ,12 story points

Advantages and Disadvantages of the Integration and configuration

Reduced costs and risks as less software is developed from scratch Faster delivery and deployment of system But requirements compromises are inevitable so system may not meet real needs of users Loss of control over evolution of reused system element

SCRUM

Scrum is not a methodology, it is a framework.(Ken Schwaber) SCRUM Process - you don't' need to do it exactly the same way - you may well do it in a different way, if you encounter a different situatio

Pair Programming

Scrum with XP (extreme programming) TDD(Test-driven development) - Test-driven development means that you write an automated test, then you write just enough code to make that one test pass, then you refactor the code primarily to improve readability and remove duplication. Rinse and repeat. Continuous Integration. The TDD Cycle - Write a test - Make it run - Make it right The TDD Misconception - "write all the tests, then build a system that passes the tests" - "write some of the tests, then build a system that passes the tests" - "do lots of testing"

Teams that pursue multiple options when developing features are using a Lean thinking tool called

Set based development

Short Sprint

Short sprints - short feedback cycle → more frequent deliveries → more frequent customer feedback → less time spent running in the wrong direction → learn and improve faster, etc.

Kanban means ___________________________card in Japanese

Signal

What is software engineering?

Software engineering is an engineering discipline that is concerned with all aspects of software production.

Sprint

Sprint - time box of two weeks or one month to create releasable product increment Note: The product backlog -Prioritized list requirements

What software engineering fundamentals apply to all types of software systems?

Systems should be developed using a managed and understood development process. Of course, different processes are used for different types of software. - Dependability and performance are important for all types of system. - Understanding and managing the software specification and requirements (what the software should do) are important. - Where appropriate, you should reuse software that has already been developed rather than write new software.

What are the three benefits of incremental development, compared to the waterfall model?

The cost of accommodating changing customer requirements is reduced It is easier to get customer feedback on the development work that has been done More rapid delivery and deployment of useful software to the customer is possible. slide 15/61-lecture 2

Advantages of the Incremental development

The cost of accommodating changing customer requirements is reduced. - The amount of analysis and documentation that has to be redone is much less than is required with the waterfall model. It is easier to get customer feedback on the development work that has been done. - Customers can comment on demonstrations of the software and see how much has been implemented. More rapid delivery and deployment of useful software to the customer is possible. - Customers are able to use and gain value from the software earlier than is possible with a waterfall process.

What characteristics can be used for a project in the waterfall mode?

The model is only appropriate when requirements are well-understood and changes will be fairly limited during design process. Cost are important. For big projects.

Disadvantages of the Incremental development

The process is not visible. - Managers need regular deliverables to measure progress. If systems are developed quickly, it is not cost-effective to produce documents that reflect every version of the system. System structure tends to degrade as new increments are added. - Unless time and money is spent on refactoring to improve the software, regular change tends to corrupt its structure. Incorporating further software changes becomes increasingly difficult and costly

Sprint Planning Poker

Time estimating using planning poker

Lean is derived from the __________ production system

Toyota

Kanban teams set ___________limits on steps in their process in order to optimize for flow

WIP

Agile Manifesto

What this meeting produced —The Manifesto for Agile Software Development, signed by all 17 of the participants—was symbolic. It declares that: We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: - Individuals and interactions over processes and tools - Working software over comprehensive documentation - Customer collaboration over contract negotiation - Responding to change over following a plan

Development team

a self organizing group of software developers, which should be no more than 7 people. They are responsible for developing the software and other essential project documents

10. How are stakeholders external to the Scrum team involved in the Daily Scrum ? a)There's no such involvement b)The Product Owner represents their opinions c)The Scrum Master represents them

a)

12. The Product Owner must attend the Daily Scrum in a silent mode a)False b)True

a)

16. Since the Scrum Team is self-organizing, it can create an additional role to represent the organization with Scrum a)False b)True

a)

18. A servant leadership role includes : a)Shielding team member from interruptions b)Making commitments to stakeholders c)Assigning tasks to save time

a)

2. When can the Product Backlog be refined? a) Anytime needed b) At the end of the Sprint Planning c) During the Sprint Planning d) Right before the Sprint Planning

a)

20. The Product Owner and the Scrum Master cannot tell the Development Team how to build the product. a) True b) False

a)

23. Which of the following is not a prioritization technique? a) Planning Poker b) User Story Mapping c) Product Backlog ordering

a)

24. Which list below includes the attributes of a good User Story a) Small, estimable, independent, negotiable b) Valuable, dependent, Small c) Testable, Large

a)

25. The Optimal size of the Development Team is a) 3 to 9 b) 2 to 11 c) 5 to 8 d) 4 to 6

a)

4. How should developers deal with non-functional features ? a)Incorporate them into every increment b)Incorporate them before the release c)Incorporate them in the Integration Sprint

a)

6. Who can change the Sprint Backlog during the Sprint ? a)The Development Team b)NO one c)The Product Owner d)The Development Team an Product Owner together

a)

8. The Product Backlog is only refined during the Sprint Planning and Sprint Review a)False b)True

a)

9. A Development Team member should own each Sprint Backlog item a)False b)True

a)

7. SCRUM is software development methodology a)False b)True

a) Scrum is not a methodology, it is a framework.(Ken Schwaber)

2.Which options are acceptable when the Product Owner wants to be informed of the progress in the middle of the Sprint? (choose 2 answers) a)Check the task board (Scrum board) in the project room b)Ask the team leader for daily briefs c)Ask the Scrum Master for daily briefs d)Attend the Daily Scrum meeting

a) and d)

11. The Product Owner does not have to be one person, and the role can be played by a committee a)True b)False

b)

14. Who is responsible for managing the Product Backlog in Scrum? a)The Development Team b)The Product Owner c)The Scrum Master d)The Scrum Team

b)

15. A Product Owner is essentially the same role as a traditional Project Manager ? a)True b)False

b)

17. A Development Team gets into a situation where a conflicting team members' behavior causes issues to progress. Who is responsible for removing this issue? a) Scrum Master b) Development Team c) Product Owner

b)

21. When do Development Team members become the exclusive owner of a Sprint Backlog item? a) During the Daily Scrum b) Never. All Sprint Backlog items are "owned" by the entire Development Team, even though each one may be done by an individual development team member c) At the Sprint planning meeting.

b)

27. In a Scrum Team, only the Product Owner communicates with the stakeholders. There is no exception to this rule a) True b) False

b)

28. There should be a release for every Sprint a) True b) False

b)

3. Our velocity was 250 at the end of the 6th Sprint, It has become 275 at the end of the 11th Sprint. Therefore, we're creating more value now, compared to the past a) True b) False

b)

3.Resolving internal conflicts inside the team is NOT the responsibility of the Development Team a) True b) False

b)

13. In their journey to deliver products of the highest business value, what factors will enable the Scrum Team to balance creativity, flexibility and productivity? Select all that apply a)Performance management system that rewards the super achievers of the team b)Having all the skills required to perform all their work without external help c)Structuring the team such that it can self-organize its work against a common goal d)Strong team management and guidance by a team member identified as their team leader

b) and c)

26. Pick 3 activities that are the accountability of the Development Team a) Create user stories b) Make technical decisions c) Provide estimates d) Design software

b), c) and d)

22. What is the best description of the job of a Product Owner? a) Spending a lot of time with the developers to clarify the requirements b) Writing transparent, and detailed user stories c) Working with stakeholders to identify the most important requirements in order to maximize value

c)

4. The customer wants a new feature to be added in the current Sprint. How should the Development Team respond? a) Add the item to the bottom of the Sprint Backlog b) Reject the request c) Ask the Product Owner to work with the customer d) Add the item to the Product Backlog

c)

5. The Development Team decides to divide the Sprint Backlog and assign ownership of every Sprint Backlog Item to separate individuals on the team. The Scrum Master a)Should encourage this practice as it increases individual accountability b)Should encourage this practice as it increases productivity c)Should coach the Team to collectively take ownership of the Sprint Backlog Items even though an individual works on a specific team

c)

1.In which cases is an Increment valuable? (choose 2 answers) a)When it is delivered on time b)When it has all the features that the Product Owner expected c)When it reduces long-term operational costs d)When it increases customer satisfaction

c) and d)

Lean teams don't use sprints, they develop on a delivery ________________

cadence

1. What is not a Development Team responsibility ? a) Assigning tasks b) Creating tasks c) Measuring their performance d) Breaking down Product Backlog items into smaller items

d)

19. Who is the most important stakeholder that the Product Owner should satisfy? a) The Scrum Master b) The developers c) All stakeholders are equally important d) End users

d)

This type of waste is often identified through testing

defects

Lean teams are always working to_________ waste

eliminate

Sometimes teams build _________ processes and features

extra

An ideal team size is large, consisting of 10 or more members

false

The Scrum Master is an unnecessary role that can be played part time by team member or ignored completely if no one is available

false

The product owner should introduce new sprint backlog item, mid-sprint, whenever they change their mind about what they

false

The team is responsible for deciding on the priority of the product backlog

false

Long Sprints

long sprints. - The team gets more time to implement a releasable product → less overhead in terms of sprint planning meetings, demos, etc.

Unlike Scrum and XP, Lean is a __________, not a methodology

mindset

When the later step gets its work from the step before it in a process

pull system

A type of waste that you see when people try to do too many things at once

task switching

The Scrum Master guides and facilitates the Scrum process with a servant leadership

true

The Scrum Master takes personal accountability for clearing roadblocks (issues and risks) off the team's plate, so that they can focus on completing the sprint backlog

true

The product owner should shield the team from arbitrary stakeholder requests

true

The product owner works with all of the stakeholders in order to assess overall priority of each backlog item in the product backlog

true

The team is responsible for turning the sprint backlog items into potentially shippable product increments

true

The team is self-organizing and self-managing; they make their own decision about how to accomplish their worktrue

true

Lean teams create a map of the ________ stream to find out how much time is spent waiting

value

Lean thinking asks people to "see the __________" when they analyze a process

whole


Conjuntos de estudio relacionados

Chapter 15 Business Law, business law test bank 15, BLaw Exam 2 12-16, Offers and Counteroffers, BLAW quiz 4, Exam 2 Terms, Bus Law - Chap 13., Exam 2

View Set

GENERAL PARTNERSHIPS and LLPs. Chapter 3

View Set