is methodologies. systems development life cycle - sdlc planning planning define the system to be...

29
IS Methodologies IS Methodologies

Upload: andra-griffin

Post on 03-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

IS MethodologiesIS Methodologies

Systems Development Life Systems Development Life Cycle - SDLCCycle - SDLC

PlanningPlanning define the system to be developeddefine the system to be developed Set the project scopeSet the project scope Develop project plan including tasks, resources, and timeframesDevelop project plan including tasks, resources, and timeframes

AnalysisAnalysis Gather the business requirements for the systemGather the business requirements for the system

Design Design Design the technical architecture required to support the systemDesign the technical architecture required to support the system Write the test casesWrite the test cases Design system modelsDesign system models

DevelopmentDevelopment Build the technical architectureBuild the technical architecture Build the database and programsBuild the database and programs

TestingTesting Perform the testing of the systemPerform the testing of the system

ImplementationImplementation Install systemInstall system Write detailed user documentationWrite detailed user documentation Provide training for system usersProvide training for system users

MaintenanceMaintenance Build a help desk to support the system usersBuild a help desk to support the system users Provide an environment to support system changesProvide an environment to support system changes

½ security ½ security

Different IS Different IS MethodologiesMethodologies

1.1. Process MethodologiesProcess Methodologies

2.2. Object-Oriented MethodologiesObject-Oriented Methodologies

3.3. Rapid Application & Rapid Application & Evolutionary MethodologiesEvolutionary Methodologies

4.4. Framework MethodologiesFramework Methodologies

1. Process 1. Process MethodologiesMethodologies

Main Features of Process Main Features of Process MethodologiesMethodologies

Emphasis on processingEmphasis on processing Emphasis on functional Emphasis on functional

decompositiondecomposition

Functional Functional DecompositionDecomposition

It is the breaking down of a complex It is the breaking down of a complex problem into more and more details problem into more and more details in a disciplined way.in a disciplined way.

At the lowest level the units are At the lowest level the units are simple and manageablesimple and manageable

2. Object 2. Object Oriented Oriented

MethodologiesMethodologies

Object-Oriented Object-Oriented Methodologies HistoryMethodologies History

Developed in 1980sDeveloped in 1980s Building Systems takes the objects Building Systems takes the objects

as the basis. as the basis.

Possible Benefits of OO Possible Benefits of OO MethodologiesMethodologies

ReusabilityReusability InheritanceInheritance Data Hiding/Encapsulation Data Hiding/Encapsulation

3. Rapid and 3. Rapid and Evolutionary Evolutionary DevelopmentDevelopment

Rapid and Evolutionary Rapid and Evolutionary DevelopmentDevelopment

Evolutionary developmentEvolutionary development PrototypingPrototyping Rapid application developmentRapid application development Agile developmentAgile development

Evolutionary DevelopmentEvolutionary Development

It is a staged or incremental approach It is a staged or incremental approach that periodically delivers a system that is that periodically delivers a system that is increasingly complete i.e. evolves over increasingly complete i.e. evolves over time.time.

Thus they are not in their final form at Thus they are not in their final form at their first iteration or delivery.their first iteration or delivery.

Each delivery achieves something useful Each delivery achieves something useful and usable but is not necessarily and usable but is not necessarily complete.complete.

The system developed in the first iteration The system developed in the first iteration will be only a subset of the total will be only a subset of the total requirement.requirement.

Evolutionary DesignEvolutionary Design

The design does not have to be The design does not have to be perfectperfect

It can allow or accommodate future It can allow or accommodate future change or at least not impede such change or at least not impede such changechange

It does not have to be It does not have to be comprehensivecomprehensive

PrototypingPrototyping It is building a model that It is building a model that

demonstrates the features of demonstrates the features of proposed system.proposed system.

Two types of prototypesTwo types of prototypes1.1. Throw-awayThrow-away

2.2. EvolutionaryEvolutionary

When would When would Prototyping be Prototyping be

Beneficial?Beneficial?1.1. Unclear requirementsUnclear requirements

2.2. Unstable requirementsUnstable requirements

3.3. High innovativenessHigh innovativeness

4.4. High system impact on usersHigh system impact on users

5.5. Where commitment of users to a Where commitment of users to a project is requiredproject is required

6.6. Relatively small size of usersRelatively small size of users

Rapid Application Rapid Application DevelopmentDevelopment

Incremental developmentIncremental development Time boxingTime boxing JAD workshopsJAD workshops

Time Boxing DevelopmentTime Boxing Development

A D I A D I A D I

A D I

