Enterprise Architecture Quarter

From CNM Wiki
Revision as of 01:48, 13 April 2018 by Test.user (talk | contribs) (Practices)
Jump to: navigation, search

Enterprise Architecture Quarter (hereinafter, the Quarter) is the third of four lectures of Project Quadrivium (hereinafter, the Quadrivium):

  • The Quarter is designed to introduce its learners to enterprise design, or, in other words, to concepts related to creating architecture for achieving enterprise goals; and
  • The Quadrivium examines concepts of administering various types of enterprises known as enterprise administration as a whole.

The Quadrivium is the first of seven modules of Septem Artes Administrativi, which is a course designed to introduce its learners to general concepts in business administration, management, and organizational behavior.


Lecture outline

The predecessor lecture is Feasibility Study Quarter.

Concepts

  1. Product. A solution or component of a solution that is the result of a project.
  2. Product vision statement. A brief statement or paragraph that describes the why, what, and who of the desired software product from a business point of view.
    • Product vision statement. a high-level description of a product which includes who it is for, why it is necessary and what differentiates it from similar products.
    • Feature. A cohesive bundle of externally visible functionality that should align with business goals and objectives. Each feature is a logically related grouping of functional requirements or non-functional requirements described in broad strokes.
    • Defect. A deficiency in a product or service that reduces its quality or varies from a desired attribute, state, or functionality. See also requirements defect.
  3. Statement of work (SOW). A formal document that either (1) defines the entire scope of the work that shall be completed in order to implement the proposed change or (2) describes deliverables to be supplied under contract.
  4. Product backlog. A set of user stories, requirements or features that have been identified as candidates for potential implementation, prioritized, and estimated.
    • Backlog. A changing list of product requirements based on the customer’s needs. The backlog is not a to-do list; rather, it is a list of all the desired features for the product. The Agile team uses the backlog to prioritize features and understand which features to implement first.
    • Backlog grooming. The process that occurs at the end of a sprint, when the team meets to make sure the backlog is ready for the next sprint. The team may remove user stories that aren’t relevant, create new stories, reassess priority, or split user stories into smaller tasks. Backlog grooming is both an ongoing process and the name for the meeting where this action occurs (a backlog grooming meeting).
    • Product backlog item (PBI). A single element of work that exists in the product backlog. PBIs can include user stories, epics, specifications, bugs, or change requirements. The product owner of an Agile team compiles and prioritizes the product backlog, putting the most urgent or important PBIs at the top. PBIs comprise tasks that need to be completed during a Scrum sprint—a PBI must be a small enough increment of work to be completed during a single sprint. As PBIs move up to a higher priority in the product backlog, they are broken down into user stories.
    • Product backlog. The list of requirements requested by the customer. The product backlog is not a to-do list; rather, it is a list of all the features the customer has requested be included in the project. The requirements include both functional and non-functional customer requirements, as well as technical team-generated requirements. While there are multiple inputs to the product backlog, it is the sole responsibility of the product owner to prioritize the product backlog. During a Sprint planning meeting, backlog items are moved from the product backlog into a sprint, based on the product owner's priorities.
    • Sprint backlog. A segment of Product Backlog Items (PBIs) that the team selects to complete during a Scrum sprint. These PBIs are typically user stories taken from the product backlog.
  5. Minimum viable product (MVP). A low-cost prototype that measures if an idea attracts interest. (see 6 Steps to Building an MVP to learn more)
    • MVP. Minimum Viable Product. A minimum viable product (MVP) is the "version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort" (similar to a pilot experiment)
    • Wizard of Oz minimum viable product (WoOMVP). A version of a product that looks functional, but it actually operated by a human behind the scenes, granting the appearance of automation.
    • Concierge minimum viable product (CMVP). A manual service simulating the same exact steps people would go through with a final product.
    • Piecemeal minimum viable product (PMVP). A functioning model of a product that takes advantage of existing tools and services in order to emulate the user experience process.
  6. Product life cycle.
    • Lifecycle. Important phases in the development of a system from initial concept through design, testing, use, maintenance, to retirement.

