+1 (208) 254-6996 [email protected]
  

Agile Methodology

Overview

In this assignment you focus on the process methodology of Section 5, Standards and Procedures of your software development plan (SDP)—choosing, diagramming, explaining and finally applying your choice of Agile development methodology to CapraTek. The choices that you make here drive the rest of the SDP, so it is an appropriate starting point.

Preparation

Use the assignment Resources to complete the following:

Don't use plagiarized sources. Get Your Custom Essay on
Agile Methodology
Just from $13/Page
Order Essay
  • View the CapraTek scenario in the CapraTek Overview document.
  • Download the Software Development Plan Template. Save it as “CapraTek_SDP_u1” and use it to complete and submit your assignments for this course.

Directions 

Consider the CapraTek scenario and address the items below in Section 5 of the CapraTek SDP document.

  • Select an Agile methodology and briefly justify why your chosen Agile methodology is appropriate for CapraTek.
  • Create a Unified Modeling Language (UML) activity diagram that illustrates the process methodology life cycle.
  • Describe each of the phases depicted in the process methodology diagram with relation to the software development process. Keep your descriptions generic—the point is to explain the processes involved in each phase to illustrate the concept.
    • Partial Example: Scrum initial requirements steps: “During the initial requirements steps, the product owner examines the product backlog and gets feedback from the customer and other stakeholders. The product owner then informs the development team of the items from the product backlog . . .”
  • Select two of the phases and describe how each would manifest itself in the context of CapraTek. Consider CapraTek’s requirements, resources, time constraints, et cetera. 

Save and submit your SDP.

