Faculty of Arts Atkinson College ITEC 1010 A F 2002 Welcome Eighteenth Lecture for ITEC 1010 3.0 A...

34
Faculty of Arts Atkinson ITEC 1010 A F 2002 Welcome Eighteenth Lecture for ITEC 1010 3.0 A Professor G.E. Denzel

Transcript of Faculty of Arts Atkinson College ITEC 1010 A F 2002 Welcome Eighteenth Lecture for ITEC 1010 3.0 A...

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Welcome

Eighteenth Lecture for ITEC 1010 3.0 A

Professor G.E. Denzel

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Agenda

Continue discussion of Project Development and Systems Analysis, especially the SDLC

Review material from Lecture 7 on relational databases.

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

The Traditional SDLC(1) Systems Investigation

(2) Systems Analysis

(3) Systems Design

(4) Programming

(5) Testing

(6) Implementation

(7) Operation

(8) Maintenance

Go Back to a previous Stage or Stop

An eight-stage systems development life cycle (SDLC)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

System Investigation Feasibility study determines the probability of success of

proposed system’s development project. Includes …• Technical feasibility (will we be able to build the

system?)• Economic feasibility (how much will it cost to build

the system and how much will it benefit us?)• Behavioral feasibility (if we build the system, will it

be accepted and used?)

Phases in SDLC (1)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Systems Analysis Examines the business problem(s) that the organization

plans to solve with information systems Determines what the new system must do by examining:

• Strengths and weaknesses of the existing system

• Functions that the new systems must have to solve the business problem(s)

• User information requirements for the new system

Phases in SDLC (2)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Systems Design Describes how the system will fulfill the user

requirements Develop both logical design and physical design Output => technical design or system specification…

• system outputs, inputs, and user interfaces• hardware, software, databases, telecommunications,

personnel, and procedures• how these components are integrated

Phases in SDLC (continued)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Programming the translation of the design specifications into

computer code structured programming techniques improve the logical

flow of the program by decomposing the computer code into modules

Phases in SDLC (continued)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Figure 14.3 Flowchart diagram of a payroll application of structured programming.

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Implementation The process of converting from the old system to the

new system Four major conversion strategies

• Parallel conversion: the old and new systems operate simultaneously for a period of time

• Direct conversion: the old system is cut off and the new systems is turned on at a certain point in time

• Pilot conversion: introduces the new system in one part of the organization

• Phased conversion: introduces components of the new system in stages

Phases in SDLC (continued)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Testing Checks to see if the computer code will produce

the expected and desired results under certain conditions

Phases in SDLC (continued)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Operation the new system will operate for a period of

time, until it no longer meets its objectives

Maintenance (simultaneous with Operation) debugging the programs updating the system to accommodate changes in

business conditions adding new functionality to the system (which

loops back to the beginning of the SDLC)

SDLC Phases (cont’d)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Prototyping Starts with only a general idea of user requirements, and

develops models of the system ‘until it’s right’

Advantages: Speeds up the development approach Gives the users the opportunity to clarify their information

requirements Useful in the development of decision support systems and

executive information systems

Disadvantages: Replaces the systematic analysis and design stages of the

SDLC - quality may be sacrificed Can result in an excess of iterations

Alternatives to the SDLC

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Joint Application Design (JAD) A group-based method for collecting user requirements

and creating staged designs

Advantages: Saves time Greater support for, and acceptance of new systems Produces higher quality systems Easier implementation Lower training costs

Disadvantages: Very difficult to get all users to JAD meetings All the problems that may be caused by any group

process

Alternatives to the SDLC

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Rapid Application Development (RAD) A method that can combine JAD, prototyping, and

integrated CASE tools, to rapidly produce a high-quality system

Advantages: Active involvement of users in the development process Speeds the development process Reduces development costs Can create applications that are easier to maintain and

modify

Disadvantages: May result in systems with limited functionality and

adaptability for change

Alternatives to the SDLC

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Integrated Computer-Assisted Software Engineering (ICASE) Tools Automate many of the tasks in the SDLC

Advantages: Produces systems with a longer effective operational life Speeds up the development process and result in systems that

are more flexible and adaptable to changing business conditions

Results in excellent documentation

Disadvantages: More expensive to build and maintain initial system Requires more extensive and accurate definition of user

needs and requirements Difficult to customize and may be difficult to use with

existing systems

Alternatives to the SDLC

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Use of Computer-Aided Software Engineering (CASE) Tools

CASE tools automate tasks required in a system development effort and enforces adherence to the SDLC Upper CASE tools

• Tools that focus on activities associated with the early stages of systems development

Lower CASE tools• Tools that focus on the later implementation stage of systems

development

Integrated-CASE (I-CASE) tools• Tools that provide links between upper- and lower-CASE

packages, allowing lower-CASE packages to generate program code from upper-CASE package generated designs

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Object-Oriented Development A fundamentally different view of computer

systems Advantages:

• Reduces the complexity of systems development and leads to systems that are easier and quicker to build an maintain

