CS634 Final Exam
Functional Requirement
A technical functionality documented quantitatively (i.e. authentication, admin functions)
Affinity Estimating
A technique designed to rapidly estimate a large feature backlog (shirt sizes, Fibonacci sequence)
Working software
According to the Agile Manifesto, _______ over comprehensive documentation
Customer collaboration
According to the Agile Manifesto, _______ over contract negotiation
Responding to change
According to the Agile Manifesto, _______ over following a plan
Individuals and interactions
According to the Agile Manifesto, _______ over processes and tools
UI design
Addresses how users will interact with the system
SAFe
Addresses scaling agile at 4 levels
Participate throughout the project
Agile customers
Continuous assessment of relevancy
Agile planning
Iterative
Agile project lifecycle
Facilitates project
Agile project manager
Testing is continuous
Agile testing
Continuous Delivery
Any change can be deployed at any time (but typically isn't), business determines when released
Product
App or service that is being delivered to the end customer
Form of user story
As a _____, I want to _____ so that I can _____.
Low fidelity wireframes or prototypes
Best way to illustrate a concept to users
Product manager
CEO of product who guides design and implementation of product throughout the lifecycle
Continuous Deployment
Changes automatically deployed
Release train engineer
Chief ScrumMaster in ART
UI
Component of UX
UX
Context of usage
Technical Debt
Cost of leaving technical items undone, a shortcut in favor of getting a project finished
Development Process
Creating the best product possible
DEEP product backlog
Detailed appropriately, emergent, estimated and prioritized
Progressive Estimation
Determine difficulty of a backlog item
Relative Sizing
Estimating the size of a story in comparison with another story (most difficult to least, without specific points)
Project charter
Formal document created after the vision to authorize the project and to secure funding
Product Roadmap
From backlog to release planning. Answers what & when, not how. The visual layout of the product's deliverables and their ordered plans for release
Ideal Time
Full work day with no interruptions
Complex, complicated
Good type of project for agile
Simple, chaotic
Good type of project for traditional project management
Independent, Negotiable, Valuable, Estimable, Small, Testable
INVEST (in good user stories) stands for...
7 +/- 2
Ideal # of people on a team
Release Plan
Includes the features that will be delivered by the release date
Viable, desirable, feasible
Intersect these 3 types of design solutions for a project
Epics
Large user stories with little detail, can be decomposed into smaller stories as functionality is prioriized
Vision statement
Lightweight artifact that helps communicate intent of the product/service idea
Big product owner
Manages product roadmap, owns product backlog, facilitates financial management (at a big tech company)
By example; given/when/then; test with/test that
Methods for establishing user acceptance criteria
High Fidelity Wireframe
Mockup close to the final product, with lots of detail and a good indication of the final proposed aesthetics and functionality
Potentially Shippable Product Increment
Output at end of sprint, meets team's definition of "done" and the user story is ready to deploy
Enterprise Architect
Person grounded in tech & business, provides the bridge between IT and the business
Agile Coach
Person most likely responsible in helping an org improve agile dev practices
Lean
Process efficiency, continuous improvement, inspecting & adapting, retrospectives, customer value
Scrum
Process framework that is not prescriptive on roles or practices
Backlog Grooming
Process of adding new user stories to the backlog, re-prioritizing existing stories as needed, creating estimates, and deconstructing larger stories into smaller stories or tasks
Refactoring
Process of updating/improving code without changing functionality
Release Management team
Provides governance, scope management, & impact planning in ART
Acceptance Testing
Provides the final certification that the system is ready to be used in a production setting
Agile Quality Management
Quality assessed after each iteration, focus on prevention over detection, whole team effort
What went well, areas for improvement
Questions for sprint retrospective
Operations Process
Releasing a shippable product to customers & maintaining it
Product management
Represents entire lifecycle of the product from ideation to delivery to evolution
2 common causes of error in Agile Quality
Requirements (errors of omission, clarity, ambiguity) & design (fails functional or non-functional reqs)
Continuous Integration
Requires an automated build & devs integrating code into a shared repo several times a day; process of writing, checking, and building on a very frequent basis
Release train engineer, release management team, product managers, architects, devOps
Roles in ART (Agile Release Train)
Low fidelity wireframe
Rough preliminary sketch of UI
Scaled agile framework
SAFe stands for
SAFe (Scaled Agile Framework), DAD (Disciplined Agile Delivery), LeSS (Large Scale Scrum), S@S (Scrum @ Scale)
Scaled Agile options
Sprint Planning
Selecting high priority stories to accomplish during the sprint
Minimum Viable Product (MVP)
Smallest product release that successfully achieves its desired outcomes
Nonfunctional Requirements
Specifies criteria to judge the system operation in particular conditions, rather than specific behaviors (i.e. security, scalability, capacity)
Architectural Runway
Sustainable, scalable, existing infrastructure to deliver functionality across products down the road
Project
Temporary endeavor undertaken to create a unique product, service, or result
Agile Manifesto
The agreement made among SWEs on 4 main principles
Sprint review
The meeting where dev teams demonstrate progress to customers
User flow
The path users take from getting to a website through taking one of an action on the site
Personas
The people that we are developing for
Velocity
The speed at which a team completes a sprint; always unique to a team; provides a way to estimate total project duration
Minimally Viable Concept
To develop a simple yet complete set of features to engage with users
Planning Poker
Tool to estimate effort on user stories by a team
Extreme programming (XP)
Used to scale up Scrum practices for large complex projects
UX Honeycomb Model
Valuable, desirable, accessible, credible, findable, usable, useful
Agile Release Train (ART)
Virtual organization of 5-12 teams (50-125 people) that plans, commits, and executes together
Release roadmap
Visualizes the incremental release strategy for the product
Involved in upfront planning and launch
Waterfall customers
Once and done
Waterfall planning
Sequential
Waterfall project lifecycle
Controls project
Waterfall project manager
Performed at the end
Waterfall testing
Release
When a product is formally delivered to customers
Product Vision
Who will use the product, what needs will it address, what attributes are critical, how much time & money we have
Small product owner
Works with dev & ScrumMaster, manages product backlog, writes user stories, attends Scrum meetings & release planning (not too much authority, conduit for execs)
False
(T/F) Stories can be split across sprints
Context, content, users
3 circles of digital information architecture
Lean, scrum, XP
3 methodologies that work together to enable Agile software development
Did yesterday, doing today, any blockers
3 questions at daily stand ups
ScrumMaster, Product Owner, dev
3 roles of scrum team
Planning, execution, review, retrospective
4 components of Scrum
Team, program, portfolio, large solution
4 levels of the SAFe framework, built on Lean-Agile principles and leverages Scrum/XP/Kanban practices at the team level
Wireframes
A blueprint-like diagram of a UI, a mockup/sketch that typically goes through iterations after getting feedback
Test driven development
A method that helps developers write better code; rapid cycle of testing, coding, and refactoring
Story point
A number that represents the overall level of effort to complete a story
Fibonacci sequence
A sequence of numbers in which each number is the sum of the preceding two
Product backlog
A single list of features prioritized by business value, used to capture requirements