43

SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system
Page 2: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

SYSTEM DEVELOPMENT LIFE CYCLE MODELS• Life cycle models come out in order to transfer systems from manual to

automated easily.

• Life cycle model emphasized on the need to follow some structured approach

towards building new or improved system.

•There were many models suggested. The Waterfall Model was among the very

first models that came into existence.

• Later on many other models like Prototyping Model, Object-Oriented Model,

and Dynamic System Development Model (DSDM) etc were also introduced.

9/30/2019CEN 421 - SAD 2

Page 3: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

ACTIVITIES INVOLVED IN ANY LIFE CYCLE MODEL

•The following activities are the part of any life cycle model (not

necessarily in the same order):

1. Preliminary Investigation

2. Determination of System's Requirements: Analysis Phase

3. Design of System

4. Development of Software

5. System Testing

6. Implementation and Maintenance

9/30/2019CEN 421 - SAD 3

Page 4: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

1. PRELIMINARY INVESTIGATION• The main aim of preliminary analysis is to identify the problem.

• First, need for the new or the enhanced system is established. If there is a need then

further analysis are done.

• Then "candidate systems" are chalked out.

• From these candidates best alternative is selected as the solution system, which is termed

as the "proposed system".

• The proposed system is then evaluated for its feasibility. Feasibility for a system means

whether it is practical and beneficial to build that system.

• The feasibility of the system is evaluated on technical, economical, legal and operational

issues.

9/30/2019CEN 421 - SAD 4

Page 5: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

1. PRELIMINARY INVESTIGATION

Technical Feasibility:

Can the development of the proposed system be done with current

equipment, existing software technology, and available personnel?

Does it require new technology?

Economic feasibility:

Are there sufficient benefits in creating the system to make the costs

acceptable?

An important outcome of the economic feasibility study is the cost

benefit analysis.

9/30/2019CEN 421 - SAD 5

Page 6: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

1. PRELIMINARY INVESTIGATION

Legal Feasibility:

It checks if there are any legal hassle in developing the system.

Operational Feasibility:

Will the system be used if it is developed and implemented?

Will there be resistance from users that will undermine the possible

application benefits?

9/30/2019CEN 421 - SAD 6

Page 7: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

1. PRELIMINARY INVESTIGATION

•The result of the feasibility study is a formal document, a report detailing

the nature and scope of the proposed solution.

• It consists of the following:

Statement of the problem

Details of findings

Findings and recommendations in concise form

•Once the feasibility study is done then the project is approved or

disapproved according to the results of the study.

9/30/2019CEN 421 - SAD 7

Page 8: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

2. DETERMINATION OF SYSTEM'S REQUIREMENTS: ANALYSIS PHASE

•Analysis is a detailed study of:

the various operations performed by the system,

relationships among the various sub-systems or functional units,

the relationships outside the system.

•Study is conducted to find user's information requirements.

•Proper functioning of the current system is also studied.

•Many tools are used during analysis: Data flow diagrams, on-site observations,

and questionnaires are some examples.

9/30/2019CEN 421 - SAD 8

Page 9: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

2. DETERMINATION OF SYSTEM'S REQUIREMENTS: ANALYSIS PHASE

•Major questions under consideration during analysis are:

1. What is being done?

2. How is it being done?

3. Does a problem exist?

4. If a problem exists, how severe is it?

5. How frequently does it occur?

6. What is the underlining cause for the problem?

•Once the analysis is completed, the analyst has a firm knowledge of what is to

be done.

9/30/2019CEN 421 - SAD 9

Page 10: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

3. DESIGN OF SYSTEM• In design phase, the structure or design for the proposed system is finalized.

•Structure of files, databases, input, output, processes, and screens(interfaces)

are decided.

•After design is finalized, it is clearly documented in what is called Design

Document.

It contains various graphical representations of reports, user interaction

screens, etc.

It is referred by developers during development of system.

9/30/2019CEN 421 - SAD 10

Page 11: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

3. DESIGN OF SYSTEM• Correct designing of the system is very crucial.

• If we have a wrong design we won't be able to get a correct desired system.

• Also cost of fixing errors is maximum for design phase.

• Cost of change increases when errors are discovered in later stages for system

development. Mostly design errors are discovered in development, testing, or

maintenance phase.

• So, the cost of change due to changes in design (which might happen due to some

error or improper design) is very high.

• Design process should be handled very carefully.

9/30/2019CEN 421 - SAD 11

Page 12: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

4. DEVELOPMENT OF SOFTWARE• In this phase, the actual development of the system takes place.

•Design representations are translated into actual programs.

•Software developers may install (or modify and then install) purchased

software or they may write new, custom-designed programs.

•Programmers are also responsible for documenting the program, providing an

