1 / 19

Using a Software Development Process to Improve the 2007 U.S. Economic Census

Using a Software Development Process to Improve the 2007 U.S. Economic Census. Barry F. Sessamen Assistant Division Chief, Economic Census Data Analysis & Dissemination, ESMPD. Overview. Background on the U.S. Economic Census Description of the Software Development Process Lessons Learned

cabramson
Download Presentation

Using a Software Development Process to Improve the 2007 U.S. Economic Census

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Using a Software Development Process to Improve the 2007U.S. Economic Census • Barry F. Sessamen • Assistant Division Chief, • Economic Census Data Analysis & Dissemination, ESMPD

  2. Overview • Background on the U.S. Economic Census • Description of the Software Development Process • Lessons Learned • Conclusions and Next Steps

  3. Background on the U.S. Economic Census • Conducted in years ending in 2 and 7 • Covers over 27 million establishments • Forms sent to businesses with paid employees – 550 different forms • Detailed information provided on the structure of the economy by industry (over 1,000 industries) and by location (states, counties, places, zip)

  4. Economic Census Coverage of GDP Services 21% Not covered2% Finance, Insurance, Real Estate 21% Government12% Agriculture 1% (USDA) Retail Trade 9% Mining 1% Construction 5% Wholesale Trade 7% Manufacturing 14% Transportation, Communication, Utilities 7%

  5. The Problem • Code in production that isn’t what users wanted/expected • Incomplete documentation • Defects/ “bugs” in production • Dependence on hero culture instead of standards • Different groups using different standards

  6. Software Development Process

  7. Project Charter Purpose In-Scope / Out-of-Scope Resources Major Milestones Project Plan User Concept Diagram Interrelated Projects Deliverables Software Lifecycles Roles & Responsibilities Risk Management Plan Change Control Plan Communication Plan Plan

  8. Requirements • Projects Will Define System Requirements • Separate from the Design • Functional Requirements • Define what the software system must do • Non-Functional Requirements • Describe quality of service, such as: Performance, Security, Availability, Maintainability, etc. • Review and Inspection

  9. Design • High Level Design • Depicts the various relationships between components. • Detail Level Design • Identifies the logic specification required to code the program

  10. Program Coding • Checklist of Coding Standards • Personal Review Checklist • Code Walkthroughs & Inspections • Promote quality by identifying defects before code is released • Promote knowledge transfer by sharing coding best practices

  11. Testing • Last chance to fix defects/omissions before production • Unit Test • System Test • Integration • Performance • Regression • User Acceptance Test

  12. Ongoing Activities • Software Configuration Management • Track Change Requests • Change Control Board • Metrics • Lessons Learned • Software Quality Assurance

  13. Early Adopter Feedback Processes Updated Implementation Strategy Proven Processes Early Adopters Validate Processes Process Coaches Provide Support Train Early Adopters Rollout Processes on Flow Basis

  14. Lessons Learned • Continuous Process Improvement • Clear, Specific Standards Developed Early in Project Lifecycle • Work Smarter, Not Harder • Allow for Errors, But Uncover Them As Far Upstream as Possible

  15. Lessons Learned (cont.) • Code Reviews – Identify Defects and Provide Cross Training • Separate the “What” from the “How” • Form an Effective Team Environment • Keep It Short

  16. Results • 2007 U.S. Economic Census Production Systems were in production earlier than previously achieved • Minimal disruptions to production processing (less rework) • Economic Census within budget and meeting planned system scope

  17. Conclusion • A defined and repeatable work process has improved quality, communication, and documentation • Grow the process for the entire economic directorate – Economic Software Process Improvement (ESPI)

  18. What is the ESPI Program Mission? To deliver a comprehensive software development process for the Economic Directorate. Our Goal: To deliver software code into production that works correctly and meets users’ needs …EVERY TIME!

  19. Contact Information Barry F. Sessamen barry.f.sessamen@census.gov 301-763-5871

More Related