a management framework for software project development

13
. A Management Framework for Software Project Development HO LEUNG TSOI Software Quality Institute Griffith University [email protected] ABSTRACT Software project development includes a number of activities that result in a delivered product (software). As software becomes more and more expensive to develop, project management has been recognised as a difficult task in practice. There are a lot of unpredictable factors existing in the software development cycle that have become contributing factors to this problem. This paper gives an overview of the present state of the art of the software development projects. Moreover, a framework is proposed to help project management to get better understanding and make all activities run on schedule. A case study is included to demonstrate the merit of this framework. Keywords: FPA, Project Management, Software Life Cycle, Software Size Estimation 1. INTRODUCTION An effective management is almost an ultimate objective for all software project managers. Although there are many methodologies and techniques available to be used for software development, many projects still suffer from late completion time and exceed budgets. A great number of software applications fail to meet user requirements and quality requirements that result in unacceptable maintenance costs. To tackle the problems, many researchers and practitioners focus on the technical aspect to improve the reliability of estimating the software project size or effort [1,5]. However, software projects are still suffering from overshoots of plans and budgets [3,13]. In my opinion, there are a lot of unpredictable factors existing in the software development cycle that have become contributing factors to this problem. To tackle the “change” problem, a management framework is proposed in this paper to help project management to get better understanding and make all activities run on schedule.

Upload: samuel90

Post on 11-May-2015

517 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: A Management Framework for Software Project Development

.

A Management Framework for Software Project Development

HO LEUNG TSOI

Software Quality InstituteGriffith [email protected]

ABSTRACT

Software project development includes anumber of activities that result in a deliveredproduct (software). As software becomesmore and more expensive to develop, projectmanagement has been recognised as adifficult task in practice. There are a lot ofunpredictable factors existing in the softwaredevelopment cycle that have becomecontributing factors to this problem. Thispaper gives an overview of the present stateof the art of the software developmentprojects. Moreover, a framework is proposedto help project management to get betterunderstanding and make all activities run onschedule. A case study is included todemonstrate the merit of this framework.

Keywords: FPA, Project Management,Software Life Cycle, Software SizeEstimation

1. INTRODUCTION

An effective management is almost anultimate objective for all software projectmanagers. Although there are manymethodologies and techniques available to beused for software development, manyprojects still suffer from late completion timeand exceed budgets. A great number ofsoftware applications fail to meet userrequirements and quality requirements thatresult in unacceptable maintenance costs. Totackle the problems, many researchers andpractitioners focus on the technical aspect toimprove the reliability of estimating thesoftware project size or effort [1,5].However, software projects are still sufferingfrom overshoots of plans and budgets [3,13].In my opinion, there are a lot ofunpredictable factors existing in the softwaredevelopment cycle that have becomecontributing factors to this problem. Totackle the “change” problem, a managementframework is proposed in this paper to helpproject management to get betterunderstanding and make all activities run onschedule.

Page 2: A Management Framework for Software Project Development

.

The first section of this paper discussestwo general problems, namely budgetoverrun and late delivery, for softwareapplication development. Experience andfindings from numerous studies have shownthat “change” issue is one the majorproblems in software project development.For instance, users may change therequirements at any time of the developmentcycle. All these changes may have a seriousinfluence on the software development.

To address this problem, the rest of thispaper presents a framework namely SoftwareDevelopment Management (SDM)framework. The author admits that theframework will not cover the issue ofproductivity and corrective actions selection.All these topics remain an open issue, butfurther discussion is beyond the scope of thispaper. The major task of the framework is toclosely monitor and control the developmentprocessing, using the estimates and pre-defined metrics as comparisons, so thatcorrective actions can be promptly taken ifnecessary.

2. REVIEW OF PROBLEMS

Before starting, project managers haveto estimate the size of an application in orderto determine an adequate resource level anda realistic completion time. Thus it isessential to find the accurate size andcomplexity of the software application asearly as possible. During the developmentstage, project managers need to monitor theworking progress and overcome all problemsto accomplish the project on schedule.

