Sei sulla pagina 1di 44

Model Proses

1
Systems Development Life Cycle

2
Systems Development Life Cycle (SDLC)

Planning

Implementation Analysis

Design

3
Project Phases
1. Planning: Why build the system?
• System request, feasibility analysis, project size
estimation
2. Analysis: Who, what, when, where will the system be?
• Requirement gathering, business process modeling
3. Design: How will the system work?
• Program design, user interface design, data design
4. Implementation: System construction and delivery
• System construction, testing, documentation and
installation

4
Planning
1. Identifying business value (System Request)
• Lower costs
• Increase profits

2. Analyze feasibility
• Technical Feasibility
• Economic Feasibility
• Organizational Feasibility

(System Proposal)

5
Analysis
1. Requirement gathering by answering the
questions:
• Who will use the system?
• What will the system do?
• When will it be used?
2. Investigate the current system
3. Identify possible improvements
4. Develop a concept for new system

(System Specification)
6
Design
1. Program Design (UML Diagrams)
• What programs need to be written
• Exactly what each program will do
2. User Interface Design
• How users interact with system
• Forms / reports used by the system
3. Data Design (ER Diagrams)
• What data is to be stored
• What format the data will be in
• Where the data will be stored

(System Specification)
7
Implementation
1. Construction
• New system is built and tested
• Often testing is the longest part
2. Testing
• Unit Testing
• Integration Testing
• System Testing
• User Acceptance Test
3. Installation
• Old system is turned off
• New system is turned on

8
Processes and Deliverables
Process Product

Planning System Proposal

Analysis System Specification


Design

Implementation New System with


Testing/Maintenance Plan
9
SDLC and Deliverables
Planning
(System Proposal)

Implementation Analysis
(New System) (System Specification)

Design
(System Specification)

10
Systems Development Methodology
(Model Process)

11
Software Development Methodology
(Model Process)
• A formalized approach to implementing the
Software Development Life Cycle (SDLC) (Dennis, 2012)

• A simplified representation of a software process


(Sommerville, 2015)

• A distinct set of activities, actions, tasks, milestones,


and work products required to engineer high quality
software (Pressman, 2015)

12
Major Methodologies
1. Structured Design More
• Waterfall method Prescriptive/
• Parallel development Documentation

2. Rapid Application Development


• Phased Development
• Prototyping
• Throw-away Prototyping More
Adaptive/
3. Agile Development Communication
• Extreme Programming (XP)
• Scrum
• Lean Development
(Dennis, 2012)
13
Methodology Timeline

14
Activities and Artifacts Comparison

15
1. Structured Design

16
Structured Design
• Projects move methodically from one to the
next step
• Generally, a step is finished before the next
one begins

• Type of Structured Desin:


1. Waterfall Method
2. Parallel Development

17
Waterfall Method

Pros Cons
Identifies systems Design must be specified on
requirements long paper before programming
before programming begins
Begins, it minimizes Long time between system
change to the proposal and delivery of new
requirements as the system
project proceed (mature)
Rework is very hard
18
Parallel Development

Addresses problem of time


gap between proposal and
delivery:
• Breaks project into parallel
subproject
• Integrates them at the end

19
2. Rapid Application Development

20
Rapid Application Development (RAD)

• Type of RAD:
1. Phased development: a series of versions
2. Prototyping: System prototyping
3. Throw-away prototyping: design prototyping

• Critical elements to speed up the SDLC:


• CASE tools
• Visual programming languages
• Code generators

21
RAD: Phased Development

Pros Cons
Gets useful system to Initial system is intentionally
users quickly incomplete
Most important System requirements expand
functions tested most as users see versions 22
RAD: Prototyping
• Analysis, Design, Implementation are
performed concurrently
• Start with a "quick-and-dirty" prototype,
Provides minimal functionality
• Repeat process, refining the prototype
each time
• Stop when prototype is a working system

23
RAD: Throw-Away Prototyping
• Use prototypes only to understand requirements
• Example: use html to show UI
• Prototype is not a working design
• Once requirements are understood, the
prototypes are thrown away

24
3. Agile Development

25
3. Agile Development
• Just a few rules that are easy to learn and follow
• Streamline the SDLC
• Eliminate much of the modeling and documentation
• Emphasize simple, iterative application development

