Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Basics-Software Development Methodologies- Lecture 1 Slides-Computer Engineering, Slides of Software Development Methodologies

Basics, Software Development Methodology, SDM, Object-Oriented Software Development Methodology, OOSDM, Seminal and Integrated Methodologies, UML, Agile Methodologies, Seminal Methodologies, Integrated Methodologies, Process Patterns, Process Metamodels, Methodology Development, Raman Ramsin, Lecture Slides, Software Development Methodologies, Department of Computer Engineering, Sharif University of Technology, Iran.

Typology: Slides

2011/2012

Uploaded on 02/20/2012

hester
hester 🇮🇷

4.5

(13)

85 documents

1 / 12

Toggle sidebar

Related documents


Partial preview of the text

Download Basics-Software Development Methodologies- Lecture 1 Slides-Computer Engineering and more Slides Software Development Methodologies in PDF only on Docsity!

Software Development Methodologies Lecturer:

Raman Ramsin

Lecture 1: Basics

1

Sharif University of Technology

Software Development Methodologies – Lecture 1

Software Development Methodology (SDM)Software

Development Methodology (SDM)

„

A framework for applying software engineering practices with the specificaim of providing the necessary means for developing software-intensive

p

g

y

p

g

systemsC

i ti

f t

i^

t

„

C

onsisting of two main parts:^

A set of modeling conventions comprising a

Modeling Language

(syntax and semantics)( y

)

A

Process, which „^

provides guidance as to the order of the activities, „

specifies what artifacts should be developed using the

Modeling

Language, „

directs the tasks of individual developers and the team as a whole, „

directs the tasks of individual developers and the team as a whole,and „

offers criteria for monitoring and measuring a project’s productsand a ti ities

2

Sharif University of Technology

and

activities.

Software Development Methodologies – Lecture 1

Object

- O

riented Software Development Methodology (OOSDM)

Object O e ted So t

a e

e e op

e t

et odo ogy (OOS

)

„

Specifically aimed at viewing, modeling and implementing the system as acollection of interacting objectscollection of interacting objects „

First appeared in late 1980s

pp

„

Categorized as

Seminal (First and Second Generations)

Integrated (Third Generation)

Agile

Agile

„

UML was the result of the ‘war' among seminal methodologies

g

g

„

Process has now replaced modeling language as the main contentious issue

3

Sharif University of Technology

Software Development Methodologies – Lecture 1 Genealogy: Seminal and Integrated Methodologies (until 1996)

4

Sharif University of Technology

[Webster 1996]

Software Development Methodologies – Lecture 1 UMLUML

5

Sharif University of Technology

[Graham 2001]

Software Development Methodologies – Lecture 1 Genealogy: Agile MethodologiesGenealogy:

Agile Methodologies

6

Sharif University of Technology

[Abrahamsson et al. 2003]

Software Development Methodologies – Lecture 1

Analysis: Selected Methodologies

y

g

„

Seminal Methodologies

Shlaer-Mellor (1988, 1992)

Coad-Yourdon (1989, 1991)

„

Agile Methodologies

DSDM (1995, 2003)

Scrum (1995, 2001)

RDD (1990)

Booch (1991, 1994)

OMT (1991)

XP (1996, 2004)

ASD (1997, 2000)

dX (1998)

OSA (1992)

OOSE (1992)

BON (1992, 1995)H d

M

k (1992)

Crystal (1998, 2004)

FDD (1999, 2002)

P

P tt

Hodge-Mock (1992)

Syntropy (1994)

Fusion (1994)

„

P

rocess Patterns1.

Ambler (1998)

P

M t

d l

„

Integrated Methodologies

OPM (1995, 2002)

2

Catalysis (

„

P

rocess Metamodels1.

OPF – as part of theOPEN methodology(2001)

Catalysis (1995, 1998)

OPEN (1996)

RUP (1998, 2000, 2003) /USDP (1999)

5

EUP (

(2001)

SPEM (2002)

„

MDA

7

Sharif University of Technology

EUP (2000, 2005)

FOOM (2001)

„

MDA

Software Development Methodologies – Lecture 1

ProblemsProblems „

Requirements engineering is still the weak link, and requirementst^

bilit

i^

l^

t d

traceability is rarely supported.

„

Model inconsistency is a dire problem.

„

Integrated methodologies are too complex to be effectively

„

Integrated methodologies are too complex to be effectivelymastered, configured, and enacted.

„

Agile methods are not mature enough:

g e

e

ods a e

o

a u e e oug

Unrealistic assumptions (e.g. Scrum)

Lack of scalability (All, more or less)

Lack of a specific, unambiguous process (e.g. XP, Crystal)

S

l^

d

l^

t^

i^

d b

i^

l^

th d l

i^

i^

t

„

S

eamless development, pioneered by seminal methodologies, is not

adequately appreciated and supported in modern-day methodologies.

8

Sharif University of Technology

Software Development Methodologies – Lecture 1 Methodology Development

gy

p

„

Methodologies can be categorized according to the circumstancesleading to their development, including the approach and methodapplied:

Revolutionary: novel ideas and approaches

Evolutionary: based on existing methodologies

Evolutionary: based on existing methodologies

„

Extension: adding new features to an existing methodology „

Integration: consolidating ideas from two or more methodologies

Merger

: typically carried out through a design-by-committee

procedure

Ad hoc

: features are scavenged from prominent methodologies in

order to fill the needs of the methodologist

Engineered

: based on analysis of the problem domain and

requirements thereby identified, and pre-implementation design

„

‘Software processes are software too.’

9

Sharif University of Technology

Software Development Methodologies – Lecture 1

Analysis Criteria

y

„

OOSDM Process^

Clarity, rationality, accuracy, and consistency of definition

Coverage of the generic development lifecycle activities (Analysis, Design,Implementation

Test

Maintenance)

Implementation, Test, Maintenance)

Support for umbrella activities, especially including:

„

Risk management „

Project management „

Project management „

Quality assurance

Seamlessness and smoothness of transition between phases, stages andactivities

Basis in the requirements (functional and non-functional)

Testability and Tangibility of artifacts, and traceability to requirements

Encouragement of active user involvement

g

Practicability and practicality

Manageability of complexity

Extensibility/Configurability/Flexibility/Scalability

10

Sharif University of Technology

y/

g

y/

y/

y

Application scope

Software Development Methodologies – Lecture 1

Analysis Criteria

y

„

OOSDM Modeling Language

g

g

g

Support for consistent, accurate and unambiguous object-orientedmodeling:modeling:

„

Structural – Functional – Behavioural „

Logical to Physical (business-process/problem domain to solutiondomain to implementation domain)domain to implementation domain) „

Enterprise level – System level – Subsystem/Package level – Inter-object level – Intra-object level „

Formal and Informal modeling facilities „

Formal and Informal modeling facilities

Provision of strategies and techniques for tackling model

g

q

g

inconsistency and managing model complexity

11

Sharif University of Technology

Software Development Methodologies – Lecture 1 R fR

eferences „

Webster, S., “On the evolution of OO methods”, Bournemouth University,

,^

,^

,^

y,

1996.

„

Graham, I., Object-oriented Methods: Principles and Practice (3rd Edition),

,^

,^

j^

p

(^

),

Addison-Wesley, 2001. „

Abrahamsson, P., Warsta, J., Siponen, M. T., Ronkainen, J., “New Directions

,^

,^

,^

,^

p

,^

,^

,^

,

on Agile Methods: a comparative analysis”, Proceedings of the InternationalConference on Software Engineering – ACM/ICSE 2003, 2003, pp. 244-254.

12

Sharif University of Technology