explanation of how procedures are coded.

•Documentation is essential to test the program and carry on maintenance

once the application has been installed.

• It is also helpful to user in knowing the system well.

9/30/2019CEN 421 - SAD 12

Page 13: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

5. SYSTEM TESTING

• It is important to check if it fulfills the customer requirements after

development of the system.

•Various test cases are prepared for testing the system.

A test case is a certain made up situation on which system is exposed so as

to find the behavior of system in that type of real situation.

Test cases can be tested with real or artificial data.

Unit, integration, and acceptance testing are some of these.

9/30/2019CEN 421 - SAD 13

Page 14: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

5. SYSTEM TESTING• In Unit Testing, the smallest units of software, the modules are tested one by

one.

• In Integration Testing, the modules are integrated and tested as a complete

system.

•This is done since testing individual module doesn't guarantee if the system will

work properly when these units are integrated.

•Acceptance Testing ensures that the system meets all the requirements. If it

fulfils the needs then the system is accepted by the customer and put into use.

9/30/2019CEN 421 - SAD 14

Page 15: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

6. IMPLEMENTATION AND MAINTENANCE

• Implementation of system means putting up system on user's site.

• Like any system, there is an aging process. Therefore, the system requires

periodic maintenance.

•Maintenance can be for software or hardware.

•User priorities, changes in organizational requirements, or environmental factors

call for system enhancements.

•This is very crucial for the system's life.

9/30/2019CEN 421 - SAD 15

Page 16: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

DIFFERENT LIFE CYCLE MODELS

•There are system development models, which follow these stages:

1. Waterfall Model (Traditional model)

2. Iterative Prototype Model

3. Dynamic Systems Development Model (DSDM)

4. Spiral Model, Incremental Model

5. Object-Oriented Model.

9/30/2019CEN 421 - SAD 16

Page 17: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

WATERFALL MODEL•Waterfall model is a systematic

and sequential approach

towards software development.

• Follows all the stages and each

stage begins or originates only

after the previous stage has

finished.

• Every stage ends with a report

and if needed feedback is given.

9/30/2019CEN 421 - SAD 17

System

Engineering

Analysis

Design

Coding

Maintenance

Testing

Page 18: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

•When to use Waterfall Model ?

In principle, the waterfall model should only be applied when

requirements are well understood and unlikely to change radically

during development as this model has a relatively rigid structure which

makes it relatively hard to accommodate change when the process is in

underway.

•The main advantage of this model is; it is easy to understand.

9/30/2019CEN 421 - SAD 18

WATERFALL MODEL

Page 19: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

•Major limitations of the model:

Real projects rarely follow sequential flow. Iterations are required.

Requirements may not be clearly defined in the beginning itself.

Major errors may require going back to Design phase or even Feasibility

study phase.

Customer would have no idea of the working program until the end. Very

less interaction with the customer.

Major blunders may be noticed only after development.

Product delivery takes much time.

9/30/2019CEN 421 - SAD 19

WATERFALL MODEL

Page 20: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

PROTOTYPING MODEL•Prototyping Model is an iterative approach.

•A prototype is a working system that is developed to test ideas about the new

system.

•Prototyping is a process of building a model of the system to be developed.

•This approach is used when it is difficult to know all the requirements in the

beginning of the project.

•Such situations arise in the following cases:

The user has not provided all the requirements.

No other system like the proposed system was built earlier.

9/30/2019CEN 421 - SAD 20

Page 21: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

PROTOTYPING MODEL•This model can be also used in a situation

when the customer wants a quick

delivery. May be not the entire system

but a part of it.

•The complete system is based on an

iterative model where the customer

keeps specifying the requirements

according to the model made available

and the changes are incorporated to

build a better model.

9/30/2019CEN 421 - SAD 21

Requirements

Gathering

Quick

Design

Building

Protoype

Customer

Evaulation

Refining

Prototype

Final

Product

Page 22: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

•The main disadvantage of this model is; because of quick design, there can be

compromise on quality.

•But on the other hand it has some advantages, too:

Reduces risk of uncertainty.

Allows early stoppage of unsuccessful projects.

User interaction and involvement is more.

Less chances of error during system design.

9/30/2019CEN 421 - SAD 22

PROTOTYPING MODEL

Page 23: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL•Object-Oriented development requires that object-oriented techniques be used

during the analysis, and implementation of the system.

•This methodology asks the analyst to determine:

What are the objects of the system?

How they behave over time or in response to events?

What responsibilities and relationships an object has to other objects?

•Object-oriented analysis has the analyst look at all the objects in a system, their

commonalties, difference, and how the system needs to manipulate the objects.

9/30/2019CEN 421 - SAD 23

