Improving process for better software
1 / 14

Improving Process for Better Software - PowerPoint PPT Presentation

  • Uploaded on

Improving Process for Better Software. Who We Are. An experiential learning program that provides technology solutions for our partners, and real-world experience for our students Housed within the College of Business at Oregon State University Two components:

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Improving Process for Better Software' - ursa-deleon

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Who we are
Who We Are

  • An experiential learning program that provides technology solutions for our partners, and real-world experience for our students

  • Housed within the College of Business at Oregon State University

  • Two components:

    • Hardware & software product testing

    • Custom software application development

  • Made up of 6 full-time staff and between 40 and 50 Student Interns

Where we began
Where We Began

  • Curriculum Workflow, Our First .NET Application

    • No Defined Process

    • Two Developers Just Getting it Done

    • Valued Client Interaction and Feedback

  • Catalog & Schedule of Classes

    • First Application with Many Developers (6-8)

    • Still No Defined Process

    • Daily Progress Updates and TODO Lists

    • Valued Client Interaction and Feedback

    • Introduced Source Control

What we were missing
What We Were Missing

  • Documentation & Code Standards

    • Result: miscommunication of requirements and code that is difficult to maintain.

  • Testing

    • Result: users perception of the system skewed since they tested it, and quality issues.

  • Defect Tracking

    • Result: bugs slip through the cracks after they had been identified, and quality issues.

  • Task Tracking

    • Result: unable to manage large numbers of developers and keep them on task.

    • Result: no metrics upon completion on the effort put into the project, which leads to an inability to make better estimates of future projects.

Why did it work
Why Did it Work

  • Small Shop

  • Documentation

    • Advantage: fewer communication issues amongst developers and access to the author of code eases code maintenance.

  • Testing & Defect Tracking

    • Advantage: respond quickly to issues and little overhead allowing more individual developer resource to be applied to a single project. Quick bug fixing improves user perception of the system.

  • Task Tracking

    • Advantage: focus on the project without being distracted by other projects allowing tasks to be completed without much tracking.

Where we are today
Where We Are Today

  • 3 Full Time Staff and 19 Student Interns

  • 10 Active Projects, 1 Project Not Started

  • 4 Projects In Bid

  • 15 Projects in Maintenance

  • Advantages of a Small Shop Are Gone

Team foundation server
Team Foundation Server

Bringing the Team Together

What is tfs

Work Item Tracking

Version Control


Team Communications

Build Automation

What is TFS?

  • Connects developers, testers, managers, analysts by creating “a global, collaborative environment for the entire team.”

Process templates
Process Templates

  • MSF Agile

    • Relies on team member responsibility

    • Focuses more on the project

    • Less rigid

  • MSF CMMI Process Improvement

    • Software Engineering Institute’s (SEI) Capability Maturity Model Integration (CMMI) level 3 with transition to level 5

    • Focuses more on the organization

    • More formal process requirements and measurements

Review of agile
Review of Agile

  • As stated at

    “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

    Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan

    That is, while there is value in the items on the right, we value the items on the left more.”

Msf agile concepts
MSF Agile Concepts

  • Roles

    • Business Analyst

    • Project Manager

    • Architect

    • Developer

    • Tester

    • Release Manager

  • Work Items

    • Individual Work Activities Used to Track Assignment and Status

    • Types

      • Scenario

      • Quality of Service Requirement

      • Risk

      • Task

      • Bug

  • Work Streams

    • A Group of Activities (can include work items)

    • Can Cross Multiple Roles

Where we will be
Where We Will Be

  • Documentation & Code Standards

    • Defined scenarios for capturing requirements and static code analysis and reviews will help improve communication and code maintainability.

  • Testing

    • Integrating testing from the beginning at the unit and system levels will help create quality code.

  • Defect Tracking

    • Bug work items will help keep bugs from slipping through the cracks improving the quality of the applications.

  • Task Tracking

    • Task work items will help communicate to the team what needs to be done and allow project managers to track progress and keep the customer informed.