Lecture 4 System Analysis and Design Methodologies Telematics

  • Slides: 50
Download presentation
Lecture 4: System Analysis and Design Methodologies Telematics systems and their design Doc. Ing.

Lecture 4: System Analysis and Design Methodologies Telematics systems and their design Doc. Ing. Ondřej Přibyl, Ph. D. Department of applied mathematics Faculty of Transportation sciences, CTU Ondřej Přibyl L 4: SAD Methodologies page 1

Telematics systems and their design Faculty of Transportation Sciences, CTU Scope of this lecture

Telematics systems and their design Faculty of Transportation Sciences, CTU Scope of this lecture • Part I - Overview of methodologies • Part II - Recommendation to ITS Ondřej Přibyl L 4: SAD Methodologies page 2

PART I Systems Development Methodologies Ondřej Přibyl L 4: SAD Methodologies page 3

PART I Systems Development Methodologies Ondřej Přibyl L 4: SAD Methodologies page 3

Telematics systems and their design Faculty of Transportation Sciences, CTU Discussion • What does

Telematics systems and their design Faculty of Transportation Sciences, CTU Discussion • What does actually mean the term „Methodology“? Ondřej Přibyl L 4: SAD Methodologies page 4

Telematics systems and their design Faculty of Transportation Sciences, CTU • A methodology is

Telematics systems and their design Faculty of Transportation Sciences, CTU • A methodology is a formalized approach to implementing the SDLC. • The methodology will vary depending on whether the emphasis is on businesses processes or on the data that supports the business. • Remember it has nothing to do with UML! Ondřej Přibyl L 4: SAD Methodologies page 5

Overview of System Development Methodologies Ondřej Přibyl L 4: SAD Methodologies page 7

Overview of System Development Methodologies Ondřej Přibyl L 4: SAD Methodologies page 7

Category I of the System Development Methodology: Structured Design • Adopts a formal step-by-step

Category I of the System Development Methodology: Structured Design • Adopts a formal step-by-step approach to the SDLC that moves logically from one phase to the next. • Introduces the use of formal modeling or diagramming techniques to describe a system’s basic business processes and follows a basic approach of two structured design categories. Ondřej Přibyl L 4: SAD Methodologies page 8

Waterfall Development Ondřej Přibyl L 4: SAD Methodologies page 9

Waterfall Development Ondřej Přibyl L 4: SAD Methodologies page 9

Telematics systems and their design Faculty of Transportation Sciences, CTU Waterfall Development • With

Telematics systems and their design Faculty of Transportation Sciences, CTU Waterfall Development • With waterfall development- based methodologies, the analysts and users proceed sequentially from one phase to the next. Ondřej Přibyl L 4: SAD Methodologies page 10

Telematics systems and their design Faculty of Transportation Sciences, CTU Waterfall Development • Advantages:

Telematics systems and their design Faculty of Transportation Sciences, CTU Waterfall Development • Advantages: – The system requirements are identified long before programming begins. – Changes to the requirements are minimized as the project proceeds. • Disadvantages: – The design must be completely specified before programming begins. – A long time elapses between the completion of the system proposal in the analysis phase and the delivery of the system. Ondřej Přibyl L 4: SAD Methodologies page 11

Parallel Development This methodology attempts to address the long time interval between the analysis

Parallel Development This methodology attempts to address the long time interval between the analysis phase and the delivery of the system in case of a waterfall model. Ondřej Přibyl L 4: SAD Methodologies page 12

Telematics systems and their design Faculty of Transportation Sciences, CTU Parallel Development Ondřej Přibyl

Telematics systems and their design Faculty of Transportation Sciences, CTU Parallel Development Ondřej Přibyl L 4: SAD Methodologies page 13

Category II of the System Development Methodology: Rapid Application Development (RAD) This methodology breaks

Category II of the System Development Methodology: Rapid Application Development (RAD) This methodology breaks the overall system into a series of versions that are developed sequentially. Ondřej Přibyl L 4: SAD Methodologies page 14

Telematics systems and their design Faculty of Transportation Sciences, CTU Rapid Application Development (RAD)

Telematics systems and their design Faculty of Transportation Sciences, CTU Rapid Application Development (RAD) • RAD-based methodologies adjust the SDLC phases to get some part of system developed quickly and into the hands of the users. • A system development strategy that emphasizes speed of development through extensive user involvement in the rapid, iterative, and incremental construction of series of functioning prototypes of a system that eventually evolves into the final system. • One possible subtle problem (disadvantage) with RAD-based methodologies is managing user expectations. – Prototype – a small-scale, representative, or working model of the users’ requirements or a proposed design for an information system. – Time box – the imposition of a nonextendable period of time, usually 6090 days, by which the first (or next) version of a system must be delivered into operation. Ondřej Přibyl L 4: SAD Methodologies page 15