There is no doubt that project managershave to confront with many different kindsof problems, such as technical, management,and personnel, in the software developmentcycle. They are responsible for ensuring that

all development processes are controlledappropriately in order to meet the budget andschedule [6]. Unfortunately, softwareprojects regularly get out of hand in thedevelopment cycle. In other words, costexpended on software developmentfrequently exceeds the estimated budget andresults in the software has to be deliveredafter the deadline or has not matured. Manydevelopment problems cited in the literatureare usually related to either late delivery orbudget overrun

Due to budget overrun and late delivery,many projects are forced to be aborted; aremissing implementation of some minorcomponents; or are delivered withoutthorough debugging. In 1984, a survey studywas carried out by Jenkins to address thisproblem [2]. The developers of 72information system development projects in23 major American’s corporations wereinterviewed. Jenkins reported that theaverage cost and schedule overrun were 36%and 22% respectively. In summary, theoverrun of cost and schedule are two seriousproblems for software project development.Successful project planning mainly relies ona good estimation of the cost and closelymonitor the development process. A casestudy is included to show how theframework can be applied and the merit ofthis framework.

3. PRINCIPLES OF CHANGE

As mentioned in the previous section,development cost estimation is the mostimportant issue in the software development.Many researchers and practitioners are oftenwrongly regarded it as a technical problemthat can be solved with calculation models, aset of metrics and procedures [7,11,12]. Theauthors oppose the idea that just technicalissues can solve this problem, but are

Page 3: A Management Framework for Software Project Development

.

convinced that a technical model cancontribute to the control of softwaredevelopment. Besides, management plays animportant role in this problem. As a lot offactors can influence the developmentprogress, project management has beenconsidered difficult to accomplish. Thispaper presents a management framework forsoftware development and two principles areadopted.

a Change exists in software developmentThe development of software

application is a dynamic environment that ischaracterized by many changing factors.Change may relate to technologies,personnel, or requirements. Some of themare listed as below:

� Change in software size andcomplexity

� Change in problem domain� Change in development paradigm� Change in development manpower

b. Measurement must be performeddynamically

Since change exists in the developmentcycle, the cost measurement must beperformed dynamically in order to collect thereal-time information. In other words, themeasurement is used to continuously keeptrack of the project progress of all activitiesto cope with change [9].

In summary, change exists in thesoftware development cycle. The projectmanagers need to continuous monitoring theprogress and take corrective actions ifnecessary. This paper proposes amanagement framework that helps theproject managers to apply these twoprinciples in the software developmentprocess.

4. SDM FRAMEWORK

The emphasis on the characteristic of theframework is to address the ability to tacklethe change that affects the size and progressin development stage. It ensures that allmajor development processes will be undercontrolled. To achieve a successful softwaresystem, all development processes must becontinuously monitored. Thus they can beadjusted during development in order to copewith the problems of the changing world.This paper describes a framework to addressthe change problem during softwaredevelopment. As a result, the goals (workcontent) at different development phases canbe achieved.

Figure 2 provides an outline, in asimplified form, of the framework developedin this paper. The stages of the system can beclassified into: (1) the acquisition phase and(2) the operation phase. Acquisition phaseincludes all the activities ranging fromresearch and planning. Operation phaseincludes all activities during the actualsoftware development cycle (Figure 1 and 3).The major tasks in the acquisition phaseinvolve estimate the development cost,establishing cost management policy,establishing historical cost database, andidentifying the critical development factors.The major tasks in the operation phaseinclude reviewing monitoring and evaluationmetrics, development cost monitoring, andevaluation collected information. Thehistorical database developed in theacquisition phase can be used in theoperation phase.

Page 4: A Management Framework for Software Project Development

.

Event s

Change Software Deve lopm ent Environment

Evaluations

Results

Update Evaluation

Gu idelines

Determination

Evalu ation

Updat e Monitoring

System

Updated Sta ndards

Revie w Perfo rmanceMonitoring Stand ards

Software Planning

