Overview Coding Practices Balancing standards Configuration Management Providing Change Control Software Estimation Reasons why Programmers and Managers.

Slides:



Advertisements
Similar presentations
Time Management Tips for the Multitasking Research Administrator Source material taken from Eat that Frog! A book by Brian Tracy Presentation by Trish.
Advertisements

Project leaders will keep track of team progress using an A3 Report.
David Singer Enterprises, Inc. Presents Executive Skills Internship.
Audit of IT Systems SARQA / DKG Scandinavian Conference, October 2002, Copenhagen Sue Gregory.
Chapter 5: Common Support Problems
Analyzing Measurement Data ENGR 1181 Class 8. Analyzing Measurement Data in the Real World As previously mentioned, data is collected all of the time,
CSCU 411 Software Engineering Chapter 2 Introduction to Software Engineering Management.
Algorithm Analysis (Big O) CS-341 Dick Steflik. Complexity In examining algorithm efficiency we must understand the idea of complexity –Space complexity.
No Silver Bullet - Essence and Accident in Software Engineering By: R. Adam Mead.
Planning under Uncertainty
Working in Groups Human Relations. What is a Group?  A unit of two or more people.  Members interacting and coordinating their work.  Members accomplishing.
Project Work Playtesting + Postmortem. Plan for today Lecture + discussion Groups status report New Features /Changes in game engine LUNCH BREAK Group.
Pertemuan 16 Matakuliah: A0214/Audit Sistem Informasi Tahun: 2007.
Delivered System Documentation u One of the most important things that can be done to make a system maintainable is to create the best, most complete,
Xingwei Wang. Lab. Notebook Hard Cover Official Lab Notebook Numbered Pages 1 st Page,Table of Contents Name & ID number Section number.
Hints and Tips for New Systems Administrators or What to panic about…… Catherine Jones Systems Librarian.
Portability CPSC 315 – Programming Studio Spring 2008 Material from The Practice of Programming, by Pike and Kernighan.
SE is not like other projects. l The project is intangible. l There is no standardized solution process. l New projects may have little or no relationship.
Stoimen Stoimenov QA Engineer QA Engineer SitefinityLeads,SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
Software Development Unit 6.
Cheng-yu yu.  Assign two People every part of Project  Review every line of code  Require codes sign off  Route good code examples for interview 
VENDORS, CONSULTANTS AND USERS
Managing Construction By Semirindi Makala. Encouraging good coding Assign two people to every part of the project : If two people have to work on each.
FIREWALL TECHNOLOGIES Tahani al jehani. Firewall benefits  A firewall functions as a choke point – all traffic in and out must pass through this single.
Data Structures Introduction Phil Tayco Slide version 1.0 Jan 26, 2015.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Reaching Goals: Plans and Controls
Ways of Becoming a Business Owner
Copyright Course Technology 1999
General conclusions regarding support processes in ID Education An overview of the main bottlenecks and their consequences for education Deloitte 2014.
System Planning- Preliminary investigation
S oftware Q uality A ssurance Part One Reviews and Inspections.
TECHNICAL WRITING October 31 st, With a partner Write simple “step-by-step” instructions for sending a Kakao Talk message with a phone.
1 BTEC HNC Systems Support Castle College 2007/8 Systems Analysis Lecture 13 Post-Implementation Training.
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
ICT IGCSE.  Introducing or changing a system needs careful planning  Why?
What IS a Journeyman Programmer? Why this program?
1 Technical & Business Writing (ENG-315) Muhammad Bilal Bashir UIIT, Rawalpindi.
Instructore: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Requirement engineering.
Week 3 Outline Post-Mortem By: Jamaral Johnson. 2 After Actions Review In this presentation I will do my best to highlight what went wrong. This is just.
Contracts With special reference to RabbitHunt. Multi-person projects Except for coursework, it is rare for a single person to write an entire program.
SE is not like other projects. l The project is intangible. l There is no standardized solution process. l New projects may have little or no relationship.
AN INTRODUCTION Managing Change in Healthcare IT Implementations Sherrilynne Fuller, Center for Public Health Informatics School of Public Health, University.
February 15, 2004 Software Risk Management Copyright © , Dennis J. Frailey, All Rights Reserved Simple Steps for Effective Software Risk Management.
Planning in Organizations Why supervisors and managers plan: Knowing what the organization is trying to accomplish helps them set priorities and make decisions.
Key issues Faculty Website “English Legal Methods”
Getting Everybody on Board Session 3 Module 4 Presented by the MBI Consultants.
Project Impact CURR 231 Curriculum and Instruction in Math Session 3 Chapters 3.
Chapter 9 The People in Information Systems. Learning Objectives Upon successful completion of this chapter, you will be able to: Describe each of the.
Farmer to Farmer ICT Workshop Evaluation Results Based on the responses of 19 workshop participants out of 24 total Presented to USAID by the FACET project.
Copyright © , Dennis J. Frailey, All Rights Reserved Day 2, Part 1, Page 1 1/11/2004 Day 2, Part 1 Estimating Software Size Section 2 Calculating.
Department of CS & Eng. MSSE Program, © Fissure 1 SOFTWARE PROJECT MANAGEMENT COURSE Executing, Monitoring and Controlling Session #7.
BES-t Practices Training Phase 3 Counseling – Behavior Modification.
Copyright , Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M15 - Version 9.01 SMU CSE 7315 Planning and Managing a Software Project.
(6) Estimating Computer’s efficiency Software Estimation The objective of Software Estimation is to provide the skills needed to accurately predict the.
Machine Learning in Practice Lecture 2 Carolyn Penstein Rosé Language Technologies Institute/ Human-Computer Interaction Institute.
Questioning as Formative Assessment: GRECC Math Alliance February 4 th - 7 th, 2008.
1 TEAM BUILDING & MANAGEMENT. 2 CONTENTS Generalities The individual The individual in the group To manage the group The group manager The group facing.
More SQA Reviews and Inspections. Types of Evaluations  Verification Unit Test, Integration Test, Usability Test, etc  Formal Reviews  aka "formal.
1 Chapter 1- Introduction How Bugs affect our lives What is a Bug? What software testers do?
Time Management: Key to Effective Balance Francisco H. Andrade Department of Physiology University of Kentucky, Lexington KY Work/Life Balance: Every Choice.
Information Systems in Organizations Running the Business: Enterprise Systems (ERP)
Implementing ICPs: Assessment as the First Step
Building Evidence of Effectiveness
Information Systems in Organizations 3. 1
C++ coding standard suggestion… Separate reasoning from action, in every block. Hi, this talk is to suggest a rule (or guideline) to simplify C++ code.
Budget I want to plan a project by determining how much money
MEP CoordinationMEP Coordination and Clash Detection is Extremely Significant for BIM-Know Why.
CMM Overview A Focus on Level 2
Software Reviews.
Presentation transcript:

