+ All Categories
Home > Documents > Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems...

Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems...

Date post: 20-Dec-2015
Category:
View: 216 times
Download: 1 times
Share this document with a friend
51
www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design
Transcript
Page 1: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.monash.edu.au

Lectures 9 and 10

Alternative Development Strategies

IMS1002 /CSE1205Systems Analysis and Design

Page 2: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

2

Lecture Objectives

• At the completion of this topic, you should

– be aware of some alternative approaches to information systems development

– be aware of the usefulness and limitations of some of these alternatives

Page 3: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

3

Systems Development Strategies

• Traditional SDLC• Prototyping• Joint Application Development (JAD)• Rapid Application Development (RAD)• Application packages• Enhancing existing systems

Page 4: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

4

Systems Development Concepts

• Method– a prescribed set of tasks that uses specific techniques and

tools to complete a systems development activity

• Technique– a way of doing a particular task in the systems

development process

• Tool– automated tools to help systems development

Page 5: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

5

• Methodology– a collection of procedures, techniques, tools

and documentation aids which assist systems developers to implement information systems

– consists of phases which consist of sub-phases

– helps developers plan, manage, control and evaluate information systems projects

Avison and Fitzgerald (1995)

Systems Development Concepts

Page 6: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

6

Traditional SDLC

• Formalised method for building information systems (the oldest one - early 1970s)

• The "waterfall" model :

> feasibility study

> system investigation

> systems analysis

> systems design

> implementation

> review and maintenance

Page 7: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

7

• Has a number of phases, each consisting of a number of sub-phases, activities

• Many variants• System is generally developed sequentially, but

some tasks in earlier phases may be revisited, and some tasks may be done in parallel

• Formal division of labour between users and IS staff and amongst IS staff

• Formal sign-offs required at the completion of each major stage

Traditional SDLC

Page 8: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

8

• Useful for– providing a base guideline for systems development

which can be modified to suit specific requirements– building large transaction processing systems (TPS)

and management information systems (MIS) where requirements are highly structured and well defined

– building complex systems which need rigorous and formal requirements analysis, predefined specs, and tight controls over the systems building process

Traditional SDLC

Page 9: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

9

• Limitations

– resource intensive> takes time to gather information and prepare

detailed specifications and sign-off documents> could take years to develop a system -

requirements may change before the system is operational

– inflexible and inhibits change> time and cost required to repeat activities

encourages freezing of specifications early in development .. locks users into something that may no longer be appropriate

Traditional SDLC

Page 10: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

10

• Limitations– hard to visualise final system

> users sign off specification documents without fully understanding their contents or implications

– ill-suited to decision-oriented applications> decision-making is often unstructured .. there are no

well-defined models or procedures> being forced to develop formal specifications can be

very inhibiting

Traditional SDLC

Page 11: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

11

• Limitations– not well suited to the small desktop systems

and web-based applications that will predominate in the future

– not well suited to short development life cycles

– does not encourage user participation

– management and strategic needs ignored

– focus on technical aspects

Traditional SDLC

Page 12: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

12

Prototyping

• Prototype– a working model of some aspect(s) of an

information system

• Prototyping– an iterative process of quickly building an

experimental system, for demonstration and evaluation so that users can dynamically determine their information requirements and explore and test the design of the system

Page 13: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

13

• Can be used in various phases of the SDLC– Initiation - to test the feasibility of a particular

technology that might be applied for an IS

– Analysis - to discover users’ requirements by ‘painting’ screens and reports to solicit feedback

– Design - to simulate the ‘look and feel’ of the system and evaluate how easy it is to use and learn

– Implementation - prototype evolves directly into the production system, to train users

Prototyping

Page 14: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

14

• A prototype is designed with an expectation of change - expect to get it wrong the first time!

• Need appropriate technology

• Types of prototypes>features eg external design mock-up>throw-away>evolutionary

Prototyping

Page 15: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

15

• Useful– when there is uncertainty about requirements or

design solutions> can capture requirements in concrete, rather than

verbal or abstract form> users are more likely to be able to state their

detailed requirements when they see and use a prototype

> users are more likely to get what they want

Prototyping

Page 16: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

16

• Useful– when there are several stakeholders

> convenient display method for multiple parties

– because it encourages user participation> user can relay feedback immediately> changes can be made interactively

– because it is easier to identify behavioural issues when users are using the prototype

> the designer can interactively accommodate the way the user ‘uses’ the interface

Prototyping

Page 17: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

17

• Limitations– tends to skip through analysis and design

phases too quickly --> lack of thorough understanding of the problems

> a tendency to avoid creating formal documentation of system requirements which can then make the system more difficult to develop into a production system

– can discourage consideration of a wide range on alternative design options .. tendency to go with the first one that the user likes

