CPS 622 Software Project Management Course Summer 202
Course Cps 622 Software Project Managementsemster Summer 2023final
Propose a software project topic in an area of your choosing. (a) Create an “elevator pitchâ€, which is a 1-2 paragraph description of your project. In this pitch, you need to give a brief overview of the scope of the work, the need for the work, the approach, your expected results. (b) Prepare a high level architectural diagram that describes the project. Graphically show how major components of your project will interact with each other, component connec- tions, data flow, etc. This can be using UML, or any graphing format of your choosing. Keep this diagram to no more than a 1 standard 8.5x11 page. (c) Provide a detailed description of your architectural diagram, assuming that the reader has a technical background, and would understand a high level discussion of the software development process of this specific project. Discuss the software and resources that are needed to perform the development for this product, and any software that is needed for deployment (ie. database tools, website servers, etc.). This section should take you at least 2 full pages, but you can use up to 5 total pages. 2. Develop a table that shows all of your main tasks and their subtasks. (a) The project must have at least 3 major tasks. Each major task must have at least 5 subtasks, that are unique to them only. This means, that you can not repeat subtask names or titles. If you can’t find a way around doing this, please reach out to me BEFORE the due date. (b) For each task and subtask, give a 1-2 sentence high level description. This description should have enough information to inform the reader of the summary of work to be performed. Note: You don’t need to set due dates or expected time frames for each task, so there is no need to do this as a Gantt Chart, but you may include one if you wish. 3. A list of anticipated deliverables for each subtask. (a) These deliverables can be repeated for multiple subtasks. For example, multiple subtasks could all have a report be listed as a deliverable. See the end of this document for a list of suggested deliverables. You may pick deliverables off of this list, but this should give you an idea of what usually qualifies as a deliverable. (b) You can include this in the same table as above, or make a new table. Just make sure to select deliverables that make sense for the subtask. You may choose multiple deliverables for a single subtask, if needed. But, don’t select too many deliverables for a single task, as this is a sign of unnecessary work. 4. Create a testing plan that lists out the following. (a) List out all the testing types that you will require developers to complete for the project. Give a reason for why each type was selected, and needed especially for this project. I suggest you look to the lecture over what types exist, but you may also list types that weren’t discussed in class. For every testing type to chose, give a 1-2 sentence definition over the testing type in general. (b) Give a preliminary list of what tests would be needed to verify each deliverable is met. Look to match up each subtask with some sort of test, that ISN’T associated with its deliverable. As a reminder, passing a test on its own isn’t a deliverable, but just helps verify that a deliverable is working as intended. This doesn’t need to be code, just a high level description of what the test would actually verify. Look to use around 2 sentences to describe each verification test at a high level.