IB Computer Science Name: ____________________________________________
Unit 1: Systems Life Cycle and Software Development Period: _____ Date: ______________________________
Pitch an Idea to Mark Zuckerburg
OVERVIEW
Facebook was founded by Mark Zuckerberg with his college roommates and fellow
computer science students Eduardo Saverin, Dustin Moskovitz, and Chris Hughes.
The website's membership was initially limited by the founders to Harvard students,
but was expanded to other colleges in the Boston area, the Ivy League, and Stanford
University. It gradually added support for students at various other universities
before opening to high school students, and, finally, to anyone aged 13 and over.
As you can see, at its inception Facebook was not what it is today. It has gradually expanded its membership and
capabilities. To put things into perspective, when I signed up for Facebook as a college student at Michigan State
University in 2006 it was restricted to college students only and you could not upload photos, post your “status,”
chat with friends, “like” anything, or comment on posts.
Improvements and additions to Facebook have made the site far more advanced (some would say far more
complicated) than it was when it was created in 2004. Your task is to propose yet another improvement OR
addition to the system. However, it isn’t as simple as saying, “Hey Mark, I have a wicked sweet idea.” I will ask you
to follow specific steps defined as the Systems Life Cycle. This cycle involves the design and implementation of
the complete system including such things as software requirements, hardware requirements, and any
organizational re-structuring that might be needed. It is used by all software companies in order to properly and
thoroughly develop or upgrade software. Follow the steps below to get an idea of what developing software
entails.
STEP 1
Read 1.1.1 Major Stages on page 2 in Computer Science Java Enabled.
In your OWN words explain the states of the systems life cycle:
Analysis
Analysis:
Design:
Maintenance Design
Operation:
Installation:
Installation Operation
Maintenance:
What improvement or addition would you like to see on Facebook? Pitch your idea here.
STEP 2 - Explain the importance of collecting data during the analysis stage.
Read 1.1.2 Data Collection in the Analysis Phase on page 3 in Computer Science Java Enabled.
Identify the following in regard to your proposal (some may not be applicable)…
Who will input data into the system?
What form will the data be in?
Is there any validation that will be needed?
What process will need to be done to produce the required outputs?
STEP 3 - Compare methods of data collection
Read 1.1.3 Data Collection Techniques on page 3 in Computer Science Java Enabled.
Prior to implementing your idea you will first need to understand how the current system works in order to
determine if your improvement or addition is feasible. In 1.1.3 you read about several data collection techniques.
Explain which technique you will use and why.
What are the advantages?
What are the disadvantages?
STEP 4 - Describe the production of a requirements specification during the analysis stage
Read 1.1.4 The Requirement Specification on page 4 in Computer Science Java Enabled.
Think about what the customer and developers expect the system addition to be able to do and how it will be done.
Important Note: Later on in the course, when you’ve learned Java and computer architecture, you will have better idea
of what type of software and hardware will be necessary. For the sake of this assignment please do the best you can
determining what you will need.
List and briefly describe the function of the hardware and software tools that will be need to produce the solution.
List personnel and briefly describe the tasks that will be assigned to them.
STEP 5 - Outline the features of a feasibility report
Read 1.1.5 Feasibility Report on page 5 in Computer Science Java Enabled.
When the requirements of a new system have been identified during the analysis phase it is possible to produce a
report which estimates the cost, identifies any expected benefits, estimates how long the project will take, and
outlines any potential difficulties. Please accomplish these tasks below.
Estimate costs –
Identify any expected benefits –
Estimate how long the project will take –
Outline any potential difficulties –
STEP 6 - Compare the advantages and disadvantages of alternative solutions in the design stage. This should
include both hardware and software solutions.
Read 1.1.6 Alternative Solutions on page 5 in Computer Science Java Enabled.
If you chose to improve an already existing component of Facebook think of an alternative to your suggestion.
What are the advantages and disadvantages of this alternative?
If you chose to create a brand new feature for Facebook think about the alternative – not implementing this new
feature at all. What are the advantages and disadvantages of this alternative?
STEP 7 - Discuss methods of testing systems, the importance of proper testing and the implications of inadequate
testing
Read 1.1.7 System Testing on page 6 in Computer Science Java Enabled.
You will most likely use beta testing. Explain the importance of proper testing of your new/improved feature.
Besides beta testing, is there any other type of testing you recommend that wasn’t listed in the book?
STEP 8 - Outline methods of implementing new systems
Read 1.1.8 Methods of Implementing New Systems on page 8 in Computer Science Java Enabled.
In your textbook, the author discusses the implementation of a new system in regard to people working at a
company. However, in this case, I would like you to consider the impacts of implementing a new system on the
users of Facebook. With that said, which method of changeover do you suggest for your new/improved feature
parallel or phased introduction? Explain your reasoning.
What challenges to do foresee with your change to the system?
STEP 9 - Outline the features and importance of maintaining systems.
Read 1.1.9 Maintenance page 8 in Computer Science Java Enabled.
The section 1.1.9 discusses the importance of proper maintenance. Explain how your addition or improvement
will be maintained.
FINALLY – PITCH YOUR IDEA TO THE CLASS
Your PowerPoint should include the following components:
At least 10 slides
Information answering the questions above
Your slides should include information BUT NOT ALL YOUR INFORMATION
Final slide should include your sources
Visually appealing
Your slides should look professional
o No bells and whistles
o Crazy backgrounds
o Hard to read font or color
o Too much text—no good!
Each person should have a role in the presentation.
Presentation should be around 5 minutes.
KEEP IN MIND. NEARLY EVERY JOB WILL REQUIRE YOU TO PRESENT IN FRONT OF COLLEAGES. SOMETIMES
THIS WILL BE A RARE OCCURANCE BUT MORE OFTEN IT WILL BE FREQUENTLY REQUIRED. THIS WILL BE
GOOD PRACTICE.