Software Development Best Practices

decorumgroveInternet και Εφαρμογές Web

7 Αυγ 2012 (πριν από 5 χρόνια και 3 μήνες)

469 εμφανίσεις

IBM Software Group | Rational software

1

Agenda


Software Development Best Practices


Sovelluskehityksen peruskyvykkyydet


Business Driven Development


Sovelluskehityksen muuttunut ympäristö


Maturity Models


Kypsyysmallien rooli

®


IBM Software Group

© IBM Corporation

Liiketoimintalähtöinen sovelluskehitys



IBM Software Group | Rational software

3

Agenda


What is Business Driven Development ?


Service Oriented Architecture


Business Driven Development Lifecycle

IBM Software Group | Rational software

4

Trends that impact software and systems development

TRADITIONAL

CURRENT REALITY

Co
-
located teams

Technology led

Vendor lock
-
in

Application silos

Geographically distributed

Compliance

Open computing

Modular systems (SOA)

Right
-
sourcing

Standards

BUSINESS TRENDS

IBM Software Group | Rational software

5

Geographic distribution of business―the new norm


Near
-
shore


Internal staffing


Direct ownership



Offshore


Subsidiaries


Joint partnerships


Direct ownership of foreign
facilities and hiring of employees



Outsourced


Service providers assume
responsibility for life
-
cycle
processes

IBM Software Group | Rational software

6


Executive needs


Risk management


Performance measurement



Development needs


Project and portfolio accountability


Process traceability and visibility


Secure, tamper
-
resistant environment



Global impact of local regulations


HIPAA, 21CFR11, Sarbanes
-
Oxley


Basel II, EASHW



Global standards


ISO 900x, Six Sigma


COBIT, COSO, ITIL


CMM/CMMI, SPICE (ISO 15504)

Accommodating compliance―the new necessity

IBM Software Group | Rational software

7

Open computing―a new route to collaboration and
innovation


Open standards


Improve data sharing by simplifying
integration of disparate technologies



Open architecture


Increase collaboration by easily
extending business processes



Open source


Promote innovation by leveraging
community development

Open
architecture

Open
standards

Open

source

Open

computing

IBM Software Group | Rational software

8

Modular systems―greater flexibility


Maximize investments―reuse components


Leverage existing assets and investments


Avoid rip and replace



Increase flexibility―interoperable systems


Connect and share business components


Easily distribute business processes



Accelerate initiatives―scalable and agile


Add capacity or functionality quickly


Scale technology based on business demands


Increase business process efficiency―globally


Today, service
-
oriented architecture (SOA) takes
business process automation to the next level


IBM Software Group | Rational software

9

PROJECT

DRIVEN

BUSINESS DRIVEN

TRADITIONAL

CURRENT REALITY

Evolving software and systems delivery

Co
-
located teams

Technology led

Vendor lock
-
in

Application silos

Geographically distributed

Compliance

Open computing

Modular systems (SOA)

Right
-
sourcing

Standards

BUSINESS TRENDS

Business Driven Development


Enabling organizations to
govern

the business
process of software and systems development


IBM Software Group | Rational software

10

Business
-
Driven Development

Marketing/Sales

Executives

Application
Support

Architect

Product/Project
Manager

Testers

Deployment
Manager

Business

Development

Operations

Model Assemble Deploy Manage

Subscribers

(Enterprise & Consumer)

Operations
Manager

Analysts

Model the
Business

Define
Requirements

Analyze

& Design

Implement

Test

Deploy

Manage

Optimize

Manage change

& assets

Govern

Developers

(In
-
house staff,
contractors, and/or
partners across
geographical sites)

IBM Software Group | Rational software

11

Agenda


What is Business Driven Development ?


Service Oriented Architecture


Business Driven Development Lifecycle

IBM Software Group | Rational software

12

Existing

Resources


Service Oriented Architecture

Service
Modeling

Services


Business Process


Components


QoS, Security, Management &

Monitoring (Infrastructure Service)

Process Choreography

Simple and Composite Services

Enterprise Components

Package

Custom

Application

Custom

Application

Package

Service

Consumer

Service

Provider

Integration Architecture


IBM Software Group | Rational software

13

Agenda


What is Business Driven Development ?


Service Oriented Architecture


Business Driven Development Lifecycle

IBM Software Group | Rational software

14

Govern SOA


align, execute and control investments


Control Cost And ROI

Understand
Risk, Project
Costs, and ROI

Identify and
Manage
Projects and
Resources

CIO

Project

Manager

Rational Portfolio

Manager

IBM Software Group | Rational software

15


Define business requirements

Rational
RequisitePro

Articulate Business
Strategy

Capture Business
Goals, Objectives
and Requirements

Business

Analyst

Determine Key
Performance
Indicators

IBM Software Group | Rational software

16

Model the business (& identify the services)

Rational RequisitePro

Business

Analyst

Create, Simulate &
Analyze As
-
Is
Business Model

WebSphere Business Modeler

Create Financial

Reports & ROI

Estimates

Create, Simulate,
Analyze and Optimize
To
-
Be Business Model

Business

Analyst

Trace Requirements
& Create System
Use Case
Realizations

Model
Services

Create & Manage
System

Requirements

Architect

Rational Software Architect

Java

Developer

UML


Process

IBM Software Group | Rational software

17


Design the Services Architecture

