Blog Archives

Field-Programmable Gate Array (FPGA)

The design-layout process of trace routing a printed circuit board requires device, technology, and material knowledge, plus the design talent and competency to fit a set of connection-dependent devices on to a board using one or two sides and two or more trace layers.

It is a highly iterative search, test, layout, and refinement process to converge on final layout:

  • A Looping or cyclic process
  • Clearly identifiable coupled-activity where interrelationships and information associations determine tactics, next steps, and outcome
  • Can estimate duration, or a range, and with parameters for revising first converged solution (assumption: low frequency designs)
  • RF designs will take much longer (physical layout critical)

Performance: circuit characteristics, board size, duration, and quality are based on designer skill, domain knowledge, and experience.

FPGA Coupling May 2015

Most interesting is the layout process where an FPGA is part of the schematic and board design. The majority of pins on an FPGA can be software defined and allocated at load time. This results in an even more highly-coupled and interdependent process with integrated change between schematic and physical layout as concurrent decisions on schematic, layout, and device placement are made during the board design.


Architecture Drift

Agile as a development method offers many advantages; however, the benefit of constantly changing code also presents a challenge to architectural consistency. Rapid code modification can limit the ability to leverage a well-defined architecture with clearly defined module boundaries, and can lead to a number of problems including structural code erosion and code overlap across modules.

In a distributed environment with multiple teams working on different parts of an application, the lack of an accurate map of boundaries can make it difficult to determine the correct location for new functions. The lack of a well-defined structure for the project can block developers from noticing important missing capabilities early in development.

As is always the case, discovering missing requirements towards the end of the project can lead to significant time and resource impact to resolve. DSM Clustering analysis can be an effective tool to visualize architecture, migration, and facilitate a common team understanding.


Better known as MEEZ to those in the know, it is a French phrase that means to gather and arrange the ingredients and tools needed to prepare a meal. It helps a chef define the scope and coordinate all required labor and material.  The cooking metaphor is of a very clean kitchen: clean knives, cutting board, clear work space, all spices and cooking implements positioned in a precise pattern for immediate access at the right time.

It forms a practice of self-discipline for daily work with a clear mind and a defined and rigorous approach at the start of each day. It involves studying a plan, workshop, presentation, meeting, sprint, or work package, thinking through the resources, tools, time, sequence, and processes needed, and assembling and readying all the components before launch. It is the planning moment when PM’s evaluate the totality of what the team is trying to achieve and create a feasible plan for the work ahead.

Practitioners who grasp the concept are able to keep many tasks in mind simultaneously, weighing and assigning each its proper priority and schedule precedence. This assures that the PM or SME has anticipated and prepared for every situation that could logically occur during a Sprint or other work activity. A chef best practice of Mise-en-place is to envision perfect execution before starting the actual meal preparation. PM examples could include breakdown by WBS work package or Sprint; if you can visualize perfect execution, you have reached the right level of detail for the WP or Sprint. Checklists created and memorized to capture the best model and ensure future value is realized.

  • Make fewer mistakes
  • MEEZ habits enable greater focus of attention when needed
  • Good risk management technique as it limits the possibility that something may be missing when needed.
  • Reduce individual and team stress
  • Deeper understanding of what needs to go right to achieve success
  • Keep things orderly and in place for everyone leading to reduced need for repeat questions and faster on-boarding of new team members
  • Planning process to cut out waste and surface an appropriate structure
  • Consistent excellence with daily activities that support strategic work

 What kinds of endeavors might benefit from Mise-en-place?

  • Team work in a single room where being prepared and having everything tightly organized is essential to sustain productivity of every member
  • Project design-criteria and check list for evaluation and critique
  • Staging a sprint-how to make the conditions perfect?
  • Facilitated workshops
  • Limited WIP models
  • Specific planning processes (sales process design/sprint)
  • Short cycle exercise to develop something new and ready for test (learning) in a highly time constrained window.
  • Swarm models
  • Encoding the use of specific tools in a consistent fashion
  • Short dynamic activities by small groups-preparation “packet” in advance
  • Preparing for a meeting, presentation, phone call, workshop, conference, delivery