You are on page 1of 24

Software and Software

Engineering
Week 1
Instr. Dr. Kokten Ulas BIRANT
Program
Program is an autonomous piece of
code, that could be executed. [2]

2
System
System is a related collection of
programs.
System is also used to define the
hardware and software combination.
[2]

3
Software
 Computer Software is the product that
software engineers design and build. It
encompasses programs that execute
within a computer of any size and
architecture, documents that encompass
hard-copy and virtual forms and data that
combine numbers and text but also
includes representations of pictorial, video
and audio information. [1]

4
Software
includes [2]
– Machine-readable form
– Specification document
– Design document
– Legal and accounting documents
– Project management documents
– All types of manuals

5
Software Applications
System software
Real – time software
Business software
Engineering and scientific software
Embedded software
Personal computer software
Web-based software
Artificial intelligence software
6
Importance?
1985>Software costs:
$140.000.000.000.-
Yearly increment > %12
2009 > $2.125.000.000.000.-

7
History
Common problems: [1]
– Why does it take so long?
– Why are development costs so high?
– Why can’t find all faults before delivery?
– Why can’t we measure the
development?

8
History
Software Engineering: 1967, NATO
Study Group, Garmisch/GERMANY
1968, NATO Software Engineering
Conference: Software Crisis
– Low quality
– Not met deadlines and cost limits

9
After 35 years
Still softwares are
– Late
– Over budget
– With residual faults
Means
– SW has own unique properties and
problems
– Crisis >>>>> Depression

10
Is SW An Engineering?
Maybe?!?
Bridge – Operating System
– After collapse, redesign&rebuild
– Inspect similar bridges
– Perfectly engineered
– Experience
– Maintaining

11
Basic Phases
 Requirement Phase
 Specification (Analysis) Phase
 Design Phase
 Implementation Phase
 Integration Phase
 Maintenance Phase
– Corrective
– Enhancement
 Perfective
 Adaptive
 Retirement Phase
12
Software Myths
MANAGEMENT MYTHS:
– WE ALREADY HAVE A BOOK THAT IS FULL OF
STANDARDS AND PROCS!!!!!!
– MY PEOPLE HAVE DEVELOPMENT TOOLS AND
NEWEST COMPUTERS!!!!!
– IF WE GET BEHIND SCHEDULE, WE CAN ADD
MORE PROGRAMMERS!!!!!!!!!
– IF OUTSOURCE TO 3RD PARTY, I CAN JUST
RELAX AND LET THEM BUILD!!!!

13
Software Myths
CUSTOMER MYTHS:
– A GENERAL STATEMENT OF OBJECTIVES
IS SUFFICIENT TO START, WE CAN
FILL DETAILS LATER!!!!!!!!
– REQS. CONTINUALLY CHANGE, BUT IT IS
EASY, BECAUSE SOFTWARE IS
FLEXIBLE!!!!!!!!!

14
Software Myths
 PRACTITIONER MYTHS:
– ONCE THE PROGRAM IS WRITTEN AND GET IT
TO WORK, OUR JOB IS DONE!!!!!!!!
– UNTIL GETTING “RUN”, WE CAN DO
NOTHING ABOUT QUALITY!!!!!!!!!
– THE ONLY DELIVERABLE PRODUCT IS THE
WORKING PROGRAM!!!!!!!!
– SW ENGINEERING WILL PRODUCE
UNNECESSARY DOCS AND MAKE US
SLOW!!!!!

15
IMPORTANCE OF SW ENGINEERING
?!?

IMPACT OF CHANGE
60-100x
Cost of Change

1x 1,5-6x

Definition Development After Release

16
IMPORTANCE OF SW ENGINEERING
?!?

17
IMPORTANCE OF SW ENGINEERING
?!?

18
Human Factors?
Important, because
– To be effective, software engineers
must understand their staff
– Computer systems are used by people
– Programmer productivity is a critical
cost factor

19
Human Diversity
It is impossible to define or choose a
BEST personality.
But we should think;
– Stress
– Adaptation

20
Diversity: Çeşitlilik
Group Working
 A statistics: (Spent time)
– %50 for interaction
– %30 for working alone
– %20 for travelling, training, etc.
 Important Concepts;
– Personalities in groups
– Egoless programming
– Group leadership
– Group loyalties
– Group interaction
21
Ergonomıcs
Most important factors:
– Privacy
– Outside awareness
– Personalization

22
References
Software Engineering, Roger S.
PRESSMAN
Object Oriented and Classical
Software Engineering, Stephen R.
Schach
Software Engineering, Ian
SOMMERVILLE

23
Questions ?

Week1(Software and Software


Engineering)
Instr. Dr. Kokten Ulas BIRANT

You might also like