Trace Requirements
& Create System
Use Case
Realizations

Model & Implement
Services, & expose as
Web Services

Architect

Rational Software Architect

Java

Developer

Your

RAS Asset Repository

Retail

Financial Services

Insurance

Recipes

Pattern
Solution

Recipe
1

Recipe
2

Recipe
3

Business Pattern
Implementations

Business Deleg…

Session Facade

Data Access
Object

Message Facade

Application Arch
Pattern Impls

Operational Arch
Patterns Impls

Deployment
Pattern Impls

IBM Software Group | Rational software

18


Construct the services



Assemble & deploy the composite application

Model & Implement
Services, & expose as
Web Services

Rational Software Architect

Java

Developer

Develop

Portlets

(App UI and
Monitor)

Portal
Developer

IBM Software Group | Rational software

19

WebSphere Business Modeler

Create Observation
Model with KPIs &
export to Monitor

Create, Simulate,
Analyze and Optimize
To
-
Be Business Model

Business

Analyst

Deploy/Run

Monitor

Business

Operations


Analyst

Runtime


WebSphere Process Server


WebSphere Portal


WebSphere Business Monitor

DBA

Observation Model

Run
-
time Statistics

WebSphere Integration Developer

Choreograph
services using
BPEL, WSDL,
etc.

Configure Human
Task Manager
(including Ad
-
Hoc) &
Client

Use Business Rules,
State Machines, Web
Services, Adapters,
ESB, etc.

Integration Developer

BPEL

WSDL

WSDL

EAR

Assemble, deploy & monitor the composite
application

IBM Software Group | Rational software

20

100%

Project Delivery Time

Accelerating Time to Value

Build Progress

60%

Time

to value

Conventional processes

Stovepipe architectures

Proprietary tools/methods

25%

Time

to value

Iterative processes

Middleware components

Mature commercial tools

15%

Time

to value

Rightsized processes

Enterprise architectures

Integrated environments

IBM Software Group | Rational software

21

Questions

IBM Software Group | Rational software

22

Jouko Poutanen


Thank You

IBM Software Group | Rational software

23

Business
Vision

Business
Rules

Supplementary

Business

Specification

Business

Object Model

Business Use
-
Case

Model

Business

Use
-
Case

Specification

Policy doc’s

Commercial doc’s

Regulatory doc’s

feedforward

feedback

Use
-
Case

Model

Glossary

Supplementary

System

Specification

Use
-
Case

Specification

Use
-
Case Model
Survey

Vision

Software
Architecture
Document

Design Model

Class

Data Model

Design Subsystem

Implementation
Model

Components
(code)

Implementation

Test Plan

Test

Test
Scripts/Procedure
s

Test Cases

Test Model

Overall Traceability

architecture is the 20% that
matters (of everything in the
pyramid
)


For SOA there is an architectural pattern with certain implications on what elements you'll capture in your tools

IBM Software Group | Rational software

24

Rational RequisitePro

Articulate
Business
Strategy

Trace Business
Objectives, Requirements
& Create Business Use
Case Outlines

Business

Analyst

Capture
Business Goals,
Objectives and
Requirements

Overview of the Roles, Responsibilities, Process & Tools

Customer extensions

3rd Party ISV Tools

IBM Rational Team Unifying Platform

Deploy/Run

Monitor

Business

Operations


Manager

Runtime


WebSphere Process Server


WebSphere Portal


WebSphere Business Monitor

Database

Developer

Project

Manager

Rational Portfolio Manager

Business
Strategist

Understand
Risk, Project
Costs, and ROI

Identify and
Manage
Projects and
Resources

WebSphere Integration Developer

Choreograph
services using
BPEL, WSDL, etc.

Configure Human
Task Manager
(including Ad
-
Hoc) &
Client

Use Business Rules, State Machines, Web
Services, Adapters, ESB, etc.

Integration


Developer

Test

Tester

Rational Functional & Performance Tester

EAR

WebSphere Business Modeler

Create Financial

Reports & ROI

Estimates

Create Observation
Model with KPIs &
export to Monitor

Create,
Simulate,
Analyze and
Optimize To
-
Be
Business Model

Create,
Simulate &
Analyze As
-
Is
Business
Model

Trace Requirements
& Architect System
Use Case
Realizations

Implement Services, &
expose as Web
Services

Create & Manage
System

Requirements
and Use Cases

Architect

Rational Application Developer

Developer

Develop

Portlets

(App UI and
Monitor)

Rational Software Architect/Modeler

System

Analyst

EAR
(
WSDL,
BPEL,
XSD, etc
)

IBM Software Group | Rational software

25

The IBM Software Development Platform for BDD

Customer

Extensions

3rd Party

ISV Tools

Rational
Software
Architect
(RSA)


RAD

Rational
Functional
& Manual

Tester

Rational
Performance
Tester

Rational Team Unifying Platform

(RUP, RequisitePro, ProjectConsole,

ClearCaseLT, ClearQuest, TestManager)

Tivoli
Configuration
Manager

WebSphere

Business

Integration

Modeler

(WBIM)


Rational
Software
Modeler (RSM)

Tivoli

Monitoring

Rational Portfolio Manager

(WSADIE )

Integration

Developer

Analyst

Architect

Software
Developer

Tester

Deployment
Manager

Project

Manager

Executive