CS 501: Software Engineering - PowerPoint PPT Presentation

About This Presentation
Title:

CS 501: Software Engineering

Description:

Business Aspects of Software Engineering. 2. CS 501 Spring 2002 ... No discrimination against fields of endeavor. License must not be specific to a product ... – PowerPoint PPT presentation

Number of Views:60
Avg rating:3.0/5.0
Slides: 21
Provided by: wya1
Category:

less

Transcript and Presenter's Notes

Title: CS 501: Software Engineering


1
CS 501 Software Engineering
Lecture 7 Business Aspects of Software
Engineering
2
Submit your student projects by February 18,
2002. See www.cs.cornell.edu/boom.
3
Administration
Feasibility report Please submit an email message
to cs501_at_cs.cornell.edu with the report as an
attachment. Possible formats are .doc, .pdf,
.html, .ps, or .txt. Project teams If you are not
a member of a team with 5 to 7 people, please
meet at the end of the class. email Copy email
messages to cs501_at_cs.cornell.edu only if you want
a response from the course team.
4
Administration
Quiz 1 Quiz 1 will be returned at the beginning
and end of class today.  If you do not pick up
your work now, it can be collected from Rosemary
Adessa in Upson 5147. The quiz and the solution
to Question 2 are posted on the web site, under
Assignments.  Question 1 will be discussed in the
lectures.
5
Some Business Models
Bespoke software for customer software is
written by independent contractor product may be
owned by supplier or customer Package licensed to
customer binary only (Microsoft model) source
code for customer's modifications Software
developed in-house Software bundled with hardware
product (PalmPilot, digital camera)
6
Free-Lance Software Development
You and a few friends create a company to develop
software. You are offered a contract to write
bespoke software. How much should you charge per
hour? You plan to work 40 hours a week for 50
weeks of the year and want to earn
50,000. Hourly rate 50,000 / (40 x 50)
25 But ...
7
Free-Lance Software Development
Salary 50,000 Taxes and benefits 15,000 R
ent, equipment, etc. 10,000 Fees, services,
etc. 15,000 Travel and misc. 10,000
TOTAL EXPENSE 100,000
Hours worked 2,000 less administration
400 less marketing 350 BILLABLE HOURS
1,250 Hourly rate 100,000 /1,250 80
8
Free-Lance Software Development
You MUST have a contract with the customer. It
may be a simple letter or a complex
agreement. What should it contain? Are you being
paid by the hour? Or by completion of the
task? What acceptance tests will be done? Who
decides when the job is done? Who owns the
software? What licenses does the other party
have? Who provides hardware, software that is
required, supplies, etc.? WHEN WILL YOU GET YOUR
MONEY!
9
Fixed and Variable Cost Packaged Software
Example The initial development cost of a
software product is 1 million. The cost of
packaging and distribution of each copy is
5. Technical support costs average 15 per
copy. The package sells for 200 per
copy. Fixed cost 10 million Variable cost 20
10
Fixed and Variable Costs Profit or Loss
1.5M
Revenue
Costs
1.0M
0.5M
Unit sales
2,500
5,000
7,500
11
Profit or Loss?
  • If you sell 7,500 copies do you make a profit of
    350K?
  • Did you borrow money to cover the start-up
    period? How much interest did you pay?
  • What about taxes?
  • Cash flow
  • When will you be paid (always late)?
  • When do you have to pay your bills?
  • Risk
  • What extra costs do you have if the product is a
    year late?
  • What if you only sell 5,000 copies?
  • If you increase the price, does your revenue go
    up or down?

12
Unorthodox Business Models Shareware
  • Shareware
  • Producer writes a software package.
  • Distribution is open, but requests a fee, e.g.,
    50.
  • Users who pay the fee may get a small benefit,
    e.g., no message when they start up the software.
  • Some people have received substantial revenue
    this way.

13
Unorthodox Business Models Open Source
  • Examples Linux, Apache, Perl
  • Market leaders
  • High quality
  • General model
  • Shared development
  • A central developer provides overall coordination
  • Distribution of source code is completely open
  • Personal examples
  • TCP/IP for Vax/VMS
  • Python

14
Notes on Open Source
Software may be open source, but packaging and
services can be profitable businesses (e.g., Red
Hat, IBM Linux). For more information about open
source software, see http//www.opensource.org/
Many open source software projects are managed on
the SourgeForge system http//sourceforge.net/ O
pen source software development and distribution
is particularly suitable for organizations such
as universities who develop software for the
public good.
15
Open Source License
Sample open source license (GNU General Public
License) http//www.opensource.org/licenses/gpl-
license.html Free redistribution Source
code available Derived works permitted
Integrity of the author's source code No
discrimination against persons or groups
Protection against unscrupulous patents No
discrimination against fields of endeavor
License must not be specific to a product
16
Discussion of Pfleeger, Chapter 3
Format State a question. Ask a member of the
class to answer. (Sorry if I pronounce your
name wrongly.) Provide opportunity for others to
comment. When answering Stand up. Give your
name or NetID. Make sure the TA hears it. Speak
clearly so that all the class can hear.
17
Question 1 Effort Estimation
(a) Give five reasons why estimates of effort are
often wrong. (b) In algorithmic methods of
estimation, what is the most important factor
used to predict effort? (c) Name two other
important factors.
18
Question 2 Risk Management
(a) Personnel shortfalls are a major risk factor.
What can be done to address them? (b) What is
gold plating? What can be done to lower the risk
associated with it? (c) Why are computer science
capabilities considered a risk factor? (d) The
book defines risk exposure as risk impact x
risk probability Do you find this concept
useful?
19
Question 3 Project Management
(a) The book is very enthusiastic about the
Enrollment Management model used by the Digital
Equipment Alpha AXP project. What are the
characteristics of this model? (b) What is a
matrix organization? What are the advantages and
disadvantages of such an organization? (c) How
does matrix organization compare with the Chief
Programmer model of organization.
20
Question 4 The Person-Month
The COCOMO model and other models of effort
estimation use the concept of the person-month,
yet the most famous book on software engineering
is called The Mythical Man-Month. (a) What is a
person-month? (b) When is this a useful concept?
Give an example. (c) When is this a dangerous
concept? Give an example. (d) If 10 software
developers can develop System Z in two
years, how long would you expect 20 developers to
take? (e) If System Z has to be completed in a
hurry, how would you decide how many
people to assign?
Write a Comment
User Comments (0)
About PowerShow.com