Telematics systems and their design Faculty of Transportation Sciences, CTU Rapid Application Development •

Telematics systems and their design Faculty of Transportation Sciences, CTU Rapid Application Development • focuses on building applications in a very short amount of time; traditionally with compromises in usability, features and/or execution speed. • generically describes applications that can be designed and developed within 60 -90 days. Ondřej Přibyl L 4: SAD Methodologies page 16

Phased Development Ondřej Přibyl L 4: SAD Methodologies page 18

Phased Development Ondřej Přibyl L 4: SAD Methodologies page 18

Telematics systems and their design Faculty of Transportation Sciences, CTU Phased development • The

Telematics systems and their design Faculty of Transportation Sciences, CTU Phased development • The team categorizes the requirements into a series of versions, then the most important and fundamental requirements are bundled into the first version of the system. • The analysis phase then leads into design and implementation; however, only with the set of requirements identified for version 1. • As each version is completed, the team begins work on a new version. Ondřej Přibyl L 4: SAD Methodologies page 19

Telematics systems and their design Faculty of Transportation Sciences, CTU Phased development Ondřej Přibyl

Telematics systems and their design Faculty of Transportation Sciences, CTU Phased development Ondřej Přibyl L 4: SAD Methodologies page 20

Prototyping-based Methodology A prototype is a smaller version of the system with a minimal

Prototyping-based Methodology A prototype is a smaller version of the system with a minimal amount of features. Prototyping-based methodologies perform the analysis, design and implementation phases concurrently. All three phases are performed repeatedly in a cycle until the system is completed. Ondřej Přibyl L 4: SAD Methodologies page 21

Telematics systems and their design Faculty of Transportation Sciences, CTU Prototyping-based Methodology Ondřej Přibyl

Telematics systems and their design Faculty of Transportation Sciences, CTU Prototyping-based Methodology Ondřej Přibyl L 4: SAD Methodologies page 22

Telematics systems and their design Faculty of Transportation Sciences, CTU Prototyping-based Methodology • Advantage:

Telematics systems and their design Faculty of Transportation Sciences, CTU Prototyping-based Methodology • Advantage: – Provides a system for the users to interact with, even if it is not initially ready for use. – Helps to capture real user requirements • Disadvantage: – Often the prototype undergoes such significant changes that many initial design decisions prove to be poor ones. Ondřej Přibyl L 4: SAD Methodologies page 23

Throwaway Prototyping-based Methodology Ondřej Přibyl L 4: SAD Methodologies page 24

Throwaway Prototyping-based Methodology Ondřej Přibyl L 4: SAD Methodologies page 24

Telematics systems and their design Faculty of Transportation Sciences, CTU Throwaway Prototyping-based Methodology •

Telematics systems and their design Faculty of Transportation Sciences, CTU Throwaway Prototyping-based Methodology • Throwaway prototyping methodologies are similar to prototyping based methodologies. • The main difference is that throwaway prototyping IS completed during a different point in the SDLC. • Has relatively thorough analysis phase. Ondřej Přibyl L 4: SAD Methodologies page 25

Telematics systems and their design Faculty of Transportation Sciences, CTU Throwaway Prototyping-based Methodology •

Telematics systems and their design Faculty of Transportation Sciences, CTU Throwaway Prototyping-based Methodology • Throwaway or Rapid Prototyping refers to the creation of a model that will eventually be discarded rather than becoming part of the final software. • After preliminary requirements gathering, a simple working model of the system is constructed to visually show the users what their requirements may look like when they are implemented into a finished system. • Advatages – it can be done quickly. If the users can get quick feedback on their requirements, they may be able to refine them early in the development of the software. – ability to construct interfaces that the users can test. Ondřej Přibyl L 4: SAD Methodologies page 26

Category III of the System Development Methodology: Agile Development • Focuses on streamlining the

Category III of the System Development Methodology: Agile Development • Focuses on streamlining the SDLC by eliminating much of the modeling and documentation overhead and the time spent on those tasks. • Projects emphasize simple, iterative application development. Ondřej Přibyl L 4: SAD Methodologies page 27

Telematics systems and their design Faculty of Transportation Sciences, CTU Agile Methods • Agile