Overview Coding Practices Balancing standards Configuration Management Providing Change Control Software Estimation Reasons why Programmers and Managers

Coding Practices Good ideas: Let technical lead set standard/practices Strict standards are not always best Have multiple people review each line of code Have project managers sign-off each code section Guidelines, examples, and suggestions sometimes work better than hard and fast rules Circulate well written code to provide examples for others Reward well written code

Standards in Coding Allow the group to develop it’s own coding practices over time rather than forcing them to adopt one style of coding Suggesting different styles of standards to the group may be a good idea to reduce the variation of code

Configuration Management Software is dynamic, and changes are bound to happen. But Configuration Management attempts to control changes. Configuration Management’s biggest goal is to help programmers work more efficiently by having them work on relevant code. If Configuration Management is not followed, problems may never be solved, code can become incompatible, there is no traceable path in your development.

Configuration Management Implementation Suggestions Follow a change procedure Handle changes in groups Evaluation the cost of every change Don’t make too big of changes Develop a judicial change control team Use a bureaucracy system

Configuration Management Additional Thoughts Backup code versions periodically Decentralize data storage in case of disaster Compare new versions with old to spot trends in errors Standardize machine configurations

Software Estimation Most projects are poorly estimated about one year late about 100% over budget There is typically an optimistic outlook on the project of about 20-30%

Software Estimation Methods Take advantage of Project Estimation software, or estimation algorithms Have outside estimation experts consult your team Estimate my sections, and then add up the sections Keep record of previous estimations and the actual project times to adjust your estimates

Software Estimation Suggestions Establish real objectives, and evaluate the estimate based on those objectives Allow enough time for a proper estimate Define software requirements thoroughly beforehand Average the results of several estimations Consider re-estimating the project occasionally

Software Estimation and the Tar Pit Estimation are never going to be 100% accurate, so what happens when we get behind? Hope to catch up Expand team Redefine scope

Reasons for Measurement Having an explanation of why something happened the why it did is better than just observing that it did happen Measurement causes people to focus on resolving known problems Even though estimates and measurements are not always clear, you get some insight into the project

Programmers and Managers Programmers spend time on much more than just programming: Time spent on: Source code: 35% Business: 29% Personal: 13% Meetings: 7% Training: 6% Mail/Documents: 5% Technical Manuals: 2% Misc: 3%

Programmers and Managers Quality and Performance Quality and Performance vary greatly In general 20% of staff perform 50% of work Ratios of good programmers to bad can be as high as 20:1 in regard to performance Interestingly, it seems that good programmers and bad programmers tend to cluster amongst each other

Programmers and Managers Style and Method issues There are several differences that programmers will have based on their opinions of style and formatting Managers need to be aware of: Different opinions Offer suggestions and not rules Focus on the more important issues Allow programmers to develop team standards over time

Programmers and Managers Other considerations The Physical Environment is an important but over looked area that effects a programmers productivity and performance If programmers are satisfied with their work space and office equipment, they are more likely to work better

Conclusion Insist that some kind of coding standard be used Control changes and modifications Attempt to create an estimate in order to measure the projects progression Treat programmers as people

Questions?