Vocabulary

AJAX (Asynchronous JavaScript and XML)
 Group of technology (like LAMP or DHTML) used on the client side for interactive/dynamic web application. Data is being send and retrieved asynchronously to the server and the rendering is done on the client side. It uses XHTML and CSS for the style and info, and use JavaScript for dynamic display.

API
Application Programing Interface
An API is a protocol intended to be used as an interface by software components to communicate with each other. An API is a library that may include specification for routines, data structures, object classes, and variables.

BPM

Center of excellence
 Methodology, templates and tools

Consensus decision making
Consensus aimed at:
  • Reaching as much agreement as possible
  • Be collaborative (concerns of the group), cooperative (best decision for the group, no individual preference)
  • Egalitarian
  • Inclusive and participatory

Nominal vs. ordinal: Former is a category (sex, race, region), the former can be represented by a number and thus ordered.

IDE
Integrated development environment

JSON
JSON ( stands for Java Script Object Notation) is becoming the de-facto data exchange format standard due to few factors among which the most important are:

  • It is self describing: there is no need to define a schema ahead of time as the field names are include in the document itself. It is a schema less dataset that is free to evolve as needed.
  • It is simple made-up of arrays and maps called Objects.

More traditional DB are changing to natively understand JSON, but the typical infrastructure of JSON is made of Drill, ElasticSearch or even MongoDB.
http://drill.apache.org/blog/2015/01/27/schema-free-json-data-infrastructure/

Matrix
In a matrix environment all major decisions will be reached by consensus. A satisfactory working arrangement needs to be reached that bridges the inevitable differences in priority that will exist between project managers and line managers. Project managers will tend to view their own project as the focal point whereas departmental managers will tend to view things from a departmental perspective. To function effectively matrix management environments should have the following characteristics: There should be effective channels of communication between the managers involved. All of the relevant line managers should contribute to project planning and project resource decisions should be reached by consensus. There should be formal procedures in place for resolving any management conflicts that do arise.

Pervasive: Spreading widely throughout an area or a group of people.

PMML (Predictive Model Markup Language) is an XML-based language that enables the definition and sharing of predictive models between applications. A predictive model is a statistical model that is designed to predict the likelihood of target occurrences given established variables or factors.

Regression testing Regression testing is any type of software testing that seeks to uncover new errors, or regressions, in existing functionality after changes have been made to a system, such as functional enhancements, patches or configuration changes.
The intent of regression testing is to ensure that a change, such as a bugfix, did not introduce new faults. "One of the main reasons for regression testing is that it's often extremely difficult for a programmer to figure out how a change in one part of the software will echo in other parts of the software."
Common methods of regression testing include rerunning previously run tests and checking whether program behavior has changed and whether previously fixed faults have re-emerged. Regression testing can be used to test a system efficiently by systematically selecting the appropriate minimum set of tests needed to adequately cover a particular change.


SDLC

Scrum
Alternative to waterfall development also known as agile software development.
Product is being broken down into features/subsets and are part of the requirements.
Scrum has 3 artifacts:
  • Backlog: List of feature/subsets that compose the final product
  • Sprint backlog: Privatization of the elements in the backlog 
  • Sprint: Phase during which team creates potential shippable product increment (features/subset) that are coming from the backlog.

Customer can alter the requirements ether because of emerging problems or just because they recalibrate the product (requirement chum). These change of requirements alter the backlog but not ongoing sprint.
Scrum master play the role of the PM and animate:
  • the daily scrum: daily meetings during which the team discuss status of ongoing spring with what was done, what will be done tomorrow, any red flag that could derail deliverable of item (duration 15 min)
  • The sprint planning meeting (every 7 to 30 days) : build the backlog with 1st prioritizing the backlog and 2nd planning the resulting sprints
  •  Sprint review: assess and demonstrate the output of the sprint
  • Sprint retrospective: learn from previous sprint to adjust following one 
Semantic layer vs. Presentation Layer

SOAP Simple Object Access Protocol - it is a protocol specification for exchanging structure information in the implementation of Web Services. It relies on XML for its message format, and usually relies on Application Protocol for message negotiation and transmission (HTTP, SMTP for e.g.).

Staging Database

sProps allows to breakdown Page Views, Visits and Unique Visitors into meaningful buckets (which pages are the most popular or what percentage of pages were viewed in the USA vs. Canada, etc….).
The purpose of Conversion Variables (also known as eVars) is to allow you to breakdown Success Event metrics in a similar manner that Traffic Variables allow you to breakdown Traffic metrics.



Unit testing vs. Integration testing

Unbalanced, ragged, sparse hierarchy