developing information systems chapter 11. methodology - case l methodology - way of working decided...

25
Developing Information Systems Chapter 11

Upload: elle-legate

Post on 15-Dec-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

Developing Information Systems

Chapter 11

Methodology - CASE

Methodology

- way of working decided on within a company

- method + techniques

- follow-up by project leader

CASE computer assisted software engineering

- software package based on repository

- upper-case + lower case

System Development Life cycles

Waterfall model

projectdefinition

system study

design

programming

Installation

Post Imple-mentation

Project proposal report

System proposal report

design specifications

program specifications

code

system performance tests

audit , feed-back

Waterfall modelSpiral modelWhirlpool modelRugby model

- intermediate reports

- go/nogo intervals

Boehm’s Spiral Model

prototype 1prototype 2

operationalprototype

RiskAnalysis

RiskAnalysis

RiskAnalysis

determine objectives,alternativesconstraints

evaluate alternativesidentify , resolve risks

simulationmodels Benchmarksrequirements plan

life cycle plan concept ofoperation

Software design

Designvalidation and verification

integrationtests and plan

detailed design

coding

integration tests

implementation

progressthroughsteps

Plannext phases

Prototype based

Whirlpool model

projectdefinition

system study

design

programming

Installation

Post Imple-mentation

Project proposal report

Functional specifications

Feasibility report

design specifications

program specifications

code

system performance tests

audit , feed-back

After each phase a quick review of the previous phases is made

OO-life cycle

With the increasing complexity of the systems,

the waterfall model suffers from two illusions:

The analyst knows everything and understands the problem completely before implementation starts

The users read the system analysis report and approve it

OMG-model (Object Management Group )

Facts: System requirements are not fully known at the startknowledge of the system grows during development

better develop a system incrementallystart with some core functions

object modelling

analysis

design

construction

fullsystemdefinition

coordination and reuse

OMG Project Management

Iterative styledevelop a series of solutions to a problem ,

each of them closer to satisfying the requirements

( also called : evolutionary development )

Incremental styleBuilds system functionality a little at a time.

The results are not entire solutions.

Matthew Pittman proposes iterative analysis and design combined with incremental development

Problem is managing the reuse (by design , not by accident)

How can such a project be estimated , tracked , controlled

The waterfall model

Waterfall model

projectdefinition

system study

design

programming

Installation

Post Imple-mentation

Project proposal report

System proposal report

design specifications

program specifications

code

system performance tests

audit , feed-back

Waterfall modelSpiral modelWhirlpool modelRugby model

- intermediate reports

- go/nogo intervals

Project definition

What do we want to accomplish ?

- solve a new problem

- incorporate new requirements

- improve existing system

Is a new system the best solution ?

Who will be involved ?

Organizational problem

System study : functional specs

Objective: What is the problem ?

Responsibility: The user

Execution: Top-down technique

1. Activities: just a few sentences

2. Logical operations ( processes): for each activity

3. Details and definitions: rules, actions, controls , forms

4. Detail information:

object, units, begin and end, classes, names

System study : functional specs 2

The problem definition report includes:

For the input:

For the output:

Furthermore:

. form

. point of time and frequency

. origin

. responsibility

. type and layout

. point of time and frequency

. destination

. usage

. reasons for realization

. financial advantages

. constraints and borders of the system

System study : The feasibility study

Responsibility from this phase on in the ICT-department

. study of the existing system

. borders of the new system

. links with other systems

. study of different solutions

. division in subsystems

. applicability of packages

. estimation of personnel requirements

. cost-benefit analysis

The report allows the steering committee to: - fix timings - final decision

Design : general

What must be done to solve the problem? data flow diagrams / use cases inventory of the data elements data dictionary logical model of the system ( data analysis , UML) major algorithms

compose the working groups planning per department

Design : Detailed

- interfaces with other systems

- controls and checking

- privacy and security aspects

- hardware specifications

- job flow diagrams

- Physical database design

- high-level program design

Detailed system and design specification

Programming and Implementation

Program designdiagramscode tests

documentation data conversion procedure development user training

- Program specifications- Code

- Program specifications- Code

- User documentation

- Operations documentation

- User documentation

- Operations documentation

Installation

Installation of the hardware Install security procedures Tests in operational environment Training operations department Take-over in user department and IT-

department Operational

Post-implementation

AUDIT

- compare actual system with projected budget and timing

- evaluate actual operation cost

- evaluate user satisfaction

- evaluate security

MAINTENANCE

- establish hardware maintenance procedures

- test security plan

- establish change management procedures

Prototyping

Alternative system analysis and building technique

Advantages better interaction with user and higher involvement the technique invokes more requirements additional system life cycle

Disadvantages expensive tools ( 4GL ) user must well understand the aim of the prototype more skills required from analysts and programmers documentation often neglected

Software packages

. Where functions are common to many companies

. Where in-house data processing resources are in short

Advantages:

> development bottleneck can be avoided

> experience and knowledge are bought with the programs

> vendors supply tools and assistance

> mostly better documented

Disadvantages:

> company reorganization needed , other working methods

>conversion and customization effort needed

DFD - Example

Client Publisher

Books Publisher

clients Pending orders publisherorders

AC receivable AC payable

controlorders

Createpublisher

orders

AssembleClientorders

Deliveriesagainstpendingorders

controldeliveries

Paymentagainst invoice

Create invoice

CreatePublisher

order

controlinvoice

OrderValid

orders assembledorders

publisherorders

delivery

Client invoicer

paymentindividual

orderstitels

quantities

Publisher payments

invoicecopy

delivery

Consignmentnote

controlcopy

Use Case Diagrams

Trading Mgr

Trader

Accountingsystem

SalespersonCapture dealLimits

Exceeded

Capture Deal

Price Deal

Analyze Risk

Set Limits

Valuation

UpdateAccounts

Actor

Use Case

“uses”

“uses”

Example :

“extends”

Class Diagram:Typical example

Order

dateReceivedIs prepaidnumber:stringprice: Money

Dispatch( )Close( )

Customer

NameAddress

CreditRating : string

PersonalCustomer

CreditCard#

CorporateCustomer

contactNamecreditRatingcreditLimit

Remind ( )billForMonth

Order Line

Quantity:intPrice:MoneyIsSatisfied

Employee

Product

* 1

Multiplicity mandatory

Association

Generalization

Class

Constraint1

(If Order.customer.creditRatingis “poor” then Order.isPrepaidmust be true)

*Lineitems

RoleName

Multiplicity:many-valued

0..1 *

Multiplicity:optional

* 1

Salesrep.

{creditRating() ==“poor”}