Page 24: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL•Object-Oriented Model takes the objects as the basis.

• For this, first the system to be developed is observed and analyzed and the

requirements are defined as in any other method of system development.

•Once this is done, the objects in the required system are identified.

For example in case of a Banking System, a customer is an object, a chequebook is an object, and

even an account is an object.

• In simple terms, Object Modeling is based on identifying the objects in a system and

their interrelationships.

•Once this is done, the coding of the system is done.

9/30/2019CEN 421 - SAD 24

Page 25: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL•Object Modeling is somewhat similar to the traditional approach of system

designing, in that it also follows a sequential process of system designing but

with a different approach.

•The basic steps of system designing using Object Modeling may be listed as:

1. System Analysis

2. System Design

3. Object Design

4. Implementation

9/30/2019CEN 421 - SAD 25

Page 26: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL1. System Analysis:

• As in any other system development model, system analysis is the first phase of

development in case of Object Modeling, too.

• In this phase, the developer interacts with the user of the system to find out the

user requirements and analyses the system to understand the functioning.

• The analyst prepares a model of the desired system. This model is purely based on

what the system is required to do.

• The model of the system is prepared based on the idea that the system is made up

of a set of interacting objects.

9/30/2019CEN 421 - SAD 26

Page 27: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL2. System Design:

• The overall architecture of the desired system is decided.

• Perceive the system as a set of interacting objects, a bigger system may also be

seen as a set of interacting smaller subsystems that in turn are composed of a set of

interacting objects.

•While designing the system, the stress lies on the objects comprising the system

and not on the processes being carried out in the system as in the case of

traditional Waterfall Model where the processes form the important part of the

system.

9/30/2019CEN 421 - SAD 27

Page 28: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL3. Object Design

• In this phase, the details of the system analysis and system design are

implemented.

• The Objects identified in the system design phase are designed.

• Here the implementation of these objects is decided as the data structures get

defined and also the interrelationships between the objects are defined.

• In the Object Designing phase of the Development process, the designer decides

onto the classes in the system

• The designer also decides on whether the classes need to be created from scratch

or any existing classes can be used as it is or new classes can be inherited from

them.

9/30/2019CEN 421 - SAD 28

Page 29: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL4. Implementation

• During this phase, the class objects and the interrelationships of these classes are

translated and actually coded using the programming language decided upon.

• The databases are made and the complete system is given a functional shape.

• As compared to the conventional system development techniques, OO modeling

provides many benefits like:

•Reusability

• Inheritance

•Data Hiding (Encapsulation)

9/30/2019CEN 421 - SAD 29

Page 30: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

OBJECT-ORIENTED MODEL•The advantages of using Object-Oriented Model are;

OO Model closely represents the problem domain. Because of this, it is easier to

produce and understand designs.

The objects in the system are immune to requirement changes. Therefore, allows

changes more easily.

OO designs encourage more re-use. New applications can use the existing modules,

thereby reduces the development cost and cycle time.

OO approach is more natural. It provides nice structures for thinking and

abstracting and leads to modular design.

9/30/2019CEN 421 - SAD 30

Page 31: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

DYNAMIC SYSTEM DEVELOPMENT MODEL (DSDM)

• DSDM develops the system dynamically. The DSDM development process is dynamic

as it is a Rapid Application Development method that uses incremental prototyping.

• This method is particularly useful for the systems to be developed in short time span

and where the requirements cannot be frozen at the start of the application building.

•Whatever requirements are known at a time, design for them is prepared and design is

developed and incorporated into system.

• In DSDM, analysis, design and development phase can overlap. Like at one time some

people will be working on some new requirements while some will be developing

something for the system. In DSDM, requirements evolve with time.

9/30/2019CEN 421 - SAD 31

Page 32: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

DYNAMIC SYSTEM DEVELOPMENT MODEL (DSDM)

•The DSDM development process consists of 7 phases, of which some might be

omitted in a concrete project implementation.

9/30/2019CEN 421 - SAD 32

Page 33: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

DYNAMIC SYSTEM DEVELOPMENT MODEL (DSDM)

• Pre-Project:

The pre-project phase is not strictly defined. It occurs before the project officially

begins. In this stage, the project is conceptualized, and the decision is made to start

the project.

• Feasibility Study:

In this phase, the team researches the question: Can it be done within the

constraints of time and resources? This phase is done as quickly as possible,

because DSDM is best used where time is short, and therefore the product needs

to be delivered quickly.

9/30/2019CEN 421 - SAD 33

Page 34: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

DYNAMIC SYSTEM DEVELOPMENT MODEL (DSDM)

• Business Study:

In this phase, the team researches the business aspects of the project.

Does it make good business sense?

Who are the participants and interested parties?