Time box

Time box

Time box

Time box development

Traditional development

Time

Time, Resources and Time, Resources and Functionality in DevelopmentFunctionality in Development

Traditional Development RAD Development

Functionality

Time Resources

Time Resources

Functionality

Agile Agile DevelopmentDevelopment

Agile DevelopmentAgile Development Agile ManifestoAgile Manifesto

Individuals and interactions Individuals and interactions over over processes and toolsprocesses and tools

Working software Working software over over comprehensive documentationcomprehensive documentation

Customer collaboration Customer collaboration over over contract negotiationcontract negotiation

Responding to change Responding to change over over following a planfollowing a plan

Agile Approach Agile Approach PrinciplesPrinciples

Changing requirementsChanging requirements Software deliverySoftware delivery

1.1. IncrementalIncremental2.2. Constance pace – sustainableConstance pace – sustainable3.3. Working softwareWorking software4.4. Small releasesSmall releases5.5. Rapid cyclesRapid cycles

TeamTeam1.1. CooperativeCooperative2.2. Self-organizingSelf-organizing3.3. Face-to-face interactionsFace-to-face interactions4.4. Adaptive: able to embrace changeAdaptive: able to embrace change5.5. MotivatedMotivated

MethodologiesMethodologies1.1. Straightforward: easy to learn and to modifyStraightforward: easy to learn and to modify

4. Framework 4. Framework MethodologiesMethodologies

Capability Capability Maturity ModelMaturity Model

CMMCMM

What is the CMM? What is the CMM?

CMM helps an organization to:– set process improvement goals and priorities

– provide guidance for quality processes

– provide a framework for assessing current practice

Available models: Two representations:

What is the CMM?What is the CMM?

Staged - organizational maturity approachStaged - organizational maturity approach Provides pre-defined roadmap for process Provides pre-defined roadmap for process

improvement based on a proven group and improvement based on a proven group and ordering of process capabilities ordering of process capabilities

Used for process improvement and assessmentsUsed for process improvement and assessments

Continuous - Process capability approachContinuous - Process capability approach Used to choose which processes to emphasize for Used to choose which processes to emphasize for

improvement in a given process area (e.g., Risk improvement in a given process area (e.g., Risk Management)Management)

Used for process improvement (when different Used for process improvement (when different groups focused on different areas) and assessmentsgroups focused on different areas) and assessments

CMM maturity levelsCMM maturity levels

Optimizing

Quantitatively Managed

Defined

Managed

Performed

Continuous processimprovement

Process measured and

controlled

Process characterizedfor the organization andis proactive

Process characterizedfor projects and is oftenreactive

Process unpredictable,poorly controlled, reactive

Causal Analysis and ResolutionOrganizational Innovation and Deployment

Quantitative Project Management Organizational Process Performance

Requirements DevelopmentTechnical SolutionProduct IntegrationVerificationValidationOrganizational Process FocusOrganizational Process DefinitionOrganizational Training Integrated Project ManagementRisk Management Decision Analysis and Resolution

Requirements ManagementProject PlanningProject Monitoring and ControlSupplier Agreement ManagementMeasurement and AnalysisProcess and Product Quality AssuranceConfiguration Management

Productivity & Quality

IS

K

R

Level Characteristic Process Areas Result

5

4

3

2

1

CMMI Process Areas (Staged CMMI Process Areas (Staged representation)representation)

Represent the building blocks of all Represent the building blocks of all CMM modelsCMM models

PAs are defined to reside at a single PAs are defined to reside at a single maturity or capability levelmaturity or capability level

Identify the issues that must be Identify the issues that must be addressed to achieve a given maturity addressed to achieve a given maturity or capability levelor capability level

Process Areas (PA)sProcess Areas (PA)s

Organizational MaturityOrganizational Maturity Since organizational maturity describes the range Since organizational maturity describes the range

of expected results that can be achieved by an of expected results that can be achieved by an organization, it is one of the means of predicting organization, it is one of the means of predicting the most likely outcomes from the next project the the most likely outcomes from the next project the organization undertakes. organization undertakes.

For instance, at maturity level 2, the organization For instance, at maturity level 2, the organization has been elevated from ad hoc to disciplined by has been elevated from ad hoc to disciplined by establishing sound project management. establishing sound project management.

As our organization achieves the generic and As our organization achieves the generic and specific goals for the set of process areas in each specific goals for the set of process areas in each maturity level, we will increase our organizational maturity level, we will increase our organizational maturity and reap the benefits of process maturity and reap the benefits of process improvement.improvement.