(eg. Estim ation ,

Estab lishing

Policy, ...)

Softwa re

Development

Effort

Manag ementFramework

Review Verification

& Det erminationGuid elines

Re view Stan dards

Setup M onito ring Metr ics

Review Planning

Operation PhaseAcquisition phase

Collect Selected

Inform atio n

Review

Process

Update Know led ge

Report to Pro ject Ma nageme nt

(Appropriate Corrective Action s W ill Be Ta ke n)

Co mpare w ithPerformance Standa rds,

Historical Database

Pe rformance

M onitoring

Evaluate theCollected Inf ormation

Verif y a nd Det ermination

(Conside ring all otherrelating Info rma tion )

Figure 1: Basic Operation of the SDM Framework

A cquis ition Phase

E stablish ing Historica lDevelopm ent E ffort

Databas e

E valuation Col lec tedInform ation

Identifying the c ritica ldev elopm ent factor

Es tabl is hing E ffort

M anagem ent P olicy

E stimate SoftwareDev elopm ent E ffort

O perations Developm ent

Effort Monitoring

M odifying M oni toring

& Ev aluation M etr ic s

Define

Trans for m

Deter mination

O peration Phase

Figure 2: SDM Framework

Page 5: A Management Framework for Software Project Development

.

In summary, the acquisition phase is apre-requisite for monitor and determination.The operation phase consists of monitoringmechanism which collect information tomake decisions and ensuring timely

detections. Besides, a feedback channel,from operation phase to acquisition phase, isset up which operate via status and progressreports to compare actual progress with theplans based on the estimates.

Start

SoftwareEstimationAcquisi tion

Phase

OperationPhase

Set MonitoringMetics & Policy(recorddown all informaiton)

CollectingProjectProgressInformation

CompareProgressvs. Targets

Set Boundaryof the Problem

Record downinformation

Report to Project Management

Review Metrics.sui table?

Check theEstimation.Suitable?

EvaluationVariant Occurs?

Check theMonitoringPolicy.

Suitable?

Determinat ion.Satisfactoy?

No

No

Yes

Yes

Yes

No

Yes

Yes NoNo

Figure 3: The Project Management Cycle

Page 6: A Management Framework for Software Project Development

.

Acquisition Phase

The acquisition phase includes theactivities of estimating, planning, scheduling,budgeting, etc. The major management tasksin this phase are described below:

(a) Cost EstimationIt is commonly agreed that estimating is

a prerequisite for good management. At theearly stage of software development, theproject management need to determine thework-content (size). The work-content of theapplication can be determined by one ofsizing techniques. The result of the sizeestimation process let project mangers to getthe basic picture of the software applicationproject. In summary, the estimation shouldsatisfy three major requirements.

(i) The overall development effort willbe identified.

(ii) Be compatible with the datarequirements

(iii) Including all critical cost drivers forthe development

(b) Assessing the Development FactorsAs previously mentioned, change will

occur at any time during the development.An assessment should be carried out to helpmaking the monitor policy. Change andsupporting are two important factors andneed to be assessed. There are many methodsfor assessing these two factors. Forillustration purpose, a simple weighted ratingscheme has been adopted. Rating scheme is awell-known analysis technique frequentlyused in the operations management[9]. Thefollowing is an example used to illustrate theassessment.

Change level rating: Low = 1, Medium = 3,High = 5

Supporting rating: Normal=1, Important = 3,Critical = 5

Using the above values, the weightedscores of the project can be found. Twoimportant issues are:

• Let the project managers with a goodunderstanding of some potentialchange problems of the softwareproject development and reduce thethreat to failure.

• The result from this stage will affectthe arrangement of next followingstage. For example, suppose theproject managers aware that theproject may have problems caused byunstable external suppliedcomponents (change occurs) and maylead to schedule and cost overruns(high importance level). Thus afrequently monitoring policy must beadopted.

Obviously, software development is adynamic process and change is bound tooccur. Thus the change and importancefactors need to be quantified beforedevelopment. Moreover, projectmanagement is free to add more criticaldevelopment factors in their own assessmentprocess.