What is the best work plan? What is needed to:

1. Build it

2. Test it

3. Deploy it

4. Support it

What technologies will we be using to build and deploy it?

9/30/2019CEN 421 - SAD 34

Page 35: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

• Functional Model Iteration:

The main focus in this phase is on building the prototype iteratively and getting it

reviewed from the users to bring out the requirements of the desired system.

The prototype is improved through demonstration to the user, taking the feedback and

incorporating the changes.

The outcome of the functional model iteration is standard analysis model of the

software.

• Design and Built:

In this stage, the product is designed and developed in iterations. In each iteration a

design model is made of the area being developed, and then that area is coded and

reviewed.

9/30/2019CEN 421 - SAD 35

DYNAMIC SYSTEM DEVELOPMENT MODEL (DSDM)

Page 36: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

• Implementation:

In the last phase, the product is wrapped up, documentation is written, and a review

document is drawn up, comparing the requirements with their fulfillments in the

product.

The users are trained in how to use the system, and the users give approval to the

system.

• Post-Project - Maintenance

After the product is created, maintenance will inevitably need to be performed. This

maintenance is generally done in a cycle similar to the one used to develop the

product.

9/30/2019CEN 421 - SAD 36

DYNAMIC SYSTEM DEVELOPMENT MODEL (DSDM)

Page 37: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

•The main problem in this model is; it is a relatively new model so it is not very

common. In addition, it is a difficult model to understand.

•The advantages of the model:

Active user participation throughout the life of the project and iterative

nature of development improves quality of the product.

DSDM ensures rapid deliveries.

Both of the above factors result in reduced project costs.

9/30/2019CEN 421 - SAD 37

DYNAMIC SYSTEM DEVELOPMENT MODEL (DSDM)

Page 38: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

SPIRAL MODEL• Spiral Model is a combination of a waterfall model

and iterative model.

• Each phase in spiral model begins with a design goal

and ends with the client reviewing the progress.

• The development team in Spiral model starts with a

small set of requirement and goes through each

development phase for those set of requirements.

• The software engineering team adds functionality for

the additional requirement in every-increasing spirals

until the application is ready for the production

phase.

9/30/2019CEN 421 - SAD 38

Page 39: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

9/30/2019CEN 421 - SAD 39

•When to use Spiral Model?

When project is large

When releases are required to be frequent

When creation of a prototype is applicable

When risk and costs evaluation is important

For medium to high-risk projects

When requirements are unclear and complex

When changes may require at any time

When long term project commitment is not feasible due to changes in economic

priorities

SPIRAL MODEL

Page 40: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

PROBLEM STATEMENT REPORTDUE DATE: 04.10.2019 FRIDAY

9/30/2019CEN 421 - SAD 40

Page 41: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

• In general, a problem statement will outline the negative points of the current situation and explain why this

matters.

• The 5W2H questions can be used to spark the discussion about the problem:

• Who - Who does the problem affect? Specific groups, organizations, customers, etc.

• What - What is the problem that needs to be solved? What are the boundaries of the problem, e.g.

organizational, work flow, geographic, customer, segments, etc. - What is the issue? - What is the impact of the

issue? - What impact is the issue causing? - What will happen when it is fixed? - What would happen if we

didn’t solve the problem? - What impact does it have on the business or customer? - What impact does it have

on all stakeholders, e.g. employees, suppliers, customers, shareholders, etc.

• When - When does the issue occur? - When does it need to be fixed?

• Where - Where is the issue occurring? Only in certain locations, processes, products, etc.

• Why - Why is it important that we fix the problem?

• How - How is the problem observed? (symptoms)

• How often - How often is the problem observed? (error rate, magnitude, trend)

9/30/2019CEN 421 - SAD 41

Page 42: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

• After describing the problem in the current situation, you will give a context diagram of the

system that will be planned for the future.

System Context Diagrams represent all external entities that may interact with a system.

Such a diagram pictures the system at the center, with no details of its interior structure,

surrounded by all its interacting systems, environments and activities. The objective of the

system context diagram is to focus attention on external factors and events that should be

considered in developing a complete set of systems requirements and constraints.

• Context diagrams can be developed with the use of two types of building blocks:

Entities (Actors): labeled boxes; one in the center representing the system, and around it

multiple boxes for each external actor

Relationships: labeled lines between the entities and system

9/30/2019CEN 421 - SAD 42

Page 43: SYSTEM DEVELOPMENT LIFE CYCLE MODELSenformatik.cu.edu.tr/CEN421/CEN421_Week3.pdf · OBJECT-ORIENTED MODEL • Object Modeling is somewhat similar to the traditional approach of system

CONTEXT DIAGRAM EXAMPLE

9/30/2019CEN 421 - SAD 43