• Type of Agile Development:


1. Extreme Programming (XP) (Kent Beck)
2. Scrum (Ken Schwaber and Jeff Sutherland)
3. Lean Development (Mary Poppendieck and Tom Poppendieck)
4. Dynamic Systems Development Model (DSDM) (Dane Faulkner)

26
Extreme Programming (XP)

27
XP Values
1. Communication: Building software requires
communicating requirements to the developers
2. Simplicity: Encourages starting with the simplest
solution, extra functionality can then be added later
3. Feedback:
1. Feedback from the system: by writing unit tests, or running
periodic integration tests, the programmers have direct
feedback from the state of the system after implementing
changes
2. Feedback from the customer: The acceptance tests are
planned once in every two or three weeks so the customer
can easily steer the development
3. Feedback from the team: When customers come up with new
requirements in the planning game the team directly gives an
estimation of the time that it will take to implement
4. Courage: Several practices embody courage. One is the
commandment to always design and code for today
and not for tomorrow
28
• Project members form a Scrum Team consisting of
Scrum 5–9 people
• The goal of the Sprint is determined and the
prioritized functionality is broken down into
detailed tasks
• The team is self-organized and the members have
a joint responsibility for the results
• Each Sprint enhances the product’s market value
and adds new functions and improvements that
can be delivered to the customer

29
Scrum

30
Iterative Scrum
Scrum

32
Scrum

33
Boards

34
35
XP vs Scrum vs Lean
• XP deals with how to work with
programming
• Scrum deals with how the project is
organized and planned
• Lean Development deals with which
comprehensive principles should apply for
the entire development organization

36
37
Methodology Selection Strategy

38
Selection Factors

1. Clarity of User Requirements


2. Familiarity with Technology
3. System Complexity
4. System Reliability
5. Short Time Schedules
6. Schedule Visibility

39
Selection Factors

40
Latihan Analisis Kasus:
Memilih Metodologi yang Tepat
• Seandainya, anda adalah seorang software engineer di
perusahaan PT BlackSoft, sebuah perusahaan IT yang
memiliki kantor cabang di berbagai tempat di dunia
• PT BlackSoft ingin membangun sebuah sistem yang bisa
menampilkan informasi tentang sumber daya manusia
yang dimiliki, baik itu lokasi saat ini, latar belakang
pendidikan, jadwal pekerjaan dan pengalaman kerja yang
dimiliki
• Asumsikan bahwa ini adalah ide baru yang belum pernah
diimplementasikan di PT BlackSoft sebelumnya
• PT BlackSoft memiliki jaringan internasional dimana
kantor cabang di berbagai negara menggunakan hardware
dan software yang berbeda
• Manajemen ingin agar sistem dapat selesai dikerjakan dan
mulai bisa berjalan dalam satu tahun
41
Summary -1-
• The systems analyst is a key person analyzing
the business, identifying opportunities for
improvement, and designing information
systems to implement these ideas
• There are five major team roles:
1. Business analyst
2. Systems analyst
3. Infrastructure analyst
4. Change management analyst
5. Project manager
42
Summary -2-
• The Systems Development Lifecycle consists
of four stages: Planning, Analysis, Design, and
Implementation
• The major development methodologies:
1. Structured design
• Waterfall method
• Parallel development
2. RAD development
• Phased Development
• Prototyping
• Throw-away Prototyping
3. Agile development
• Extreme Programming
• Scrum
43
Referensi
1. Alan Dennis et al, Systems Analysis and Design with
UML 4th Edition, John Wiley and Sons, 2013
2. Kenneth E. Kendall and Julie E Kendall, Systems Analysis
and Design 8th Edition, Prentice Hall, 2010
3. Hassan Gomaa, Software Modeling and Design: UML,
Use Cases, Patterns, and Software Architectures,
Cambridge University Press, 2011
4. Gary B. Shelly and Harry J. Rosenblatt, Systems Analysis
and Design 9th Edition, Course Technology, 2011
5. Howard Podeswa, UML for the IT Business Analyst 2nd
Edition, Thomson Course Technology, 2009
6. Jeffrey A. Hoffer et al, Modern Systems Analysis and
Design 6th Edition, Prentice Hall, 2012

44

Potrebbero piacerti anche