Published
Published
net/publication/224587194
CITATIONS READS
22 7,457
3 authors, including:
All content following this page was uploaded by Ioannis T. Christou on 21 May 2014.
T
he banking sector is well known for using large, sometimes monolithic, leg-
A banking-sector
acy systems. Now, banks find themselves having to catch up with rapid ad-
project combined
vancements in software development that call for new service-oriented com-
agile methods puting paradigms. Unfortunately, this task is nontrivial and often requires
with the Rational huge projects that are costly, time consuming, and risky. The safe choice for a develop-
Unified Process ment methodology is a process framework such as the Rational Unified Process (RUP),
to exploit service- which is customizable enough to fit any project. However, customizing RUP isn’t trivial,
oriented architecture so it’s often used in its full-blown out-of-the-box project, regardless of its size. Still, customizing RUP
functionality and form, which entails significant sacrifices of time, demands both experienced staff and preparation
cost, and flexibility.1–3 But what if the organiza- time, otherwise it could result in an oversimplified
user interface tion is unwilling to make these sacrifices? What project or, worse, a failure to meet essential require-
integration of legacy happens when time, cost, and flexibility aren’t ne- ments. To avoid the effort and risk, organizations
applications. gotiable issues but hard management constraints? often implement RUP with little or no customiza-
We recently applied the Agile Unified Process tion, resulting in a complex process requiring nu-
(AUP)4 —a hybrid approach designed by Scott Am- merous documentation artifacts. On the other
bler combining RUP with agile methods5–7 —to a hand, agile methods are considered more light-
successful project in the banking sector. The proj- weight, emphasizing people and shifting authority
ect achieved on-time delivery within budget, inte- to the developers at the heart of the project. Never-
grating heavy legacy back-end application systems theless, the two methods aren’t incompatible.
with newly reengineered client user-interface appli- AUP is an agile public-domain instantiation
cations on a modern service-oriented architecture of RUP.9–11 It’s a simple, easy-to-understand ap-
(SOA) platform.8 proach to developing business-related software us-
ing agile techniques and concepts while remaining
The Agile Unified Process true to RUP. It applies agile techniques including
Agile methods and RUP are among the most widely agile modeling (AM), test-driven design (TDD), ag-
used software development methods. Although ile change management, and database refactoring
both are iterative, they seem to have significant to improve productivity. AM is the basis for agile
differences. model-driven development and is a key concept in-
For starters, RUP is a process framework of- troduced in AUP to effectively model and document
fering adaptability to every software development software systems. Simply put, AM is a collection of
May/June 2010 I E E E S O F T W A R E 73
Figure 1. Project information summary. The
Project name Integrated Desktop project involved 23 people spanning a large
portion of the organizational hierarchy. In
Project owner Private banking unit
addition to the purely technical core, the
Bank units IT development and operations, organization and plan- people involved included five users and
involved in the ning, private banking (top management, relationship
four top managers who formed the project
project managers, middle office, customer documentation,
and MIS) steering committee. The project lasted six
months, during which the team implemented
Team size Nine developers, three technicians (operational and
a total of 13 use cases.
administrative support), two test managers, five users,
and four top managers (see steering committee)
The team followed AUP’s four phases through-
Steering Project manager, IT development manager, and top
committee management review (private-banking operations unit out the project life cycle. Figure 3 shows the project
manager, brands unit manager, area manager, and time line.
private-banking general manager)
Project An author of this article who has much experience in Inception
manager successfully managing large-scale IT projects During inception, the team defined the project
Project duration Six months scope as follows:
Expose some applications Using AUP, the team identified more than 10 use
as services cases and key requirements in this phase. The proj-
ect manager made cost and schedule estimates used
for iterations in later phases (mostly during elabora-
tion). This doesn’t mean that she planned out the
Step 2 Create full data abstraction entire project at this point. As with all planning,
and layer those tasks scheduled for completion in the near fu-
Full SOA architecture ture were detailed more accurately and with greater
confidence, whereas tasks further down the line
were understood to be estimates with larger mar-
gins of error.
The team also defined the project’s risks dur-
Virtual ing inception. The list of risks was a living compi-
record lation that changed over time. Risks drive project
Step 3
management, just as the highest-priority risks drive
iteration scheduling. Earlier iterations addressed
higher-priority risks. Difficulties the team initially
Figure 2. Development steps of the Integrated Desktop (ID) project. ID identified included
was based on the Microsoft Customer Care Framework offering Single
Sign-On functionality for all applications it hosted using the Citrix ■■ communicating the new architecture’s benefits
Password Manager. to the users and producing really useful results;
■■ meeting scheduling requirements due to the
bus services. The idea was to deliver a pilot project project’s innovative approach;
and proceed with a new multiphased project based ■■ maintaining management and user commit-
on the user response and acceptance (see Figure 2). ment throughout all phases; and
May/June 2010 I E E E S O F T W A R E 75
describing the “as-is” situation was a main deliv- though users and test managers tested integration
erable. After detailed study and architectural de- early enough, during the elaboration (hosting of
The team sign finalization, the project manager produced a applications) and construction (UAT in the test-
May/June 2010 I E E E S O F T W A R E 77
About the Authors cases, class responsibility collaborator cards, busi-
ness rules, and user interface prototypes simul-
Ioannis T. Christou is an associate professor at Athens Information Technology and taneously. Similarly, they held analysis sessions
an adjunct professor at Carnegie-Mellon University’s Information Networking Institute. His
where use-case modeling, sequence diagramming,
research interests include business intelligence and optimization algorithms and systems,
enterprise software, and data mining. Christou has a PhD in computer sciences from the UI prototyping, and class modeling made sense.
University of Wisconsin at Madison. He’s a member of IEEE, the ACM, and the Technical They also held design sessions on class modeling,
Chamber of Greece. Contact him at [email protected].
state modeling, data modeling, component model-
ing, UI prototyping, and even developing business
code.
Sixth, they complied with the rule of simplicity.
Stavros T. Ponis is a lecturer in supply chain management at the National Techni-
cal University of Athens. He teaches a series of courses on supply chain management, Simplicity is a fundamental value of AUP and AM
operations research, e-commerce, and management of production information systems, in particular, promoting several critical principles
enterprise-resource-planning systems, and operations research laboratories. Ponis has a that dramatically improved the effectiveness of our
PhD in Mechanical Engineering from the National Technical University of Athens. Contact
him at [email protected]. modeling efforts. Instead of specifying everything
possible, we created sequence diagrams that were
just good enough to depict the likely functional-
ity of the automation of the daily tasks, and be-
gan coding from there. Agile modelers assume that
Eleni Palaiologou is a senior project manager of major IT projects at one of the
largest banks in Greece. Her research interests include information systems modeling, programmers can figure out the details during de-
systems analysis, and process modeling and evaluation.. Palaiologou has an MBA from the velopment and therefore focus on issues that might
Athens University of Economics and Business in collaboration with the National Technical not be so obvious. By keeping the models simple,
University of Athens. Contact her at [email protected].
the team worked faster while creating something
of actual value to the programmers—models that
focused on critical issues.
Seventh, they staffed the project with personnel
based perspective for both developers and proj- who can contribute in both modeling and devel-
ect stakeholders. Managers often tend toward opment. Many organizations have separate posi-
prescriptive software processes such as RUP. De- tions for modelers, motivating their staff to focus
velopers, on the other hand, tend toward agile on specialties—a practice that in our experience
techniques such as Extreme Programming and reduces agility. Although RUP states clearly that
AM on the basis of the techniques’ perceived individual developers can and should take multiple
focus on building software. Because manage- roles on a project, in general, most organizations
ment is the decision-making authority, many adopting RUP don’t follow this advice. They tend
developers find themselves in a situation where to introduce positions along the lines of the pro-
management has chosen RUP and forces them to cess’s modeling roles—for example, requirements
follow it. Fortunately, RUP is flexible and can be analyst, system analyst, UI designer, database de-
tailored to be reasonably agile. Still, developers signer—and therefore label people with unique
and project stakeholders must agree on the extent roles, going against the advice of both RUP and
of the tailoring. AUP. People whose only job on a software proj-
Fifth, they successfully implemented the core ect is to produce models tend to overmodel things
disciplines of iterative and incremental develop- for two reasons. First, they naturally want to do a
ment. Experienced modelers might have difficulty good job. Second, there’s a hand-off and therefore
modeling AM practices such as “model in small greater motivation to add more detail to the model,
increments,” “iterate to another artifact,” and detail that likely wouldn’t be needed if the people
“create several models in parallel.” Traditional developing models also wrote the code.
modeling techniques often promote a single- Finally, they adapted AM’s principle of honest,
artifact approach, such as use-case modeling or open communication. Development teams are usu-
user-interface prototyping sessions, and a BDUF/ ally reluctant to follow the “display models pub-
BMUF approach in which you model everything licly” practice with people external to the team,
in detail before coding. Although in theory, fo- often because they’re afraid of what another politi-
cusing on one artifact at a time should have en- cal faction in the organization would do with that
abled the modelers to get it right quickly, practice information. They initially hesitated to communi-
shows this isn’t the case. Instead of use-case mod- cate the models to stakeholders outside the devel-
eling sessions, the team tried to run requirements- opment team owing to anticipated criticism. For-
modeling sessions in which they worked on use tunately, this criticism never materialized. As soon
O
5. M. Sliger and S. Broderick, The Software Project Man-
ager’s Bridge to Agility, Addison-Wesley Professional,
verall, we found that to succeed in apply- 2008.
ing AUP, the organization’s culture and 6. J. Shore and S. Warden, The Art of Agile Development,
management must be receptive to both O’Reilly Media, 2007.
7. M. Fowler and J. Highsmith, “The Agile Mani-
RUP and to agile methods, and there lies a con- festo,” Software Development, 2001; www.drdobbs.
tradiction; that while most organizations adopting com/184414755.
RUP target a fairly rigid and prescriptive process, 8. C. Jefferies, P. Brereton, and M. Turner, “A Systematic
Literature Review of Approaches to Reengineering for
organizations that adopt agile methods typically Multi-channel Access,” Proc. 12th European Conf.
work in a much more flexible manner. Fortunately, Software Maintenance and Reengineering, IEEE CS
Press, 2008, pp. 258–262.
we found that RUP is flexible enough that it can be
9. S. Ambler, “An Introduction to Agile Modeling,”
customized to be reasonably agile. One immediate Ambysoft, 2005; www.agilemodeling.com/essays/
and direct implication this project had on the or- introductionToAM.htm.
10. S. Ambler, Agile Modeling: Effective Practices for
ganization was the decision of the IT strategy de-
Extreme Programming and the Unified Process, John
partment to include a customized version of AUP Wiley & Sons, 2002.
as the proposed methodology for all small-scale IT 11. S. Ambler, “Big Modeling Up-Front Anti-pattern,”
Ambysoft, 2005; www.agilemodeling.com/essays/
projects in the bank. bmuf.htm.
12. “Microsoft Customer Care Framework, the Fast
Path to Reduced Costs and Increased Productivity,”
References rev. 2.0, Accenture, 2008; http://origin.www.
1. P. Kroll and P. Kruchten, The Rational Unified Process accenture.com/NR/rdonlyres/53058BEA-88B5-425C-
Made Easy: A Practitioner’s Guide to the RUP, 8DE0-91DD70AFF2D3/0/Accenture_CCF.pdf
Addison-Wesley, 2003.
2. R.D. Gibbs, Project Management with the IBM Ratio-
nal Unified Process: Lessons from the Trenches, IBM
Press, 2006. Selected CS articles and columns are also available
3. S. Bergström and L. Råberg, Adopting the Rational for free at http://ComputingNow.computer.org.
May/June 2010 I E E E S O F T W A R E 79