1
|
- Chapter 9
- Information Systems Management In Practice 5E
- McNurlin & Sprague
|
2
|
- Discipline through structured development
- Figure 9-1 is the classic system development life cycle (waterfall
approach)
- The Traditional Application Development Approach (characteristics):
- Hand coding in third generation
language, e.g. COBOL
- “Structured Programming”
development methodology
- Automated Project management
system
- A database management system
|
3
|
- The Traditional Application Development Approach (characteristics);
- A mix of online and batch applications in the same system
- Development of mostly mainframe applications
- Programming by professional programmers only
- Various automated, but not well integrated s/w tools
- A well-defined sign-off process for system delivery
- User participation mainly in require definition and installation phases
|
4
|
- More discipline: established standards for process and documentation to
increase productivity and developers’ ability to deal with complexity
- Higher reliability and fewer errors: to catch errors as early as
possible through inspection
- More efficient use of resources: thorough project management approaches
resulted in cost savings, increased productivity, and better allocation
of human resources; reduced the tendency for system development project
overruns
|
5
|
- Field turns towards ease of use - make development of small systems
possible
- Features and functions of 4GLs:
- Database management system: The heart of a 4GL provides data management
and control
- Data dictionary: The repository for data definitions
- Nonprocedural language: Permits people to write programs using
sequences of commands in the order they think rather than the order the
computer requires
|
6
|
- Interactive query facilities: Permits the retrieval of adhoc
information using dialogues and menus
- Report generator: A flexible query facility used directly by end users
to retrieve information and generate reports in diverse formats
- Selection and sorting: The ability to select data records using Boolean
logic, to extract desired information from those records, and to sort
the information as desired
|
7
|
- Screen formatter: A facility to easily develop screen interactively
- Word processor or text editor: Ideally, a comprehensive word processor
with a full screen editor and mail-merge
- Graphics: Standard routines for creating bar charts, histogram, scatter
diagrams, etc.
- Library of Macros: For storing sequence of commands
- Programming Interface: Linkage to programming languages, to handle
complex conditional logic
|
8
|
- Reusable code: A facility for storing and retrieving prewritten program
modules for insertion into other programs to improve productivity
- Software development library: Tools for rapid system development
- Backup and recovery: A facility for automatic storage backup, restart,
and recovery
- Security and privacy safeguards: Password protect, data encryption, and
data access controls
- Links to other DBMS: Links to enable transparent data transfer between
database systems
|
9
|
- A live,working system. Performs actual work and may become actual
production system, or replaced by a coded one
- Purpose: to test assumptions about user’s requirements, application
design, or program logic
- Software system created quickly: language creates code
- Iterative process, each version performs function in an increasingly
efficient manner
|
10
|
- Used Mapper to create an operational system in a 4GL, unusual at the
time. Used prototyping and productivity improved 8 times vs COBOL.
- Management decided to teach operational railroad employees to program,
rather than teach programmers the intricacies of railroad operations.
Operational systems are more hardware intensive, support costs are half,
but complaints to IS department nonexistent
- Goal: create generic database that remains stable and used through the
company. Mapper DB huge, with many small databases.
|
11
|
- Components
- Information repository: stores and organizes all information needed to
create, modify, and develop software system
- Front-end tools: used in all phases that lead up to coding
- Back-end tools: used to automatically generate source code
- Development workstation: the more powerful the better
|
12
|
- Software development and project management methodology
- Timeboxing: Technique that uses CASE to guarantee delivery of a system
within 120 days
- Rapid Application Development (RAD)
|
13
|
- System was needed to maintain inventory of every wire, telephone,
modem, wiring closet connection, etc. No software package could handle
the scale/workload.
- Custom-built software flexible to handle company expanding telecom
facilities.
- DuPont IEA: 4 phases to implement project (IEA and customer):
- 1: Go ahead - day 1, customer agrees to participate
- 2: System definition - days 2 to 30:$ to implement
- 3: ”Timebox” - 90 days, create design specs and prototypes
- 4: Installation - Day 120, customer 90 days to verify system
|
14
|
- View CASE as a strategic technology
- To build complex mission-critical systems
- To cut development time
- To change systems quickly
- To solve development backlog-reuse development components
- Treat CASE as a strategic technology-IS project
- Create a technical support group
- Do not wait for the perfect tools - CASE products will evolve.
|
15
|
- Client-Server systems
- Web-based (or network-centric) development
- Integration of hardware and software (off-the-shelf)
|
16
|
- Far more flexibility than mainframe-based systems
- desktop: graphics, animation, video
- servers: production updating
|
17
|
- Previously had over 26 disparate systems on PCs
- C-S could empower 20 worldwide film rights salespeople
- Equipped with SQL DB on laptop and CD-ROM with video clips, license
details are transmitted directly to headquarters
- Architecture - three levels:
- AS/400 - central processor for database, transaction-based licensing
software
- H-P 9000 server, contains data and processing, Unix front-end +
Powerbuilder
- Client machines - local processing, DB, and presentation (laptops and
workstations); daily upload
|
18
|
- Database Management Systems: allow applications to share data stored in
a single or distributed database
- Enterprise Resource Planning (ERP) Systems: all applications come from a
single vendor and are specifically designed to communicate with each
other
- Middleware: applications communicate with each other through a
third-party translation software - see Figure 9-4
|
19
|
- The Internet is now a common medium for conducting business.
- Internet-based systems must be
scalable, reliable, and integrated both internally and externally with
systems of customers or business partners.
|
20
|
- The application server has grown into a framework for developing
Internet-based applications.
- Application server categories:
- Business Logic Processing: the
application server stores and runs business logic components for
applications
- Automation of Low-Level Core
Processes: The application server can generate networking and
communication code, and code for a wide range of low-level functions
|
21
|
- Application server categories:
- Middleware: the application
server becomes the back-end link to legacy systems
- Application Development: the
application server is delivering many of the capabilities provided by
integrated development environment (IDE)
- Prebuilt Components: inclusion of
pre-built components (tag libraries, Java Beans) in application servers
by vendors
|
22
|
- Java has been in many cases the starting point for the development of
Internet-based systems.
- Major components in Java
server-side platform
- Enterprise Java Beans (EJB)
- Java 2 Enterprise Edition (J2EE)
- Microsoft components
- Component Object Model (COM)
- Distributed Component Object Model (DCOM)
|
23
|
- ASPs are companies that rent software applications over the Internet.
- Advantages: applications running in a short time and little initial
investment
- Disadvantages: negotiating service level agreements and support during
downtime
- Types of ASPs (see Figure 9-6)
- Enterprise
- General Business
- Specialist
- Vertical
|
24
|
- Keys to project management success:
- Establish the ground rules:
Define the technical and architectural specifications for the systems
- Adhere to industry standards
- Use an open architecture
- Web-enable the system
- Power with subsystems
- Discipline, planning,
documentation, and management
|
25
|
- Obtain and document (the “final”)
user requirements
- Obtain tenders from the
appropriate potential vendors
- Working with suppliers
- Convert existing data
- Moving forward after
implementation
|
26
|
- Traditional approach from the 1960s evolved to give more discipline,
control, and efficiency. Moved programming from an “art” to a “craft.”
Problems: development times, low user involvement and flexibility
- 1970s and 1980s: data-driven development, stressed improving early
phases in development; 4GL and software prototyping permitted more rapid
development; CASE and object oriented (software re-use)
- 1990s client-server and Web-based development, integration of components
and packages
|