Telematics systems and their design Faculty of Transportation Sciences, CTU Agile Methods • Agile methods have much in common with the Rapid Application Development • Agile methods break tasks into small increments with minimal planning and do not directly involve long-term planning. • Iterations are short time frames that typically last from one to four weeks. • Each iteration involves a cross functional team working in all functions: – planning, requirements analysis, design, coding, unit testing, and acceptance testing. • At the end of the iteration a working product is demonstrated to stakeholders. • This minimizes overall risk and allows the project to adapt to changes quickly. Ondřej Přibyl L 4: SAD Methodologies page 28

An Extreme Programming-based Methodology Ondřej Přibyl L 4: SAD Methodologies page 30

An Extreme Programming-based Methodology Ondřej Přibyl L 4: SAD Methodologies page 30

Telematics systems and their design Faculty of Transportation Sciences, CTU An Extreme Programming-based Methodology

Telematics systems and their design Faculty of Transportation Sciences, CTU An Extreme Programming-based Methodology • e. Xtreme Programming (XP) was founded on four core values: – – Communication Simplicity Feedback Courage • Key principles of XP include: – Continuous testing – Simple coding – Close interaction with the end users to build systems very quickly – Smaller development teams Ondřej Přibyl L 4: SAD Methodologies page 31

Telematics systems and their design Faculty of Transportation Sciences, CTU An Extreme Programming-based Methodology

Telematics systems and their design Faculty of Transportation Sciences, CTU An Extreme Programming-based Methodology Ondřej Přibyl L 4: SAD Methodologies page 32

Telematics systems and their design Faculty of Transportation Sciences, CTU SCRUM (Agile development) Source:

Telematics systems and their design Faculty of Transportation Sciences, CTU SCRUM (Agile development) Source: www. redletterday. ch Ondřej Přibyl 33 L 4: SAD Methodologies page 33

Telematics systems and their design Faculty of Transportation Sciences, CTU Challenges of Agile methods

Telematics systems and their design Faculty of Transportation Sciences, CTU Challenges of Agile methods • can be inefficient in large organizations and certain types of projects • Agile methods seem best for developmental and non-sequential projects • Many organizations believe that agile methodologies are too extreme and adopt a hybrid approach that mixes elements of agile and plan-driven approaches • It is all about communication! Ondřej Přibyl L 4: SAD Methodologies page 34

Selecting the Appropriate Development Methodology Ondřej Přibyl L 4: SAD Methodologies page 35

Selecting the Appropriate Development Methodology Ondřej Přibyl L 4: SAD Methodologies page 35

Telematics systems and their design Faculty of Transportation Sciences, CTU Selecting of methodology •

Telematics systems and their design Faculty of Transportation Sciences, CTU Selecting of methodology • Selecting a methodology is not simple, as no one methodology is always best. • Many organizations have their own standards. • The next figure summarizes some important methodology selection criteria. Ondřej Přibyl L 4: SAD Methodologies page 36

Telematics systems and their design Faculty of Transportation Sciences, CTU Criteria for Selecting a

Telematics systems and their design Faculty of Transportation Sciences, CTU Criteria for Selecting a Methodology Ondřej Přibyl L 4: SAD Methodologies page 37

Telematics systems and their design Faculty of Transportation Sciences, CTU IT Project success Rate

Telematics systems and their design Faculty of Transportation Sciences, CTU IT Project success Rate (Chaos report) • As the methodology and project management in IT projects improves, the success rate grows • How is it affected by selected methodology? Ondřej Přibyl L 4: SAD Methodologies page 44

Telematics systems and their design Faculty of Transportation Sciences, CTU Project success rates Source:

Telematics systems and their design Faculty of Transportation Sciences, CTU Project success rates Source: Dr. Dobbs IT Survey 2010 http: //www. ddj. com/security/226500046 Ondřej Přibyl L 4: SAD Methodologies page 45

Telematics systems and their design Faculty of Transportation Sciences, CTU Agile projects are 3

Telematics systems and their design Faculty of Transportation Sciences, CTU Agile projects are 3 times more successful http: //www. controlchaos. com/storage/S 3 D%20 First%20 Chapter. pdf Ondřej Přibyl L 4: SAD Methodologies page 46

Telematics systems and their design Faculty of Transportation Sciences, CTU Effectiveness of development Paradigms

Telematics systems and their design Faculty of Transportation Sciences, CTU Effectiveness of development Paradigms Ondřej Přibyl L 4: SAD Methodologies page 47