CU_Horiz_RGB IT3345 – Software Architecture `

CU_Horiz_RGB

CapraTek Software Project Overview

Imagine that you are a software architect that has been hired by CapraTek to create an IEEE Standard 1058-based Software Development Plan for all their future in-house development projects. The document below has been sent to you by CapraTek’s CIO.

Hi,

I am excited to have you on board to help us in defining our future software develop practices! I just want to share relevant information about our company. It is not a complete picture, but it is enough to get you started. Please feel free to make and state any assumptions you might need to make in areas that I have not provided sufficient information. We can talk about those when we refine our plan. For now, I need a polished first draft to share with our stakeholders by the end of next month.

We are a longtime leader in computer server technology but are now shifting our effort to focus on Alfred!, an integrated wireless smart-home hub that seamlessly connects household electronics, appliances, and devices. While we have traditionally outsourced our software development to third party companies, we have now decided to bring all development in-house with the hope that it will decrease design and development time and improve software quality. Many existing projects have either failed, or gone over time and budget, while much of the current software has become stale, due to poorly maintained code, and needs a proper plan.

One of our biggest challenges is changing the way we produce our product. We are interested in introducing Agile for software development, but many of our personnel are more familiar with traditional project management. Many have a basic understanding of Agile and a keen interest to adopt it, but they need a blueprint from which to work. We understand that there are several Agile methodologies and are looking for guidance on selecting the one that fits best. We hope you can help!

Our Team of Developers

We currently have 10 in-house developers that have experience with a mixed set of programming languages. Based on previously outsourced work, we are planning to increase this to 20–25 developers, but are not sure of what non-developer resources will be required by Agile. The organization is willing to hire additional non-development support staff (that is, PMs, QA, testers, administrators, etc.) based on Agile requirements.

Projects

We have three large software development projects planned for next year that are each similar in scope. We need to extend our Alfred! Web application and build both iOS and Android apps for users to control the hub. Using traditional project management techniques, we were able to build our original Alfred! Web application with 6 software developers and one project manager in 12 months. Our plans are to rewrite the entire application to improve the current hub’s performance. There will be few added features in the first iteration. The mobile apps will have similar functionality and will be relegated to phones for the first release, although we will be incorporating responsive design that should increase its reach to other devices.

Technology

We currently use the following technology and plan to continue to do so:

· Microsoft Xamarin for cross-platform development.

· C# applications using Visual Studio.

· ASP.NET Web applications using Visual Studio.

· Legacy Java applications using NetBeans.

· Amazon Web Services (AWS).

· Red Hat Linux.

· Microsoft Server 2016.

· Oracle 12c and SQL Server 2016 databases.

Here are some of the requirements and technical challenges facing projects that we would like addressed:

· Servers: Dedicated servers need to be used for each process including databases and Web applications.

· Bug Tracking: Most of the issues have been dealt with through e-mails or word of mouth. It is important that issues and bugs are tracked in a single application.

· Version Control: Existing applications, when updated, do not have a trail of code being updated. There needs to be more accountability for developers and ensuring that all changes are being tracked against bug tickets.

· Asset creation: Any images, videos, or other multimedia needs to be developed in a common tool that can be edited by any other individual. Common standard file formats should be used for any images and videos that are created.

I look forward to seeing your plan!

Sincerely Yours,

Robert Craft

Chief Information Officer

CapraTek Corporation

1

2

CU_Horiz_RGBCU_Horiz_RGB IT3345 – Software Architecture

CU_Horiz_RGB

Directions: Follow the courseroom directions and use this template to complete your assignments. The areas that you are responsible for are highlighted using blued text designated as <Enter here>. Do not change the font color. Save the document as CapraTek SDP – Unit “X”

CapraTek Software Development Plan

Version 1.0

Prepared by <name>

<Date>

CU_Horiz_RGB

IT-FP3345 – Software Architecture

Contents 1. Introduction 4 1.1 Identification 4 1.2 Scope and Purpose 4 1.3 System Level Project Description 4 1.4 System Description 4 1.5 Document Organization 4 2. Resources and Scheduling 6 3. Organization and Staffing 7 4. Technical Management and Control (Section 4 has been pre-completed) 8 4.1 Change Management 8 5. Standard and Procedures 9 5.1 Deliverable Standard 9 5.2 Process Methodology Diagram 9 5.3 Process Methodology Explanation 9 5.4 Phase Description 9 6. Technical Standards 10 6.1 Technology Stack Diagram 10 6.2 Cloud Environment 10 6.3 Programming Languages 10 6.4 Servers 10 6.5 Databases 10 6.6 Development Workstations 10 6.7 Development Software 11 7. Software Phases 12 7.1 Phase 1: Software Requirements 12 7.2 Phase 2: Software Design 12 7.3 Phase 3: Software Construction 12 7.4 Phase 4: Software Testing 12 8. Verification and Validation 13 9. Maintenance Process 14 9.1 Maintenance Plan Diagram 14 9.2 Maintenance Plan 14 10. Human Factors (Section 10 has been pre-completed) 15 10.1 Training 15

Software Development Plan for CapraTek

Page iii

Introduction

1.1 Identification

This Software Development Plan (SDP) establishes the plans to be used for CapraTek in all the organization’s software development projects.

1.2 Scope and Purpose

Scope

<Enter here>.

Purpose

<Enter here>.

Business Challenge

<Enter here>.

1.3 System Level Project Description

This SDP describes the organization and procedures to be used by CapraTek in performing software development. This plan identifies the applicable policies, requirements and standards for software development. It defines schedules, organization, resources, and processes to be followed for all software activities necessary to accomplish the development.

1.4 System Description

This document serves as a reference for all CapraTek employees who have a stake in its requirements gathering, design, implementation, testing, deployment, and ongoing support, including system architects, developers, test engineers, support engineers, Operations, and Legal. This document covers multiple facets of the software application.

1.5 Document Organization

The SDP is organized as follows.

· Section 1 describes the introduction of the software development plan. It also provides an overview of the scope and objectives of the software development plan.

· Section 2 describes the resources and scheduling of CapraTek.

· Section 3 describes the organization and staffing of CapraTek.

· Section 4 describes the process for change management at CapraTek.

· Section 5 describes the Standards and Procedures including the process methodology to be used in CapraTek.

· Section 6 describes the technical standards that will be used at CapraTek. This section is to be updated based on CapraTek’s needs.

· Section 7 describes the software phases involved for each software development project. Each phase will include an activity diagram outlining what processes are completed at each phase with an explanation of each phase.

· Section 8 describes the verification and validation process to ensure that the software delivered meets the needs and requirements of the project and is developed correctly.

· Section 9 describes the maintenance process for developed software at CapraTek.

· Section 10 describes the human factors, including training, of the delivered software projects.

Resources and Scheduling

<Enter here>.

Organization and Staffing

<Enter here>.

Technical Management and Control (Section 4 has been pre-completed)

1.6 Change Management

Changes to any specifications at CapraTek will be done by submitting a change report. The approval of the change must be made by the project manager. All risks will be reviewed by the technical committee each month and formal risk reports will be submitted to the management team on a quarterly basis. All changes must incorporate a cost reports to be given to the financial committee each week for review by the project sponsor. All issues will be reviewed at the project management meeting. Issues that delay the development schedules will be resolved by the technical committee.

Standard and Procedures

1.7 Deliverable Standard

All design deliverables will be submitted using standard UML using Visio. Alternative tools may be used pending approval from the development lead. All deliverables will be reviewed by all stakeholders before the final signature by the project manager.

1.8 Process Methodology Diagram

Chosen Agile methodology: <Enter here>.

<Enter UML activity diagram here>.

1.9 Process Methodology Explanation

< Enter here including justification for its adoption>.

1.10 Phase Description

Phase X – <Enter here>.

Phase X – <Enter here>.

Phase X – <Enter here>.

Phase X – <Enter here>.

Phase X – <Enter here>.

Add as necessary…

Expanded Phase Details

<Enter Phase “X” Details here>.

<Enter Phase “X” Details here>.

Technical Standards

1.11 Technology Stack Diagram

<Enter Technology Stack diagram>.

1.12 Cloud Environment

Amazon Web Services will be used for CapraTek’s cloud deployment. Existing applications are already deployed on Amazon Web Services and it is simpler to keep all the technology here rather than deployed to another cloud provider such as Microsoft Azure or Google Cloud.

1.13 Programming Languages

C#: C# is the primary language used to develop the applications for CapraTek. Using Microsoft Xamarin, developers will be able to deploy applications to iOS and Android using C#.

ASP.NET: For web applications at CapraTek, they will be developed using ASP.NET. This will be used in conjunction with HTML5, CSS3 and JavaScript.

Java: There are some existing legacy applications that use Java and will continue to be supported with Java. There are also various projects that require Java to be used due to existing libraries and code base with third parties.

1.14 Servers

<Enter here>.

1.15 Databases

SQL Server 2016: Most of CapraTek’s databases will be using SQL Server 2016 as C# and ASP.NET are the primary programming languages at CapraTek.

Oracle 12c: For the legacy CapraTek applications, there are some that requires Oracle 12c. There are no plans to continue to use Oracle 12c for future projects. Any plans to use Oracle 12c should be discussed with the project manager.

1.16 Development Workstations

Development workstations must support Visual Studio 2017 and NetBeans. Development workstations should have the minimum hardware:

· 2.4GHz CPU.

· 8GB RAM.

· 256GB SSD boot drive, 1TB HDD storage drive.

· 2GB graphics card

Development machines that are used for data analysis or video creation should have the minimum hardware:

· 2.4GHz CPU.

· 16GB RAM.

· 256GB SSD boot drive, 512GB SSD storage.

· 4GB graphics card.

1.17 Development Software

<Enter here>.

Software Phases

1.18 Phase 1: Software Requirements

· <Add the activity diagram here>.

· <Enter high-level steps here>.

· <Enter process flow effect here>.

1.19 Phase 2: Software Design

· <Add the activity diagram here>.

· <Enter high-level steps here>.

· <Enter process flow effect here>.

1.20 Phase 3: Software Construction

The software construction phase will develop new code or modify existing code, unit test, integrate, and document software. While reused code will not be expected to conform to a single coding standard, changed source code must be supplemented with enough new comments and standard code headers to meet commenting provisions of the coding standard and to promote understandability.

1.21 Phase 4: Software Testing

· <Add the activity diagram here>.

· <Enter high-level steps here>.

· <Enter process flow effect here>.

Verification and Validation

<Enter here>.

Maintenance Process

1.22 Maintenance Plan Diagram

< Maintenance Plan Activity Diagram>.

1.23 Maintenance Plan

<Enter here>.

Human Factors (Section 10 has been pre-completed)

1.24 Training

All employees at CapraTek will need training, from computer literacy to the usage of each of the software applications developed. A culture change management plan will be needed to train those users involved of the new methods of conducting business and the technology to support these new approaches.

***End***

4

10

4/17/2021 Agile Methodology Scoring Guide

https://courserooma.capella.edu/bbcswebdav/institution/IT/IT3345/190100/Scoring_Guides/u01a1_scoring_guide.html 1/1

Agile Methodology Scoring Guide

Due Date: End of Unit 1 Percentage of Course Grade: 17%.

CRITERIA NON-PERFORMANCE BASIC PROFICIENT DISTINGUISHED

Justify why an Agile methodology is appropriate for CapraTek.

23%

Does not justify why an Agile methodology is appropriate for CapraTek.

Justifies a choice of Agile methodology that is ill-suited for CapraTek or provides a justification that is unclear, disorganized, or unconvincing.

Justifies why an Agile methodology is appropriate for CapraTek.

Justifies why an Agile methodology is appropriate for CapraTek by using specific examples to support it.

Create an activity diagram that properly illustrates an Agile life cycle methodology.

23%

Does not create an activity diagram.

Creates an activity diagram that poorly illustrates an Agile life cycle methodology.

Creates an activity diagram that properly illustrates an Agile life cycle methodology.

Creates an activity diagram that effectively illustrates an Agile life cycle methodology using UML conventions and symbols.

Explain each activity or phase depicted on a UML diagram and how they relate to the software development process.

22%

Does not explain each activity or phase depicted on a UML diagram and how they relate to the software development process.

Explains each activity or phase depicted on a UML diagram incompletely or does not explain how they relate to the software development process.

Explains each activity or phase depicted on a UML diagram and how they relate to the software development process.

Explains each activity or phase depicted on a UML diagram and how they relate to the software development process in great detail that demonstrates superior understanding of Agile development methodologies.

Describe how Agile activities or phases might manifest themselves in a business scenario.

22%

Does not describe how Agile activities or phases might manifest themselves in a business scenario.

Describes how Agile activities or phases might manifest themselves in a business scenario in an inaccurate or confusing manner.

Describes how Agile activities or phases might manifest themselves in a business scenario.

Describes how Agile activities or phases might manifest themselves in a business scenario in great detail that includes specific references to the business scenario.

Integrate visual elements with writing that generally clarify or highlight key points. 10%

Integrates visual elements with writing that do not clarify or highlight key points.

Integrates visual elements with writing that somewhat clarify or highlight key points.

Integrates visual elements with writing that generally clarify or highlight key points.

Integrates visual elements with writing that clearly and directly clarify or highlight key points.

Order your essay today and save 10% with the discount code ESSAYHELP