Roles

  1. Agile team. A work team that is responsible for committing to work, delivering and driving the product forward from a tactical perspective in terms of Agile methodology. Usually, an Agile team is a small, high-functioning group of five to nine people who collaboratively work together to complete an iteration or project. The team has the necessary skills and competencies to work on the project. Scrum teams are cross-functional; Kanban teams can either be cross-functional or specialists. Scrum teams lack any roles. Kanban teams usually have team leads.
  2. Scrum role. One of the following: product owner, Scrum master, Agile team member.
    • Scrum master. A facilitator for the team and product owner. Rather than manage the team, the Scrum master works to assist both the team and product owner in the following ways: (1) Remove the barriers between the development and the product owner so that the product owner directly drives development. (2) Teach the product owner how to maximize return on investment (ROI), and meet his/her objectives through Scrum. (3) Improve the lives of the development team by facilitating creativity and empowerment. (4) Improve the productivity of the development team in any way possible. (5) Improve the engineering practices and tools so that each increment of functionality is potentially shippable. (6) Keep information about the team's progress up to date and visible to all parties. Scrum master is often viewed as the coach for the team.
    • Product owner. A person who holds the vision for the product and is responsible for maintaining, prioritizing and updating the product backlog. In Agile methodology, the product owner has final authority representing the customer's interest in backlog prioritization and requirements questions. This person must be available to the team at any time, but especially during the Sprint planning meeting and the Sprint review meeting. Challenges of being a product owner: (1) Resisting the temptation to "manage" the team. The team may not self-organize in the way you would expect it to. This is especially challenging if some team members request your intervention with issues the team should sort out for itself. (2) Resisting the temptation to add more important work after a Sprint is already in progress. (3) Being willing to make hard choices during the sprint planning meeting. (4) Balancing the interests of competing stakeholders.
  3. Customer. The organization or individual that has requested (and will pay for) a product or service.
    • Customer. A stakeholder who uses products or services delivered by an organization.
  4. Project sponsor.
    • Sponsor. A stakeholder who authorizes or legitimizes the product development effort by contracting for or paying for the project.

Methods

  1. Development methodology.
    • Methodology. A set of processes, rules, templates, and working methods that prescribe how business analysis, solution development and implementation is performed in a particular context.
    • Plan-driven methodology. Any methodology that emphasizes planning and formal documentation of the processes used to accomplish a project and of the results of the project. Plan-driven methodologies emphasize the reduction of risk and control over outcomes over the rapid delivery of a solution.
    • Change-driven methodology. A methodology that focuses on rapid delivery of solution capabilities in an incremental fashion and direct involvement of stakeholders to gather feedback on the solution's performance.
  2. Agile methodology (or Agile development methodology). The project management approach of developing increments of prototypes and, eventually, the deliverable in frequent iterations based on evolving requirements. In other words, the Agile methodology is characterized by the division of tasks into short phases of work and frequent reassessment and adaptation of initial objectives. Instead of well-defined projects in the Waterfall methodology, the Agile one suggests a series of development sprints. This methodology emphasizes clearly-defined development rules with regard to both development and continuous feedback to refine the product scope rather than a predefined development process. This feature makes the methodology instrumental in those development that are inherently unpredictable. The Agile Manifesto was the initial public declaration for Agile methodology related to software. Its authors believed that they found "better ways of developing software by doing it and helping others do it."
    • Agile. (1) Able to move quickly and easily and/or (2) Agile methodology.
    • Scrum. The Agile methodology that features (a) a self-directed team with no specified project manager and no managers at all, (b) a high level of communication between team members especially through daily meetings called standups, and (c) a product owner who is responsible for continuous feeding tasks to the team. In Scrum, iterations are called sprints and are assigned a fixed length—sprints typically last one to two weeks, but can last as long a month.
    • Lean Agile methodology. An example of lightweight Agile methodology applied to project development. Lean Software Development combines the Lean manufacturing approach pioneered by Toyota in the 1950s (also known as just-in-time production) and Lean IT principles, and applies them to software. LSD places a strong emphasis on people and effective communication. LSD is defined by seven principles: (1) Eliminate waste, (2) Create knowledge, (3) Build quality in, (4) Defer commitment, (5) Optimize the whole, (6) Deliver fast, (7) Respect people
    • Lean UX. Inspired by Lean and Agile methodologies, Lean UX speeds up the UX process by putting less emphasis on deliverables and greater focus on the actual experience being designed.
    • Test-driven development (TDD). The practice of designing and building tests for functional, working code, and then building code that will pass those tests.
  3. Kanban. A highly visual framework that falls under the Agile umbrella. The Kanban process uses continuous work flow rather than fixed iterations to produce shippable deliverables. When applied over an existing process, Kanban encourages small, incremental changes to the current process and does not require a specific set up or procedure. Kanban focuses on completing entire projects rather than sprints.
  4. Iterative design. A methodology based on a cyclic process of prototyping, testing, analysing, and refining a product or process. Based on the results of testing the most recent iteration of a design, changes are made. This process is intended to ultimately improve the quality and functionality of a design.
    • Iterate. The act of repeating a process with the aim of approaching a desired goal, target or result. Each repetition of the process is also called an iteration.
    • Iteration. A fixed or timeboxed period of time, generally spanning two to four weeks, during which an Agile team develops a deliverable, potentially shippable product. A typical Agile project consists of a series of iterations, along with a Sprint planning meeting prior to development and a Sprint retrospective at the end of the iteration. Iterations are referred to as sprints in Scrum.
      1. Iteration. Each phase of agile development is referred to as an iteration. Iterations are short time frames granted to deliver sets of features. Each iteration generally contains activities such as analysis, design, development, and testing.
    • Iterative development. The process of breaking down projects into more manageable components known as iterations. Iterations are essential in Agile methodologies for producing a potentially shippable deliverable or product.
  5. Collaborative design. Inviting input from users, stakeholders and other project members.
  6. Waterfall methodology. A sequential design process where progress is seen as flowing steadily downwards through the phases of Conception > Initiation > Analysis > Design > Construction > Testing > Implementation > Maintenance.
    • Waterfall methodology. A product life cycle strategy including Analysis, Design, Development, Testing, and Deployment phases.