• Improves programmers’ productivity and quality• More flexible• Allows systems analysts to think as users do about the

system• Ideal for developing Web applications• Depicts the system in user terms, increasing

understanding of what the new system does and how it meets its objectives

Alternatives to the SDLC

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Object-Oriented Development Disadvantages

• Runs more slowly• Need to retrain the programmers in OO

methodology

Alternatives to the SDLC

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Development Outside the IS Department

End User Development Users perform ad hoc programming to solve business

problems Factors that drive the trends toward increased end-user

computing and end-user development• More powerful, inexpensive desktop hardware• Increasingly diverse software capabilities• Increasingly computer literate population• Backlog of IS projects• Apparent cost savings

End-users (usually) don’t produce adequate documentation or perform adequate testing

Security may be breached

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

External Acquisition of Prewritten Software Factors to consider during make-or-buy decision

• On-time• On-budget• Full functionality• User acceptance• Favorable costs-to-benefits ratio• Low maintenance• Scalability• Integration with other systems• Minimal negative cross-impacts• Reusability

Development Outside the IS Department

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Application Service Providers (ASPs) Software obtained via subscription Software resides on ASP’s systems Software is accessed via Web or VPN Subscriber does not have to host software on

existing computer systems Updates and bug fixes are provided by the ASP ASP can provide help-desk support

Development Outside the IS Department

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Outsourcing Using third parties to provide some or all

functions and services of the IT department IT may not be a core competency of the firm;

better to hire outside specialists Advantages:

Outsourcer can obtain hardware capabilities less expensively due to economies of scale

Outsourcer can hire needed technical staff Outsourcer specializes in providing computer

services Ability to expense outsourcing fees provides tax

benefits

Development Outside the IS Department

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Outsourcing (continued) Disadvantages:

• Economies of scale may be of limited value• Staffing depends on outsourcers needs, not client’s• Lack of familiarity with business/industry• Contract problems• Internal cost reduction opportunities could eliminate

the advantage of outsourcers Guidelines:

• Write short-period contracts or have flexibility since business needs are dynamic

• Use of subcontractors should be controlled• Use selective outsourcing only for those functions

where it makes sense

Development Outside the IS Department

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Building Internet & Intranet Applications

Much future development will likely be Web pages due to their simplicity and ease of development

SDLC probably not followed due to simplified Web development

A Strategy for Internet/Intranet Development

Identify the objectives for organizational Web site(s) and pages

Include infrastructure requirements as well as security and legal issues in plans

Obtain/assign necessary personnel and provide oversight

Identify and prioritize potential projects

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Building Internet & Intranet Applications

JAVA - A Promising Tool Important programming language for putting

extra features into Web pages An object-oriented language designed for

implementation on networks Includes numerous security features to prevent

downloaded programs from damaging files or creating other problems on the receiving computer

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Relational Data Model

Relational data model All data elements are placed in two-dimensional

tables, called relations, that are the logical equivalent of files

Schematic

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Project Number Description Dept. Number

155 Payroll 257

498 Widgets 632

226 Sales manager 598

Dept. Number Dept. Name Manager SSN

257 Accounting 421-55-99993

632Manufacturin

g765-00-3192

598 Marketing 098-40-1370

SSN Last Name First Name Hire Date Dept. Number

005-10-6321 Johns Francine 10-7-65 257

549-77-1001 Buckley Bill 2-17-79 650

098-40-1370 Fiske Steven 1-5-85 598

Data Table 1: Project Table Data Table 2: Department Table

Data Table 3: Manager Table

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Relational Database Terminology Selecting

Data manipulation that eliminates rows according to certain criteria

Projecting Data manipulation that eliminates columns in a table

Joining Data manipulation that combines two or more tables

Linked Related tables in a relational database together

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Linking Data Tables to Answer an Inquiry

Schematic

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Project Number Description Dept. Number

155 Payroll 257

498 Widgets 632

226 Sales manager 598

Dept. Number Dept. Name Manager SSN

257 Accounting 421-55-99993

632 Manufacturing 765-00-3192

598 Marketing 098-40-1370

SIN Last Name First Name Hire Date Dept. Number

005-10-6321 Johns Francine 10-7-65 257

549-77-1001 Buckley Bill 2-17-79 650

098-40-1370 Fiske Steven 1-5-85 598

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Relational Database Terminology Relation <==> Table <==> Entity Tuple <==> Row <==> Record Attribute <==> Column <==> Field Primary Key is one or more columns whose values

together uniquely identify a row in a table Normalization is the process of making the

structure and contents of a database comply with some level of the Normal Form hierarchy (usually only the first three levels, but there are (at least) seven layers of increasing stringency.)

Faculty of ArtsAtkinson College

ITEC 1010 A F 2002

Relational Database Terminology

Why Normalization?Ensure data consistency and stabilityMinimize data redundancyEnsure consistent updatability and

maintainability of dataAvoid update/delete anomalies which

result in ambiguous data or inconsistent results