software development process ธนวัฒน์ แซ่ เอียบ. the development...

22
Software development process ธธธธธธธ ธธธธธธธธ

Upload: brent-green

Post on 31-Dec-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Software development process

ธนวั�ฒน� แซ่เอี ยบ

Page 2: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

The development process

• Process– set of rules which define how a development project.

• Methodology and method– specify techniques for developing particular design

artifacts.– It also tells you something about how you should

produce these things.– specifies what modeling language should be used in

describing the analysis and design work.– UML is not methodology, but Unified Process is.

Page 3: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

process

Page 4: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

method

• Flowchart – The first major software method.

• Structured analysis– organize computer programs into a functionally.

• Object oriented – organize computer programs into larger abstractions

called objects that mirrored the real world.

• Agile methods– improve customer satisfaction.

Page 5: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Methodology

• New methodology– Agile Manifesto– XP (Extreme Programming)– Scrum– Crystal– Context Driven Testing– Lean Development– (Rational) Unified Process

• unify software processes (like the UML) • same time as the agile methods

Page 6: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Unified process

• Unified process (UP) is The development process

• UML is the virtual language.

Page 7: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

History of UP

• RUP is commercial version of UP from IBM

Page 8: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

UP phase

• Inception– Get the project off the ground.

• Elaboration– Create an executable architectural baseline.– Risk assessment.– Define quality attributes.

• Construction– Complete all.

• Transition– Deploy.

Page 9: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

UP phase

Page 10: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

UP

• defines the who, what, when, and how• Who

– Roles.• User particapate in system.

• what– activities and artifacts.

• Activities are tasks that will be permormed by user.• Artifacts are thing that are input and output.

– Source code, programs,standards, documentation

• When– Workflow

• Sequences of related activities that are preformed by user.

Page 11: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

The development process

• Any development process aims to produce

program• single diagram could capture verything about our

design ?

– So We will build different models of our design, reflecting these different aspects and will express

each model

Page 12: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Models and modeling languages

• A model – is an abstract representation of a

specification, a design or a system, from a particular point of view.

• A modeling language– is a way of expressing the various models

produced during the development process.

Page 13: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

distinguish models

• The use case model – describes the required system from the users’

points of view.

• A static model – describes the elements of the system and

their relationships.

• A dynamic model– describes the behavior of the system over

time.

Page 14: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

What is the UML?

• The Unified Modeling Language is a visual language for specifying, constructing and documenting the artifacts of systems.

• Visual is pictures (with some text) related to software primarily OO software.

• focuses on frequently used diagrams.

Page 15: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

UML 1 and UML 2

• Grady Booch, Ivar Jacobson, and Jim Rumbaugh as its creators .

• official Diagram Types of the UML

Page 16: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

UML 1 and UML 2

• official Diagram Types of the UML

Page 17: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Classification of UML diagram types

Page 18: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Three Ways to Apply UML

• UML as sketch– Informal and incomplete diagrams created to explore

difficult parts of the problem or solution space.– often hand sketched on whiteboards.

• UML as blueprint– 1) reverse engineering to visualize and better

understanding existing code in UML diagrams– 2) code generation (forward engineering).

• UML as programming language– Complete executable specification of a software

system in UML

Page 19: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Three Perspectives to Apply UML

• 1. Conceptual perspective– describing things in a situation of the real

world or domain of interest.

• 2. Specification (software) perspective– describe software abstractions or

components.

• 3. Implementation (software) perspective– describe software implementations.

Page 20: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Different perspectives with UML.

Page 21: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

Why a unified modeling language?

• 1. expressive enough

• 2. easy enough to use

• 3. unambiguous

• 4. supported by suitable tools, so that developers

• 5. widely used

Page 22: Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and

ที่ �มา• UML2 and Unified Process : jim arlow