CSE 5325 Software Project Management
Total Page:16
File Type:pdf, Size:1020Kb
CSE 5325 – Software Project Management Assignments #2 and #3 Spring 2016
Phase 1 Due (i.e. Assignment 2): March 24, 2016; 5:00 PM Grading: 10% of your Course grade Submission via: Black Board (https://elearn.uta.edu/) – Assignment 02
Phase 2 Due (i.e. Assignment 3): April 14, 2016; 5:00 PM Grading: 10% of your Course grade Submission via: Black Board (https://elearn.uta.edu/) – Assignment 03
GTA Information: Mr. Ravi Tej Urikiti; E-Mail: [email protected] Note: Please do not e-mail assignments to GTA. His e-mail address is provided only for Q&A. All home works must be in a single file (if multiple files, zip to one file) and submit via blackboard.
Objectives:
Practice Formal Project Planning for Software Projects
Utilize Project Planning tools such as : Microsoft Project Professional 2010 for scheduling and task management
Cost Estimation using COCOMO
Deliverables:
Project Plan completed (i.e. see accompanied “Project Plan” template) with 2 deliverables:
Assignment #1: Complete the “Project Plan” until the end of Section 8; due 3/24/2016
Assignment #2: Complete the “Project Plan” starting Section 9 to the end; due 4/14/2016 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 you, the manager.
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 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 manager, will receive $12,000/month after all taxes have been deduced
The duration of the project cannot exceed 6 months, starting date 3/1/2016. Make sure to include the time spent on preparing the project plan.
Each developer will receive two weeks of vacation during this 6 month-period (i.e. paid vacation)
The project manager also gets two weeks of paid vacation however you must train one of your employees to cover for you during your absence.
(Not required for delivery of assignment#2, part of assignment 3 deliverable) 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 develop using a plan driven approach (i.e. not agile) 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 or https://products.office.com/en-us/try). 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.
Remember, you are NOT developing this project in this class; you are the manager 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. A mobile version of this application should also be made available to customers. STS must be available 24/7 with no shutdown time (i.e. Fault tolerance should be provided for both website and Mobile version). 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 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: a. Buying and selling stocks, mutual funds and options b. Canceling orders c. 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. 6. “Transaction History” functionality must be supported to display the history of all transactions for a user. 7. “Quotes” functionality should provide the latest price of any equity (e.g. stock, mutual fund and options). 8. “News” functionality should provide the latest news on any stock or mutual fund. 9. “Research” functionality should be provided to all access to various financial literature such as “S&P news”, Reuters and other relevant sources 10. “Watch list” functionality that allows customers to establish interest in certain events should be supported by the system. 11. “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. 12. “Infrastructure” must be suggested, purchased and installed by your team. Competitive pricing is required. 13. “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. 14. “Training” of the client staff must be provided by your team. 15. “Documentation” services such as maintenance document and user manual(s) must be provided 16. “Maintenance” of the system is expected to initially be handled by your team. 17. “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.