Instruments

  1. Scrum meeting. One of the following: story time, Sprint planning meeting, Sprint review meeting, Sprint retrospective, daily standup.
    • Sprint planning meeting. A working session held before the start of each sprint to reach a mutual consensus between the product owner's acceptance criteria and the amount of work the development team can realistically accomplish by the end of the sprint. The length of the sprint determines the length of the Sprint planning meeting, with two hours being equivalent to one week of the sprint. Using this formula, the Sprint planning meeting for a two-week sprint would last about four hours, although this can vary.
    • Daily standup. A brief communication and status-check session facilitated by the Scrum Master where Scrum teams share progress, report impediments, and make commitments for the current iteration or sprint. The Daily Scrum consists of a tightly focused conversation kept to a strict timeframe; the meeting is held at the same time, every day (ideally, in the morning), and in the same location. The Scrum task board serves as the focal point of the meeting. During the Daily scrum each team member answers three questions: (1) "What have I done since the last Scrum meeting? (i.e. yesterday)" (2) "What will I do before the next Scrum meeting? (i.e. today)" (3) "What prevents me from performing my work as efficiently as possible?"
    • Story time. A regular work session where items on the backlog are discussed, refined and estimated and the backlog is trimmed and prioritized.
    • Scrum of scrums. A meeting that is a scaling mechanism used to manage large projects involving Scrum multiple teams. A Scrum of Scrums is held to facilitate communication between teams that may have dependencies on one another. One member from each team attends the Scrum of Scrums to speak for the team—this could be the Scrum Master but may be any team member who can effectively relay information and handle questions or concerns for the team.
    • Sprint review meeting. A meeting that a Scrum team holds immediately following the completion of a sprint to review and demonstrate what the team has accomplished during the sprint. This meeting is attended by the product owner or customer, Scrum Master, Scrum team, and stakeholders. The Sprint review meeting is an informal meeting (no Powerpoint slides allowed). The length of the sprint determines the length of the Sprint review meeting, with one hour being equivalent to one week of the sprint. Using this formula, the Sprint planning meeting for a two-week sprint would last two hours, although this can vary.
  2. Sandbox. An environment or location where experimentation is acceptable, without consequences for failure.

Results

  1. Product scope. The features and functions that characterize a product, service or result.
    • Scope. The area covered by a particular activity or topic of interest. See also project scope and solution scope.
    • Scope. The sum of the products and services to be provided as a project. See project scope and product scope.
    • Scope model. A model that defines the boundaries of a business domain or solution.
    • Scope statement. The scope statement provides a documented basis for making future project decisions and for confirming or developing common understanding of project scope among the stakeholders. As the project progresses, the scope statement may need to be revised or refined to reflect approved changes to the scope of the project.
    • Scope verification. Formalizing acceptance of the project scope.
    • Scope validation. Formalizing acceptance of the project scope.

Practices

The successor lecture is Chief Execution Quarter.

Materials

Recorded audio

Recorded video

Live sessions

Texts and graphics

See also