Lecture 5 - The concept of agility, The Rational Unified Process (RUP) Flashcards
Why do we need agility in ISD?
requirements are changing, technology evolving, unpredictable ISD process,
what are the downsides of traditional waterfall development?
inflexible when changes occur, costly when deviating from the plan in later part of development
Mention the 4 phases of waterfall method
analysis -> design -> code/test ->implementation
what are the agile values in the manifesto?
individuals and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, responding to change over following a plan
mention some important agile principles
satisfying customer, continuous delivery of software, welcome changing requirements, deliver working software frequently(as in sprints), close collaboration with the customer, working software is measure of progress, simplicity when developing, self-organizing teams
benefits of agile ISD
handles changing requirements, lowers cost of change, provides better visibility into projects progress, reduces risk, maximizes ROI as business value is prioritized, higher quality with simpler code, delivers business value early and often
Is the waterfall method agile or traditional?
traditional, but also has agile elements as the sequential steps can step backwards as well
Is the agile manifesto a method?
No, The agile manifesto is not a method, but general guideline that can help. So even practitioners are not using methods!
Are Scrum and XP techniques or methods?
They are techniques that together with other techniques are partial elements of a method in a company - som jeg forstår det, er det fordi en method aldrig følger 100% og derfor er de teknikker, som tilsammen udgør method-in-action?
How can agile development work without documentation?
Agile want’s to avoid documentation, so the software should document itself by being build up intuitive
What is on-premise development?
On-premise development: sitting at the customer and developing the system to know how it works in practice.
How do you measure progress in agile?
delivering features is only measure of progress for agile
What is timeboxing? and can you give an example of how this is used in scrum or xp?
Timeboxing refers to the act of putting strict time boundaries around an action or activity. An example of this in scrum are the sprints that are time to 7 days or 14 days. But could also be daily standup meetings that are timeboxed 15’ each morning.
What is K-03 in danish standard contracts?
The agile contracts for government projects
How would you explain agile ISD using the fitzgerald framework?
Context is the reason for having agile methods.
The IT-system is influenced by agile, if the requirements form plan-based(mentioned in the beginning) are present, then agile isn’t needed.
Role of method is influenced by agile. If we change the job descriptions to be more agile, the political role also changes. Can also empower the software developpers.
What is refactoring code and what are the advantages of this?
Code can become messy, when you have no structure. Refactoring is necessary to decompose the whole system, and create the architecture based on this, so it’s exposed to our new learning. But often customers don’t want to pay for this. But for maintenance of the system, it’s a lot easier when it’s refactored.
what is a sprint review in scrum?
sprint review: what did we do? with stakeholders/PO
What is sprint retrospective?
sprint retrospective: how did we do it. internally with focus on the process of the development
Mention the roles, artifacts and ceremonies in scrum?
roles: PO, Scrum Master, development team
artifacts: Product backlog, sprint backlog(items chosen for the specific sprint), Burndown chart
Ceremonies: Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective
see slide for explanation of each: http://www.newtechusa.com/Resources/Scrums3333.pdf
which techniques can be described as adaptive, iterative and predictive?
Scrum and XP are adaptive, while Spiral, RAD and RUP are iterative, and waterfall predictive.
what is the rational unified process?
an iterative development method.
six best practices for modern software engineering:
- Develop iteratively, with risk as the primary iteration driver (Important to notice!)
- Manage requirements
- Employ a component-based architecture
- Model software visually
- Continuously verify quality
- Control changes (important to notice!)
core structure of Rational Unified Process?
Workers (who): roles that individuals or teams are taking
Activities (how): task of a specific worker affecting artifacts
Artifacts (what): tangible products (information), used as an input by workers to perform an activity
Workflows (when): a sequence of activities that produce a result
what are the phases of Rational Unified Process?
Inception:you establish the business case for the system and delimit the project scope. Heavy focus on business modeling and requirements.
Elaboration: analyze the problem domain, establish a sound architectural foundation, develop the project plan, and eliminate the highest risk elements of the project. At the end of this phase, the hard “engineering” is considered complete
Construction: components and application features are developed and integrated into the product, and all features are thoroughly tested.
Transition: transition of the software product to the user community
note: in end of elaboration phase you choose whether continuing to construction and transition or abandon project.
Core and supporting workflows in RUP?
Core: business modelling, analysis & design, requirements, implementation, testing, implementation
supporting: Project management, configuration/change management, environment
benefits and drawbacks of RUP?
Benefits: Improved management, Regular feedback to stakeholders, Improved risk management, You implement the actual requirements, You discover what really works early
Drawbacks: Process is too complex and can become disorganized, The process need experts, Can be very demanding on the user’s
time, Costs can increase, Needs the right working culture in the organization, Commercial angle