BEDIFFERENT                                ACE   GERMANYCopyright © 2012 Aras. All Rights Reserved.                   aras...
ACE                                              Germany Implementation Best Practices Scrum Methodology Patrick Willemsen...
Dilbert saysCopyright © 2012 Aras. All Rights Reserved.   Slide 3   aras.com
Agenda    Agile Methodology – An Overview    Agile Methodology – Applied    QuestionsCopyright © 2012 Aras. All Rights ...
What is Agile?    Agile is an iterative software development     methodology that promotes open collaboration and     pro...
What Characterizes the Agile   Process?    Collaboration and communication    High level of participation and transparen...
Agile Development                                                                     ScrumUse Cases (Requirements)       ...
Product Backlog    High-level document for the entire project    Contains backlog items:             brief use case des...
Product Owner    Represents the voice of the customer and ensures     that the Scrum Team works with the "right things"  ...
Sprint Team                                                                  Product owner                                ...
Scrum Master    Primary job is to remove obstacles to the ability of     the team to deliver the sprint goal    Is not t...
The Team    Has responsibility to deliver the product increment             All team members are responsible to deliver ...
SCRUM Detailed  • Product backlog                 • Sprint backlog                                       Scrum master     ...
Meetings (1)                                  At the beginning of a sprint cycle resp. daily                              ...
Meetings (2)                                  At the end of a sprint cycle                                  Meeting       ...
Sprint Backlog    Detailed document containing information about how the team is going          to implement the use case...
Burn Down Chart    The burn down chart is a publicly displayed chart showing remaining          work in the sprint backlo...
OK, GREAT!        Now how does this apply to Aras        Innovator?Copyright © 2012 Aras. All Rights Reserved.   aras.com
Implementation Methodology    Aras Innovator is ideally suited for an iterative approach:             Rational Unified P...
Aras Methodology Overview    Designed to use the “Small Win” approach    Take a well defined problem(s) and implement wi...
Discovery WorkshopCustomer investigation                                                                                  ...
Use Case WorkshopsDiscovery Workshop                                          Use Case and Design Workshops               ...
Sprint Plan                                              Discovery                Workshops                             Pr...
Part & BOM Management   Example   Topics                                                System    Requirements Definition...
Implementation   Sprint                                                Result Presentation    Develop product increment  ...
Final Thoughts    DO             Develop accurate Use Cases and keep them up to date as you go             Prioritize u...
ACE Germany Questions                                    ? Patrick Willemsen Senior Consultant ARAS Software AGCopyright ©...
Scrum        Project ManagementCopyright © 2012 Aras. All Rights Reserved.   aras.com
Project Management   Agile Project Management with Scrum    Scrum has not only reinforced the interest in software projec...
Modeling Basics        Use CasesCopyright © 2012 Aras. All Rights Reserved.   aras.com
Definition (1)    A use case is the specification of a set of actions     performed by a system which yields an observabl...
Definition (2)    Use Cases                 Use cases are a documentation technique                 Use case is a story...
Definition (3)             Name starts with a verb                       Create Part                       Search on Cl...
Definition (4)    Find the right use case level                  “A task performed by one person in one place at one time...
“Boss Test”    The "boss test" is a naïve approach for determining whether an activity          qualifies as an elementar...
Level of Detail   Casual use case    Consists of a few paragraphs of text, summarizing the use case.   Brief use case (Cl...
Brief Use Case Example    Use Case Name:             Release CAD Drawing    Actors:             Designated User (CMII)...
Fully-Dressed         Use case name                             Extensions         Brief description                   ...
Diagrams (1)    UML has use case diagrams    Use cases are text, not diagrams             Use case analysis is a writin...
Tips & Tricks    Write in an essential UI-free style    Write simple    Write black-box use cases (write what the syste...
Common Problems    The following is a list of the most common problems in writing          requirements:             Mak...
Modeling Basics        RequirementsCopyright © 2012 Aras. All Rights Reserved.   aras.com
Definition    User Requirements             Statements of fact and assumptions that define the expectations of the syste...
Terminology (1)    In a specification, there are terms to be avoided and terms that must be          used in a very speci...
Terminology (2)    There are a number of terms to be avoided in writing requirements,          because they confuse the i...
Terminology (3)    Requirements should be easy to read and understand. The requirements          in a system specificatio...
Terminology (4)                                 Ambiguous Terms           Ways to Improve Them                            ...
Terminology (5)                                 Ambiguous Terms             Ways to Improve Them                          ...
Terminology (6)                                 Ambiguous Terms          Ways to Improve Them                             ...
Terminology (7)                                 Ambiguous Terms          Ways to Improve Them                             ...
Upcoming SlideShare
Loading in...5
×

Aras PLM Software Implementation Methodology

633

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
633
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Aras PLM Software Implementation Methodology

  1. 1. BEDIFFERENT ACE GERMANYCopyright © 2012 Aras. All Rights Reserved. aras.com
  2. 2. ACE Germany Implementation Best Practices Scrum Methodology Patrick Willemsen Senior Consultant ARAS Software AGCopyright © 2012 Aras. All Rights Reserved. aras.com
  3. 3. Dilbert saysCopyright © 2012 Aras. All Rights Reserved. Slide 3 aras.com
  4. 4. Agenda  Agile Methodology – An Overview  Agile Methodology – Applied  QuestionsCopyright © 2012 Aras. All Rights Reserved. Slide 4 aras.com
  5. 5. What is Agile?  Agile is an iterative software development methodology that promotes open collaboration and process adaptability through the life cycle of the project  Is beneficial on projects with many unknowns  Scrum is a framework within Agile methodologyCopyright © 2012 Aras. All Rights Reserved. Slide 5 aras.com
  6. 6. What Characterizes the Agile Process?  Collaboration and communication  High level of participation and transparency to the users  Dedicated, cross-functional team(s)  Self-organized, where everyone participates in decision making  Development is planned in stages by team members  Testing and documentation are done as you go  Users see working product soonerCopyright © 2012 Aras. All Rights Reserved. Slide 6 aras.com
  7. 7. Agile Development ScrumUse Cases (Requirements) Product Product backlog Sprint backlog increment n days UC001 UC003 UC015 … SprintCopyright © 2012 Aras. All Rights Reserved. Slide 7 aras.com
  8. 8. Product Backlog  High-level document for the entire project  Contains backlog items:  brief use case descriptions  wish-list items  prioritized/ranked by business value  The product backlog is property of the Product Owner  Business value is set by the Product Owner http://en.wikipedia.org/wiki/Scrum_(development)Copyright © 2012 Aras. All Rights Reserved. aras.com
  9. 9. Product Owner  Represents the voice of the customer and ensures that the Scrum Team works with the "right things" from a business perspective  The Product Owner collects use cases, requirements, prioritizes them, then places them in the product backlog Business PerspectiveCopyright © 2012 Aras. All Rights Reserved. aras.com
  10. 10. Sprint Team Product owner Sprint team Customer Consultant(s) Process owner(s) Architect(s) Scrum masterCopyright © 2012 Aras. All Rights Reserved. aras.com
  11. 11. Scrum Master  Primary job is to remove obstacles to the ability of the team to deliver the sprint goal  Is not the leader of the team (as the team is self- organizing) but acts as a buffer between the team and any distracting influences  Ensures that the Scrum process is used as intended. The Scrum Master is the enforcer of rules  A key part of the Scrum Masters role is to protect the team and keep them focused on the tasks at handCopyright © 2012 Aras. All Rights Reserved. aras.com
  12. 12. The Team  Has responsibility to deliver the product increment  All team members are responsible to deliver a complete and consistent sprint result  Team is self-organizing in terms of  Task assignment  Task order  Availability  With sprint planning it commits itself to deliver the communicated results  A team is typically made up of up to 6 peopleCopyright © 2012 Aras. All Rights Reserved. aras.com
  13. 13. SCRUM Detailed • Product backlog • Sprint backlog Scrum master Start • Scrum Part 1 Sprint planningProduct owner Requirements definition 2 Consultant(s) Customer representatives Product 5 Result presentation increment Demo 4 Implementation Solution specification Sprint 3 n days Architect Copyright © 2012 Aras. All Rights Reserved. aras.com
  14. 14. Meetings (1) At the beginning of a sprint cycle resp. daily Meeting Topics Planning  Select what work is to be done limit: 2h  Prepare the sprint backlog that details the time it will take to do that work, with the entire team  Identify and communicate how much of the work is likely to be done during the current sprint  Input: Product Backlog  Result: Sprint Backlog Scrum (Daily)  What have you done since yesterday?  What are you planning to do by today? limit: 15 min  Do you have any problems preventing you from accomplishing your goal?Copyright © 2012 Aras. All Rights Reserved. aras.com
  15. 15. Meetings (2) At the end of a sprint cycle Meeting Topics Review (demo)  Present the completed work to the stakeholders (a.k.a. "the demo") limit: 2h  Incomplete work cannot be demonstrated Review (sessions)  Review the work that was completed and not completed by the sprint team limit: 2h Retrospective  All team members reflect on the past sprint limit: 1h  Make continuous process improvement  Two main questions are asked in the sprint retrospective: What went well during the sprint? What could be improved in the next sprint?Copyright © 2012 Aras. All Rights Reserved. aras.com
  16. 16. Sprint Backlog  Detailed document containing information about how the team is going to implement the use cases / requirements for the upcoming sprint.  The document contains the availability of the team members during the sprint period.  Work list broken down into doable tasks (between 2 and 8 hours of work). With this level of detail the whole team understands exactly what to do, and anyone can potentially pick a task from the list.  Tasks on the sprint backlog are never assigned by a team lead; rather, tasks are signed up for by the team members as needed, according to the set priority and the team member skills (Self organizing team).  The sprint backlog is property of the Team. Estimations are set by the Team. http://en.wikipedia.org/wiki/Scrum_(development)Copyright © 2012 Aras. All Rights Reserved. aras.com
  17. 17. Burn Down Chart  The burn down chart is a publicly displayed chart showing remaining work in the sprint backlog. Updated every day, it gives a simple view of the sprint progress. It also provides quick visualizations for reference.  It should not be confused with an earned value chart. http://en.wikipedia.org/wiki/Scrum_(development)Copyright © 2012 Aras. All Rights Reserved. aras.com
  18. 18. OK, GREAT! Now how does this apply to Aras Innovator?Copyright © 2012 Aras. All Rights Reserved. aras.com
  19. 19. Implementation Methodology  Aras Innovator is ideally suited for an iterative approach:  Rational Unified Process • Best Practice Presentation ACE 2010 International • Starting Your Aras Implementation ACE 2011 International  Agile / Scrum Software Development • Aras Innovator Deployment Methodology ACE 2012 Germany • wikipedia http://en.wikipedia.org/wiki/Agile_software_development Starting Your Aras Implementation ACE 2011 InternationalCopyright © 2012 Aras. All Rights Reserved. Slide 19 aras.com
  20. 20. Aras Methodology Overview  Designed to use the “Small Win” approach  Take a well defined problem(s) and implement with less risk and a higher degree of confidence  Implement a series of product increments (production) releases that comprise the complete solution  Each product increment provides value to the business  Scope each increment to be completed in a defined number of sprintsCopyright © 2012 Aras. All Rights Reserved. Slide 20 aras.com
  21. 21. Discovery WorkshopCustomer investigation SoWCustomerworkshop Result order Business process analysis Process description Business entity model definition Solution description Solution mockup Solution proposal Main Requirements Brief use cases Data model (high level) System architecture Scope of work Project definitionCopyright © 2012 Aras. All Rights Reserved. Slide 21 aras.com
  22. 22. Use Case WorkshopsDiscovery Workshop Use Case and Design Workshops Product UC001 Customer backlog SoW project order UC001 UC004 UC003 UC003 UC015 … UCnnn Process description Detailed use cases Solution description Requirement definition Solution proposal System design Brief use cases …Copyright © 2012 Aras. All Rights Reserved. Slide 22 aras.com
  23. 23. Sprint Plan Discovery Workshops Product backlog System Requirements High Level Use Non-functional UC001 UC003 Architecture definition Cases requirements UC015 … Part & BOM Sprint 1 Management Implementation Test Requirements Requirements Product increment Part & BOM Sprint 2 Management Implementation Test Product increment Change Sprint 3 Management Implementation Test Program and Sprint 4 Project Implementation Test ManagementCopyright © 2012 Aras. All Rights Reserved. Slide 23 aras.com
  24. 24. Part & BOM Management Example Topics System  Requirements Definition  Visual Prototypes  Use case definition  Data model  Numbering scheme  Life cycle  Workflow  Permissions  Revisioning and sequence  Relationships to other items (Part, CAD, documents, …)Copyright © 2012 Aras. All Rights Reserved. Slide 24 aras.com
  25. 25. Implementation Sprint Result Presentation  Develop product increment  Live Demo  Write agile documentation  Maintain product backlogCopyright © 2012 Aras. All Rights Reserved. Slide 25 aras.com
  26. 26. Final Thoughts  DO  Develop accurate Use Cases and keep them up to date as you go  Prioritize use cases and requirements  Look for “Small Wins” that provide business value  Create visual prototypes and get user validation before developing any method code  Take result presentations seriously: prepare well, show and discuss product increments  DON’T  Spend a significant amount of time developing specifications without prototyping the solution  Worry about not getting 100% of the detailed requirements up front: Iterate!Copyright © 2012 Aras. All Rights Reserved. Slide 26 aras.com
  27. 27. ACE Germany Questions ? Patrick Willemsen Senior Consultant ARAS Software AGCopyright © 2012 Aras. All Rights Reserved. aras.com
  28. 28. Scrum Project ManagementCopyright © 2012 Aras. All Rights Reserved. aras.com
  29. 29. Project Management Agile Project Management with Scrum  Scrum has not only reinforced the interest in software project management, but also challenged the conventional ideas about such management.  Scrum focuses on project management institutions where it is difficult to plan ahead with mechanisms for empirical process control, such as where feedback loops constitute the core element of product development compared to traditional command-and-control- oriented management.  It represents a radically new approach for planning and managing software projects, bringing decision-making authority to the level of operation properties and certainties.  Scrum reduces defects and makes the development process more efficient, as well as reducing long-term maintenance costs.Copyright © 2012 Aras. All Rights Reserved. Slide 29 aras.com
  30. 30. Modeling Basics Use CasesCopyright © 2012 Aras. All Rights Reserved. aras.com
  31. 31. Definition (1)  A use case is the specification of a set of actions performed by a system which yields an observable result that is of value to one or more actors or other stakeholders of the system UML 2.0 SpecificationCopyright © 2012 Aras. All Rights Reserved. aras.com
  32. 32. Definition (2)  Use Cases  Use cases are a documentation technique  Use case is a story of using a system to fulfill a goal  Use cases capture functional requirements  Use cases are not diagrams, they are text  Use cases are requirements  Use cases define a contract how the system will behave  Use case model is the set of all use cases  Use cases emphasize the user goals and perspectives  Use Cases do not  Specify user interface design. They specify the intent, not the action detail  Specify implementation detail (unless it is of particular importance to the actor to be assured that the goal is properly met)Copyright © 2012 Aras. All Rights Reserved. aras.com
  33. 33. Definition (3)  Name starts with a verb  Create Part  Search on Classification Attributes  Release Part  Assign Review ParticipantsCopyright © 2012 Aras. All Rights Reserved. aras.com
  34. 34. Definition (4)  Find the right use case level “A task performed by one person in one place at one time, in response to a business event, which adds measurable business value and leaves the data in a consistent state.”  Known as Elementary Business Process (EBP, also known as user-level goal use cases)  An EBP-level use case usually is composed of several steps, not just one or twoCopyright © 2012 Aras. All Rights Reserved. aras.com
  35. 35. “Boss Test”  The "boss test" is a naïve approach for determining whether an activity qualifies as an elementary business process.  For example, consider this dialog:  Boss: "What did you do all day today?“  Employee: "I logged in.“  Is the boss happy?  In general, an EBP-level use case usually involves many steps, not just one or two.Copyright © 2012 Aras. All Rights Reserved. aras.com
  36. 36. Level of Detail Casual use case  Consists of a few paragraphs of text, summarizing the use case. Brief use case (Cloud level)  Consists of a few sentences summarizing the use case. It can be easily inserted in a spreadsheet cell, and allows the other columns in the spreadsheet to record priority, technical complexity, release number, and so on. Fully dressed use case (Sea level)  Is a formal document based on a detailed template with fields for various sections; and it is the most common understanding of the meaning of a use case.Copyright © 2012 Aras. All Rights Reserved. aras.com
  37. 37. Brief Use Case Example  Use Case Name:  Release CAD Drawing  Actors:  Designated User (CMII)  System  Use Case Description: The user selects one or more drawings to be released and then releases the items. The system checks if all release mandatory information – meta data as well as CAD files – has been entered by the user and verifies that all related CAD models have been released. The system shows success or failure to the user. After the release, the system shall create a neutral file format.Copyright © 2012 Aras. All Rights Reserved. Slide 37 aras.com
  38. 38. Fully-Dressed  Use case name  Extensions  Brief description  alternate scenarios of success and failure  Scope  Frequency of occurrence  Primary actor  Daily, Weekly, Monthly, Quarterly,  Stakeholders and interests Yearly  who cares about this use case, and  Complexity what do they want?  Concerning logic which corresponds  Preconditions to implementation effort  what must be true on start?  Easy (OOTB), Medium (small  Success guarantee enhancements), Difficult (complex logic) (Post conditions)  what must be true on successful  Miscellaneous completion?  Main success scenario  typical path, happy path alistair.cockburn.usCopyright © 2012 Aras. All Rights Reserved. aras.com
  39. 39. Diagrams (1)  UML has use case diagrams  Use cases are text, not diagrams  Use case analysis is a writing effort, not drawing  But a short time drawing a use case diagram provides a context for:  identifying use cases by name  creating a “context diagram”Copyright © 2012 Aras. All Rights Reserved. aras.com
  40. 40. Tips & Tricks  Write in an essential UI-free style  Write simple  Write black-box use cases (write what the system must do without deciding how it will be done)  Take an actor and actor-goal perspective  Define use cases properly (name, etc.)  Define more useful use cases firstCopyright © 2012 Aras. All Rights Reserved. aras.com
  41. 41. Common Problems  The following is a list of the most common problems in writing requirements:  Making bad assumptions  Writing implementation (HOW) instead of requirements (WHAT)  Describing operations instead of writing requirements  Using incorrect terms  Using incorrect sentence structure or bad grammar  Missing requirements  Over-specifyingCopyright © 2012 Aras. All Rights Reserved. aras.com
  42. 42. Modeling Basics RequirementsCopyright © 2012 Aras. All Rights Reserved. aras.com
  43. 43. Definition  User Requirements  Statements of fact and assumptions that define the expectations of the system in terms of mission objectives, environment, constraints, and measures of effectiveness and suitability (MOE/MOS)  Functional Requirements  Functional requirements explain what has to be done by identifying the necessary task, action or activity that must be accomplished  Non-Functional Requirements  Specify criteria that can be used to judge the operation of a system, rather than specific behaviors. Non-functional requirements are often called qualities of a system. http://en.wikipedia.org/wiki/Non-functional_requirementCopyright © 2012 Aras. All Rights Reserved. aras.com
  44. 44. Terminology (1)  In a specification, there are terms to be avoided and terms that must be used in a very specific manner. Authors need to understand the use of shall, will, and should:  Requirements use shall  Statements of fact use will  Goals use should  Terms such as are, is, and was do not belong in a requirement. The term must shall be handled consciously. Are, is and was may be used in a descriptive section or in the lead-in to a requirements section of the specification.Copyright © 2012 Aras. All Rights Reserved. aras.com
  45. 45. Terminology (2)  There are a number of terms to be avoided in writing requirements, because they confuse the issue and can cost you money, e.g.  Support  But not limited to  Etc.  And/orCopyright © 2012 Aras. All Rights Reserved. aras.com
  46. 46. Terminology (3)  Requirements should be easy to read and understand. The requirements in a system specification are either for the system or its next level, e.g. subsystem. Each requirement can usually be written in the format:  The System shall provide ........  The System shall be capable of ........  The System shall weigh ........  The Subsystem #1 shall provide ........  The Subsystem #2 shall interface with .....  It is required that …Copyright © 2012 Aras. All Rights Reserved. aras.com
  47. 47. Terminology (4) Ambiguous Terms Ways to Improve Them acceptable, adequate Define what constitutes acceptability and how the system can judge this. as much as practicable Dont leave it up to the developers to determine whats practicable. Make it a TBD and set a date to find out. at least, at a minimum, Specify the minimum and maximum acceptable not more than, not to values. exceed between Define whether the end points are included in the range. depends on Describe the nature of the dependency. Does another system provide input to this system, must other software be installed before your software can run, or does your system rely on another one to perform some calculations or services?Copyright © 2012 Aras. All Rights Reserved. aras.com
  48. 48. Terminology (5) Ambiguous Terms Ways to Improve Them efficient Define how efficiently the system uses resources, how quickly it performs specific operations, or how easy it is for people to use. flexible Describe the ways in which the system must change in response to changing conditions or business needs. improved, better, faster, Quantify how much better or faster constitutes superior adequate improvement in a specific functional area. including, including but The list of items should include all possibilities. not limited to, and so Otherwise, it cant be used for design or testing. on, such as, etc. maximize, minimize, State the maximum and minimum acceptable values optimize of some parameter. normally, ideally Also describe the systems behavior under abnormal or non-ideal conditions.Copyright © 2012 Aras. All Rights Reserved. aras.com
  49. 49. Terminology (6) Ambiguous Terms Ways to Improve Them optionally Clarify whether this means a system choice, a user choice, or a developer choice. reasonable, when Explain how to make this judgment. necessary, where appropriate robust Define how the system is to handle exceptions and respond to unexpected operating conditions. seamless, transparent, Translate the users expectations into specific graceful observable product characteristics. several State how many, or provide the minimum and maximum bounds of a range. shouldnt Try to state requirements as positives, describing what the system will do. state-of-the-art Define what this means.Copyright © 2012 Aras. All Rights Reserved. aras.com
  50. 50. Terminology (7) Ambiguous Terms Ways to Improve Them sufficient Specify how much of something constitutes sufficiency. support, enable Define exactly what functions the system will perform that constitute supporting some capability. user-friendly, simple, Describe system characteristics that will achieve the easy customers usage needs and usability expectationsCopyright © 2012 Aras. All Rights Reserved. aras.com
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×