(c) Establishing Management PolicyTo establish a set of ground rules from

which to monitoring, management isencouraged to discuss the project objectiveand requirements with all team members atthe early stage of software development.Besides, the selection of appropriate metricsand standards to measure the expenditure,productivity and performance will also bediscussed. As a result, all team membershave a better understanding of the overalldevelopment process, their roles andcommitments. In other words, the wholedevelopment team will move towards thesame goal. Examples of items that mightappears on the list of management policyinclude:

Page 7: A Management Framework for Software Project Development

.

� No overtime� The frequency to do the monitoring

(d) Monitoring MechanismThe basic idea for monitoring is to deal

with changes that are imposed from inside oroutside of the organisation.

A monitoring mechanism need to beestablished before for collecting all usefulinformation and measuring variances fromthe work plans. This system should span thesoftware development process fromrequirements analysis to integration testing.In addition, the basic intention of the systemis to support two types of progressmonitoring[10]:

(i) Milestone MonitoringUpon the completion of a particular

stage in the development cycle, severalmilestones had been established to evaluatethe progress. Supposing “waterfall” life-cycle is applied, milestone monitoring willbe set up at the end of the following stages:

• Feasibility/Requirements• Analysis• Design (Including high-level and

detailed design)• Coding• Testing

(ii) Continuous Point MonitoringContinuous Point monitoring is similar

to milestone monitoring, but can take placeat any time during a stage, and utilisewhatever data happen to be available. Thebasic difference between these twomechanisms is that continuous pointmonitoring involves just one metric overtimeand the time of monitoring is fixed.

Project managers are free to add andcollect more information items in their ownperformance monitoring system. It is used tomeasure the overall and practicalachievements of the software project against

the prescribed targets of the different stagesof the development. Obviously, softwaredevelopment is a dynamic process andchange is bound to occur. Thus all changeshave been closely monitored and justified.

(e) Establishing Historical DatabaseIt is essential to build a database to

ensure continuous improvement on theestimation knowledge. Besides, the databaseis very useful in making the estimation. Ithelps the project management in consideringthe reuse of components of the existingsoftware and determining the potentialreusability of the software under design. Inshort, the database will facilitate “planningexperience transfer” in the organisation.

Operation Phase

The operation phase includes theactivities of monitor, evaluation anddetermination. The major management tasksin this phase are described below:

(a) Performance MonitoringUsing metrics and standards can keep

track of the project progress of all activitiesin terms of time, size and quality. Theperformance monitoring mechanism operatescontinuously in the development processuntil the products finally delivered to thecustomer. To get better result, manyresearchers [4] suggest that the monitoringsystem operate via status and progressreports to compare actual progress with theplans based on the estimates. The majoradvantage is that the reporting stores,analyses and filters information of projectprogress. Unfortunately, softwaredevelopment is so complex and is developedby many intellectual people whose activitiesare hard to measure. Thus the reportingmechanism cannot sufficient to reflect thewhole picture. The reason is simple -development staffs do not really like too

Page 8: A Management Framework for Software Project Development

.

early upsetting the project management. Inother words, problems can not be earlyreflected and the longer an error goesdetected, the more expensive it is to correct.For example, the cost of correcting an errormade during the initial analysis of a projectis only one-tenth the cost of correcting asimilar error after the system has been turnedover to the customer [8]. To get a bettermonitoring, the authors believe that informalmonitoring mechanism also play animportant role and the following points areworth to be highlighted.

� Measure the performance of a grouprather than an individual.

� Formal and Informal meetings withdifferent teams are worth to be heldduring development cycle.

� Observe the overall performance ofan individual in informal basis

� Pay more attention to the schedule ofabsence from work. Generally, if oneperson can not fulfill his work onschedule, he will cancel or re-arrangehis leave schedule.

Based on written report, formal/informalmeeting, and observation, the monitoringsystem can collect different kind ofinformation relating to the actual progress ofthe development. In summary, themonitoring system assists the management tospot symptoms of problems during thedevelopment process.

