Presentation is loading. Please wait.

Presentation is loading. Please wait.

ZEIT2301- Design of Information Systems School of Engineering and Information Technology Dr Kathryn Merrick.

Similar presentations

Presentation on theme: "ZEIT2301- Design of Information Systems School of Engineering and Information Technology Dr Kathryn Merrick."— Presentation transcript:

1 ZEIT2301- Design of Information Systems School of Engineering and Information Technology UNSW@ADFA Dr Kathryn Merrick

2 Week 01: Intro Topics: Review of the systems development lifecycle (SDLC) and its phases Introduction to the database development lifecycle (DBLC) and phases References: Dennis, A., Wixom, B.and Tegarden, D., Systems Analysis and Design with UML Version 2.0: An Object-Oriented Approach, 3rd edition, 2009, John Wiley. (Chapter 1) Connolly, T., Begg, C., Database Solutions: A step-by-step guide to building databases, Second Edition, Pearson, 2004. (Chapter 4)

3 Systems Development Lifecycle The SDLC consists of phases/activities traditionally used to conceive, develop and maintain information systems. Different variants of the lifecycle exist. The textbook identifies four phases Planning, Analysis, Design, Implementation

4 SDLC Phases 1. Planning (actually initiation, then planning) Why build the system? 2. Analysis Who, what, when, where of the system? 3. Design How will the system work? 4. Implementation System delivery

5 Identifying business value Does the project align with key business objectives? Evaluate feasibility Technical, economic, organizational Develop work plan Staff the project Control and direct project 1. Planning

6 Requirements Gathering/Elicitation Gather the requirements (using various techniques, e.g. interviews, document analysis, etc) Requirements Modelling Develop a set of analysis models that represent both the data and processes necessary to support the business Requirements Specification Document the requirements in a system/software requirements specification document 2. Analysis

7 Develop a design strategy Design architecture and interfaces Hardware, software, networks Interface design Forms, reports, web pages Database and file design Program design 3. Design

8 Construction System is built (or acquired) System testing Installation Implement a training plan for the users New system becomes operational Operation & Maintenance Establish a support plan 4. Implementation

9 Processes and Deliverables ProcessProduct Planning Analysis Design Implementation Project Proposal and Plan Requirements Specification Design Specification Code User Manual

10 Database Development Lifecycle 1. Planning 2. Analysis 3. Design 4. DBMS Selection 5. Implementation 6. Maintenance

11 1. Planning Management activities that permit the stages of the database system development lifecycle to be realised efficiently and effectively Creation of a mission statement and objectives Development of standards for data collection and format

12 2. Analysis Collecting and analysing information about the organisation to be supported by the new database system Using this information to identify the requirements of the new database A preliminary part of database design

13 3. Database Design Creating a design that will support the organisation’s mission statement and objectives Other design processes: Application design Transaction design User interface design

14 Database Management Software Database Shared collection of logically related data Database Management Software (DBMS) Methods to define, retrieve update and maintain data Applications Interact with database via DBMS

15 4. DBMS Selection

16 5. Implementation Physical realisation of the database and related applications Includes data conversion and loading Testing

17 6. Maintenance Monitoring and maintaining the database system following installation

18 Systems development: Some terminology Methodology: A comprehensive approach to system development; typically includes activities, techniques, and tools Technique: a collection of guidelines that help an analyst complete an activity or task Tool: a specific device, usually software, which makes it easier to use a specific technique

19 System Development Methodologies Historically methodologies tended to be either process-centred or data- centred. More recently the object-oriented approach seeks to integrate both process and data in a single model. Large organizations may follow internal methodologies or formal standards. For a complex information system, a systematic approach is crucial. Well-known methodologies include: Waterfall development Parallel development Rapid application development Agile development

20 Categories of Methodologies Structured Design Waterfall Development Parallel Development Rapid Application Development Phased Prototyping Throwaway Prototyping Agile Development eXtreme Programming

21 “Structured” Design The advent of “Structured” design introduced formal models: Typically used one set of models to describe process (eg Data Flow Diagrams) and a separate set of models to describe data (eg Entity- relationship Diagrams) Structured development methodology involved a formal step-by-step approach Most well known methodology is the Waterfall method Moves from one phase to the next in sequence Many variants; later variants allowed for iteration where necessary

22 Structured Design 1 Waterfall Development

23 Pros and Cons of the Waterfall Method ProsCons Identifies systems requirements long before programming begins Requirements must be fully specified before programming begins Long delay before delivery of product; Highly formalized; Inflexible;

24 Structured Design 2 Parallel Development: sub-projects developed separately

25 Pros and Cons of Parallel development ProsCons Divides project into sub-projects that can be worked on in parallel thus allowing earlier delivery of the system Subsystems might not be independent; could require significant integration effort

26 Rapid Application Development Rapid Application Development (RAD) Concentrates on developing at least part of the system much earlier Involving users for feedback Use of tools to speed development

27 Rapid Application Development Key features CASE tools (Computer-Aided Software Engineering) JAD sessions (Joint Application Development) Fourth generation/visualization programming languages Code generators Eg generate code from models/diagrams

28 RAD based approaches Phased Development A series of versions; initial version meets key requirements Prototyping System prototyping Prototype evolves to become the system Throw-Away Prototyping Design prototyping Prototype is used only to help determine requirements

29 Rapid Application Development 1 Phased Development Version1, version 2, etc

30 Rapid Application Development 2 System Prototyping The prototype evolves to become the actual system

31 Rapid Application Development 3 Throwaway Prototyping The prototype is only used to help elicit requirements and thus inform system design.

32 Agile Development Agile development Drastically reduces the modelling and associated documentation phases Concentrates on programming (ie producing working code) Extreme Programming Develop code rapidly and involve users Pair programming using skilled programmers Rapid incremental development; continuous release of product to users

33 Agile Development Extreme Programming

34 Criteria for Selecting the Appropriate Methodology Clarity of user requirements Familiarity with technology System complexity System reliability Short time schedules Schedule visibility

35 Criteria for selecting a Methodology CriteriaWaterfallParallelPhasedPrototypingThrowaway Prototyping Extreme Programming Unclear user requirements Poor GoodExcellent Unfamiliar technology Poor GoodPoorExcellentPoor Complex systems Good PoorExcellentPoor Reliable systemsGood PoorExcellentGood Short time schedule PoorGoodExcellent GoodExcellent Schedule visibility Poor Excellent Good

36 Object-Oriented Analysis & Design Attempt to balance emphasis on data and process Uses Unified Modelling Language (UML) Characteristics of OOAD: Use-case Driven Architecture Centric Iterative and Incremental

37 Skills of the systems analyst Analytical systems thinking, organisational knowledge, problem identification, problem analyzing and solving Technical Computers, networks, databases, operating systems, Internet, programming languages Management Resource management, project management, risk management, change management Interpersonal Communications skills, ability to work in a team, group facilitation, managing expectations

38 The Analyst’s Approach to Problem Solving

39 Project Team Roles

40 Summary The SDLC consists of four stages: Planning, Analysis, Design, and Implementation The DBLC consists of six stages: Planning, Analysis, Design, DBMS Selection, Implementation, Maintenance System development methodologies vary The choice of an appropriate methodology depends on the characteristics of the system, the organisation and the available staff skill set.

Download ppt "ZEIT2301- Design of Information Systems School of Engineering and Information Technology Dr Kathryn Merrick."

Similar presentations

Ads by Google