Upload
avian
View
36
Download
0
Tags:
Embed Size (px)
DESCRIPTION
CHAPTER 9. DEVELOPING IT SYSTEMS Bringing IT Systems to Life. 9-2. Introduction. Every Organization Is Using Information Technology. But IT systems don 抰 magically appear. Organizations spend billions of dollars every year developing systems. - PowerPoint PPT Presentation
Citation preview
CHAPTER 9CHAPTER 9
DEVELOPING IT SYSTEMSDEVELOPING IT SYSTEMS
Bringing IT Systems to Bringing IT Systems to LifeLife
Every Organization Is Using Every Organization Is Using Information TechnologyInformation Technology
But IT systems don 抰 magically appear. Organizations spend billions of dollars every year developing systems. Organizations also spend billion of dollars buying systems that have already been develo
ped. The latest trend is to let knowledge workers take over much of the development process.
Introduction9-2
YOUR FOCUS IN THIS CHAPTERYOUR FOCUS IN THIS CHAPTER The Who, How, and Why of Software Developm
ent Insourcing and the Traditional SDLC How to Develop Systems for Yourself Through S
elfsourcing Letting Other Organizations Develop Your Syste
ms (Outsourcing) CASE Tools and Joint Application Development
Introduction9-3
SYSTEMS DEVELOPMENT IS A SYSTEMS DEVELOPMENT IS A QUESTION-AND-ANSWER SESSIONQUESTION-AND-ANSWER SESSION
What systems should we develop? When should we develop those systems? Who should develop systems? How should we go about developing systems? Why is my participation important during the
systems development process?
Systems Development
In this chapter, we focus on who, how, and why.
9-4
WHY IS YOUR PARTICIPATION WHY IS YOUR PARTICIPATION IMPORTANT?IMPORTANT?
1.You are a business process expert
2.You are a liaison to the customer
3.You are a quality control analyst
4.You are (or will be) a manager of other people
Systems Development9-5
WHOWHO SHOULD DEVELOP SHOULD DEVELOP SYSTEMS?SYSTEMS?
You have three choices.
1.Insourcing - IT specialists within your organization.
2.Selfsourcing - Knowledge workers such as yourself.
3.Outsourcing - Another organization.
Systems Development9-6
HOW HOW SHOULD YOU GO ABOUT SHOULD YOU GO ABOUT DEVELOPING SYSTEMS?DEVELOPING SYSTEMS?
We will look at five choices.
1.Traditional systems development life cycle
2.Prototyping
3.Application software packages
4.Computer-aided software engineering
5.Joint application development
Systems Development9-7
INSOURCING AND THE INSOURCING AND THE TRADITIONAL SYSTEMS TRADITIONAL SYSTEMS
DEVELOPMENT LIFE CYCLEDEVELOPMENT LIFE CYCLE INSOURCING involves choosing IT specialists
within your organization to develop the system.
TRADITIONAL SYSTEMS DEVELOPMENT LIFE CYCLE (TRADITIONAL SDLC) - a structured step-by-step approach to developing systems that creates a separation of duties among IT specialists and knowledge workers.
Insourcing & SDLC9-8
Knowledge workers are the business process experts and the quality control analysts.
IT specialists are responsible for design, implementation, and support of the system.
Insourcing & SDLC9-9
The 6 steps of the traditional SDLC:1.Planning (Ch. 8) 4.Design2.Scoping 5.Implementation3.Analysis 6.Support
See Figure 9.2, page 346
SCOPING - STEP #2SCOPING - STEP #2 Lay the foundation for the systems developmen
t process of a specific system. Key Tasks During Scoping:
– Determine which business units will be affected– Gather the project team– Review existing applications for needed interfaces– Perform an initial feasibility review– Develop a plan for proceeding
Insourcing & SDLC9-10
YOUR ROLE DURING SCOPINGYOUR ROLE DURING SCOPING Define the exact problem or
opportunity
Participate in developing a plan for proceeding
Insourcing & SDLC9-11
ANALYSIS - STEP #3ANALYSIS - STEP #3 Determine the logical requirements for the proposed
system. The key in this step is logical, not physical. Focus only on your information and processes from a
logical point of view. Key Tasks During Analysis:
– Model, study, and analyze the current system– Define new information and processing requirements– Model the new system (logical only)– Update the project plan and scope
Insourcing & SDLC9-12
YOUR ROLE DURING ANALYSISYOUR ROLE DURING ANALYSIS Provide information concerning how the
system currently works.
Provide information concerning new information and processing requirements.
Monitor and justify the new feasibility review.
Insourcing & SDLC9-13
收集用户需求的方法收集用户需求的方法 询问用户 从现行系统获得 企业活动进行分析获得 原形法获得
数据流程图数据流程图处理数据流数据存储外部实体
旅行请求客户
获得旅行信息
更新客户文件
客户 客户 客户
旅行信息
预定旅馆数据 客户更新信息
查询信息
预定航班数据
DESIGN - STEP #4DESIGN - STEP #4 Build a technical blueprint of how the proposed
system will work. IT specialists complete most of the tasks here. Your role becomes that of quality assurance. Key Tasks During Design:
– Identify alternative technical solutions– Analyze alternative solutions and choose the best– Update the project plan and scope
Insourcing & SDLC9-14
YOUR ROLE DURING DESIGNYOUR ROLE DURING DESIGN
Assure that the recommended technical solution meets the logical requirements.
Monitor and justify the project plan.
Insourcing & SDLC9-15
IMPLEMENTATION - STEP #5IMPLEMENTATION - STEP #5 Bring the proposed system to life and place it in the
organization. Key Tasks During Implementation:
– Programming, testing, and training
– Hardware acquisition and installation
– Conversion: PARALLEL - using the old and new simultaneously PLUNGE - immediately using the new PILOT - converting only a group of people first PIECEMEAL - converting only a portion of the system first
Insourcing & SDLC9-16
YOUR ROLE DURING YOUR ROLE DURING IMPLEMENTATIONIMPLEMENTATION
Determine the best training method. Determine the best conversion method. Provide complete testing of the new system. Monitor the budget and schedule and look for
搑 unaway?projects.
Insourcing & SDLC9-17
SUPPORT - STEP #6SUPPORT - STEP #6 Final sequential step of any systems
development process. Ensure that the system continues to meet
stated goals. You may need to make minor modifications or
completely overhaul the system at some point.
Insourcing & SDLC9-18
KEY TASKS AND YOUR ROLE KEY TASKS AND YOUR ROLE DURING SUPPORTDURING SUPPORT
KEY TASKS:– React to changes in information and processing needs.– Assess the worth of the system in terms of the strategic
plan of the organization. YOUR ROLE:
– Provide a mechanism for people to request changes.– Assess the worth of proposed changes before passing
them to the IT specialists.
Insourcing & SDLC9-19
ADVANTAGES OF INSOURCING ADVANTAGES OF INSOURCING AND THE SDLCAND THE SDLC
Allows your organization to tailor a system to your exact needs.
Uses a structured step-by-step approach. Creates a separation of duties between IT
specialists and knowledge workers. Requires key deliverables before proceeding to
the next step.
Insourcing & SDLC9-20
DISADVANTAGES OF INSOURCING DISADVANTAGES OF INSOURCING AND THE SDLCAND THE SDLC
It takes time to get exactly what you want. Some smaller projects suffer from a structured
approach. IT specialists and knowledge workers speak
different languages, creating communications gaps.
If you omit a requirement early, it can be costly to correct that mistake later.
Insourcing & SDLC9-21
SELFSOURCINGSELFSOURCING
Selfsourcing9-22
the development and support of IT systems by knowledge workers with little or no help from IT
specialists.
Selfsourcing is an important part of knowledge worker computing in which you develop your own systems.
Selfsourcing is an option for who. When selfsourcing, you almost always employ protot
yping as a how.
PROTOTYPING - BUILDING PROTOTYPING - BUILDING MODELSMODELS
PROTOTYPING is the process of building a model that demonstrates the features of a proposed product, service, or system.
A PROTOTYPE is a model of a proposed product, service, or system.
Most industries prototype all the time (think about the automobile industry).
Prototyping can also be a valuable tool in systems development.
Prototyping9-23
Prototyping Can Aid in...Prototyping Can Aid in... Gathering requirements - because prototyping is it
erative. Helping determine requirements - especially if peo
ple don 抰 know what they want. Proving that a system is technically feasible - thes
e prototypes are called PROOF-OF-CONCEPT PROTOTYPES.
Selling the idea of a proposed system - these prototypes are called SELLING PROTOTYPES.
Prototyping9-24
THE PROTOTYPING PROCESSTHE PROTOTYPING PROCESS
1.Identify Basic Requirements2.Develop Initial Prototype3.Knowledge Worker Reviewing4.Revise and Enhance the Prototype
Prototyping
Continue the iterative process between steps 3 and 4 until everyone is happy with the prototype.
9-25
See Figure 9.7, page 361
PROTOTYPING ADVANTAGESPROTOTYPING ADVANTAGES Encourages active knowledge worker
participation. Helps resolve discrepancies among knowledge
workers. Gives knowledge workers a feel for the final
system. Helps determine technical feasibility. Helps sell the idea of a proposed system.
Prototyping9-26
PROTOTYPING DISADVANTAGES PROTOTYPING DISADVANTAGES
Leads people to believe the final system will follow shortly.
Gives no indication of performance under operational conditions.
Leads the project team to forgo proper testing and documentation.
Prototyping9-27
SELFSOURCING PROCESS STEPSSELFSOURCING PROCESS STEPS
1. SCOPING– Define the goals of the new system– Create a project plan– Identify any systems that require an interface– Determine needed external support
2. ANALYSIS– Study and model current system– Understand interfaces in detail– Define and prioritize your requirements
Selfsourcing9-28
See Figure 9.8 and the box on page 363
SELFSOURCING PROCESS STEPSSELFSOURCING PROCESS STEPS3. DESIGN
– Select a design target– Acquire the necessary hardware and software– Develop an initial prototype
4. IMPLEMENTATION– Fully develop prototype into a complete system– Test the new system– Train– Convert to the new system– Completely document the new system
5. SUPPORT– Provide ongoing maintenance
Selfsourcing9-29
SELFSOURCING ADVANTAGESSELFSOURCING ADVANTAGES Improves requirements determination. Increases knowledge worker participation and
sense of ownership. Increases speed of systems development.
Selfsourcing9-30
SELFSOURCING PITFALLSSELFSOURCING PITFALLS Inadequate knowledge worker expertise leads t
o inadequately developed systems. Lack of organizational focus creates 損 rivatize
d?IT systems. Insufficient analysis of design alternatives lead
s to subpar IT systems. Lack of documentation and external support le
ad to short-lived systems.
Selfsourcing9-31
OUTSOURCINGOUTSOURCING
FORMS OF SYSTEMS DEVELOPMENT OUTSOURCING (See Figure 9.9, page 366):1.Purchase existing application software package.2.Purchase existing application software package and request modifications.3.Outsource development of a system for which no application software package exists.
Outsourcing
is the delegation of specific work to a third party for a specified length of time, at a specified
cost, and at a specified level of service.
9-32
THE OUTSOURCING PROCESSTHE OUTSOURCING PROCESS Select a Target System Establish Logical Requirements Develop a Request for Proposal (RFP) Evaluate RFP Returns and Choose a
Vendor Test and Accept the Solution Monitor and Reevaluate
Outsourcing9-34
REQUEST FOR PROPOSAL (RFP)REQUEST FOR PROPOSAL (RFP)
An RFP is a formal document that outlines your logical requirements of the proposed system and invites outsourcing organizations to submit bids for its development.
An RFP is the most important document in the outsourcing process.
It includes your logical system requirements, needed development time frame, how RFP returns will be scored and evaluated, and a host of other valuable information.
Outsourcing9-33
RFP should includes:RFP should includes:
Problem statement Description of current system Description of proposed system Request for support plan Request for development time frame Request for statement of outsourcing costs How RFP returns will be scored Deadline for RFP returns
OUTSOURCING ADVANTAGESOUTSOURCING ADVANTAGESAllows your organization to...Allows your organization to... Focus on Unique Core Competencies Exploit the Intellect of Another Organization Better Predict Future Costs Acquire Leading-Edge Technology Reduce Costs Improve Performance Accountability
Outsourcing9-35
OUTSOURCING OUTSOURCING DISADVANTAGESDISADVANTAGES
Your organization may suffer Your organization may suffer because it...because it...
Reduces Technical Know-How for Future Innovation
Reduces Degree of Control Increases Vulnerability of Strategic Information Increases Dependency on Other Organizations
Outsourcing9-36
SOME OTHER TOOLS AND SOME OTHER TOOLS AND METHODS - MORE METHODS - MORE HOWHOWSS
Computer-Aided Software Engineering Tools - that are mostly used by IT specialists to automate the systems development process.
Joint Application Development Workshops - that bring together management, IT specialists, and knowledge workers to define system requirements as a group.
Other Tools9-37
CASE TOOLSCASE TOOLS COMPUTER-AIDED SOFTWARE ENGINEERING (CA
SE) TOOLS automate some or all steps in the SDLC. CASE tools help (1) model and store specific system inf
ormation and (2) convert information to a new form. CATEGORIES OF CASE TOOLS:
– INTEGRATED CASE TOOLS for the entire SDLC.– UPPER CASE TOOLS for planning, scoping, analysis, and design
.– LOWER CASE TOOLS for design, implementation, and support.
CASE Tools9-38
KEY FEATURES OF CASE KEY FEATURES OF CASE TOOLSTOOLS
PROJECT REPOSITORY - a database that contains information pertaining to all the systems development projects that your organization has undertaken using the CASE tool.
REVERSE ENGINEERING - the ability of a CASE tool to analyze existing software and create design documents from it.
CASE Tools9-39
Step1:PlanningStep1:Planning
CASE tools help you model information concerning the goals and objectives of your organization, the current IT infrastructure, the IT systems plan, the structure of your organization, and current information and processes within your organization
Step2:ScopingStep2:Scoping
CASE tools help you capture and work with any information relating to the groundwork for the development of a specific system, including the problem statement, goals of the new system, required interfaces, the feasibility review, project team members, and the project plan.
Step3:AnalysisStep3:Analysis
CASE tools help you model and capture the logical requirements for a proposed system and any new information and processes that must be present.
Step4:DesignStep4:Design
CASE tools help you model and capture technical alternatives for the proposed solution and generate detailed specifications concerning how the software should work.
Step5:ImplementationStep5:Implementation
CASE tools help you generate software automatically from detailed design.
Step6:SupportStep6:Support
Regenerate software after changing design specifications
Reverse-Engineer old systems to support changes
ADVANTAGES OF CASE TOOLSADVANTAGES OF CASE TOOLS Increased speed and efficiency of SDLC. Repository of project information. Valuable control checking. Deployment of systems across multiple
platforms.
CASE Tools9-40
REALITY OF CASE TOOLSREALITY OF CASE TOOLS
You must still have a solid background in analysis and design.
CASE tools are not for knowledge workers. You must spend more time in front-end
processes. Integrated CASE tools require a detailed
organizational understanding.
CASE Tools9-41
JOINT APPLICATION JOINT APPLICATION DEVELOPMENT (JAD)DEVELOPMENT (JAD)
The goal is to eliminate the communications gap between participants.
Participants include:
JAD
a workshop that unites management, IT specialists, and knowledge workers to define and
specify the logical requirements and technical alternatives for a proposed system.
- JAD facilitator - Scribe
- Executive sponsor - Knowledge workers
- Project manager - IT specialists
9-42
THE JAD PROCESSTHE JAD PROCESS1.Establish the JAD Project2.Introduce Participants to the Project and JAD Workshop3.Prepare JAD Workshop Materials4.Perform the JAD Workshop
JAD workshops usually meet 4 to 8 hours for 3 to 5 days.
The result of a JAD workshop is a document that describes the logical requirements for the proposed system and suggests several alternative technical solutions.
JAD9-43
JAD ADVANTAGESJAD ADVANTAGES Improved Systems Design that Better Meets
the Needs of Knowledge Workers. Reduced Delivery Time for the New System. Improved Relations Among Management, IT
Specialists, and Knowledge Workers. Increased Sense of Ownership by
Management and Knowledge Workers.
JAD9-44
TO SUMMARIZETO SUMMARIZE Systems development is an important undertaking
for each and every organization.
Your participation during systems development is important because you are a:– business process expert
– liaison to the customer
– quality control analyst
– manager of other people
9-45
TO SUMMARIZETO SUMMARIZE The Who 抯 of systems development:
– Insourcing or IT specialists within your organization– Selfsourcing or knowledge workers such as yourself– Outsourcing or another organization
The How 抯 of systems development:– The traditional SDLC– Prototyping– CASE tools– Joint application development
9-46