University of Phoenix
Intro To Software Engineering
Frederick Douglas Taylor Jr.
June 4, 2012
Table of Contents
Software Development Process3
Quality Assurance Process4
Engagement Approach Description4
Table 1.1 GUIDELINE FOR DECIDING DEVELOPMENT METHODOLOGIES6 Management Projects Description7
Figure 1.1 Major Project Management Activities7
Client Relationship Description7
Program Specification Documentation8
Smith Consulting is developing a better production documentation environment for our company. The following discussion and implementation strategy discusses software development methodology selection, Quality Assurance Processes, procedures, and guidelines to be utilized at SC for all current and future projects internally and externally for our clients. This document will also determine project management orthodoxy, define our client relationship and also our program document specifications and requirements. This will serve SC and its future clients in a consistent, quality and professional future for enhanced software development capabilities in accordance with established best practices throughout the software engineering community. Software Development Process
The Software Development Life Cycle (SDLC) gives very definable goals regardless of the methodology used; the development process will have a planning and a testing phase whether it is Waterfall or Agile. At Smith Consulting (SC), projects begin with a project planning phase when SC selects team leaders and assigns jobs to team members based on their particular strengths. Then SC locks project requirements into an open-ended Agile process or a concrete Waterfall process. During the design phase, consultants will plan and design the project deliverables. Programmers develop code to meet phase and project requirements. Implementation will provide the developers with a first-working-copy of the project result, and allow them to proceed on to testing. This will either be development only testing or will incorporate end-user feedback. After testing, the developers will deploy the software and enter into a maintenance contract to upkeep and upgrade the program.
Quality Assurance Process
Quality assurance (QA) process, as part of the principles of managing quality, is the process of ensuring that every step of the development maintains the quality level required by the programmer's team. Project teams can use the quality assurance process in agile and non-agile projects. Agile process QA relies mostly on activities, instead on focusing only on documentation, which is the case with non-agile processes. QA teams will monitor quality planning, such as people responsible for quality, generated documentation during development, and the verification and validation of software. The QA team develops software quality standards and the procedures to manage the standards, such as meetings, reviews, testing, bug management, and other techniques. Procedures
SC has to create better documentation for the company’s development procedures. The lack of extensive details causes new and old clients to turn away. SC can make simple improvements, such as more details about development procedures. Poor testing documentation contains vague test results that translate into inappropriate business results. Testing documentation helps determine if a program runs at full potential. SC can improve documentation in other areas, such as pre –design and troubleshooting procedures. Engagement Approach Description
SC starts each client project with a costs and benefits comparison between the potential software process models...