Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

CPE 310 SOFTWARE ENGINEERING

Spring Semester-2021

Dr. Nesrin AYDIN ATASOY

Week 4: Planning

The first stage of the software development process is the planning stage. In
order to develop a successful project, the whole picture of the project must be
taken. This picture is produced as a result of the project planning phase. Project
plan components are as follows:
o Project Scope
o Project Time-Work plan
o Project team structure
o Technical definitions of the proposed system, Special development
tools and environments
o Project standards, methods and methodologies
o Quality assurance plan
o Environmental management plan
o Resource management plan
o Education plan
o Test plan
o Maintenance plan

Things to be done at the project planning stage can be summarized as


follows:
o Determination of project resources
o Project cost estimation
o Creating the project team structure
o Detailed project plan
o Project monitoring

The project plan, which is the main output of the planning phase, is a
document that will be used, reviewed and updated throughout the project.
Therefore, the Planning stage is different from other stages.
The resources to be used when planning a software project should be:
 Human Resources: It is determined who will take place for which period
and at which stages of the project.

Project manager Hardware Team Leader

Software Team Hardware Engineer


Leader

Web Designer Network Specialist

System Designer Software Support Staff

Programmer Hardware Support Staff

System administrator Instructor

Database Manager supervisory

Quality Assurance Call Center Staff


Manager

 Software Resources: Software resources are computer aided platforms


used to develop code.

 Hardware Resources: Nowadays, hardware systems are gradually


turning into open system architecture. Brand loyalty in the past is
gradually disappearing. It is the determination of the environment such as
Hosts, Servers (Web, Email, Database), User computers (PC), Local area
Network (LAN) Infrastructure, Wide area network (WAN) infrastructure.

 Project Classes

o Discrete Projects: Like a human resources management


system working on Lan, which is small in size, by
experienced staff.

o Semi-Embedded Projects: Projects with both information


dimension and hardware deployment dimension.
o Embedded Projects: Projects aiming to drive equipment
(software driving a pilotless plane - hardware constraints are
high).

 Project Costs

Cost management has an important place in the development process. Thanks to


cost management;

 Facilitating the information system development process,


 Prevention of delays,
 Providing more effective resource use
 Effective implementation of the work schedule
 Healthy pricing of the product
 It is ensured that the product is finished on time and within the targeted
budget limits.

 Cost Estimation Methods

Information such as the total duration of the project, the total cost of the
project, the total number of lines, the number of staff-quality-working
time, the cost of a person-month gives important information about the
cost estimation for other projects after the project is finished or most of
the project is finished. The most commonly used cost estimation methods
are shown in Table 1.

Table 1. The most commonly used cost estimation methods


These methods are classified according to the size of the project and the way in
which the methods are applied. The common features of these methods are as
follows:

 The main steps of the project are input.


 Taking environmental features of the project as input,
 Using linear or nonlinear equations,
 Outputs of the project such as number of lines, number of function points,
time, labor, monetary cost

o Effective cost method -COCOMO

COCOMO is a cost estimation model that has received a lot of attention since it
was published by Boehm in 1981. The application can be done in three different
model formats depending on the level of detail to be used:

 Basic model
 Intermediate model
 Detail model
All COCOMO models take line number estimation as basic input and output
workforce and time as output. By dividing the workforce value by the time
value, approximately the number of people is estimated.

Figure 1. COCOMO models

All COCOMO models use nonlinear exponential formulas for workforce and
time values. The formulas used in Figure 2 can be seen. The COCOMO
formulas used different project types vary.

Figure 2. COCOMO model formulas.

 Basic model: It is used for fast estimation for small and medium projects.
Formulas used;

Discrete projects:

K = 2.4 x S1.05 Labor


T = 2.5 x K0.38 Time

S: bin (103 ) türünden satır sayısı(Number of


Line) S= 50*103

Semi-Embedded projects:
K = 3.0 x S1.12 Labor
T = 2.5 x K0.35 Time

Embedded projects:

K = 3.6 x S1.20 Labor


T = 2.5 x K0.32 Time

Figure 3. COCOMO model formulas used in different projects.

Example: Calculate the time and labor costs of a 50,000-line semi-embedded


type project using the COCOMO basic model.

 Creating a Project Team Structure

In order for a software project to work effectively, the project team needs to be
determined well. Generally, all project management methodologies suggest a
project team structure. One of these, the PANDA project team structure is
basically created on the basis that each project unit operates directly under
project management. The main components are:

o Project Control Unit: Consists of top executives who are responsible for
developing the project. As high level problems are highly collected, it is
necessary to keep the interest of the top management with the project
constantly and be included in the project.

o Project Management Unit: It is the highest responsible unit for project


management. It consists of one or more managers according to the project
size. It is responsible to the Project Audit Unit and directly to the project
owner.

o Quality Management Unit: Checks and approves the compliance of the


project to its purpose throughout the production process. It only works
dependent on the Project management unit at a distance equal to all other
units.
o Project Office: It is the unit responsible for all kinds of administrative
works (correspondence, personnel monitoring) related to the project.

o Technical Support Unit: Technical support unit such as hardware,


operating system, database.

o Software Production Coordination Unit: Consists of Software


Production Teams (4-7 people will not increase much). If there is more
than one software Production Team, the Joint application becomes the
Software Support Team responsible for the development of the software
parts.

o Education Unit: This unit is responsible for any training related to the
project.
Application Support Unit: For example, the unit that provides instant
support by phone.

You might also like