Title: Near Term Software Engineering Challenges
1Near Term Software Engineering Challenges
APSEC 2006
- Anand Vaishampayan
- Vice President - Quality and Processes
- IBM Global Business Services Global Delivery
2Have you come across such situation ??
3Have you come across such situation ??
4Have you come across such situation ??
5Agenda
- Introduction
- Current Trends
- Near Term Challenges
6Pain Points in 1986
.. Pain Points Today
Some abstract from John Zachman presentation at
Bangalore, 3rd Nov, 2006
7Introduction
8Introduction
9Software Engineering Classical Definitions
- Discipline of designing, creating, and
maintaining software by applying technologies and
practices from computer science, project
management, engineering, application domains,
interface design, digital asset management and
other fields. Ref_SEI_01 - Software Engineering is (1) the application of
a systematic, disciplined, quantifiable approach
to the development, operation, and maintenance of
software, that is, the application of engineering
to software, and (2) the study of approaches as
in (1). Ref_IEEE_02
Defining software engineering
10Evolution of Software Architecture Paradigms
Services (SOA)
Whats Next?
Business Process Management
EAI
Message Processing
Remote Object Invocation
Sub-routines Remote Procedure Calls
Monolithic Architectures
Pre 50s - 60s
70s - mid 80s
80s - Mid 90s
Mid 90s to Early 00s
Today
Future
Late 90s
11Service Integration Maturity Model
Dynamically Re-Configurable Services
Composite Services
Virtualized Services
Silo
Services
Componentized
Integrated
Structured Analysis Design
Service Oriented Modeling
Service Oriented Modeling
Grammar Oriented Modeling
Component Based Development
Object Oriented Modeling
Service Oriented Modeling
Modules
Services
Process Integration via Services
Dynamic Application Assembly
Components
Objects
Process Integration via Services
Level 1
Level 4
Level 5
Level 6
Level 7
Level 3
Level 2
12Current Trends - I
From
To
- Function oriented
- Build to last
- Prolonged development cycles
13Current Trends - II
Flexible Business Transformation Business
Process Outsourcing Mergers, Acquisitions
Divestitures
Requires
Flexible IT Cost Containment Greater ROI for IT
dollars Better Use of IT Assets Improved Quality
of Deployed Systems
14Current Trends - III
- Time Compression
- Shortened Product Life Cycles
- Shortened Development Times
- Decreasing Payback Period
- Increased Technology Diffusion
- Increased Product Process Innovation
- Enterprise Integration
- Redefined rules of competition
- Market Requirements
- Business Flexibility
The Challenge Molecule
15Near Term Challenges to Tackle
16Near Term Challenges - I
- How can Estimation be given its Rightful place in
S/W Engineering ? - What will Sell vs what will it take to deliver
?
17Near Term Challenges - I
- How can Estimation be given its Rightful place in
S/W Engineering ? - What will Sell vs what will it take to deliver
? - How can a Services Organisations OSSP be
consistently customised / mapped to interface
with customers in-house standards ? - This also applies to S/W Engineering and
Lifecycle Tools
18Near Term Challenges - I
- How can Estimation be given its Rightful place in
S/W Engineering ? - What will Sell vs what will it take to deliver
? - How can a Services Organisations OSSP be
consistently customised / mapped to interface
with customers in-house standards ? - This also applies to S/W Engineering and
Lifecycle Tools - How can there be a reaction to changes in real
time? - How to deal with Scope Creep ?
- How to evaluate the impact of a Change Request on
all the Functional and Non-functional
requirements?
19Near Term Challenges - II
- How can Quality be Defined, Measured, and
Guaranteed ? - Is there anything really called Defect Free
Software ? - Guarantee vs Warranty provided by vendors /
services organisations - Clients ask for Quantified performance (MTBF,
Defects/SKLOC, response time, etc.) - Reliability Models need on-line recalibration
- Impact analysis of scope changes as well as other
parameters within the organisation - Intelligent calibration based on intra-project
performance
20Near Term Challenges - II
- How can Quality be Defined, Measured, and
Guaranteed ? - Is there anything really called Defect Free
Software ? - Guarantee vs Warranty provided by vendors /
services organisations - Clients ask for Quantified performance (MTBF,
Defects/SKLOC, response time, etc.) - Reliability Models need on-line recalibration
- Impact analysis of scope changes as well as other
parameters within the organisation - Intelligent calibration based on intra-project
performance - How can the Risks be accurately Quantified ?
21Near Term Challenges - II
- How can Quality be Defined, Measured, and
Guaranteed ? - Is there anything really called Defect Free
Software ? - Guarantee vs Warranty provided by vendors /
services organisations - Clients ask for Quantified performance (MTBF,
Defects/SKLOC, response time, etc.) - Reliability Models need on-line recalibration
- Impact analysis of scope changes as well as other
parameters within the organisation - Intelligent calibration based on intra-project
performance - How can the Risks be accurately Quantified ?
- Are we really designing, developing and
implementing reusable assets keeping in mind
reusability across the enterprise or in a single
business ?
22Integrated Development Environment
- Source Code Search Engine
- Keyword Search on the WWW.
- e.g. Trim, Comparator, XML, Parse.
- Truly a complete Environment
- Code to Test
- Inbuilt scaled down server.
- In-built Universal test client
- Auto generate test client for any piece of code.
- Outcome Reduced defects
23Managing Complexity of an Enterprise App.
Portfolio
- This slide contained a process and dataflow
diagram demonstrating an extremely complicated
interaction among various functions within a
portfolio of applications, for a Telecom Service
Provider. Actual diagram has been removed for
confidentiality reasons.
24Changing Blend of Skills for IT Professionals
A Healthy combination of Business and Technical
skills
Traditional Software Development
Service-Oriented Development
Business Expertise
Business Expertise
Users Define/refine business processes
Users Define/refine business processes
Application Developers Translate business
processes into applications by assembling and
configuring building blocks
Extensive Overlap
Limited Overlap
Service Developers Create application building
blocks patterns, templates, and components
using core technologies
Developers Program applications using core
technologies
Technical Expertise
Technical Expertise
25 Thai
Hindi
Traditional Chinese
Gracias
Russian
Spanish
Thank You
Obrigado
Brazilian Portuguese
Arabic
Danke
German
Grazie
Merci
Italian
French
Simplified Chinese
Korean
Tamil
Japanese
26(No Transcript)
27(No Transcript)