REKAYASA PERANGKAT
LUNAK
Pendahuluan
•
Software project management
begins
with a set of activities
that are called
project planning.
•
Before the project can begin, the manager and the software
team must estimate the
work
to be done, the
resources
that
will be required, and the
time
that will elapse from start to
finish.
Pendahuluan
•
Estimation begins with a description of
the scope
of the
product.
•
The problem is then
decomposed
into a set of smaller
problems and each of these is
estimated
using historical
data and experience as guides.
•
It is advisable to generate your estimates using at least two
different methods
(as a cross check).
Tujuan Perencanaan PPL
Scope (Ruang Lingkup) PL
•
The
first activity
in software project planning is the
determination of software scope.
•
Unambiguous
and
understandable
at the management and
technical levels.
•
A statement of software scope must be
bounded
.
•
Software scope
describes
the data and control to be
Mendapatkan Ruang Lingkup
•
Conduct a preliminary meeting or interview.
•
Example questions:
• Who is behind the request for this work? • Who will use the solution?
Feasibility (Kelayakan)
•
Scoping is not enough.
•
“Can we build software to meet this scope?
Is the project
feasible?”
•
Four solid dimensions:
• Technology — Is it within the state of the art?
• Finance — Can development be completed at a cost the software organization, its client, or the market can afford?
• Time — Will the project’s time-to-market beat the competition?
Perspektif Sumber Daya
•
Masing-masing sumber daya tersebut dispesifikasikan
dengan 4 karakteristik berikut ini:
• Deskripsi Siapa, Apa
• Ketersediaan Jumlah dan kualitas • Waktu Kapan digunakan
SOFTWARE PROJECT ESTIMATION
•
To achieve reliable cost and effort estimates, a number of
options arise:
a) Delay estimation until late in the project (obviously, we can achieve 100% accurate estimates after the project is complete!).
b) Base estimates on similar projects that have already been completed.
c) Use relatively simple decomposition techniques to generate project cost and effort estimates.
Teknik Dekomposisi
•
Software sizing
•
Problem based estimation
•
LOC based estimation
COCOMO Model
• COnstructive COst MOdel. • Address the following areas:
• Application composition model. Used during the early stages of software engineering, when prototyping of user interfaces,
consideration of software and system interaction, assessment of performance, and evaluation of technology maturity.
• Early design stage model. Used once requirements have been stabilized and basic software architecture has been established. • Post-architecture-stage model. Used during the construction
Keputusan: Beli atau Buat?
•
Software engineering managers are faced with a
make/ buy
decision
:
•
(1) software may be purchased (or licensed) off-the-shelf,
•
(2) “full-experience” or “partial-experience” software
components may be acquired and then modified and
integrated to meet specific needs, or
Outsourcing
• Software engineering activities are contracted to a third party who does the work at lower cost and, hopefully, higher quality. • Software work conducted within a company is reduced to a
contract management activity.
• The decision to outsource can be either strategic or tactical.
• (+) Cost savings can usually be achieved by reducing the number of software people and the facilities (e.g., computers, network). • (-) A company loses some control over the software that it needs.
Six Generic Functions
• 1. Sizing of project deliverables. Work products include the external
representation of software (e.g., screen, reports), the software itself (e.g., KLOC), functionality delivered (e.g., function points), descriptive information (e.g. documents).
• 2. Selecting project activities. The appropriate process framework is
selected and the software engineering task set is specified.
• 3. Predicting staffing levels. The number of people who will be available to
do the work is specified.
• 4. Predicting software effort. Estimation tools use one or more models
(e.g., Section 5.7) that relate the size of the project deliverables to the effort required to produce them.
• 5. Predicting software cost. Given the results of step 4, costs can be
computed by allocating labor rates to the project activities noted in step 2.
• 6. Predicting software schedules. When effort, staffing level, and project
Kesimpulan
•
The software project planner must estimate three things
before a project begins:
• How long it will take,
• How much effort will be required, and • How many people will be involved.
Kesimpulan
•
Decomposition techniques require a delineation of
major software functions, followed by estimates of
either
• (1) the number of LOC,
• (2) selected values within the information domain,
• (3) the number of person-months required to implement each function, or