IS 553 Advanced Systems Development Practices
description
Transcript of IS 553 Advanced Systems Development Practices
![Page 1: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/1.jpg)
James Nowotarski
25 May 2004
IS 553Advanced Systems
Development Practices
![Page 2: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/2.jpg)
2
Course Map
Underpinnings. Introduction. Essentials
Content. Rational Unified Process. Agile
Implementation. Metrics. CMM. Distributed development. Tools & training
Briefings (Term Papers)
1 2 3 4 6 7 8 9 10 115
Assignments
Quizzes
Week
(RUP) (Agile) (CMM) (Distr. Dev.)
![Page 3: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/3.jpg)
3
Understand who uses methodology and why Understand key strategies and issues affecting
methodology deployment, adoption, and usage Be able to outline a methodology deployment
plan Be aware of development tools “big picture”
Today’s Objectives
![Page 4: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/4.jpg)
4
Topic Duration
Quiz 4 recap 15 minutes
Who reads methodology and why 15 minutes
Deployment, adoption, use 60 minutes
*** Break 15 minutes
Current Event Reports 30 minutes
Development tools 60 minutes
Today’s Agenda
![Page 5: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/5.jpg)
5
Topic Duration
Quiz 4 recap 15 minutes
Who reads methodology and why 15 minutes
Deployment, adoption, use 60 minutes
*** Break 15 minutes
Current Event Reports 30 minutes
Development tools 60 minutes
Today’s Agenda
![Page 6: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/6.jpg)
6
Factors to Determine Location (Gartner Group)
Factor On-Site Offshore
User interaction High Low
Methodology Iterative Waterfall
Technology and skills availability
Strong local availability Scarce/Expensive locally
Systems/Application integration
High Low
Immigration policies Open locally Closed
Cost objectives Weak Strong
Quality objectives No change needed Improvement desired
Scale of offshore resources
Low High
Requirements
definition
Loose/ambiguous Complete/Well-defined
![Page 7: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/7.jpg)
7
Topic Duration
Quiz 4 recap 15 minutes
Who reads methodology and why 15 minutes
Deployment, adoption, use 60 minutes
*** Break 15 minutes
Current Event Reports 30 minutes
Development tools 60 minutes
Today’s Agenda
![Page 8: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/8.jpg)
8
Technology
ProcessPeople
The focus of IS 553 has been the process component of systems development capability
IS 553
Who Reads Methodologyand Why
![Page 9: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/9.jpg)
9
Technology
ProcessPeople
Today, we will focus on the People and Technology components
Who Reads Methodologyand Why
![Page 10: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/10.jpg)
10
Technology
ProcessPeople
People – The most difficult component
Who Reads Methodologyand Why
![Page 11: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/11.jpg)
11
“A lot of times, technology is hyped and sold and somebody buys it. But what isn’t hyped enough is how difficult it is to implement the technology so that it has an impact” – Tim Waterloo, president of Glen Ellyn consulting firm Oak Enterprises, quoted in Crain’s Chicago Business, 10 May 2004.
Changing people’s behavior is usually the hardest part of implementing technology
Who Reads Methodologyand Why
![Page 12: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/12.jpg)
12
Who Reads Methodology and Why
Study of 1000 practitioners by Prof. Gezinus Hidding, Loyola University (mid-1990’s)
Practitioners seldom “read” the methodology
But when they do, it is to: learn about something new (training) look something up that they once knew or
want to confirm (reference) Different needs depending on role
![Page 13: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/13.jpg)
13
Training Reference
Planning 8% 36%
Selling 6% 20%
Doing 6% 13%
Managing 2% 9%
Methodology is used mostly by planners and mostly for reference purposes
Source: Gezinus Hidding, Loyola University
Roles
How Used
Who Reads Methodology and Why
![Page 14: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/14.jpg)
14
Process Artifact Guideline Concept
Planning 43% 37% 14% 7%
Selling 48% 35% 12% 5%
Doing 40% 34% 16% 10%
Managing 42% 34% 18% 6%
Process descriptions and artifacts are the most valuable types of REFERENCE information
Source: Gezinus Hidding, Loyola University
Who Reads Methodology and Why
Percentage of time Planners REFERENCE Process info
![Page 15: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/15.jpg)
15
Who Reads Methodology and Why
Information needs of planners (“crucial target”) need for speed summary overviews of processes and
artifacts
Information needs of doers artifact samples guidelines/techniques
![Page 16: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/16.jpg)
16
Topic Duration
Quiz 4 recap 15 minutes
Who reads methodology and why 15 minutes
Deployment, adoption, use 60 minutes
*** Break 15 minutes
Current Event Reports 30 minutes
Development tools 60 minutes
Today’s Agenda
![Page 17: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/17.jpg)
17
Why is Software Process Implementation So Hard?
Process change affects behavior Cultural barriers
Examples: • “Cowboy culture” will resist structure• Hierarchical culture will resist XP
Target audience lacks time “Death by 1000 initiatives”
Not a “sexy” topic Method/1 = “Methadone”
![Page 18: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/18.jpg)
18
Software Process Implementation Steps
1. Assess the current state2. Set (or revise) goals
3. Identify risks
4. Plan the process implementation
5. Execute the process implementation
Current process
New processCompletelyImplemented
6. Evaluate the process implementation
![Page 19: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/19.jpg)
19
Software Process Implementation Steps
1. Assess the current state2. Set (or revise) goals
3. Identify risks
4. Plan the process implementation
5. Execute the process implementation
Current process
New processCompletelyImplemented
6. Evaluate the process implementation
![Page 20: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/20.jpg)
20
1. Assess the current state
Assets Deployment Usage
Bus. Modeling
Requirements
Analysis & Design
etc.
One approach to assessment: Look at assets, deployment of assets, and usage of assets
Scorecard/Gap Analysis
![Page 21: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/21.jpg)
21
1. Assess the current state
Assets: Do we have good stuff?
Deployment: Do people know about the assets? Do people know what to do with the assets?
Usage: Are people using the assets on projects?
![Page 22: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/22.jpg)
22
Technology
ProcessPeople
1. Assess the current state
People - Perhaps the most difficult piece for a technology person
• Ownership/Sponsorship • Motivation• Rewards/Incentives• Training• Physical work environment• Roles, reporting relationships• Performance measurement
![Page 23: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/23.jpg)
23
Technology
ProcessPeople
1. Assess the current state
Technology elements must be addressed also
• Tools • Standards• Reusable components• Alignment with other frameworks
![Page 24: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/24.jpg)
24
1. Assess the current state2. Set (or revise) goals
3. Identify risks
4. Plan the process implementation
5. Execute the process implementation
Current process
New processCompletelyImplemented
6. Evaluate the process implementation
Software Process Implementation Steps
![Page 25: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/25.jpg)
25
Elements of an Implementation Plan
Sponsorship Marketing & Communication Education & Training Coordination with other initiatives Rollout schedule Ongoing Support Metrics
![Page 26: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/26.jpg)
26
Sponsorship• Executive level• Visibility• Accountability
Elements of an Implementation Plan
![Page 27: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/27.jpg)
27
Marketing & Communication• Need to be aware of where target audience is:
• Misinformed
• Unaware
• Aware
• Understand
• Believe
• Action
• Err on side over-communication• Relate to business performance objectives• Types of materials? (discuss)
Elements of an Implementation Plan
![Page 28: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/28.jpg)
28
Education & Training• Train-the-Trainer• Rollout training (one-time event)
• For the unwashed masses
• “Retread” training
• Ongoing training curriculum• Levels to target
• User
• Developer
• Manager
• Executive
Elements of an Implementation Plan
![Page 29: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/29.jpg)
29
Elements of an Implementation Plan
Coordination with other initiatives• Align vocabulary, practices• Examples:
• Performance evaluations• IT strategy
• Allow others to “invoke” methodology• Analogous to Microsoft publishing API’s in a
Software Developer Kit (SDK)
![Page 30: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/30.jpg)
30
Elements of an Implementation Plan
Rollout schedule• Incremental approach recommended • Pilot is usually a good idea
• Shake out• Success story will help with takeup by others• Especially critical if risks are great• “the most effective way to introduce process
and tools”
![Page 31: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/31.jpg)
31
Elements of an Implementation Plan
Ongoing Support• Local experts• Central help desk• Need to capture feedback (“experience
factory”)• Fixes• Enhancements• Innovations• Systems development metrics
![Page 32: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/32.jpg)
32
Elements of an Implementation Plan
Metrics (on the implementation process)• Training time• Awareness • Usage• Local experts time allocation• Help desk requests• Errors/Enhancements
![Page 33: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/33.jpg)
33
1. Assess the current state2. Set (or revise) goals
3. Identify risks
4. Plan the process implementation
5. Execute the process implementation
Current process
New processCompletelyImplemented
6. Evaluate the process implementation
Software Process Implementation Steps
![Page 34: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/34.jpg)
34
1. Assess the current state2. Set (or revise) goals
3. Identify risks
4. Plan the process implementation
5. Execute the process implementation
Current process
New processCompletelyImplemented
6. Evaluate the process implementation
Software Process Implementation Steps
![Page 35: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/35.jpg)
35
Phase 1 Phase 2 Phase 3 Phase 4
Implementing a process is a project
The group of people working on implementing the process should be dedicated
Software Process Implementation Steps
![Page 36: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/36.jpg)
36
Implementation Key Success Factors Involve systems developers in assessing current process Implement appropriate tools
Software development tools Methodology related tools
• configuration/customization• browsing• estimating• project planning/management• workflow management
Communicate, communicate, communicate Visible executive support Positive track record (i.e., no “busts”) Incremental/Iterative implementation of methodology
For XP, start with testing or planning
![Page 37: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/37.jpg)
37
Usual Causes of Implementation Failure
No clear business objective Lack of visible leadership/sponsorship Lack of adequate training Lack of effective communication Death by 1000 initiatives New/Changed roles not implemented Fail to account for different information
needs of “planners” and “doers” Too detailed for planners Not enough detail for doers
![Page 38: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/38.jpg)
38
Topic Duration
Quiz 4 recap 15 minutes
Who reads methodology and why 15 minutes
Deployment, adoption, use 60 minutes
*** Break 15 minutes
Current Event Reports 30 minutes
Development tools 60 minutes
Today’s Agenda
![Page 39: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/39.jpg)
39
Topic Duration
Quiz 4 recap 15 minutes
Who reads methodology and why 15 minutes
Deployment, adoption, use 60 minutes
*** Break 15 minutes
Current Event Reports 30 minutes
Development tools 60 minutes
Today’s Agenda
![Page 40: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/40.jpg)
40
Configuration Management
Release Management
Environment Management
Problem Management
Information Management
Process Management
QualityMgmt
Program& ProjectMgmt
System Building
Security Management
Pro
du
ctiv
ity
Co
llab
ora
tio
n
Collaborative tools enable groups of people to communicate and to share information. E-mail, video and audio conference calls, and instant messaging are examples of these tools.
Configuration Management tools include the version control, migration control and change control of code and documentation.
Environment Management tools support the operation of the development environment, such as help desk support and backup/recovery activities.
Information Management tools organize and manage information used by other tools. Information types may include code, documentation, test scripts and data and database designs.
Problem Management tools assist problem tracking and solution processes.
Process Management tools enforce the correct sequencing of tasks and tools in conformance with a pre-defined methodology.
Productivity tools provide the basic functionality required to create documents, spreadsheets, and simple graphics or diagrams.
Program and Project Management tools assist project planning and help track project status according to plan.
Quality Management tools help gather and present product- and process-related metrics, and includes tools like CQMA.
Release Management tools manage project dependencies between multiple releases and between different teams working on the same release.
Security Management tools secure the development environment and serve as components in the security layer of the solution being developed.
System Building tools constitute the core of the development architecture and are used to design, build, and test the system.
Tools Framework – Overview
Source: Accenture
![Page 41: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/41.jpg)
41
Analysis & Design
Reverse Engineering
Packaged Component Integration
Construction
Test
TestTest
Test Data Management
Test Data Manipulation
Test Planning
Test Execution
Emulation Tools
Test Coverage Measurement
Test Result Comparison
SIR Management
Performance Management
ConstructionConstructionSource Code Editor
Compiler/Linker/Interpreter
Source Code Debugger
QA Utilities
Media Content Creation
Code/Object Libraries
Generation
Packaged Component IntegrationPackaged Component Integration
Customization
Reverse EngineeringReverse Engineering
Interactive Navigation
Graphical Representation
Extraction
Repository Population
Data Name Rationalization
Restructuring
Analysis & DesignAnalysis & Design
Data Modeling
Process Modeling
Event Modeling
Performance Modeling
Object Modeling
Component Modeling
Prototyping
Database Design
Application Logic Design
Presentation Design
Communication Design
Reuse Support
Usability Test
System Building
![Page 42: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/42.jpg)
42
System Building
J2EE IBM has leadership role
• Rational acquisition in late 2002• Integration of Rational tools with WebSphere application development tools
.NET Microsoft announcing its Visual Studio Team System week of 5/24/04
• Tools from requirements analysis to modeling, design, development, testing, and maintenance
• Features a tool, code-named Whitehorse, that will allow programmers to construct an application from a visual representation (model-driven)
• Support for service-oriented architectures (aka web services)• “Drag, drop, and connect”
Application development (AD) for most enterprises' business solutions has become a "two-horse race" — between .NET and Java 2 Platform, Enterprise Edition (J2EE)
![Page 43: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/43.jpg)
43
System Building
Model-driven: Use business terminology to describe what the software is to do
• Higher level of abstraction than code
No manual translation required IBM, Microsoft, Borland all pursuing
Increasing emphasis on model-driven approaches
![Page 44: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/44.jpg)
44
System Building
By 2007, packaged applications and outsourced development will be the main source of new applications
Result: De-skilling of in-house application development organizations
Application development is increasingly about assembly rather than coding
![Page 45: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/45.jpg)
45
System Building
Example: CICS/Cobol with IMS or DB2 as DBMS
Primary approach is to “wrap” legacy code with well-defined, component-based interfaces
One of the biggest application development challenges is to address the huge amount of legacy code
![Page 46: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/46.jpg)
46
System Building
80% of new code development is Java and Visual Basic
The number of professional VB developers is approximately 2x the number of professional Java developers
Between 2000 and 2008, number of worldwide Java developers to grow from 1M to 5M
![Page 47: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/47.jpg)
47
System Building
C# demand will increase, C++ and Cobol will decline
Future demand
Currentdeveloperbase C#
VB
Java
C++
Cobol
PowerBuilderPascalSmalltalkDelphi
Source: Gartner Group
![Page 48: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/48.jpg)
48
System Building
Dubbed “The Magnificent Two” IBM Visual Age for JavaBorland JBuilder
For Java, 35-40% of enterprises use the tools of Borland and IBM
![Page 49: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/49.jpg)
49
System Building
JavaScript is the most heavily-used scripting language
Future demand
Currentdeveloperbase
VBScript
JavaScript Perl
ColdFusionJScriptPython
Source: Gartner Group
![Page 50: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/50.jpg)
50
System Building
Extensible, open source architecture Based on Java and J2EE Foundation for variety of plug-in modules targeted at application
development and deployment IBM has been main driver
• Needs better balance of non-IBM members• Name implies anti-Sun, anti-standards (eclipse=blot out sun)
Sun has its own open source Java architecture called Netbeans.org
The Eclipse Foundation has far-reaching potential
![Page 51: IS 553 Advanced Systems Development Practices](https://reader036.fdocuments.in/reader036/viewer/2022062315/5681523b550346895dc080b1/html5/thumbnails/51.jpg)
51
Reminder: Timing of PresentationsJune 1 June 8
Bird/Burton
Herbst
Jain
Johnson
Limjoco/Thong-Ngam
Scoz
Shakeel
Chung
CraigDakshi
Falcon
Haqi
StolerTherdwikrant