business architecture's role within enterprise architecture€¦ · business...
TRANSCRIPT
Business Architecture's Role Within
Enterprise Architecture
Making Requirements First Class Architectural Elements
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 3
Project Level Problems• Requirements are Limited to the Project View
– They are often missing the context of the business process– They don’t account for similar requirements in other areas
• The Project is Run from a Myopic Perspective– Deadline pressures often enforce a “just get it done” mantra– Exploration of existing resources is often difficult
• ROI is Reduced Due to the Added Complexity of the Overall System– With the myopic approach, projects often provide duplicate solutions to
similar requirements rather than leveraging existing solutions or taking a shared approach to new solutions
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 4
Enterprise Level Solutions• Model the Business Architecture (BA)
– Provides business context for the requirements, helping to keep them business-oriented rather than solution-oriented
• Model the Requirements within the BA– Adds rigor to requirements capture by creating formal model
elements that are complete, precise, and concise– Allows tracking the specification elements with full versioning
• Include the BA in the Enterprise Architecture– Enables traceability from the problem space to the solution
space
• Keep the Model in a Shared Repository– Provides visibility and makes enterprise level coordination and
reuse possible
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 5
What Is Enterprise Architecture?• Enterprise Architecture (EA)
– is a means to support the business through the use of IT
• Modeling EA– provides a holistic approach to capturing not just the areas within
IT, but the alignment of IT to the business as well
• The Purpose of EA – is to ensure that IT provides tangible benefit to and keeps pace
with the business
• EA provides – information necessary to help make tactical and strategic
business decisions
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 6
What Is Enterprise Architecture?• Architectural Horizontal Slice
– Focus is on the Architectural Views• Business Architecture• Application Architecture• Data Architecture• Infrastructure Architecture
• Architectural Vertical Slice– Focus is on the Business Processes
• Business Processes• Architectural Elements Needed for current and future states
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 7
Horizontal Slice - Architectural Views• Business Architecture
– The Business Architecture captures information about the structure, purpose, and operation of your business. Creating a formal model of the business allows for critical review of theproblem space before designing the solution space.
– More later…
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 8
Horizontal Slice - Architectural Views• Application Architecture
– The Application Architecture deals with how applications are built and interact with each other.
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 9
Horizontal Slice - Architectural Views• Data Architecture
– The Data Architecture describes the DB Schemas, logical DB Interfaces used by the applications, and ETL Jobs that transformand move data from DB Schema to DB Schema.
«EA2 ETL Job»Nightly Registration
Transfer
tagsActual Begin Date = 2007Actual End Date = CI_ID = B192904EA2 Type = ETL JobIs Approved = TruePlanned Begin Date = Planned End Date = Schedule = Nightly
«EA2 ETL»Member toProgDev
Program Dev elopment DB Schema
«EA2 R/W»SQL
«EA2 ETL»Member toProgDev
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 10
Horizontal Slice - Architectural Views• Infrastructure Architecture
– The Infrastructure Architecture includes all of the elements needed by the business software and databases in order to run. This includes IT software and IT hardware and other types of elements to fully describe the underlying infrastructure of the enterprise. The Server, Server Model, and Server Metamodel links provide an in-depth discussion that applies to the other node types
SCMS-06 :SunFire 6800
SCMS-07 :Compaq
DL380
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 11
Business Architecture Components• Business Capabilities • Business Context
• Business Principles • Business Organization
«EA2 Business Capabil ity»Volunteer Task Management
notesManaging the tasks to be done for the club by volunteers and which volunteers wil l perform them.
(Business Principle)Member Confidentiality
notesSCMS will never divulge personal member information to external vendors nor to individuals that are not club members. The System may divulge club members' personal information to other club members but only as required for the conduct and maintainence of the club's programs as agreed to by the club members at the time of registration.
Sports Program Dev elopment Roles
theProgramManager
responsibilitiesCreate Program/League/Division StructuresDefine Club RolesMaintain Program Policies
theTeamAssigner
responsibilitiesAssign Coaches to TeamsAssign Players to Leagues, Divisions, and TeamsCreate Player and Coach IDsMaintain Team RostersOrder Uniforms
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 12
Business Architecture Components• Business Functions
• Business Information Model
«EA2 Function»Calculate Rating
«EA2 Function»Determine Rating
Parameters
«EA2 Function»Get Player Rating Attribute
Values
«EA2 Function»Get Players
«EA2 Function»Record Rating
«EA2 Business Entity»SportsClub
«EA2 Business Entity»ClubMember
«EA2 Business Entity»ClubMemberRole
«EA2 Business Entity»Coach
«EA2 Business Entity»GameOfficial
«EA2 Business Entity»Player
«EA2 Business Entity»League
«EA2 Business Entity»Div ision
«EA2 Business Entity»Team
«EA2 Business Entity»SportsProgram
«EA2 Business Entity»Game
«EA2 Business Entity»TeamRoster
«EA2 Business Entity»Schedule
«EA2 Business Entity»Venue
/ 0..*
Player's in theGame
/
1
0..*
Venue'sGames
0..1
awayGame
0..1
awayTeam
1
1..*
1
homeGame
0..1
homeTeam
1
1..*
Club's SportsPrograms
1
1
Team's GameDay Rosters
0..*
/ 1..*
/
1..*
/
1..*
/ 1..*
1
Division'sSchedule
0..*
0..1
Division'sTeams
3..*1..*
League'sDivisions
11..*
SportsProgram'sLeagues
1
/ 1
/
0..*{SubsetspartyRole}
0..*
RegisteredMembers
0..*
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 13
Business Architecture Components• Business Policies
• Business Policies Applied«EA2 Business Entity»
League
registrationBeginDate: dateregistrationCloseDate: datelateRegistrationCloseDate: dateregistrationFee: currencylateRegistrationFee: currencyseasonStartDate: dateseasonEndDate: datenDivisionsPerPlayer: int
«EA2 Business Entity»SportsProgram
sport: stringnLeaguesPerPlayer: int
Organization
«EA2 Business Entity»SportsClub
«EA2 Business ...ClubPlayer
TeamMember
«EA2 Business Entity»SportsProgramPlayer
PlayerRating: int
TeamMember
«EA2 Business Entity»LeaguePlayer
status: PlayerStatusKindfeePaid: currencyfeeWaived: boolean
Player/Club Eligibil ity Policy
Player/Program Eligibil ity Policy
«Trace»
1
*
0..*{Subset}0..*
1..*
SportsProgram'sLeagues
11..*
Club's SportsPrograms
1
1
1..*
1
1..*«Trace»
Player/League Eligibil ity Policy
SportsProgram Membership Obligation
tagsVolatil ity = LOW
notesTo be el igible for a League, a Player must belong to the League's SportsProgram.
League Gender Obligation
tagsVolati li ty = LOW
notesTo be eligible for a League that has a prescribed gender,a Player must be of the League's gender. If the League does not have a prescribed gender, then it is considered to be COED and both genders are eligible.
League Region Obligation
tagsVolatil ity = LOW
notesTo be el igible for a League that has prescribed eligibil ityregions, a Player must l ive within one of the Division's Regions.
Multiple Division Permission
tagsVolatil ity = HIGH
notesA Club may choose to permit a Player to belong to more than one Division within a given League, on a League by League basis.
League Age Obligation
tagsVolati li ty = LOW
notesTo be eligible for a League, a Player must be within the League's age range.
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 14
Business Architecture Requirements• Business Needs • Quality Attributes
(Business Need)Team Requests
tagsEA2 Type = Business NeedPriority = Must Have
notesA Club must be able to accept various team requests at the time of registration. The Club must be able todecide whether to honor such requests.
(Business Need)Coach's Request for Coach
tagsEA2 Type = Business NeedPriority = Must Have
notesA Club must be able to establish whether or not it will honor a request by a coach to coach together with another coach.
(Business Need)Player's Request for Coach
tagsEA2 Type = Business NeedPriority = Must Have
notesA club must be able to establish whether or not it will honor a request by a player to be on the same team as a particular coach Such requests are first subject to all other player restrictions.
(Business Need)Coach's Request for Player
tagsEA2 Type = Business NeedPriority = Must Have
notesA club must be able to establish whether or not it will honor a request by a coach to havea certain player on his/her team. Such requests are first subject to all other player restrictions.
(Business Need)Player's Request for Player
tagsEA2 Type = Business NeedPriority = Must Have
notesA club must be able to establish whether or not it will honor a request by a player to be on the same team as another player. Such requests are first subject to all other player restrictions.
Statistical Rating Performance
notesThe Statistical Rating of Players must be accomplished at the rate of at least 1,000 players per minute.
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 15
A Preview of the Vertical Slice• Business Processes
MemberEligibi l ityPolicies
«EA2 Process»Membership Policy Definition
Process
MemberEligibi l ityPolicies
ProgramPolicies Roster
Eligibil i tyPolicies
«EA2 Process»Sports Program Dev elopment Policy
Definition Process
ProgramPolicies Roster
Eligibil i tyPolicies
GameResults
«EA2 Process»Post-Season Ev ent Process
GameResults
Divisions& Teams
«EA2 Process»Sports Program Dev elopment
Process
Divisions& Teams
«EA2 Process»Season Execution Process
Players &CoachesGame
Officials
«EA2 Process»Member Registration
Process
Players &CoachesGame
Officials
Schedules
«EA2 Process»Game Sceduling Process
Schedules
Venues,Calendars, &Officials
«EA2 Process»Venues, Calendars, and Game Officials
Setup Process Venues,Calendars, &Officials
«EA2 Receive Event»League Registration
Opening Date
«EA2 Receive Event»League Registration
Final Close Date
«EA2 Receive Ev...Season Close Date
«EA2 Receive Event»
Season Opening Date
«EA2 Receive Event»
Season Setup Date
«EA2 Receive Event»
League Setup Date
«EA2 Initiates»
[Changes toLeague
Components]
«EA2 Ends»
«EA2 Ends»
«EA2 Initiates»
«EA2 Initiates»
«EA2 Initiates» «EA2 Initiates»
«EA2 Initiates»
«EA2 Impacts»
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 16
Business Architecture Requirements• Use Cases
aRegistrant
«EA2 Use Case»Register with Club
«EA2 Use Case»Register as Player
«EA2 Use Case»Register as Coach
«EA2 Use Case»Register as Supporter
«EA2 Use Case»Register as Game
Official
«EA2 Use Case»Pay Registration Fee
theRegistrar
«extend»
«extend»
«extend»
«extend»
«include»
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 17
Use Case Specifications1. The system sets all output parameters to blank.
2. [Display SportsClubs] The system displays the names of the SportsClubs associated with the user. If there is only one SportsClub, the system uses it, skips the display and control continues with [SportsClub Selected].) [Alternate path: [No SportsClubs].
3. [User selects SportsClub] The user selects the desired SportsClub.
4. [SportsClub Selected] The system the SportsClub selected by the user and displays it.
5. The system asks whether the user wants to work with all SportsPrograms of SportsClub.
6. The user chooses 'No'. [Alternate path: User chooses ‘Yes’: control continues with [Return values].)
7. [Display SportsPrograms] The system displays the names of SportsClub’s SportsPrograms. [Alternate path: - if there is only one SportsProgram, the system uses it and control continues with [SportsProgram Selected].) [Alternate path: No SportsProgram].
8. The user selects the desired SportsProgram.
9. [SportsProgram Selected] The system uses the SportsProgram selected by the user and displays it.
(Specification continues on…)
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 18
Use Case Specifications• Source of Specifications
– Within the modeling tool– External but attached to the modeling tool
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 19
Use Case Specifications• When Complexity of
Decisions is Great– Try a picture
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 20
Use Cases within the Enterprise Architecture
• Intersection of Business & IT
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 21
Requirements Traceability• Business Processes to Use Cases
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 22
Requirements Traceability• Use Cases to Use Case Realizations
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 23
High Level Requirements Mapping
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 24
Vertical Slice – Architectural Requirements• Business Process Specification• Architectural Requirements – Capabilities• Architectural Requirements – Use Cases• Roadmaps & Roadmap Phases
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 25
Architectural Vertical Slice
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 26
Architectural Vertical Slice• Business Process Focus• Roadmap Phase for a Point-in-Time View of
Architectural Requirements• Each Layer Provides Capabilities to the Layer
Above Stabilizing the Technology Churn
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 27
Vertical Slice Report
This sample report shows the architectural elements required to realize the Sports Program Development Process, organized by Roadmap Phases. The Player Rating App Capability has been expanded for each Roadmap Phase to compare how Player Rating is/will be implemented for each phase. We see that the Rating Application, an older stovepipe application, is being replaced by a distributed set of working components, namely the Player Rating Front End and the Player Rating Engine.
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 28
Use Case Map
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 29
Use Case Map• Similar to Vertical Slice• Provides Entry into Design Models
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 30
Use Case Map Report
This sample report shows the architectural elements required to realize the Sports Program Development Process, organized by Roadmap Phases. The Rate Players Statistically, v2.00 and v2.01 have been expanded to compare how it is or will be implemented for each Roadmap Phase. We see that the Rating Application, an older stovepipe application, is being replaced by a distributed set of working components, namely the Player Rating Front End and the Player Rating Engine.
Copyright © 2010 OAD Consulting, Inc. All Rights Reserved 31
Benefits Revisited• Business Architecture
– Provides a Business-oriented Approach to Requirements Capture– Provides Traceability among Business Processes, Business
Needs, and Use Cases
• Enterprise Architecture– Provides Views Focused on the Different Types of Stakeholders– Shows all Architectural Elements Needed to Realize a Business
Process– Shows Point-in-Time Status of the Architecture– Enables Strategic Planning to ensure IT is providing optimal
solutions to business problems– Helps ensure conformance to business and technology principles