Prototyping

Page 18: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

18

• Limitations– often lacks flexibility, technical efficiency and

maintainability because of hasty construction– not suitable for large applications which have

large amounts of data and multiple users - hard to control

– often built as stand-alone systems, thus ignoring issues of data sharing and interactions with other existing systems

Prototyping

Page 19: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

19

• Limitations– checks in the SDLC are bypassed so tendency

to gloss over essential tasks eg. feasibility, standardisation, documentation, testing, security, etc..

– can become too specific to the user representative and difficult to adapt to other potential users

Prototyping

Page 20: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

20

Joint Application Development (JAD)

• Is actually analysis and design– Originated in late 1970s at IBM

• Brings together key users, managers, systems analysts in a group interview with a specific structure of roles and agenda

• Purpose– collect key system requirements

– develop system design

Page 21: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

21

• Group meeting– formal agenda

– avoid distractions

– identify areas of agreement and conflict

– resolve conflicts during the period of sessions

– focus on rapid delivery of analysis and design specifications

Joint Application Development (JAD)

Page 22: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

22

• JAD participants– facilitator - organises and runs the sessions

– scribe(s) - takes notes on PC, CASE tool etc

– users - understand the system requirements

– managers - organisational overview

– systems analysts - technical knowledge, learn about the system

– sponsor - senior executive who commits and funds the process

Joint Application Development (JAD)

Page 23: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

23

• JAD sessions– from one to five days

– structured meeting room (war room) with white boards, CASE tools etc

– located away from users’ workplace

– outcome is documents detailing the system - workings of/requirements for the system, system design specifications, prototypes

Joint Application Development (JAD)

Page 24: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

24

• Preparing for JAD sessions– JAD leader prepares and distributes agenda

and documentation about scope and objectives

– Agenda specifies issues to be discussed and time allocated to each

– Ground rules for running the sessions are made clear

– Ensure users who attend are knowledgeable about their business area

Joint Application Development (JAD)

Page 25: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

25

• Conducting JAD sessions:– Avoid deviating from the agenda

– Keep to schedule (time for topics)

– Ensure scribe takes adequate notes> use formal minutes

– Avoid using technical jargon> involve all participants

– Use conflict resolution strategies

Joint Application Development (JAD)

Page 26: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

26

• Conducting JAD sessions:– Allow ample breaks

> keep everyone at peak efficiency

– Encourage group consensus

– Encourage participation vs individuals dominating

– Ensure ground rules are adhered to

Joint Application Development (JAD)

Page 27: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

27

• Benefits– reduced time to move requirements/design

forward (group vs one-on-one, details worked on between meetings)

– key people work together to make important decisions

– commitment is focused and intensive, not dissipated over time

– conflicts and differences can be understood and resolved

Joint Application Development (JAD)

Page 28: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

28

• Rapid Application Development (RAD)

– A systems development methodology created to radically decrease the time needed to design and implement information systems

– James Martin (1991) - RAD methodology

Rapid Application Development (RAD)

Page 29: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

29

• RAD claims to offer– a development lifecycle for much faster

systems development

– better and cheaper systems

– more rapid deployment of systems as developers and users work together in real time

Rapid Application Development (RAD)

Page 30: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

30

• RAD relies on– extensive user involvement

– JAD sessions

– Prototyping

– I-CASE tools (integrated CASE tools)

– Code generators

Rapid Application Development (RAD)

Page 31: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

31

• Evolution of RAD– Pressures for businesses to speed up and compete

in a changing, global environment

– Shorter development lifecycles

– Dissatisfaction with IT department

– Diffusion of high-powered prototyping and CASE tools

> Why wait 2 or 3 years to develop systems likely to be obsolete upon completion?

Rapid Application Development (RAD)

Page 32: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

32

• James Martin’s four pillars of RAD

>Tools>People>Methodology>Management

Rapid Application Development (RAD)

Page 33: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

33

• Tools– I-CASE tools with prototyping and code generation

facilities

– Visual development environments

• People– Manager and user participation in JAD type workshops

– Developer roles - workshop leader, project leader, scribe, repository manager, construction or SWAT (Skilled With Advanced Tools) team

Rapid Application Development (RAD)

Page 34: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

34

• Methodology– to guide and control the use of RAD techniques

– Should be automated for ease of use - adaptability and flexibility

• Management– Executive sponsor

– Facilities and support for the RAD team

Rapid Application Development (RAD)

Page 35: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

35

• RAD lifecycle– Is evolutionary

– Uses “timeboxing”

– Avoids “feature creep”

– Avoids requirements “gold plating”

Rapid Application Development (RAD)

Page 36: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

36

• RAD lifecycle– Requirements planning phase (JRP)

