Title: Systems Development
1Systems Development
2Motivation
- If you are in business, youre going to be
involved in _____ _____ - Building good software applications requires
involvement by the END USER--the you, friend - A PHILOSOPHY--TI
- We will reuse before we will buy and we will buy
before we will create using 3 or 4GLs
3Problems with software development
- It takes too long
- It costs too much
- It doesnt deliver the required functionality
- Over 70 of SD projects fail!!!
4Concept of Systems Development Life Cycle (SDLC)
- Definition of SDLC
- Stages of SDLC
- Traditional versus modern SDLCs
5Systems Development Life Cycle (SDLC)
- An SDLC represents a set of general categories
that show the major steps, over time, of an
information systems development project.
6An Eight-Stage SDLC
- Project initiation
- Feasibility study
- Logical analysis and design
- Acquisition and development
- Implementation
- Operation
- Post-audit evaluation
- Maintenance
7SDLC
8Whats Missing here?
- Testing--up to 40 of the total development time
- your book has nothing to say about it at
all--SHAME - We should also note that roughly 80 of ISD
budgets are spent on maintenance - This includes fixing bugs
- Changing interfaces, structure
- Enhancements
9Project Initiation
- Functional Manager
- Formal planning process
- IS organization
10Feasibility Studies
- Technology
- Economics
- Organizational factors
- Legal, ethical, and other constraints
- But not the time-frame for development
11Logical Analysis and Design
- Determine the systems functions
- How will it accomplish those functions
- Logical design
- Physical design / technical design
12Logical Design
- Generic IS functions input, output, and storage
- Modeling tools DFDs, ERDs
- Data Flow Diagrams
- Entity-Relation Diagrams
- User involvement
13Implementation
- Parallel conversion
- Direct cut-over
- The most risky
- Pilot conversion
- May be implemented in a subset of locations
- Phased
14Traditional versus Modern SDLC
- Minimal overhead
- Flexibility and responsiveness
- Concurrent tasks
- Focused analysis
15Methods for Complex or Quickly Needed Systems
- Prototyping
- Rapid Application Development (RAD)
- Object-Oriented Development (OOD)
- End-User Development (EUD)
16Prototyping
- The prototyping approach to systems development
is, in many ways, the very opposite of an
old-style SDLC. The focus of prototyping is to
develop something quickly from the users initial
set of requirements. Then refine and extend it
based on the users requirements, which are
identified by using the prototype.
17More on Prototyping
- May use a 4GL to prototype
- Best when user requirements are not well-defined
- Helps developers get the user interface right
- Finalized code is then written in a 3GL--C, C,
etc. - Also known as EVOLUTIONARY development
18Rapid Application Development
- Rapid Application Development (RAD)
methodologies and tools have capabilities to meet
the demands of the new environment.
19Components and Capabilities of RAD
- Uses a 4GL--Visual Basic, PowerBuilder, Delphi
- Uses a client-server architecture
- GUI development environment
- the ability to drag-and -drop components into an
application - Reusable components
- Code generator
- Programming language
20Object-Oriented Development
- Encapsulation
- Inheritance
- Plug-and-play landscape
- Polymorphism--the ability to send the same
message to several different receivers and have
the message trigger the correct service
21Object-Oriented Development
- Procedures (functions, subroutines) are called
methods - Generic objects are called classes
- Specific objects are called instances
22Object-Oriented DevelopmentBenefits
- Reduces complexity of systems development
- Systems are quicker and easier to build and
maintain - Improves productivity
- Objects may be reused
23Object-Oriented DevelopmentBenefits
- Systems are more flexible
- Allows analysis to think in real world terms
- Ideal for Web development
24End-User DevelopmentTrends
- END-USERS ARE DOING MORE SOFTWARE DEVELOPMENT
- Increasingly powerful desktop hardware
- Declining hardware costs
- Increasingly diverse software capabilities
- Increasingly computer-literate population
- Backlog of centralized IS projects (36 or more
months)
25More End-User Development(EUD) Trends
- Development speed
- Business orientation
- Small applications
- Control
- Apparent cost savings
26(No Transcript)
27EUD Problems
- Additional spending
- Hardware
- Software
- Training
- Support
- Neglecting other duties
28More EUD Problems
- Limited managerial technical skills
- Documentation
- Security
29EUD Solutions
- Auditing EUD programs
- Dividing computing responsibilities
30Third Party Software
- Application software packages
- Outsourcing
- Enterprise software
- SAP, Computer Associates, Oracle,
31Who is the largest software company?
- IBM?
- Microsoft?
- SAP?
- Oracle?
- Computer Associates?
- Novell?
- You will have to know for the exam
32Internet Development
- Web pages are primarily coded in HTML
- Java scripts are used to produce the animation
boxes
33Development Tools
- Database creation tools
- 4GLs
- CASE tools--broadest support for the SDLC (the
systems development process) - Computer-Aided Software Engineering (Sterlings
COOL GEN series) - Object-oriented tools like FORTE, Optima
- Testing tools
- Documentation tools
34Acquiring New Systems--Outline
- Desirable outcomes and implementation issues
- Managerial considerations
35Desirable Outcomes and Implementation Issues
- On-time
- On-budget
- Full functionality
- User acceptance
- Favorable costs-to-benefits ratio
36More Desirable Outcomes and Implementation Issues
- Low maintenance
- Scalability
- Integration with other systems
- Minimal negative cross impacts
- Reusability
37Capability Maturity Model
- Developed by the SEI at Carnegie Mellon
- A way to assess the maturity of any software
process, such as development - Initial
- Repeatable
- Defined
- Managed
- Optimizing
38Management Considerations
- Traditional SDLC methodology
- Prototyping
- Rapid Application Development (RAD)
- Object-Oriented Development (OOD)
- End-User Development (EUD)
- Purchasing or outsourcing
39System Development Issues
- Internet and intranet applications
- JAVA
- CASE tools
- IS-9000
- Project planning
40Managerial Issues
- Importance
- Building inter-organizational and international
information systems - Ethical and legal issues
- User involvement
- Traditional approaches vs. prototyping
41Managerial Issues
- Tool use by developers
- Quality assurance vs. schedules
- Behavior problems
- Perpetual development