Welcome LabVIEW System Development: The Architect’s Perspective Allen C. Smith.

Slides:



Advertisements
Similar presentations
A little Software Engineering: Agile Software Development C Sc 335 Rick Mercer.
Advertisements

Agenda −Scrum with TFS 2010 using MSF for Agile 5.0 −Planning the Project −How do you plan the project? −Project planning in TFS 2010 −Planning a Sprint.
CSE 403 Lecture 24 Scrum and Agile Software Development Reading:
ECE44x SCRUM Overview slides adapted from Marty Stepp
Agile Project Management with Scrum
Lecture 3 CS171: Game Design Studio 1I UC Santa Cruz School of Engineering 12 January.
Scrum in a Nutshell Mark Levison
An Introduction to SCRUM
Process and tools Individuals and interactions over Following a plan Responding to change over Comprehensive documentation Working software over Contract.
SCRUM John Drew. SCRUM - overview Scrum is a project management discipline that has evolved since the early 1990s to deliver software that meets business.
Agile Development.
Scrum CS These slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Scrum (software development)
Agile development By Sam Chamberlain. First a bit of history..
Agile Software Development Matt Rice November 27, 2006.
Agile-SCRUM. Introduction to SCRUM Sanil Xavier What is Scrum?
Stephen Forte Chief Strategy Officer Telerik Session Code: WUX310.
An Overview of Agile L e a d i n g C h a n g e T h r o u g h C o l l a b o r a t i o n.
Sprint – Weekly cadence
© 2010 AT&T Intellectual Property. All rights reserved. AT&T and the AT&T logo are trademarks of AT&T Intellectual Property. Deeper Dive Into: User Stories.
Agile Web Development C. Daniel Chase University of Colorado at Boulder.
CSE G674/2009 Project Project Management Section Presented by: Amir Aref Adib.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
A Transition to Scrum Introduction Presented by Sylvain Jean, CSM © 2011 Révolution Agile. All rights reserved.
"The thinking it took to get us into this mess is not the same thinking that is going to get us out of it."
Current Trends in Systems Develpment
Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Project Management.
Stephen Chief Strategy Officer Telerik
1 - Agile in a nutshell. 2 - Basic principles ●Relies on an iterative, incremental development mechanism with continuous adaptation to customer requirements.
CSE Senior Design I Building a Plan Instructor: Mike O’Dell Several of the slides in this module are a modification and amplification of slides prepared.
Copyright © 2012 by Mark J. Sebern Scrum Overview (from
A Transition to Scrum The Right Ingredients Presented by Sylvain Jean, CSM © 2010 Sylvain Jean. All rights reserved. revolutionagile.ca.
Dr. Nguyen Hai Quan.  Why SCRUM?  What is SCRUM?  Some terms  SCRUM Meetings  Sprint  Estimation  Product backlog  Sprint backlog  Whiteboard.
Scrum Santhosh Srinivasan. Outline What is Scrum What is Scrum Why Scrum Why Scrum Scrum Practices Scrum Practices Why Scrum works Why Scrum works Pros.
Tejasvi Kumar Developer Technology Specialist | Microsoft India
AP-1 4. Agile Processes. AP-2 Agile Processes Focus on creating a working system Different attitude on measuring progress XP Scrum.
Copyright © by Mark J. Sebern Software Engineering Process I SE 2800.
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
SCRUM. WITH ACKNOWLEDGEMENT TO MIKE COHN FROM MOUNTAIN GOAT SOFTWARE, LLC.
Introduction to Agile. Introduction Who is this guy?
Agile CRM Applying the Scrum Methodology for Deployment Neil Benson.
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
Industrial Software Development Process Bashar Ahmad RISC Software GmbH.
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
Scuola Politecnica Dipartimento DITEN Università degli Studi di Genova An Introduction to Scrum and XP Prof. Riccardo Berta.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Manifesto for Agile Software Development
User Stories 1.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Scrum.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Agile Training – Agile Overview
SCRUM Scrum and Agile Software Development Reading:
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Agile Scrum Management
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
AGILE METHODOLOGY MANAGE PROJECT USING AGILE SCRUM.
Project Management and the Agile Manifesto
Scrum MODULE 3 – Part 3.
روش‌های سريع الانتقال (چابک) توسعه نرم افزار
Summarizing Our Models to Date
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Introduction to Agile Blue Ocean Workshops.
Real World Scrum with TFS & VSTS / Azure DevOps
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Software Development In Agile
Scrum in Action.
Software Development In Agile
Presentation transcript:

Welcome LabVIEW System Development: The Architect’s Perspective Allen C. Smith

Who Is This Guy? And what the heck does he do all day?

Where is the code demo?

The Architect is a Leader Project Technical Leader Project Leader Internal Consultant Mentor

In A Nutshell… The architect is the primary technical interface between project or organizational stakeholders and the development team.

We Provide Leadership Project management Quality assurance Product design Product implementation Team development

Project Management The architect works with a project manager to: - Gather and manage requirements - Schedule and track tasks

About Requirements… Software changes work flow, so get close to the workers Requirements are NOT the design Requirements are NOT the implementation Requirements ARE testable and traceable

What is an “Agile” Process According to the Merriam-Webster on- line dictionary “agile” means:  1. marked by ready ability to move with quick easy grace.  2. having a quick resourceful and adaptable character. In agile software development, “agile” tends to mean “the ability to respond to change”.

Agile Misperceptions

Differences of Agile Project Management Iterative  Repeatedly executing nested process cycles  Iterations provide synchronizing points  Iterations provide feedback points Incremental  System is built in progressive stages  Each increment is a working system  Iterations add features and refinements

Agile Origins Scrum  “The New New Product Development Game”, Harvard Business Review, 1986  “The Chaos Model and the Chaos Life Cycle”, by Raccoon, Software Engineering Notes, 1995  Agile Softwate Development with Scrum, Ken Schwaber and Mike Beedle, 2001  Agile Project Management with Scrum, Ken Schwaber, 2004 Extreme Programming  Kent Beck, Ward Cunningham, Ron Jeffries, 1999

Here’s How It Works

Sample Product Backlog Backlog ItemsEstimate Allow a guest to make a reservation3 As a guest, I want to cancel a reservation5 As a guest, I want to change the dates of a reservation. 3 As a hotel employee, I can run RevPAR reports (revenue-per-available-room) 8 Improve exception handling8

Samples From a Travel Website As a user, I want to reserve a hotel room. As a user, I want to cancel a reservation. As a vacation planner, I want to see photos of the hotels. As a frequent flyer, I want to rebook a past trip, so that I save time booking trips I take.

Details Added in Smaller Stories As a user, I want to cancel a reservation. As a premium site member, I can cancel a reservation up to the last minute. As a non-premium member, I can cancel up to 24 hours in advance. As a site visitor, I am ed a confirmation of any cancelled reservation.

Details as Conditions of Satisfaction The product owner’s conditions of satisfaction can be added to a story. These become testing criteria to determine if the story has been satisfied. As a user, I want to cancel a reservation. Verify that a premium member can cancel the same day with out a fee. Verify that a non- premium member is charged a 10% fee for a same-day cancellation. Verify that an confirmation is sent. Verify that the hotel is notified of any cancellation.

Start With Epics and Iterate Frequent Flyer Frequent Flyer As a frequent flyer, I want to be able to check my account As a frequent flyer, I want to book a trip. As a frequent flyer, I want to…. As a frequent flyer, I want to book a trip using my frequent flyer miles. As a frequent flyer, I want to rebook a trip I take often. As a frequent flyer, I want to request an upgrade. As a frequent flyer, I want to see if my upgrade cleared.

A Sprint Backlog As a vacation planner, I want to see photos of the hotels so that I can determine suitability for my client. Design the user interface 8 Code the user interface 16 Create & automate the tests 6 Code the middle tier 8 o You leave sprint planning with an estimated set of tasks and o The team’s commitment to complete the product backlog items represented by this iteration backlog

Estimation Tips Account for daily tasks 2x developers != 2x development hours Design iterations feed estimates And the big one:  We are all optimists!

A Scrum Reading List Agile and Iterative Development: A Manager’s Guide by Craig Larman Agile Estimating and Planning by Mike Cohn Agile Project Management with Scrum by Ken Schwaber Agile Retrospectives by Esther Derby and Diana Larsen Agile Software Development by Alistair Cockburn Agile Software Development with Scrum by Ken Schwaber and Mike Beedle User Stories Applied for Agile Software Development by Mike Cohn

Scrum Tools & Web Resources VersionOne Rally Softwarewww.rallydev.comwww.rallydev.com Scrum Alliancewww.scrumalliance.orgwww.scrumalliance.org

Quality Assurance Tools Source code control Code reviews Coding standards Reuse code

Design Patterns Encapsulation and abstraction Coding and style standards Reuse code selections

Design Encapsulation and abstraction Coding and style standards Reuse code selections

Design Object-Oriented LabVIEW UML

Implementation Complex or High-Risk Components  Recursion  Daemons  Polymorphic VIs  XControls

Implementation Templates  VITs  Merge code  Express VIs

After The Project Retrospectives Code Libraries

Retrospectives Lessons learned  Technical  Estimation Prime Directive: "Regardless of what we discover, we understand and truly believe that everyone did the best job he or she could, given what was known at the time, his or her skills and abilities, the resources available, and the situation at hand."

Code Libraries Reduce time to completion Reduce cost Improve robustness

Code Libraries Generated from completed projects Identify candidates at  Design  Implementation  Post-completion Architect serves as gatekeeper Components will become obsolete over time

Software Architects Align development efforts to customer needs Guide the development team through the software process Grow and improve the organization over several projects

Further Reading “LabVIEW Advanced I, Architectures”  National Instruments “Good to Great”  James Collins “Built to Last”  James Collins and Jerry Porras

Questions Allen C. Smith