14-1 © Prentice Hall, 2007 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems...
-
Upload
melina-mitchner -
Category
Documents
-
view
216 -
download
3
Transcript of 14-1 © Prentice Hall, 2007 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems...
14-1 © Prentice Hall, 2007
Chapter 14:Chapter 14:OOSAD Implementation and OOSAD Implementation and
OperationOperation
Object-Oriented Systems Analysis and Design
Joey F. George, Dinesh Batra,
Joseph S. Valacich, Jeffrey A. Hoffer
14-2Chapter 14 © Prentice Hall, 2007
Chapter ObjectivesChapter Objectives
After studying this chapter you should be able to:– Describe the process of coding, testing, and
converting an organizational information system.
– Apply four installation strategies: direct, parallel, single-location, and phased.
14-3Chapter 14 © Prentice Hall, 2007
Chapter Objectives Chapter Objectives (Continued)(Continued)
After studying this chapter you should be able to:– List the deliverables for documenting the
system and providing user training and support.– Compare various training modes.– Discuss the issues of providing support to end
users.
14-4Chapter 14 © Prentice Hall, 2007
Chapter Objectives Chapter Objectives (Continued)(Continued)
After studying this chapter you should be able to:– Explain why systems implementation
sometimes fails.– Explain and contrast four types of maintenance.– Describe factors that influence system
maintenance costs.
14-5Chapter 14 © Prentice Hall, 2007
14-6Chapter 14 © Prentice Hall, 2007
14-7Chapter 14 © Prentice Hall, 2007
14-8Chapter 14 © Prentice Hall, 2007
Maintaining Information SystemsMaintaining Information Systems
Four major activities:
1. Obtaining maintenance requests
2. Transforming requests into changes
3. Designing changes
4. Implementing changs
14-9Chapter 14 © Prentice Hall, 2007
Maintenance is a subset of the activities of the entire development process.
14-10Chapter 14 © Prentice Hall, 2007
What Is Coding?What Is Coding?
Translation of physical design specifications into working computer code
Coding involves use of programming languages such as Java or Visual Basic
Coding often involves reuse and/or modification of existing components and objects
eXtreme programming – an intensive coding and testing approach involving two-person teams and customer involvement
14-11Chapter 14 © Prentice Hall, 2007
ReuseReuse
The use of previously written software resources, especially objects and components, in new applications
Results in great savings of system development time
Object-oriented systems are very conducive to reuse.
14-12Chapter 14 © Prentice Hall, 2007
Approaches to ReuseApproaches to Reuse Ad hoc – individual, unplanned use
Facilitated – use informally managed and disseminated by expert guru evangelists
Managed – organizationally enforced reuse policies and practices
Designed – reusable components developed and maintained in-house
Cos
t and
com
mitm
ent
low
high
14-13Chapter 14 © Prentice Hall, 2007
14-14Chapter 14 © Prentice Hall, 2007
What Is Software Application What Is Software Application Testing?Testing?
Manual and automated procedures for validating correctness of program code, including syntactical and execution issues
Testing Syntax – grammatical rules applied to programming languages
Testing Execution – logic and performance of the software during operation
14-15Chapter 14 © Prentice Hall, 2007
Categorization of Test TypesCategorization of Test Types Tests can be manual or automated, and may or may not
involve code execution.
Without code execution– Manual – inspections– Automated – syntax checking
With code execution– Manual – walkthroughs and desk-checking– Automated – unit, integration, system, and stub testing
14-16Chapter 14 © Prentice Hall, 2007
Tests Without Program ExecutionTests Without Program Execution
Inspections (manual)– Participants examine program code for
predictable, language-specific errors
Syntax checking (automated)– Compiler or interpreter tests source code for
grammatical errors while translating to executable format
14-17Chapter 14 © Prentice Hall, 2007
Manual Tests With Program Manual Tests With Program ExecutionExecution
Desk checking– trace through the logic of the code, identifying
possible logical errors
Walkthroughs– Like desk-checking, but in a group-oriented,
more structured process
14-18Chapter 14 © Prentice Hall, 2007
Code walkthrough is one of many types of structured walkthroughs.
14-19Chapter 14 © Prentice Hall, 2007
Automated Tests With Program Automated Tests With Program ExecutionExecution
Unit tests – a module tested in isolation to discover any errors in its code
Integration tests – bringing together all objects and components that a program comprises for testing purposes
System tests – testing all programs and applications together to ensure performance and reliability
Acceptance tests – user-satisfaction tests
14-20Chapter 14 © Prentice Hall, 2007
A test case is a specific scenario of transactions, queries, or navigation paths that represent a typical, abnormal, or critical use of the system.
Allows repeated testing with each application change
14-21Chapter 14 © Prentice Hall, 2007
Acceptance TestingAcceptance TestingThe process whereby actual users test a
completed information system, ending with user acceptance of the system
Two phases– Alpha testing – user testing of a completed
information system using simulated data– Beta testing – user testing of a completed
information system using real data in the real user environment
14-22Chapter 14 © Prentice Hall, 2007
Specific Elements of Alpha TestingSpecific Elements of Alpha Testing Recovery testing – force the software or environment to fail to
verify if recovery is performed correctly
Security testing – verify that protection mechanisms correctly prevent improper penetration
Stress testing – try to break the system (e.g. incomplete database records or overloaded transaction volume)
Performance testing – test in a variety of platforms to ensure consistent response times and performance
14-23Chapter 14 © Prentice Hall, 2007
What Is Installation?What Is Installation? The organizational process of turning over from the old
information system to the new one
Types:– Direct installation – changing from old to new system by turning off the
old system when the new one is turned on– Parallel installation – running old and new systems at the same time until
management decides to turn off the old one– Single location installation – trying the new system at one site before
deciding to adopt it across the organization– Phased installation – incrementally changing from the old system to the
new system by gradually converting functional components
14-24Chapter 14 © Prentice Hall, 2007
Direct – cold turkey, low cost, greater impact of errors
Parallel – old and new coexist, minimize error impact, high cost in system resources
14-25Chapter 14 © Prentice Hall, 2007
Single Location – Pilot approach, allows learning and minimizes error impact, lower resource demand than parallel, difficult to coordinate and maintain
Phased – Incremental, supports phased system devt., minimize error impact, difficult to coordinate old and new components
14-26Chapter 14 © Prentice Hall, 2007
Types of DocumentationTypes of Documentation
System – detailed information about a system’s design specifications, its inner workings, and its functionality
User – written or other visual information about an application system, how it works, and how to use it.
14-27Chapter 14 © Prentice Hall, 2007
Types of System DocumentationTypes of System Documentation
Internal – comments in source code, generated during the coding process or automatically by software compilers or documenters
External – outcomes of all structured diagrams, including use cases, design classes, activity and sequence diagrams, etc.
14-28Chapter 14 © Prentice Hall, 2007
User documentation is often in the form of online help…
… sometimes with Web connections for further information.
14-29Chapter 14 © Prentice Hall, 2007
What Is Training and Support?What Is Training and Support?
Providing on-going educational and problem-solving assistance to information systems users
Training and support material and jobs must be designed along with the associated information systems
14-30Chapter 14 © Prentice Hall, 2007
Possible Topics for TrainingPossible Topics for Training
Use of the systemGeneral computer conceptsInformaiton systems conceptsOrganizational conceptsSystem managementSystem installation
14-31Chapter 14 © Prentice Hall, 2007
Training methods can be interpersonal, manual, or automated.
14-32Chapter 14 © Prentice Hall, 2007
Electronic Performance Support Systems (EPSS), like Microsoft Office Assistant, are components of software applications that embed training and information for the user, in the form of tutorials, expert systems, and hyperlink jumps to reference topics.
14-33Chapter 14 © Prentice Hall, 2007
What is System Support?What is System Support?
Providing ongoing education and problem solving assistance to information systems users.
Support materials and jobs must be designed along with the associated information system.
14-34Chapter 14 © Prentice Hall, 2007
Automated SupportAutomated Support Manual support is often too labor-intensive, so
when possible automated approaches are used
Common methods:– Online support forums– Bulletin board systems– On-demand fax– Voice-response systems
14-35Chapter 14 © Prentice Hall, 2007
Help Desks and Information Help Desks and Information CentersCenters
Help desk – a single point of contact for all user inquiries and problems about a particular information system or for all users in a particular department
Information center – an organizational unit whose mission is to support users in exploiting information technology
14-36Chapter 14 © Prentice Hall, 2007
Critical Success Factors for Critical Success Factors for Implementation SuccessImplementation Success
Risk management
Commitment to project
Commitment to change
Extent of project definition and planning
Realistic user expectations
14-37Chapter 14 © Prentice Hall, 2007
Critical Success Factors for Critical Success Factors for Implementation Success (cont.)Implementation Success (cont.)
Relevance of system for users’ work
Ease of use
User demographics (e.g. computer savvy)
Support of user creativity
User satisfaction
14-38Chapter 14 © Prentice Hall, 2007
What Is System Maintenance?What Is System Maintenance? Changes made to a system to fix or enhance its
functionality
14-39Chapter 14 © Prentice Hall, 2007
Maintenance Cost FactorsMaintenance Cost Factors
Latent defectsNumber of customers for the systemQuality of system documentationQuality of maintenance personnelAvailability of automated toolsQuality of program code and system design
14-40Chapter 14 © Prentice Hall, 2007
Measures of Maintenance Measures of Maintenance EffectivenessEffectiveness
Number of failures
Mean time between failures (MTBF)
Type of failure
14-41Chapter 14 © Prentice Hall, 2007
Maintenance requests can be frequent.
Priorities among requests should be made based on the type and urgency of the request.
14-42Chapter 14 © Prentice Hall, 2007
RecapRecapAfter studying this chapter we learned to:
– Describe coding, testing, and converting.– Apply four installation strategies.– Generate system and user documentation.– Compare training modes.– Discuss techniques of user support.– Discuss maintenance types.– Discuss maintenance cost factors.