CSE 5325 – Software Project Management

Fall 2014 - Project Planning and Cost Estimation

Assignment #1

Phase 1 due: Thursday Sept. 18, 2014; 5:00 PM

Grading: 10% of your Course grade

Submission via: Black Board (https://elearn.uta.edu/) – Assignment 01

GTA E-mail:

Objective:

  1. Practice Formal Project Planning for Software Projects
  2. Utilize Project Planning tools such as : Microsoft Project Professional 2010 for scheduling and task management
  3. Cost Estimation using COCOMO

Deliverable:

Project Plan completed (i.e. see “Project Plan” template posted on class website) as 2 deliverables:

o  Assignment #1: Complete the “Project Plan” until the end of Section 8; due 9/18/2014

o  Assignment #2: Complete the “Project Plan” starting Section 9 to the end; due 10/16

Points to Consider:

Ø  Prepare a “Project Plan” for the “Stock Trading System (STS)” project described at the end of this document.

Ø  Management of this project is done by a management team that consists of two people. A copy of the project plan should be submitted with both names listed on the first page (i.e. Manager Name 1 & 2)

Ø  Assume you have 5 technical staff currently on board. If you prefer, you can arrange to hire at most 2 more technical staff. You have one none-technical staff (i.e. secretarial) position available. Remember that hiring more people always affects your bottom line due to increased cost.

Ø  Each developer can be used in any capacity that you (the management team) decide(i.e. develop web screens, database design, do documentation, write test plans, anything that you asked them to do since you are the manager)

Ø  Each developer receives $7000/month after all taxes have been deducted. The none-technical staff receives $3000/month after all taxes.

Ø  You, the management team of 2, will each receive $11,000/month after all taxes have been deduced

Ø  The duration of the project cannot exceed 4 months, starting date 9/7/2014. Make sure to include the time spent on preparing the project plan.

Ø  Each developer will receive one week of vacation during this 4 month-period (i.e. paid vacation)

Ø  The project managers will get one week of paid vacation however you both cannot take your vacation at the same time.

Ø  (Not required for delivery of assignment#1) You must use COCOMO cost estimation for estimating the cost/schedule as accurately as possible. You must consider all: “5 Scale Drivers”, “17 Cost Drivers”, “Effort equation”, and “Duration equation” for your estimation. You make reasonable assumptions for the values of Scale & Cost drivers (refer to COCOMO document on class website at: http://ranger.uta.edu/~khalili/Overview%20of%20COCOMO.htm)

Ø  Your project plan must assume that you require drawing UML diagrams and generating requirements for your project. You must allocate sufficient time for these activities even though you will not actually performing these tasks

Ø  You can register for a 60-day trial version of “Microsoft Project Professional 2010” and use this product to keep track of project tasks (http://www.microsoft.com/project/en-us/try.aspx). This is a great product and hopefully you will continue using it at your company (all rights reserved for Microsoft) or when you become a manger. If you already have a copy that you can use, no need for the free trail. A quick overview of this product is available at: Microsoft Project Plan: http://www.youtube.com/watch?v=sPwURRG9_Gs

Ø  All cycles of development (i.e. Requirements, Design & development, Testing and Maintenance) must be accounted for

Ø  You could use any testing framework such as generating test cases or using JUnit for testing portion of this project. Make sure to include the cost of the testing tool if you decide to use one.

Ø  All software and hardware costs/purchases must be realistic with sufficient reference provided in the in the Appendix. Make sure to review multiple products from various competitors when purchasing software or hardware (provide references)

Ø  Assume 25% of overhead cost (i.e. to cover heating, heating & air-conditioning & electric bill, rent, etc.)

Ø  Assume your require anywhere between 50% to 100% profit on the money spent. That is, if it cost you $100K to develop this project, you should charge $150K to $200K to cover your profit.

Ø  Extensive risk analysis and mitigation should be included

Ø  Configuration management (CM) for source code and other product artifacts (e.g. requirements, documentation, and source code) storage is required. Make sure to include the cost for purchasing a CM system

Ø  Security (i.e. data encryption/decryption) is required to maintain integrity of your data. Make sure to include the cost of security software packages

Ø  Include all required software packages, hardware, databases, Web hosting costs and any other related capital expenditure

Ø  Feel free to make reasonable assumptions anywhere necessary, just document it in your project plan.

Ø  10% penalty per each day of being late after the due date/time.

Ø  One deliverable per team

Ø  Remember, you are NOT developing this project in this class; you are the managing team and preparing the project plan at this point.

Project Description: Stock Trading System (STS)

Develop a software application for a small brokerage company (i.e. trade equities such as stocks, mutual funds and options) with multiple locations across the United States. This web-based application should allow the customers to perform various stock related activities that are listed below. STS must be a Web-based application that is available 24/7 with no shutdown time. All decisions in regards to the type of technology and hardware required should be made by your team. All procurements and purchases must be handled by your team. Client wishes to view a quick prototype of the website before you start with the full development. This will allow them to request changes in content and look & feel as early as possible. Below is the list of minimum functionality that system shall provide. They welcome any other functionality that helps this platform:

  1. “Logon” functionality should be used to authenticate users (i.e. initially setup user/password). System must force a password change every 30 to 90 days. System must handle forgotten password and/or user id.
  2. “Account setup” functionality must be provided to capture all customer data (i.e. Name, home and mailing addresses, e-mails, phone numbers, social security number, marital status, date-of-birth, and beneficiary names). The system should automatically generate an account number for the customer or generate appropriate error message in case account number was not created .
  3. “Account maintenance” functionality must be provided to allow making changes to all personal and financial information including address, phone, marital status, beneficiary information and others. Closing accounts must also be supported from “account Maintenance”.
  4. “Cash management” functionality must be provided to allow entering money in and out of the account.
  5. “Trade” functionality must be provided that allows:
  6. Buying and selling stocks, mutual funds and options
  7. Canceling orders
  8. Other transaction types such as trading Futures, Bonds, currency and Commodities and Currency are not required for the first release. Proposal should be made for the cost and schedule to support these trades.
  9. “Transaction History” functionality must be supported to display the history of all transactions for a user.
  10. “Quotes” functionality should provide the latest price of any equity (e.g. stock, mutual fund and options).
  11. “News” functionality should provide the latest news on any stock or mutual fund.
  12. “Research” functionality should be provided to all access to various financial literature such as “S&P news”, Reuters and other relevant sources
  13. “Watch list” functionality that allows customers to establish interest in certain events should be supported by the system.
  14. “Communication” functionality should provide basic e-mail and texting service between the Brokerage Company and customers. E.g. A customer will be informed via e-mail /text when a transaction is complete or their monthly statement is e-mailed to them.
  15. “Infrastructure” must be suggested, purchased and installed by your team. Competitive pricing is required.
  16. “Backend” services such as Database installation, normalization and back-up of data must be provided initially by your team until appropriate training of the client staff takes place.
  17. “Training” of the client staff must be provided by your team.
  18. “Documentation” services such as maintenance document and user manual(s) must be provided
  19. “Maintenance” of the system is expected to initially be handled by your team.
  20. “Search” functionality should be provided to allow search for any transaction previously established by the customer.

Feel free to propose other functionality beyond the ones listed above.