Sunday, April 24, 2016
Sunday, April 3, 2016
Lesson 06 - Emerging Business Architecture Layer
Emerging Business Architecture Layer
Enterprise Solution Architecture
Sunday, March 20, 2016
Lesson 5 - Enterprise Security Architecture
The problem with Enterprise Security Architecture is that it is very difficult. It crosses every other pillar in the entire enterprise. Really, I think it should be the foundation. Don't get me wrong, I don't like having to deal with security because it can be a real pain. But it's necessary. And it has to be done with constant vigilance because security changes even faster than the technology.
Currently my organization is going through the RMF (Risk Management Framework) process for one of our networks (we have several of varying classifications and purposes). The process basically lays out our entire architecture and the security it has. This security ranges from the machines to the physical cable installations. It's that detailed.
What makes security a pain is that detail and the governance required. Its all encompassing nature is why it's so complicated. The only truly secure computer is one that is turned off. Again, it goes beyond that. For example in the DoD we have rules about cables. Anything that is unclassified can be copper cable (normal CAT 5E or 6). Anything ABOVE that can also be copper, but only if it's a secure space and even then it can not be in the same cable tray as unclassified. The preferred option is that anything above normal unclassified (there are different levels of unclassified) be fiber optics.
I think back to years ago when we used to rotate tapes to an offsite location. Those tapes were not encrypted. Sure, they were carried by secure couriers but the media themselves were not. That would never fly now. Even our disks have built in encryption. That's what I mean by security encompasses everything and should almost be the foundation that we build the architecture on.
Sunday, February 28, 2016
Lesson 04: The Enterprise Technology Infrastructure Architecture
The Technology Stack is without a doubt my favorite part of EA. It is what I like doing the most and what I spend most of my work time on. Currently I'm involved in 2 projects in this area.
The first is mapping in significant detail our current EA. While this goes against the best practices and the thoughts of EA it is a requirement at my place of work. Every few years we have to be reaccredited with the DoD. This time is a little different because the way that the DoD tracks, accredits, and issues ATO's (Authority To Operate) has changed. Spending this much time on the current state can be annoying it has brought out a few interesting things that would be somewhat like Gap Analysis. It has also spawned a lot of discussion about where are future state is going. And a lot of long useless meetings arguing over semantics, like the definition of "Platform".
And thats where the second project comes in and the one that I'm really enjoying. Defining the furture state of the actual technology is a lot of fun. I have a tremendous amount of latitude because of a lack, and by lack, I mean non-existant, of IT Governance. Robertson's article at Gartner suggesting that ETA should not be concentrated on until other parts of the EA process are complete rings very true. There are some cases though where pieces of it need to be defined early. In my case a large majority of the applications in the environment are custom applications developed by us. So certain aspects need to be defined. Without getting into the politics too deep, we have "heavily suggested" the use of certain core services to build the applications on (we are not allowed to define, or call them standards). For example the "preferred" relational database service is PostgreSQL. Web servers should be either Nginx or Apache. Messaging Services should utilize RabbitMQ, etc, etc. Try as I might to follow the Best Practices, which I really feel they are, I am constrained by the way the DoD operates. So due to some of the constraints and the way things operate, I'm bound by "requirements" or "stakeholder concerns" too much. Since my primary role is RDT&E (Research, Development, Testing & Evaluation) I get dive into the ETA head first. Since I do work closely with other groups I do try and come up with "requirements" to form my projects and their direction so that what I'm doing is seen as valuable to stakeholders or would-be/potential stakeholders or others in positions that could impact my work. I try to use the tools and technologies they are interested in or are using (especially if I'm doing a Proof of Concept) currently. It's a very strange world I work in sometimes and the politics can be annoying. Again though, I get to dive head first into ETA without a lot of constraints.
I do agree with the Best Practices though and have seen a project at another organization not contrained by the DoD, crash and burn because some of these weren't followed, as well as some of the issues from Robertson. Like not having the project and technology aligned with the business and its needs. Another big one was "Stakeholder concerns not adequately defined".
Over all, ETA is very important. How and when it's done really depends a lot on the company and how they operate. It also needs to be done in a layered, iterative approach starting with higher level technologies and then drilling down. It also needs to be documented at differently layers and levels from the high level overview for less technical people down to almost packet flow for the highly technical people. And as always, security should be one of the major considerations and one of the first layers to be defined.
Saturday, February 13, 2016
Lesson 03 - Data Architecture
As I said, there are a lot of things to consider when dealing with Enterprise Data Architecture. I look at it from this way, in no particular order (at least not yet).
- What needs to be stored vs. what needs to be just processed and utilized?
- What departments need that data and does any/all of it need to be shared with other departments?
- If data is shared, is the original data seen or just the results?
- Who is responsible for the data?
- What is the level of security on that data? Is it PII? What security controls need to be on it and are those security controls transferred to other groups/departments/vendors/suppliers/etc?
- How long does the data need to be stored
- How fast does the data need to be accessed (this is the Solution Engineer in me)
Friday, January 29, 2016
Lesson 2 - Initial Thoughts
Lesson 02: The Enterprise Application Architecture
The value of Enterprise Application Architecture aligns with the value Enterprise Architecture as a whole very well, hence why it is one of the pillars of it. That value is derived from the standardization of applications for the enterprise. This allows for lower costs from things such as licensing, administrative overhead, and training. It can also have an effect on security by limiting the amount of software products that have to be tracked for things like security patches, etc. Another benefit and value of a well defined Enterprise Application Architecture is the ability to make more efficient use of data in the Enterprise. This is mainly seen in the sharing of customer data to not only provide better customer service but for things like targeted marketing.
One of the difficult aspects of Enterprise Application Architecture is getting everything to work together. That is the goal of ERP, which often misses the mark. And now with the proliferation of hosted services you are seeing more and more companies outsource certain pieces of their enterprise applications to 3rd party vendors. Also with the expansion of telecommuters, offsite employees, and BYOD (Bring Your Own Device) a lot of these Enterprise Applications are becoming web services, security becomes an even bigger concern. The plus side of them becoming web services though is the lack of specialized software that has to be loaded.