– User design phase (JAD)

– Construction phase

– Cutover phase

Rapid Application Development (RAD)

Page 37: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

37

• Martin’s (1991) RAD lifecycle–Requirements planning phase

>managers, executives, key users determine requirements in terms of business areas and business problems

>JRP workshops to agree requirements, overall planning

Rapid Application Development (RAD)

Page 38: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

38

• Martin’s (1991) RAD lifecycle–User design phase

>end users and IS personnel use I-CASE for rapid prototyping of system design

>JAD sessions to develop basis for physical design

>users sign off on CASE-based design (no paper-based spec)

Rapid Application Development (RAD)

Page 39: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

39

• Martin’s (1991) RAD lifecycle– Construction phase

> IS personnel now generate code using I-CASE tool

> end users validate screens, design, etc.

– Cutover phase> delivery of new system to users: testing, training,

implementation

> can be combined with construction in small systems

Rapid Application Development (RAD)

Page 40: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

40

• Uses timebox approach:– system to be developed divided into components that

can be developed separately

– the easiest and most important 75% of the system functionality produced in first timebox (90 day cycle)

– forces users to focus on the necessary and most well-defined aspects

– users experience this component first and other component requirements may then change

– functionality is trimmed: “gold plating” is avoided

– avoids “feature creep” - more and more requirements creep in during development than originally specified

Rapid Application Development (RAD)

Page 41: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

41

• Timeboxing vs traditional approach– Traditional approach - every possible

requirement is implemented together leading to increased complexity and long delays

– Martin claims RAD can produce a system in 6 months that would take 24 months using traditional development methods

– Small development teams are essential for RAD to work

Rapid Application Development (RAD)

Page 42: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

42

• Advantages– quick development

– cost savings

– higher quality/improved performance as easier and most important functions targeted first

– avoids feature creep

– aligned with business changes

Rapid Application Development (RAD)

Page 43: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

43

• Disadvantages

> detailed business models/understanding neglected --> inconsistencies, misunderstandings

> programming standards, scalability, system administration issues neglected e.g. database maintenance, database reorganisation, backup/recovery, distribution of system updates, etc

Rapid Application Development (RAD)

Page 44: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

44

Application Packages

• Purchasing or leasing set of pre-written application software programs that are commercially available

• May range from simple PC systems to complex mainframe or client-server systems

Page 45: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

45

• Useful– when you need an information system for a common

company function eg. payroll

– when information systems resources for in-house development are in short supply

– when the application software package is more cost effective than in-house development

– because the most of the design and implementation tasks are done - significant time saving

– because the system and documentation are usually maintained by the vendor

Application Packages

Page 46: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

46

• Useful– because the design spec is fixed - no endless

reworking - users have to accept it politically because:

> external work is often perceived as being superior to an in-house effort - easier to get new systems into the company

> easier to get management support because of fixed costs

> problems can be attributed to the package rather than internal sources - ends endless source of internal conflict

Application Packages

Page 47: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

47

• Limitations– very rare to find a package that can do

everything well that a user wants

– often need to develop specialised package additions because multi-purpose packages do not handle certain functions well

– conversion and integration costs can sometimes be so significant as to render the project infeasible

Application Packages

Page 48: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

48

• Limitations– some vendors refuse to support packages

which have been customised by the users - and most packages require some customisation

– customisation can be so extensive that it would have been cheaper to develop the system in-house

Application Packages

Page 49: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

49

Enhancing Existing Systems

• Can use any development approach - most organisations have a maintenance - development cycle

• The main issues are:– urgency

– integration

– updating documentation

• Tendency to jump in and code, with little thought to surrounding development tasks

Page 50: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

50

Alternative Development Approaches

• So… as developers we must realise

– There are many different ways of developing information systems

– The difficulty is finding the right blend of approaches and techniques to suit the organisation’s business, social and political systems development environment

– There generally is a methodology that is ‘more appropriate’

Page 51: Www.monash.edu.au Lectures 9 and 10 Alternative Development Strategies IMS1002 /CSE1205 Systems Analysis and Design.

www.sims.monash.edu.au

51

Hoffer, J.A., George, J.F. and Valacich, J.S., (1999) 2nd ed., Modern Systems Analysis and Design, Benjamin/Cummings, Massachusetts.Chapters 7, 13

Whitten, J.L. & Bentley, L.D. and Dittman, K.C., (1998) 5th ed., Systems Analysis and Design Methods, McGraw-Hill Irwin, Boston MA.Chapter 10

AVISON, D.E. & FITZGERALD, G. (1995). Information Systems Development: Methodologies, Techniques and Tools. (2nd ed), McGraw-Hill, London.Chapters 1, 6

References


Recommended