PART II Methodology recommended for ITS 1. SEMP Framework (FHWA for ITS) 2. Methodology

PART II Methodology recommended for ITS 1. SEMP Framework (FHWA for ITS) 2. Methodology to design ITS (CZ) Ondřej Přibyl L 4: SAD Methodologies page 48

Telematics systems and their design Faculty of Transportation Sciences, CTU SEMP Framework (http: //www.

Telematics systems and their design Faculty of Transportation Sciences, CTU SEMP Framework (http: //www. fhwa. dot. gov/cadiv/segb/index. htm) Ondřej Přibyl L 4: SAD Methodologies page 49

Telematics systems and their design Faculty of Transportation Sciences, CTU 1. System Engineering Management

Telematics systems and their design Faculty of Transportation Sciences, CTU 1. System Engineering Management Plan (SEMP) Ondřej Přibyl L 4: SAD Methodologies page 50

Faculty of Transportation Sciences, CTU Telematics systems and their design 1. System Engineering Process

Faculty of Transportation Sciences, CTU Telematics systems and their design 1. System Engineering Process – Main features – Based on common Vee development model • Consists of the following major phases: » » System decomposition (Step 1 – 5) System implementation (Step 6) System composition (Step 7 – 10) System operation (Step 11) – Unified Modeling Language (UML) is used to cover the steps in the model (concept, requirements design, test cases, etc. ) – Defines – Major steps, – Deliverables, and – Responsibilities. Ondřej Přibyl L 4: SAD Methodologies page 51

Telematics systems and their design Faculty of Transportation Sciences, CTU 2. Methodology recommended for

Telematics systems and their design Faculty of Transportation Sciences, CTU 2. Methodology recommended for ITS Systems • Described in “Methodology to design ITS” (CTU, In Czech, 2009) • Based on SSADM (Structured System Analysis and Design Methodology) – Analysis of the current system • Feasibility stage – Outline business specification • Concept preparation – Detailed business specification • Requirements specification stage – Logical data design • In this stage, technically feasible options are described – Logical process design • logical designs and processes are updated – Physical design • to specify the physical data and process design Ondřej Přibyl L 4: SAD Methodologies page 52

Telematics systems and their design Faculty of Transportation Sciences, CTU ITS process – an

Telematics systems and their design Faculty of Transportation Sciences, CTU ITS process – an overview Part 1 Part 2 Part 3 Part 4 Part 5 Ondřej Přibyl L 4: SAD Methodologies page 53

Faculty of Transportation Sciences, CTU Telematics systems and their design Analysis and Design of

Faculty of Transportation Sciences, CTU Telematics systems and their design Analysis and Design of ITS Systems (Part 1) • System concept – Based on ITS architecture – Includes current state analysis – Includes definition of objectives • Define actors – See lecture notes Ondřej Přibyl • Define User needs – RFP and other user documents – Based on ITS architecture – Based on system concept L 4: SAD Methodologies page 54

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of ITS Systems (Part 2) • System Requirements Specification (SRS) – Based on user needs – Based on standards – Based on state of the art know-how Ondřej Přibyl L 4: SAD Methodologies page 55

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of ITS Systems (Part 3) • Use case diagram • Behavior description / processes – Textual process / Activity diagram / interaction diagram Ondřej Přibyl L 4: SAD Methodologies page 56

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of ITS Systems (Part 4) • Physical model – HW components – Interactions among components – Communication architecture – Interface specification – Assignement of functions (use cases) to HW • Data model (Structures) – ER Model Ondřej Přibyl L 4: SAD Methodologies page 57

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of

Telematics systems and their design Faculty of Transportation Sciences, CTU Analysis and Design of ITS Systems (Part 5) Ondřej Přibyl L 4: SAD Methodologies page 58

Faculty of Transportation Sciences, CTU Telematics systems and their design Summary of major steps

Faculty of Transportation Sciences, CTU Telematics systems and their design Summary of major steps and deliverables System concept 1. Preparing system concept 2. Requirement analysis – Specify User needs – Define Requirements on the system Functional 3. Functionality analysis architecture – Define actors in the system – Define use cases and assign them to particular actors – Define exact functionality for each use case 4. Data model • Creating of an entity-relationship (E-R) model • Definition of all tables and their relationships 5. Component design/physical design • Major physical components • Assignment of functions (use cases) to physical components • Interface definition Ondřej Přibyl Requirements specification Database design Physical architecture L 4: SAD Methodologies page 59