MGMLaboratory
Back

Menu

01Home
02About Us
03Projects
04Publications
05Member
06Articles
07Contact

Let's Talk

Open in Mail app

Socials

Malang (ID) --:--Privacy PolicyTerms of Service

June 22, 20171 min read

MCCP: A Framework for Apps That Have to Talk to Each OtherMCCP: A Framework for Apps That Have to Talk to Each Other

MVC splits an application into parts. A team from Universitas Brawijaya redesigned it for organisations where several applications share one process.

  • Journal
  • Publications

Written by

  • SRShirasaka RenIT & Infrastructure · Student Member

In this article

  1. 01The problem MVC does not solve
  2. 02What the team proposed

Model-View-Controller is the pattern most web developers learn first. It splits an application into three roles: the model holds the data, the view shows it, and the controller handles what the user does. Each piece can change without breaking the others.

That separation buys reuse and easier maintenance, which is why MVC is everywhere. It also assumes one application talking to one database on behalf of one set of users. Real organisations rarely look like that.

01/02

The problem MVC does not solve

Business processes cross departmental lines. A purchasing record starts in one unit, gets approved in another, and lands in finance. When each unit runs its own software, the work becomes a conversation between applications, and MVC offers no built in way to hold that conversation.

Separation of concerns is the whole point of a design pattern. Image: CC0, via Wikimedia Commons.
Fig. 01Separation of concerns is the whole point of a design pattern. Image: CC0, via Wikimedia Commons.

02/02

What the team proposed

The authors propose Model-CollectionService-Controller-Presenter, a modification of MVC rather than a replacement. Two roles join the pattern. The CollectionService handles data exchange between applications, and the Presenter takes over part of the work the controller used to do.

The framework lets several different applications run against the same foundation and exchange data with each other. The authors also report performance comparisons against another widely used web framework, though the abstract gives no figures.

Integration work happens on the server side. Credit: Esquilo, CC BY-SA 3.0.
Fig. 02Integration work happens on the server side. Credit: Esquilo, CC BY-SA 3.0.

The interesting move is the restraint. Modifying a pattern that thousands of developers already know is a hard sell, and the team kept the familiar pieces intact while adding what the business case needed.

Source

  1. Aryo Pinandito, Ferdika Bagus Pristiawan Permana and Rizal Setya Perdana (2017). Framework Design for Modular Web-based Application Using Model-CollectionService-Controller-Presenter (MCCP) Pattern. Journal of Information Technology and Computer Science, 2(1), 41-65.

    DOI10.25126/jitecs.20172120 (opens in a new tab)

Next articleWhen the Standard Design Pattern Stops Fitting(Keep scrolling)(Read it next)(Loading)