The document discusses the Rational Unified Process (RUP) framework for user interface design. It begins by providing an overview of RUP and its goals of ensuring high-quality products are delivered on schedule and budget. It then discusses how RUP is analogous to making a movie, with many iterative artifacts and activities involved. The document also discusses how RUP differs from a traditional construction analogy, as software development involves more unpredictable elements. It provides examples of risk mitigation strategies used in RUP, such as iterative development, requirements management, component-based architecture, and visual modeling.
2008 SMEF - Scope management - Sail the seas of changeFrank Vogelezang
Scope management has a lot of parallels with Columbus journey to discover America. He did not know what he was going to find, but he went with all knowledge available.
Continuous Delivery (CD) is often thought to be within the purview of tech practitioners – developers, testers, operations, delivery managers, etc. However, the industry is fast realizing that CD is actually more of a business decision. CD can be the game changer to help the organization stay a step ahead by delivering value to the customer reliably and frequently. CD isn’t a geeky fad, but a huge business enabler vouched for by Facebook, LinkedIn, Flickr and the like. In this session I’ll Introduce the principles, the practices, the tools, and the business value proposition of continuous delivery both from a business point of view and from a technical point of view.
Do The Right Thing - Empowering Your Test TeamsSmartBear
Margo Visitacion of Forrester Research discusses how empowered testing teams can work effectively with their business counterparts to plan and execute highly focused test cycles that, through a combination of manual and automated testing will assure that the highest quality software is being released.
Software Craftsmanship vs Software Engineering (Lightning Talk)Andy Maleh
The recent emergence of the Software Craftsmanship movement in the last decade has been accompanied with quite a bit of confusion on what the movement is exactly about and whether it adds any value beyond previous software development movements, such as Agile and Software Engineering. In this short talk, Andy Maleh will define Software Craftsmanship, compare and contrast to Software Engineering, and provide examples on how both disciplines are playing out at the Groupon software development environment.
MBTA Customer Support Portal - User Interface & Design - Reccomendations & Su...Shaun Gould
Using Web 2.0 & Social Media Technology to streamline Customer Service for profit and good.
Mass Bay Transit Authority (MBTA) of Boston
An Evaluation of the Webby Award winning portal and their User Interface & design.
By Shaun M. Gould
A Presentation by Shaun Gould for:
MBTA (Metropolitan Boston’s PublicTranssit Authorty (AKA "The T " ) CustomerSupport Portal.
Reccomendations, User Surveys, Interviews, and discussion with designa nd implementation team.
From Use to User Interface- This 3-4 hour tutorial describes a practical approach to translating the goals users would like to achieve and the tasks they wish to accomplish into user interface designs that effectively support those goals and tasks.
2008 SMEF - Scope management - Sail the seas of changeFrank Vogelezang
Scope management has a lot of parallels with Columbus journey to discover America. He did not know what he was going to find, but he went with all knowledge available.
Continuous Delivery (CD) is often thought to be within the purview of tech practitioners – developers, testers, operations, delivery managers, etc. However, the industry is fast realizing that CD is actually more of a business decision. CD can be the game changer to help the organization stay a step ahead by delivering value to the customer reliably and frequently. CD isn’t a geeky fad, but a huge business enabler vouched for by Facebook, LinkedIn, Flickr and the like. In this session I’ll Introduce the principles, the practices, the tools, and the business value proposition of continuous delivery both from a business point of view and from a technical point of view.
Do The Right Thing - Empowering Your Test TeamsSmartBear
Margo Visitacion of Forrester Research discusses how empowered testing teams can work effectively with their business counterparts to plan and execute highly focused test cycles that, through a combination of manual and automated testing will assure that the highest quality software is being released.
Software Craftsmanship vs Software Engineering (Lightning Talk)Andy Maleh
The recent emergence of the Software Craftsmanship movement in the last decade has been accompanied with quite a bit of confusion on what the movement is exactly about and whether it adds any value beyond previous software development movements, such as Agile and Software Engineering. In this short talk, Andy Maleh will define Software Craftsmanship, compare and contrast to Software Engineering, and provide examples on how both disciplines are playing out at the Groupon software development environment.
MBTA Customer Support Portal - User Interface & Design - Reccomendations & Su...Shaun Gould
Using Web 2.0 & Social Media Technology to streamline Customer Service for profit and good.
Mass Bay Transit Authority (MBTA) of Boston
An Evaluation of the Webby Award winning portal and their User Interface & design.
By Shaun M. Gould
A Presentation by Shaun Gould for:
MBTA (Metropolitan Boston’s PublicTranssit Authorty (AKA "The T " ) CustomerSupport Portal.
Reccomendations, User Surveys, Interviews, and discussion with designa nd implementation team.
From Use to User Interface- This 3-4 hour tutorial describes a practical approach to translating the goals users would like to achieve and the tasks they wish to accomplish into user interface designs that effectively support those goals and tasks.
Can we see additional value in linking and exploiting big data for business and societal benefit?
If we bring together numerous data sources to provide a single reference point then we start to derive new value.
Until then, we simply risk creating new data silos.
Big Data and Harvesting Data from Social MediaR A Akerkar
The value of social media data is only as valuable as the information and insights we can extract from it. It is the information and insights that will help us make better decisions and give us a competitive edge.
Can You Really Make Best Use of Big Data?R A Akerkar
How big is big? What are the precise criteria for a data set to be considered big data? At least three major factors that contribute to the bigness of big data: Ubiquity and variety of data capturing devices for different types of information
Increase data resolution. Super-linear scaling of data production rate with data producers. Although big data has other dimensions too but these are not inherent to the "bigness" of big data.
A presentation I gave in 2007 to Business School students at the University of Auckland - focusing mostly on the value of sketching, prototyping and iterating in software design & development.
Im Bereich der professionellen Softwareentwicklung hat sich in den letzten 10 Jahren viel getan. In diesem Vortrag schauen wir uns an, was es eigentlich bedeutet, professionelle und nicht nur funktionierende Software zu entwickeln. Gerade auf der persönlichen und Teamebene unterscheidet sich die Disziplin der Softwareentwicklung in vielen Bereichen von den Anforderungen die noch vor einigen Jahren Gültigkeit besaßen.
Die Kernänderungen werden im Vortrag anhand von 10 Thesen verdeutlicht, erläutert und soll darüber zum Nachdenken über den Berufsethos eines Softwareentwicklers anregen. Neben Entwicklern richtet sich der Vortrag vor allem auch an Projektverantwortliche, da auch aufgezeigt wird, dass es weitere wichtige Aspekte neben den rein funktionalen Anforderungen zu beachten gilt.
Zum Referenten:
Richard Attermeyer arbeitet bei OPITZ CONSULTING als Senior Solution Architect im Bereich Technologiemanagement und Innovation. Dort leitet er unter anderem das Architecture Board. Er beschäftigt sich seit Jahren mit flexiblen Systemarchitekturen und deren Wechselwirkungen mit Entwicklungsprozessen und Unternehmens- und Managementkulturen. Hot Topics: CI/CD, Technologiemanagement, flexible Systemarchitekturen und DevOps.
Release Engineering Downstream of an OpenStack ProjectRainya Mosher
Presentation given at OSCON 2015 Open Cloud Day on 7/21/2015
For open source projects such as OpenStack, being able to effectively build, release, and deploy upstream code into a production environment is as much art as science. Using the experience gained from more than three years in OpenStack operations, we will share best practices and tools to create a sustainable and repeatable release engineering process for your own open source development needs.
http://www.oscon.com/open-source-2015/public/schedule/detail/44790
Comprehensive overview of using Test Driven Development (TDD), Behavior Driven Development (BDD), Continuous Integration (CI), Continuous Delivery (CD), Development Operations (DevOps), and Development Operations Security (DevOpsSec). Describes the current global environment, basic lean and agile principles, and the evolution of Microservices. From there, a detailed deep-dive of TDD, BDD, CI, CD, DevOps, and DevOpsSec principles and practices ensues. Closes by identifying key DevOps tool automation ecosystems/pipelines, metrics, case studies, return on investment (ROI)/business cases, implementation roadmaps, adoption statistics, leadership insights, and a summary. Contains a lot of helpful data for constructing DevOps strategic business cases as well as tactical implementation strategies (while not ignoring essential elements such as microservices, containerization, and application security).
The Ultimate Guide to React Native App Development Services | iTechnolabsiTechnolabs
iTechnolabs is a leading mobile and react native app development company. The company employs a team of top app developers, designers, and strategists who are dedicated to creating bleeding-edge mobile applications for start-ups and enterprise clients that are featured in app stores. The team at iTechnolabs builds experiences rather than merely apps. The company creates multi-level software solutions such as iOS app development, Android app development, Web app development, IoT, Wearables, and latest technologies app and web development. Visit our site: https://itechnolabs.ca/react-native-app-development-company/
Leveraging Big Data to Manage Transport Operations (LeMO) project will address these issues by investigating the implications of the utilisation of such big data to enhance the economic sustainability and competitiveness of European transport sector.
Whilst big data may represent a step forward in business intelligence and analytics, we see added value in linking and utilizing big data for business benefit. Once we bring together numerous data sources to provide a single reference point can we start to derive new value. Until then, we only risk creating new data silos.
The Chakra System in our body - A Portal to Interdimensional Consciousness.pptxBharat Technology
each chakra is studied in greater detail, several steps have been included to
strengthen your personal intention to open each chakra more fully. These are designed
to draw forth the highest benefit for your spiritual growth.
The PBHP DYC ~ Reflections on The Dhamma (English).pptxOH TEIK BIN
A PowerPoint Presentation based on the Dhamma Reflections for the PBHP DYC for the years 1993 – 2012. To motivate and inspire DYC members to keep on practicing the Dhamma and to do the meritorious deed of Dhammaduta work.
The texts are in English.
For the Video with audio narration, comments and texts in English, please check out the Link:
https://www.youtube.com/watch?v=zF2g_43NEa0
What Should be the Christian View of Anime?Joe Muraguri
We will learn what Anime is and see what a Christian should consider before watching anime movies? We will also learn a little bit of Shintoism religion and hentai (the craze of internet pornography today).
In Jude 17-23 Jude shifts from piling up examples of false teachers from the Old Testament to a series of practical exhortations that flow from apostolic instruction. He preserves for us what may well have been part of the apostolic catechism for the first generation of Christ-followers. In these instructions Jude exhorts the believer to deal with 3 different groups of people: scoffers who are "devoid of the Spirit", believers who have come under the influence of scoffers and believers who are so entrenched in false teaching that they need rescue and pose some real spiritual risk for the rescuer. In all of this Jude emphasizes Jesus' call to rescue straying sheep, leaving the 99 safely behind and pursuing the 1.
Homily: The Solemnity of the Most Holy Trinity Sunday 2024.docxJames Knipper
Countless volumes have been written trying to explain the mystery of three persons in one true God, leaving us to resort to metaphors such as the three-leaf clover to try to comprehend the Divinity. Many of us grew up with the quintessential pyramidal Trinity structure of God at the top and Son and Spirit in opposite corners. But what if we looked at this ‘mystery’ from a different perspective? What if we shifted our language of God as a being towards the concept of God as love? What if we focused more on the relationship within the Trinity versus the persons of the Trinity? What if stopped looking at God as a noun…and instead considered God as a verb? Check it out…
The Book of Joshua is the sixth book in the Hebrew Bible and the Old Testament, and is the first book of the Deuteronomistic history, the story of Israel from the conquest of Canaan to the Babylonian exile.
The Good News, newsletter for June 2024 is hereNoHo FUMC
Our monthly newsletter is available to read online. We hope you will join us each Sunday in person for our worship service. Make sure to subscribe and follow us on YouTube and social media.
Lesson 9 - Resisting Temptation Along the Way.pptxCelso Napoleon
Lesson 9 - Resisting Temptation Along the Way
SBs – Sunday Bible School
Adult Bible Lessons 2nd quarter 2024 CPAD
MAGAZINE: THE CAREER THAT IS PROPOSED TO US: The Path of Salvation, Holiness and Perseverance to Reach Heaven
Commentator: Pastor Osiel Gomes
Presentation: Missionary Celso Napoleon
Renewed in Grace
2. What Is the Rational Unified Process?
The Rational Unified Process provides a
disciplined approach to assigning tasks and
responsibilities within a development
organization.
i i
Its goal is to ensure the production of high-
quality product that meets the needs of its
end-users,
end users within a predictable schedule and
budget.
R. Akerkar SE 160, 2005 2
3. The RUP Framework
RUP = making a movie ≠ building a house
movie, house.
sheer size.
hundreds of artifacts and activities involved
involved.
RUP® framework is actually easy, particularly
when th ' i t d
h they're introduced b analogy t some
d by l to
familiar process.
R. Akerkar SE 160, 2005 3
4. The trouble with the construction analogy
RUP is so often compared to the process of
constructing a building.
t ti b ildi
it's about producing something concrete using a
similar role set and vocabulary
vocabulary.
As with an interactive system,
first have th f
fi t h the foundation ready (th i f
d ti d (the information
ti
architecture in the our case) before building the
walls and the roof.
R. Akerkar SE 160, 2005 4
5. The trouble with the construction analogy
information architect deals with problems
such as the internal workings of a interactive
system.
y
The house architect is more concerned about
visual and functional design,
which pretty much equals the concerns of a
system analyst in the software world.
R. Akerkar SE 160, 2005 5
6. The trouble with the construction analogy
The main objection to
comparing the two is that the
building process can be a
totally predictable waterfall
process,
while a UI development
process can't!
the fact is that civil
engineering relies on a
number of well-known
physical laws of nature and
nature,
again, UI design doesn't!
R. Akerkar SE 160, 2005 6
7. A better analogy to the RUP framework
The RUP does share the basic goals and
strategies of engineering processes.
The actual process to achieve those goals
creative approach required by artistic disciplines
making movies,
authoring books, or
g ,
even writing an article.
R. Akerkar SE 160, 2005 7
8. The essential principles of the RUP
RUP is based on common sense
sense,
harvested from the best practices of numerous
successful projects.
p j
Interesting fact is that similar practices exist
in areas other than UI development.
R. Akerkar SE 160, 2005 8
9. The essential principles of the RUP
The RUP is used to mitigate the risks
associated with software/UI development.
By conforming to a well-defined and proven
set of rules we aim to increase the
rules,
probability of a successful result.
Why would we bother with the extra effort?
R. Akerkar SE 160, 2005 9
10. The general risks associated with UI
development
lack of resources for carrying out the project
insufficient funding
g
not enough time and too much to do
immature, slow, or non-agile organizations
These risks are the same as for any other type of
development.
R. Akerkar SE 160, 2005 10
11. Agile Approach
Novel approach to development based on the
development and delivery of very small increments
of functionality.
ff i li
Based on Values of simplicity, communication,
feedback and courage.
g
Relies on constant code improvement, user
involvement in the development team and pairwise
programming
Two crucial design heuristics
never duplicate code
use simplest design possible
Continuous Testing
Write the tests before we design the code
R. Akerkar SE 160, 2005 11
12. The technical risks associated with UI
development
Unknown t h l i
U k technologies.
Undiscovered requirements.
Complicated architecture.
These risks are associated with unpredictable
nature of UI development.
p
R. Akerkar SE 160, 2005 12
13. The RUP strategy for handing risk
Develop iteratively.
p y
Manage requirements.
Use a component architecture.
architecture
Model visually.
Continuously verify quality
quality.
Manage change.
The RUP gives us these primary strategies for handling
such technical nature risks (the best practices of the RUP).
R. Akerkar SE 160, 2005 13
14. Develop iteratively
Creating something innovative, whether a motion
picture or UI requires many iterations to be
UI,
performed on the same artifacts during the
discovery process of building the final product.
With a waterfall development strategy, projects cycle
through the various phases in a sequential manner,
postponing confrontation with potential problems
t i f t ti ith t ti l bl
until the product has been built and tested.
Iterative development, on the other hand allows
development hand,
projects to proceed by small steps, or increments, to
gradually build a more complete system.
R. Akerkar SE 160, 2005 14
15. The RUP's iterative development
process
Each iteration in the RUP is a pass
through the disciplines.
disciplines
A discipline in the RUP can be
described as a grouping of interrelated
activities and the artifacts or
deliverables they produce.
Each pass, which is like a mini
waterfall, explores a new p
p portion of the
requirements set and offers a chance to
correct defects and rework the result of
the previous iteration.
With each iteration, the solution is
h it ti th l ti i
coming closer and closer to the final
product.
R. Akerkar SE 160, 2005 15
16. Analogy of Moviemaking
If making a movie is a pretty straightforward
process of first writing a script then figuring
script,
out how to put the words into motion, doing
the filming and editing, and finally watching
g g y g
the result.
This would be a traditional waterfall
approach.
But just as the waterfall approach fails when
we're writing UI it would f il i making a
' iti UI, ld fail in ki
movie as well.
R. Akerkar SE 160, 2005 16
17. Analogy of Moviemaking
Instead, the process is much more iterative.
The actors start working with the script, and revisions
arise out of that interaction.
For example, the script for the blockbuster Lord of the
Rings based on J R R Tolkien's classic masterpiece
Rings, J.R.R. Tolkien s masterpiece,
was rewritten almost every day after interaction with the
actors.
Director Peter J k
Di t P t Jackson described th creative process
d ib d the ti
as a controlled chaos.
Before the end of the project, the script had been
rewritten many times. Each time (or iteration) resulted in
an incremented (and better) version that more closely
resembled the final version.
R. Akerkar SE 160, 2005 17
18. Manage requirements
Another essential task whenever a new
product of any kind i d
d t f ki d is developed i ensuring
l d is i
that it meets the needs of its intended users.
Troublesome task - users sometimes have
only a vague idea of the product under
development.
d l t
An active requirements management strategy
can it ti l i
iteratively improve th requirements i t
the i t into
something that will satisfy users.
R. Akerkar SE 160, 2005 18
19. Manage requirements
The RUP enforces requirements management
throughout the lifecycle
lifecycle.
The requirements are iteratively and incrementally
identified, documented, evaluated, and refined.
, , ,
Functional requirements are described in terms of
use cases.
Nonfunctional requirements are also identified and
managed.
These are properties of the system that aren t described as use cases
aren't
but usually have a great impact on them, involving the system's usability,
reliability, performance, and supportability.
R. Akerkar SE 160, 2005 19
20. Analogy of Moviemaking
As moviemakers work with the script and the actors,
they must think in terms of meeting the needs of
their audience.
What kind of emotional response do they want the movie to
p y
evoke?
What kind of experience do they want the audience to
have?
Where do they want the story to take viewers?
The movie script is fine-tuned through many
p g y
iterations to match the director's vision of meeting
these functional requirements.
R. Akerkar SE 160, 2005 20
21. Analogy of Moviemaking
If the functional requirements of a UI product have
their counterpart in movies, then can a movie also
have nonfunctional requirements?
h f ti l i t ?
The answer (not surprisingly) is yes.
Maybe the movie must be viewable by children under 18 and
no longer than 120 minutes
minutes.
Although these requirements aren't directly related to
the t
th story line, they'll h
li th 'll have an iimpact on th fi l result
t the final lt
- just as nonfunctional software requirements must
have on a computer system.
In th
I the same way, these requirements must be
th i t tb
identified and addressed in the process of making the
movie.
R. Akerkar SE 160, 2005 21
22. Use a component architecture
A component is a replaceable piece of UI that fulfills
a clear function.
The RUP encourages the use of components to
assemble a system.
Component based
Component-based development has advantages:
it facilitates reuse both within the system and by other
systems,
it provides a convenient abstraction in the system design,
and
it enables efficient parallel development.
Furthermore, a well-structured component based
well structured component-based
architecture makes a system more scalable and
easier to maintain.
R. Akerkar SE 160, 2005 22
23. Use a component architecture
( Analogy to Moviemaking)
The most obvious equivalent of a component
in a movie is a scene.
A film is typically made up of a number of
scenes unified in a coherent structure that
realizes the director's vision.
director s
Each scene is fully replaceable, meaning that
it s
it's possible to replace it alter it or even
it, it,
remove it without compromising the whole
p
picture ( that's what the director wants).
(if )
R. Akerkar SE 160, 2005 23
24. Use a component architecture
( Analogy to Moviemaking)
Developing a computer application of considerable size without
using a component-based architecture, something that's still
done today,
It is like shooting a movie in only one take.
This is how the 2002 drama Russian Ark by Aleksandr Sokurov
was made - the whole movie (2 hours, 16 minutes) is one
continuous shot.
Given that it's pretty hard to make even a ten minute continuous
it s ten-minute
scene, Sokurov's achievement is truly heroic.
Going back to the UI design world the RUP principle of
world,
component-based architecture relieves developers of the need to
be heroes on impossible quests.
R. Akerkar SE 160, 2005 24
25. Use a component architecture
( Analogy to Moviemaking)
Another movie equivalent to software components is:
In making the computer-animated adventure Finding Nemo,
The modelers were challenged with the task of creating natural-
looking surging and swelling water. (under water story)
The problem was not only to accurately simulate the movement
of water, but also
to capture how light refracts through it,
the way particles dance around,
the colors of different types of water, and so on.
This had never been achieved to that extent before in computer
animation.
R. Akerkar SE 160, 2005 25
26. Use a component architecture
( Analogy to Moviemaking)
As soon as the project was launched, the design department
started experimenting with water modeling.
t t d i ti ith t d li
Extensive studies, consulted experts on oceanography, made
sketches and drawings, and most important of all, made
prototypes based on their increasing knowledge of the problem
problem.
The prototypes were then exposed to the director's critical eye.
Then the final result of the hard labor was a design template
covering every conceivable water simulation in the movie
movie.
This template was a fundamental component of the film's
architecture;
other components (templates) resolved different problems such
problems,
as the motion patterns of fish and plants.
R. Akerkar SE 160, 2005 26
27. In the kingdom of UI development
design templates tell designers how to deal
with the most significant problems.
Without a solid architecture or design
architecture,
template, there really isn't much point in
moving on in the project.
Until these kinds of issues can be resolved,
designers will never be able to meet the
requirements.
R. Akerkar SE 160, 2005 27
28. Model visually
A model is a simplified representation of a real-world
entity or process, intended to help us imagine and
process
flesh out the real-world version.
At some point early in the development of UI
software, there's a need to understand the
f
interaction between the system and its users.
The developers have two options:
they can implement the software as they guess it should
work, or
they can create a model of it, which can then be exposed to
it
potential users, designers, and testers, whose feedback
can in turn alter the model.
R. Akerkar SE 160, 2005 28
29. Model visually
This type of model, describing how a user interacts
with the system, is usually referred to as a use case
system
model.
The point of creating use case models is to mitigate
p g g
the risk of building the wrong system.
Modeling is theoretical exercise to understand
complex system behavior by simplification.
The RUP encourages architecture teams to prove
their architectural concepts by executing prototypes
prototypes.
R. Akerkar SE 160, 2005 29
30. Model visually (Analogy to Moviemaking)
In the early stages of a movie project, all that exists is a script.
But just as in the software case, the director needs to see the product
before it's completed.
As with the RUP, the solution is to build a model of the story.
This is known in the film industry as visualization, and it can be
achieved by various techniques:
traditional actor acting,
puppet acting,
storyboarding, and
even 3D computer graphics.
If storyboarding (a concept that also exists in the RUP) is used, the
t b di ( t th t l i t i th i d th
model consists of a sequential series of sketches illustrating stages or
scenes.
From the storyboards, the director can decide if a scene seems too
long or should be removed, or if something is missing.
removed missing
The storyboards can be filmed and edited, and temporary sound
effects and music can be added, just to further enhance the model's
usefulness.
R. Akerkar SE 160, 2005 30
31. Continuously verify quality
The RUP is divided into four phases, each one
focusing on a certain aspect of the development
g p p
cycle:
Inception,
Elaboration,
Elaboration
Construction, and
Transition.
In each of these phases the RUP best practices give
us the opportunity to verify the progress and quality
of the project under development and thus to find
flaws and potential improvements as early as
possible.
R. Akerkar SE 160, 2005 31
32. Continuously verify quality
In the Inception phase, the focus is on
understanding the objectives of the project
project.
The question to be answered before the end
of this phase is whether the project is worth
doing at all.
Once the project has a go to continue, it
enters the Elaboration phase.
Here, the focus is on establishing a solid design
foundation (the architecture) and mitigating the
major risks of the project.
R. Akerkar SE 160, 2005 32
33. Continuously verify quality
(Analogy to Moviemaking)
In the RUP, the quality of the latest increment is verified in every
iteration.
In a movie project, the director primarily uses the modeling tools
in his or her toolbox to catch problems with
a diverging story line,
scenes that don't fit together, or
a tempo (rhythm) that just isn't right.
When problems are found early, it's easier to do something about
them.
In moviemaking as in UI development the general rule is that the
development,
earlier a fault is discovered, the cheaper it is to fix.
The best practice of continuously verifying quality can facilitate
this.
this
R. Akerkar SE 160, 2005 33
34. Manage change
change is necessary but inconvenient.
Requirements will almost inevitably change
over time.
waterfall development so often fails is that it's
unable to handle change.
An iterative and incremental methodology, by
contrast, facilitates continuous change,
iterating t
it ti toward a better solution.
d b tt l ti
R. Akerkar SE 160, 2005 34
35. Manage Change (Analogy to Moviemaking)
Making a feature film: a huge crew and a substantial budget.
Communicating well about needed changes is vital to the success of
such a project
project.
Imagine that the director wants to improve the final scene.
Although it comes at the end of the movie, the need for improvement
can b id ifi d early since quality i continuously verified on all
be identified l i li is i l ifi d ll
levels.
Do the screenwriters have to update the script?
Who will review and approve it?
pp
Does the scene have to be modeled again?
If so, will storyboards, 3D graphics, or plastic models be used?
Does the set need to be modified, or does a new set need to be built? How
does this affect our budget?
g
Do we have to ask for more time and money?
These are the kinds of questions that result in changing plans and
therefore must be addressed preferably in an iterative manner
addressed, manner.
R. Akerkar SE 160, 2005 35
36. A movie project plan
One of the key artifacts in the RUP
framework is the project plan
plan.
The project plan details the tasks, schedule,
cost, resources, milestones,
cost resources milestones and deliverables
needed to complete the project.
Progress is tracked against the plan and
measured by work completed by milestones
reached and results delivered.
The plan is conceived early in the project and
frequently updated throughout the lifecycle.
R. Akerkar SE 160, 2005 36
37. The Iterative Model graph of RUP
The horizontal axis
represents time and
shows the dynamic
aspect of the process as
it is enacted, and it is
expressed in terms of
cycles, phases,
iterations, and
milestones.
The vertical axis
represents the static
aspect of the p
p process:
how it is described in
terms of activities,
artifacts, workers and
workflows.
R. Akerkar SE 160, 2005 37
38. A movie project plan = a User Interface
development project
R. Akerkar SE 160, 2005 38
39. A movie project plan = a User Interface
development project
In this figure, activities related to making a movie are substituted
for the RUP disciplines.
Developing the screenplay is analogous to writing requirements,
filming corresponds to implementation, and
producing the movie is more or less like project management.
Dividing the timeline into four p
g phases pputs the focus on different
aspects of the movie project at different times.
We also see that the activities run in parallel, typically
exchanging information and work packages in a highly efficient,
cross-functional manner:
f
just as the RUP.
R. Akerkar SE 160, 2005 39
40. The Essentials of RUP
In all projects, it is important to explore what will
happen if any of these essentials is ignored.
For example:
1. No vision? You may lose track of where you are going.
2. No plan? You will not be able to track progress.
3. No risk list? You may be focusing on the wrong issues
now.
4. No issues li ? With t accountability, th
N i list? Without t bilit these are th
the
roadblocks to success.
5. No architecture? You may be unable to handle
communication, synchronization,
communication synchronization and data access issues
as they arise.
R. Akerkar SE 160, 2005 40
41. The Essentials of RUP
6. No product (prototype)? Get started writing code; get
something working in front of the customers
customers.
7. No evaluation? Don’t keep your head in the sand. It is
important to face the truth. How close are you really to your
deadline? To your goals in quality or budget?
8. No change requests? How do you keep track of these?
9. No user support? What happens when a user has a
pp pp
question or can’t figure out how to use the product?
R. Akerkar SE 160, 2005 41
42. References
Rational Unified Process, version 5.5, Rational Software
Corporation, Cupertino, CA (1999)
Introduction to the IBM Rational Unified Process Essentials,
an article by Mats Wessberg (2005).
Philippe Kruchten, The Rational Unified Process An
Process—An
Introduction, Addison-Wesley-Longman, Reading, MA (1999)
Ivar Jacobson, Grady Booch, Jim Rumbaugh, The Unified
Software Development Process, Addison Wesley (1999)
Process Addison-Wesley
Grady Booch, et al., UML User’s Guide, Addison-Wesley-
Longman, Reading, MA (1999).
Stefan Bergstrand, Adopting the Rational Unified Process:
Success with the RUP, Addison Wesley (2004).
R. Akerkar SE 160, 2005 42