d396398698f4d985735c9116af349683.ppt
- Количество слайдов: 36
Welcome Lab. VIEW 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 n n 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 n n n 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… n n 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 n According to the Merriam-Webster online dictionary “agile” means: ¡ ¡ n 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 n Iterative ¡ ¡ ¡ n 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 n Scrum ¡ ¡ n “The 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 Items Estimate Allow a guest to make a reservation 3 As a guest , I want to cancel a reservation 5 As a guest, I want to change the dates of a reservation. 3 As a hotel employee, I can run Rev. PAR reports (revenue-per-available-room) 8 Improve exception handling 8
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 premium site member, I cancel a reservation up to the last minute. As a user, I want to cancel a reservation. As a non-premium member, I cancel up to 24 hours in advance. As a site visitor, I am emailed a confirmation of any cancelled reservation.
Details as Conditions of Satisfaction n 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 cancel the same day with out a fee. • Verify that a nonpremium member is charged a 10% fee for a same-day cancellation. • Verify that an email confirmation is sent. • Verify that the hotel is notified of any cancellation.
Start With Epics and Iterate As a frequent flyer, I want to be able to check my account Frequent Flyer 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 n n Account for daily tasks 2 x developers != 2 x development hours Design iterations feed estimates And the big one: ¡ We are all optimists!
A Scrum Reading List n n n n 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 n n n Version. One Rally Software Scrum Alliance www. versoion. net www. rallydev. com www. scrumalliance. org
Quality Assurance Tools n n Source code control Code reviews Coding standards Reuse code
Design n n Patterns Encapsulation and abstraction Coding and style standards Reuse code selections
Design n Encapsulation and abstraction Coding and style standards Reuse code selections
Design n n Object-Oriented Lab. VIEW UML
Implementation n Complex or High-Risk Components ¡ ¡ Recursion Daemons Polymorphic VIs XControls
Implementation n Templates ¡ ¡ ¡ VITs Merge code Express VIs
After The Project n n Retrospectives Code Libraries
Retrospectives n Lessons learned ¡ ¡ n Technical Estimation Prime Directive: "Regardless of what we discover, we understand 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 n n n Reduce time to completion Reduce cost Improve robustness
Code Libraries n n Generated from completed projects Identify candidates at ¡ ¡ ¡ n n Design Implementation Post-completion Architect serves as gatekeeper Components will become obsolete over time
Software Architects n n n Align development efforts to customer needs Guide the development team through the software process Grow and improve the organization over several projects
Further Reading n “Lab. VIEW Advanced I, Architectures” ¡ n “Good to Great” ¡ n National Instruments James Collins “Built to Last” ¡ James Collins and Jerry Porras
Questions Allen C. Smith asmith@ktech. com
d396398698f4d985735c9116af349683.ppt