(b) Evaluating Information and theMonitoring Metrics

The major idea of this stage is to assistthe project managers to identify whatproblem really happened in the project basedon all collected information only. In otherwords, all collected project progress datafrom the performance monitoring systemmust be evaluated and represented in astandard format. Thus it can be interpretedconsistently by project management.

Before evaluation, the project managershave to review the evaluation metrics inorder to make sure all measurement tools aregood to identify or state the problemcorrectly. If the metrics can not truly reflectthe real problem, the project managers needto adjust them and re-evaluate allinformation again.

Evaluating project progress can beregarded as a validation process to ensurethat project progress information reflects theactual project situation. Based on allcollected information, the expected progressin deliverables against actual progress willbe examined and provides the ‘rough’boundary of the problem. For example,schedule evaluation aims at comparing theactual expenditure of time with the plannedschedule. After evaluation, project managersunderstand whether the project will befinished with an unacceptable schedule.

It should be reminded that somesymptoms may be common to differentproblems or one symptom may be caused byseveral problems. For example, the symptomof overtime working may be caused by poorcommunication, poor job allocation,insufficient support, etc. The most importantissue is that the project managers need toknow problem has happened so thatremedies can be devised.

(c) DeterminationObviously, decisions are essentially

responses to problems occurring in softwaredevelopment. Once the evaluation metricsare found appropriate and the problem hasbeen identified, the project managers mustdetermine the boundaries of an acceptablesolution and identify all possible courses ofaction. Considering all updated projectinformation from the monitoring system andother relating factors, project manager needsto determine whether the project hasdeviated from the plan.

Page 9: A Management Framework for Software Project Development

.

To achieve the goal, a two-stepmechanism is adopted. The first step is to re-arrange the project plan based on the updatedproject information. The project scheduleand size plan re-construction will eliminatethe self complementary effect. For example,the early completion of one task and theoverrunning of another task maycomplement each other and make it difficultfor the project managers to be aware of theproblem.

Having a new project schedule, thesecond step is to consider all factors relatingto the event in order to predict the futureresult. For example, low a productivity levelmay be accepted in the early stages of thesoftware development cycle because teammembers have to spend time to understandthe complex application. The projectmanagers need to consider all possiblefactors before making decision. Thus in eachdecision making, the project managersexplicitly or implicitly make assumptionsabout the future. If the event will cause theproject to deviate from the target time orbudget, some corrective actions must betaken.

In general, Acquisition phase wouldform part of the activity duringfeasibility/requirement stage of a “waterfall”software development life cycle model,while operation phase would certainty beoperated continuously in the developmentprocess until the products finally delivered tothe customer. The estimate at acquisitionphase may be a ‘rough’ estimate based onlimited information only and will be furtherrefined during the development cycle ifnecessary.

5. CASE STUDY

In this section, an empirical case studywill be presented to show how to apply the

SDM framework in real life softwaredevelopment. The project has been requestedby a large electronic component tradingcompany by an international softwareconsulting organisation. This project hasbeen designed to replace the existing manualtelephone ordering system. The clientrequested to develop this system on apersonal computer with Object-Oriented(OO) database design and programming andseveral advance remote client-severtransmission technologies. Besides, the clientrequested the remote client-sever system tobe completed by a specified date without anyoverruns.

Briefly, the application was a newsystem and consist of two parts, namely Off-line system and On-line system.

• Off-line systemThe off-line system allowed the user

to store details of various requests, the userthen must connect the customer terminal tothe central computer system (orders via tele-communication process) to transmit theordering information to the trading companyin Hong Kong. This process could be donethrough a modem from any suitabletelephone hookup in Mainland China orworld wide.

• On-line systemThe objective of this system was to

monitor and control the ordering process. Forexample, the system allowed users to querythe state of the account balance or displaythe information of the electroniccomponents, such as price, terms of delivery,etc.

After an intensive investigation, adecision has been reached applying SDMframework for this application. The decisionwas made based on following reasons:

