Tải bản đầy đủ (.pdf) (58 trang)

Lecture Business management information system - Lecture 21: Technologies for developing systems

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.35 MB, 58 trang )

Technologies for Developing
Systems
Lecture 21


Technologies for Developing Systems
n

Technologies for developing systems reviews the
evolution of system development to provide an
understanding of the underlying principles of building
applications

n

It discusses:
¨ Underlying technologies
¨ Development methodologies, and
¨ Internet-based systems

n

Case examples include Du Pont Cable Management
Services, MGM, Colgate-Palmolive, a
telecommunications firm, Hong Kong Exchanges and
Clearing and Bekins, with a discussion case on
ExxonMobil


Today’s Lecture
n



Introduction

n

Foundations of Systems Development
¨ Structured Development
¨ Fourth-Generation Languages
¨ Software Prototyping
¨ Computer-Aided Software Engineering (CASE)
¨ Object-Oriented Development
¨ Client-Server Computing


Today’s Lecture..
n

System Integration
¨ ERP Systems
¨ Middleware


Introduction
Developing new systems = difficult job “if anything can go wrong, it will!”
though there is progress in improving the process of
buildings systems –
n

¨ 1970s:


system development life cycle

¨ 1980s:

friendly languages and automation of parts of

development such as code generation
¨ 1990s:
n

reliance increased on packages

Developer productivity &

maintenance


Introduction cont.
n

Business process reengineering movement = growth on
integrated enterprise systems & adoption of enterprise
resource planning systems (ERP)

n

Late 1990s; sudden emergence of e-business and Internet
based systems

n


2000s - Internet brought need for faster systems
development and integrated enterprise systems,
¨ Hence new tools for rapid development became
available –
n Relying on reusable components & open systems
architecture


Introduction cont.
n
n
n

n

These days, virtually every application is a network
application, since the network is becoming the system
Web-based applications were the first generation of
Internet-centric computing
The new field, “Web Services” (or whatever people are
calling it), is touted as the second
In addition, the increasing interconnectedness of supply
chains is leading companies to build inter-organizational
systems
¨ Far more complex undertaking than any singlecompany systems


Foundations of Systems Development
n

n
n

In the early years, systems development was considered
a ‘craft’
Then = Discipline through structured development
Figure 9-1 is the classic system development life cycle
(waterfall approach)
¨ Much ‘touted’ but rarely (purely) used
¨ Developers really always followed the spiral approach
as in Figure 9-2




Foundations of Systems Development
cont.
n

The Traditional Application Development Approach
(characteristics):
1. Hand coding in third generation language, e.g.
COBOL
2. “Structured Programming” development
methodology
3. Automated Project management system
4. A database management system


Foundations of Systems Development

cont.
5.

A mix of online and batch applications in the same
system

6.

Development of mostly mainframe applications

7.

Programming by professional programmers only

8.

Various automated, but not well integrated s/w tools

9.

A well-defined sign-off process for system delivery

10. User participation mainly in require definition and
installation phases


System Development A Quest!


Foundations of Systems Development

Structured Development
n

Structured development methodologies accompanied this
system development life cycle in an attempt to manage the
complexities of systems design and development
¨ 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


Foundations of Systems Development
Structured Development
¨ More

efficient use of resources: thorough project
management approaches resulted in:
n Cost savings
n Increased productivity
n Better allocation of human resources
n Reduced the tendency for system development
project overruns
– ALL = STILL A PROBLEM!!!!


Foundations of Systems Development FourthGeneration Languages
n


Early 1980s – 4GLs and Prototyping

n

4GLs are more than just a computer language, they are
programming environments. As seen in Figure 9-3

n

1980s development – fourth generation languages
(4GLs). These allowed:
– End users to develop some programs
– Programmers to use different development method =
Prototyping



Foundations of Systems Development
Software Prototyping
n

n

A live, working system
¨ Performs actual work
¨ May become actual production system
n Or replaced by a (newly) coded one
Purpose: to test assumptions about:
¨ Users’ requirements
¨ Application design, or

¨ Program logic


Foundations of Systems Development
Software Prototyping
n
n

n

Software system created quickly: language creates code
Iterative process
¨ Each version performs function in an increasingly
efficient manner
Both 4GLs and prototyping have proven to be important
underpinnings for today’s application development world


Foundations of Systems Development
Computer-Aided Software Engineering
(CASE)
n

The advent of Computer Aided Software Engineering
(CASE) occurred to automate structured techniques
and reduce tediousness of the 1970s structured
programming and analysis techniques.
¨ Components:
n Information repository: stores and organizes all
information needed to create, modify, and

develop software system


Foundations of Systems Development
Computer-Aided Software Engineering
(CASE)
n

Front-end tools: used in all phases that lead up to
coding, (“uppercase”)

n

Back-end tools: used to automatically generate
source code (“lowercase”)

n

Development workstation: the more powerful the
better


Foundations of Systems Development
Computer-Aided Software Engineering (CASE)
cont.
n

A late ’80s use of CASE (not ‘standard’!) is Timeboxing
¨ Timeboxing: Technique that uses CASE to
guarantee delivery of a system within 120 days


n

Today, IS departments that aim for speed over
complexity are turning to a development technique
like:
¨ Rapid Application Development (RAD)


MIDAS/EEA CASE Tool


DUPONT CABLE MANAGEMENT SERVICES
Case Example: Rapid Application Development
(RAD)
n

To manage its telephones and wiring in its many
offices, DuPont needed a cable management
system

n

No packages on the market could handle its needs,
so it called on a DuPont subsidiary to use CASE
and timeboxing to build a custom system
¨ Day

One was the go-ahead



DUPONT CABLE MANAGEMENT
SERVICES
Case Example: Rapid Application
Development (RAD)

¨ Days

2-30 defined the components of the system
¨ Days 31-90 designed the specs, prototyped the
system, and refined the prototype (which became the
production system)
¨ Days 91-120 installed the system, and a second
timebox followed
n

The resulting system, which took nine months, took
others two to three years to develop in-house


×