Homework 9 Solutions
1.264, Fall 2004
Assessment of first cycle of spiral model software development
Due: Friday, December 3, 2004
Group homework
In this homework you have two separate questions:
1. Assessment of the first cycle of the development spiral, in preparation for a
second.
2. Brief question on telecom
A. Review of Development Cycle 1
The chemical database and Web application that you have prototyped in your first round
of the spiral model of development have unexpectedly been chosen by the CTO as the
basis of her software system. She would like you to develop a cost estimate for the
production system by December 3, before the next meeting of the company board of
directors. She understands that it's difficult to produce this estimate quickly, but the next
board meeting is 3 months later, and that would delay the system three months.
Take out your homework 2 solutions and revise them to reflect the knowledge gained
from doing the first cycle of development. Don't rewrite the document; just make
changes, additions or deletions to reflect what you've learned. They can be brief; they
can refer to homeworks 2-8 as needed.
Hand in the revised requirements document. Keep it the same length and organization as
your original document. Update the user interface, process descriptions, resource
estimates, etc. Change the error bounds on the resource estimates to reflect the later stage
of development.
While you would normally include the data model, sample database and prototype
prototype Web application in the revised requirements (and design documents), assume
that they are available and will be delivered to the management as separate documents, to
which you may refer. Thus, you should assume that homeworks 2-8 are being handed in
to the management as well, and that they have been appropriately edited. Again, revise
only homework 1.
Add two pages of comments at the beginning of your revised requirements, addressing
the following questions:
� What do you believe the outcomes of development efforts would be in the following two cases:
� Contracting development of your system to a vendor based on your original homework 1
� Contracting development of your system to a vendor based on a package containing your homeworks 2-8 and revised homework 1
� Do you feel that the error bounds on the resources for the next cycle are reasonable? Do they reflect the uncertainty that has been removed by the first cycle of the spiral model?
� Do you feel the current requirements can be translated into a design and system with low risk, or are there still substantial elements of uncertainty? If so, identify the substantial elements of uncertainty.
Solution:
The comments should cover the following:
1. Outcome of efforts in the following two cases:
Contracting development to a vendor after HW1: Vendor would have stated
that the requirements are inadequate and would insist on a change order
process that would be invoked many times as changes are made and
details are specified. It would be a slow, costly and contentious process to
build a production system from your initial requirements. The data model
would have to be built, processes would be changed, the user interface
would be changed, etc.
Contracting development to a vendor after HW7: Vendor would be pleased
that the requirements are well defined and a first version of the system
exists, albeit with missing parts and imperfections. Data model, processes
and user interface would be quite stable. Effort would be highly likely to
succeed.
2. Error bounds on next cycle. Error bounds at the ‘Product Design’ level are 0.8 to
1.25 times the point estimate. At the ‘Detailed Design’ level they are 0.95 to 1.05.
These are narrow ranges but they should be attainable as long as omitted issues
are addressed in the revised requirements. Examples are database transactions,
scalability to large volumes, security, etc.
3. Can requirements be translated into a design and a system? Except for the items
noted immediately above (transactions, scalability, security and a few related
itesm), a system could be built by a vendor. There are a lot of other issues that
would have to be addressed (installation, configuration, software maintenance,
etc.) but the core system could be built.
B. Telecom
In your chemical manufacturing facility you have three buildings separated by streets and
a river as follows. (The real estate was available and cheap.)
Building A is the manufacturing site; building B is the information technology facility
and building C is the warehouse and shipping site; it ships by water, highway and rail.
Describe three ways in which the chemical manufacturer can connect these three buildings at data rates of at least 1.5Mbps. Of the three, which would you recommend, and why? The manufacturer cannot cross streets or the river with a private network; it does not have authority to cross public rights of way.
If the chemical company chose one of your options, but later had to change to another one, what else would need to change, at what levels (1-4, 7) in the 7 layer model? Describe any changes briefly.
Solution:
Options:
DSL: Distances are one kilometer, which is within DSL distance. This is inexpensive
broadband and would be appropriate. Separate DSL lines would be provided for each
building.
Microwave. Because the distance is short and there are no buildings in the way, and
there are buildings on which to place towers, digital microwave is feasible. This could
provide 45 Mbps. A LAN could be run over this link. (Don’t expect students to know
this.)
Cable modem. Similar to DSL, but because it is shared, security would be a major
problem. Traffic would probably need to be encrypted, which would slow it down.
T-1. T-1 lines could be leased from a telecom carrier (who would probably provide them
via DSL).
Frame relay is feasible and provides 1.5 Mbps data rates reliably. Cheap, reasonable to
use.
Wireless. GPRS not feasible: data rate too low. WiFi not feasible: distance too great.
WiMax may be feasible in the future.
Dark fiber. Not feasible in general. If available, it would allow a LAN to run.
ATM. Suitable for higher bandwidth and more demanding network needs. Likely to be
very expensive. ATM is usually used by carriers, not enterprises, at this point.
Recommendation:
DSL is likely to be most feasible, since each building can have its own, dedicated,
relatively secure broadband connection. DSL is probably the best recommendation.
Dark fiber is feasible if a carrier would provide dark fiber, but it’s unlikely. The
company could run a LAN protocol (Ethernet or FDDI) if dark fiber were available.
Microwave is feasible and effective, with a 45Mbps data rate.
Cable modem is similar to DSL but would require encryption, making its performance
slower.
Frame relay would work well.
T-1 is feasible but likely to be expensive.
ATM is feasible, high bandwidth, and expensive.
Wireless is not feasible.
LAN?
The company could implement LAN technology via dark fiber or digital microwave.
DSL, cable modem and T-1 are WAN technologies provided by carriers who will not
support a LAN technology.
Changes?
If the company changes among all these technologies, only layers 1 and 2 change. The
company would still run the same layer 7 protocols (HTTP, email, etc.), layer 3-4
protocols (TCP/IP). While layer 2 within the three buildings is Ethernet, Ethernet is a
LAN technology and can’t be carried over a WAN (carriers are working to fake it
currently) The routers (layer 3) would be plugged into different equipment at layer 2 to
support the different WAN links.
If a LAN were used and, say, microwave was replaced by dark fiber, Ethernet would be
the layer 2 protocol in both cases, and only the layer 1 equipment would change.
C. System architecture
The chemical company has a Web server, application server and database server in
building B. Go to
www.tpc.org
and look at the latest TPC-C results for sizing the
database server that will process the database queries from the Web and application
servers. Assume that your company has approximately 8,000 users registered on its Web
site.
D. Of the top results in price/performance order, which of these systems would be appropriate to consider for the chemical company? Select at least 4; explain your choice. Remember that these systems are highly tuned to the exact characteristics of the TPC-C benchmark.
E. Of the systems you chose, list the number of disks and the average delay for the stock level query. Is there a correlation? Why or why not?
Briefly look at the TPC-W results, in price/performance order, on www.tpc.org. Read the
white paper on the TPC-W page for background information.
8,000 users? Why or why not?
G. Discuss the steps you would take to appropriately configure the Web server: Is the virtual storage hierarchy relevant and, if so, what are the key points to consider? Assume you have a good starting point in an appropriate system based on a TPC-C benchmark. What would you consider and how might you assess what to change?
Solution:
1. Select systems 1-4 from the list: Dell PowerEdge 2650, HP ProLiant ML350T03 (3 variations, listed 2, 3, 4 in the results) The others are sized for much larger numbers of users and are not needed for the chemical company. They are more expensive and offer no advantages.
2. Summary of systems:
System Users Cost Disk drives Stock lev delay
Dell 18,000 $30,438 60 1.78 sec
HP 14,500 $27,827 34 5.39 sec
HP 15,300 $29,990 35 2.77 sec
HP 15,300 $30,600 35 3.92 sec
There is a correlation; the system with twice the disks has roughly half the response
delay.
3. All four configurations are appropriate, and would probably just barely suffice. Their being highly tuned for about 15,000 users means they probably would work well for half that number in actual use.
4. The virtual storage hierarchy is highly relevant, as it always is! Steps to consider, based on the lecture notes:
Adjust memory based on user, 5 minute or 1-5% rules. Don’t accept benchmark memory based on its 180MB database size. Compute your own. Memory is critical.
Processors (CPU) are based on number of users, so TPC benchmark should be fine. Disks should be fine. Check that capacity is sufficient, but usually capacity is not the
determining factor. Throughput is, which is based on number of users, which the benchmark models well.
Cache is from the benchmark is fine (2MB)
Network card is fine; it’s based on users and network traffic.
Backup is not considered in the benchmark. You must add backup components (tape or FibreChannel off-site disks). With three nearby buildings, FibreChannel connected disks are feasible and should be considered.
A. Assignment