Page 10: A Management Framework for Software Project Development

.

• The development team consisted amix of experienced softwareconsultant and some newly recruitedgraduates. They did not have muchexperience on the OO design anddevelopment.

• “Object-Oriented” is a new softwaredevelopment paradigm. This affectsthe accuracy for using many popularsoftware size estimation techniques,such as Function Point, COCOMO,etc. Moreover, these metrics whichare developed for conventionalsoftware have been found difficult touse in OO development environments.

• The deadline was tough and couldnot be extended.

In summary, there were many elementsof uncertainty which might appear duringdevelopment. Any one of these elementscould mask the effects of other factors inestimation and cause the result to beunreliable. The company adopted to applythe SDM framework and it was expected toprovide the management with moreinformation and a reliable control.

(a) Feasibility Study:To understand the status of the

development process, a developmentanalysis was performed and two kinds ofissues, namely change and supporting, wereconsidered.

Change issue:Likelihood of change of requirement,

Likelihood of change of developmentenvironment. Likelihood of change ofdevelopment man-powers, Likelihood ofchange of support, etc.

Supporting issue:Experience of staff, Knowledge of the

user, Participation of the user,

Using a simple weighted rating scheme,

the project management determined thisproject as a medium level of change and lowlevel of the supporting. The projectmanagement highlight the need to pay moreattention to the change from inside support,such as the inexperience of the developmentstaff.

By the end of this stage, the projectmanagement policy had been established andsome of them, without going into detail, arelisted below:

• Monitor development fortnightly• The construction cost and

development variance should be lessthan 5%

• No development delay and costoverrun should be allowed forAnalysis phase and Design phase

• Report exceptions and actions• Compare progress with schedule

fortnightly

(b) Analysis PhaseSeveral monitoring metrics and

performance standards were established.Standards were based on the organization’spast experience, the experiences of othersimilar organizations, the appropriate publicstandard, and some reasonable personaladjustment. Four major elements, namelysize, time, quantity, and quality, were foundin these standards. These elements madestandards understandable and measurable.Two important elements were listed below:

i: Time:The monitoring measurement need to

compare the schedule with the delivered orcompleted items at the review time. If therewas a schedule slippage, the projectmanagement must investigate the source ofthe problem.

ii: Budget:The monitoring measurement need to

Page 11: A Management Framework for Software Project Development

.

compare the actual work-content with theplanned schedule. If the actual work-content(size) is not being closely monitored, alltime-oriented problems will not be revealeduntil the project is finished with anunacceptable cost or time. In other words,extra money or time have been spent toaccomplish the project.

(c) Design Phase :From the monitoring mechanism, the

project manager found that the productivitylevel as lower than (approximately 10%) thepredefined standard. The major reason is that“Object-Oriented” analysis and design is anew software development paradigm, soprogrammers needed to spend a lot of time tolearn how to apply it.

Considering all relating information,such as the stage of the slippage, the effortmanagement determined that the slippagewas due to the initial learning time requiredfor understanding the complex application.Moreover, the performance of the systemAnalyst and programmer was foundimproving significantly. The projectmanagement made the decision that theywould be able to complete the task on orbefore the target time. Thus no report neededto be submitted to the project manager butthis matter had to be closely monitoring andrecorded for further reference. Besides, thepolicy of monitoring had been changed to:

• Monitor development weekly• Compare progress with schedule

weekly

This new arrangement ensured adequateinformation supply and prompt evaluation/determination.

(d) Implementation Phase:During this stage, the project

management found that the productivitylevel was lower than (approximately 20%)

the predefined standard because two keyprogrammers resigned halfway into theprogramming phase. This matter made aserious impact on the development process.The project management considered allrelating information to determine that it is aproblem which had to take corrective actionas soon as possible. As this problem wasfound before causing a serious deviation, theproject manager still had enough time to re-arrange the man-power in order to meet theschedule.

Finally, the project completed anddelivered on schedule. The software projectwas eventually successful. It is not becausethere were no problems during thedevelopment cycle but because the problemshave been found and overcome beforecausing serious deviation. The major task ofthis framework is the prediction ofdevelopment efforts and monitor theprogress of the development. Once adeviation has been found, projectmanagement need to determine the boundaryof the problem and the corrective actionsmust be taken timely. This arrangementmakes sure that the software project can bedeveloped according to plan and to be readyexactly on time.

5. CONCLUSION

Experience has shown that most projectmanagers seldom enjoy the luxury of excessresources and spare time in doing the costestimates. Moreover, the resource constraintsand different kinds of uncertainty cause a lotof difficulties in project cost estimating andplanning. The success of a software projectrelies very much on a good management andcontrol system which allows thedevelopment to satisfy the project objectives.However, the development of softwareproject involves many factors which are hard

Page 12: A Management Framework for Software Project Development

.

to manage in this ever-changing world. Someexamples of these factors are humanrelationships, technological changes,frequency requests for changes by users, etc.

As mentioned early, software projectdevelopment have a dynamic nature.Therefore, changes are bound to occur. Thispaper presents a framework to the softwareproject management in order to tackle theproblems from changing development.Generally, the SDM framework is developedto let project managers monitor thedevelopment process and make the projectdevelopment running on schedule. The casestudy shows that change in personnel iscommon and not easy to be predicted.Applying the SDM framework, projectmanager monitors the development processand work closely together with teammembers. Surely it is too early to form finalconclusions about the efficient andusefulness of the framework but the resultsfrom the one project so far are certaintyencouraging. In order to use this frameworksuccessfully in practice, the following areimportant requirements:

� close working with team members� understanding the needs of the users� commitment of management before

starting� close monitoring of the development

progress� using different points of view to do

evaluation at different developmentstages

� evaluation will be redone whilechange appears

The authors believe that the SDMframework and above requirements arebeneficial in the monitoring and controllingthe development cost of software projects ingeneral. The use of the framework will likelyresult in improved the software development

for those project managers who choose toapply it.

ACKNOWLEDGMENT

The author would like to thank Dr. ChukYau for various insights concerning the ideasupon which this paper is built, and to the Mr.Vincent Cheng for his encouragement andsupport during the course of this research.

______

REFERENCES

[1]Albrecht J. Allan and Gaffney E. John,“Software Function, Source LinesCode, and Development EffortPrediction: A Software ScienceValidation,” IEEE Trans. of SE., Vol.9 No.6, November 1983

[2]A.M. Jenkins, and J.C., Wetherbe,“Empirical investigation of systemsdevelopment practices and results,”Inform. Manage., 1984

[3] Capers Jones,“The Productivity ReportCard,” Software News, Sept., 1986

[4]P. Rook, “Controlling Software Projects,”Software Engineering Journal, Vol.1, No. 1, January 1986

[5]Charles R. Symons, “Function PointAnalysis: Difficulties andImprovements”, IEEE Trans. onSoftware Engineering, Jan. 1988

[6]D. Phan, D. V. & J. Nunamaker, “Thesearch for perfect projectmanagement,” Computerworld, 1988

[7]Heemstra, F J, “Software CostEstimation”, Information and

Page 13: A Management Framework for Software Project Development

.

Software Technology, Vol. 34 No 10October 1992

[8] P. Goodman, Practical Implementation ofSoftware Metrics, McGRAW-HILLBook Company, 1993

[9]N, Ashley, Measurement as a powerfulsoftware management tool,McGRAW-HILL Book Company,1994

[10]Barbara A. K. and J. G. Walker, “Aquantitative approach to monitoring

software development”, SoftwareEngineering Journal, January 1989

[11]E.R. Gray & L.R. Smeltzer,Management the competitive edge,Collier Macmillan Publishers, 1989

[12]Capers Jones, Applied SoftwareMeasurements, McGRAW-HILL,NY, 1991

[13]FJ Heemstra, “Software CostEstimation”, Information andSoftware Technology, Vol.34, 1992

_____