Lab I – Interactive Context Analysis Tool Team Red Abdulaziz Bin Taleb

advertisement
Running Head: Lab 1 – Interactive Context Analysis Tool
Lab I – Interactive Context Analysis Tool
Team Red
Abdulaziz Bin Taleb
CS411W
Janet Brunelle & Hill Price
March 17, 2014
Version II
1
Lab 1 – Interactive Context Analysis Tool
2
Table of Content:
1. INTRODUCTION.………………………………………………………………………..3
2. PRODUCT DESCRIPTION………………………………………………………………4
2.1 Key Product Features……………………………………………………………...4
2.2 Major Components………………………………………………………………...5
3. IDENTIFICATION OF CASE STUDY…………………………………………………..8
4. ICAT PRODUCT PROTOTYPE…………………………………………………………9
4.1 Prototype Architecture…………………………………………………………….9
4.2 Prototype Features and Capabilities…...…………………………………………11
4.3 Prototype Development Challenges……………………………………………...11
5. GLOSSARY……………………………………………………………………………..13
6. REFERENCES…………………………………………………………………………..14
List of Figures:
1. Figure 1: Major Functional Component Diagram (MFCD) for ICAT……………………6
2. Figure 2: Major Functional Component Diagram (MFCD) for ICAT prototype...……..10
Lab 1 – Interactive Context Analysis Tool
3
1. Introduction
Albert Einstein once said, “If I were given one hour to save the planet, I would spend
fifty-nine minutes defining the problem and one minute resolving it.” The question to be
asked in problem solving is whether or not the correct underlying problem is being
addressed. Problem-solving context often relies on ignoring the type III errors, which is
obtaining the correct answer for the wrong problem. Mitroff and Featheringham defined the
term type III errors back in 1974 (Yadav & Korukonda, 1985). It is an error that appears in
more than eighty percent of human failures in organizations and institutions. This would
often cause a waste of resources and time because of a failure to clearly define the actual
problem. A type III errors frequently results in a failure to consider the changes of the
problem’s frame, lack of coherently traceable planning efforts, and an inadequate
examination of the problem.
The frequent occurrence of type III errors in problem solving has undoubtedly resulted
in a loss of funds and resources for many people and organizations; however, problem
solving can be much more efficient, and type III errors can be corrected by the introduction
of interactive software such as the Interactive Context Analysis Tool (ICAT). ICAT is a
graphical tool that creates an interactive diagram based on the user’s data inputs.
Furthermore, ICAT’s main purpose is to generate a visual representation of the Entities and
Forces influencing in the problem, while also keeping a traceable record of the project
history and the changes implemented. An analysis of the relationships among the Entities
and the relative weight of influence between them will be created to allow the user to
visualize the solution. “A picture is worth a thousand words,” and ICAT allows its user to
visualize the problem as well as the solution.
Lab 1 – Interactive Context Analysis Tool
4
2. Product Description
The ICAT is a graphical tool that will help the user in system engineering to create a
visual representation of a problem’s domain. The user will be able to create the Entities and
the Forces associated with the problem. Moreover, the user will be able to input the weight
and influence from one to another Entity. Using these inputs, the ICAT will create a
connected graph and determine the most influential Entity of the problem’s domain.
In addition to creating a diagram of the problem’s domain, the ICAT will allow the user
to print and export the diagram as PDF files. Also it will have the zoom and panning
features which will help the user modify and zoom in the created graph. These features
should give the user the flexibility to add or make any changes to the graph.
ICAT will help the user in system engineering to have a clear and better understating of
the problem. The visual representation of a problem’s domain will serve as a brainstorming
tool for the system engineers. Therefore, the risk of type III errors will be reduced and will
help to speed up the process of solving the problem.
2.1 Key Product Features
In system engineering environments, modeling a problem domain is often considered
an issue due to the minute pieces of Entities that are associated with that domain. Thus,
ICAT is going to be equipped with many unique features that will make it simple to use and
allow the user to have the flexibility of modeling a graph. For instance, visibility features
will help the user eliminate the value of an Entity while still having it in the graph. With a
Lab 1 – Interactive Context Analysis Tool
5
large number of Entities in a single graph, search and zoom features will help to examine
details.
The weight feature is another example of a unique characteristic that differentiates the
ICAT from the rest of the graphing tools. This feature will allow the user to input the weight
and the direction of the effect of force on each Entity. Then, an arrow will be drawn from
the origin Entity, determined by the user, to the destination Entity. The weight of the force
will reflect on the thickness of the arrow’s line. Therefore, even with many Entities and
lines on a graph, the Entities with high values and weight will be more visible to the user.
Finally, The ICAT has an analytical algorithms engine that will help to determine the
influence, out-centrality, and prominence, in-centrality, of each Entity and export the results
into PDF files. This will help the users of the system engineering to have a better
understanding and bring all of the small details to the surface. Eventually, the process of
defining the problem will be much clearer and the risk of type III errors will be reduced.
2.2 Major Components (Hardware/software)
The design principle that the ICAT follows is known as the MVC or Model View
Controller. This divides the software application into three distinct elements. The three main
elements include: the Analytics Engine module, the Data Model, and the Controller.
The Analytics Engine is the part that is responsible for the mathematical analysis of
the ICAT. It has two types of algorithms, the first one is known as the ‘prominence’ and the
second one is known as the ‘influence’. The prominence algorithms will calculate and
Lab 1 – Interactive Context Analysis Tool
6
determine the number of Forces and the weight they put on the Entities. The influence
algorithms will determine and calculate the weight of force that comes out of the Entities.
Furthermore, the Analytics Engine will create the centrality reports.
Figure 1: Major Functional Control Diagram (MFCD) for ICAT
The data model is the structure of the graph and where all of the Entities and Forces
information will be assigned. The Entities will be represented by a set of vertices and the
Forces will be represented by a set of edges. The vertices will contain the location, type, and
the visibility value of each Entity. On the other hand, the edges will contain the information
of the origin and destination Entities as well as the weight of the force.
The Controller is the part responsible for keeping and maintaining all the
information among all of the software components (see Figure 1). It consists of a set of
controllers that receive the commands from the Graphical Interface, where the user will
interact with the ICAT, and send it to the either the Data Model or the Analytics Engine.
Furthermore, it will keep the information consistent and updated on the Graphical Interface.
Lab 1 – Interactive Context Analysis Tool
The Controller will interact with File System to upload projects from the File System or
save a project or data into the File System.
The ICAT will be built based on a standalone desktop application. It can be installed
on either a laptop or a desktop computer. The ICAT will not require any external hardware
or software.
(This space intentionally left blank.)
7
Lab 1 – Interactive Context Analysis Tool
8
3. Identification of Case Study
ICAT is being designed for Dr. Patrick Hester. Dr. Hester is an associate professor in
the Engineering Management and System Engineering Department at Old Dominion
University. He often works in solving large and complex problems, which have high risk of
Type III errors. Dr. Hester has expressed the desire for a tool that help him eliminate or
reduce the Type III errors.
(This space intentionally left blank.)
Lab 1 – Interactive Context Analysis Tool
9
4. ICAT Product Prototype
The prototype will focus on the two prime objectives of the ICAT modeling the
domain problem and the analytical reports. Completing these two objectives will prove the
feasibility of this product. A successful prototype will help the user in System Engineering
to model a real a problem and create an analytics reports.
The ICAT will have the potential to be expanded and have more features and
capabilities. Thus, the ICAT will be built in a way that will allow other teams, in the future,
to improve and add more capabilities. More analytics algorithms can be added to the ICAT
to help the users in System Engineering expand their scope.
4.1 Prototype Architecture (Hardware/Software)
The prototype hardware architecture is a single machine, a desktop or a laptop. The
prototype version will have the MVC structure and the Analytics Engine, but with less
features and capabilities. Unlike the real world version, a testing dashboard will be added to
the software architecture of the prototype version.
The testing dashboard is very critical to the product development. Testing the
prototype will provide the developers with the necessary information for accurate results. In
this phase of developing, testing will help to detect the errors in an earlier time and help to
avoid them in the future.
(This space intentionally left blank.)
Lab 1 – Interactive Context Analysis Tool
10
Testing a prototype occasionally take more time. Therefore, a suite of multiple tests
will be made to speed up the testing procedure. Figure 2 shows the ICAT prototype
architecture component and the testing dashboard can be seen interacting with the File
System.
Figure 2: Major Functional Component Diagram (MFCD) for the ICAT prototype
The Model View Controller components and the Analytic Engine will have the
same responsibilities as the real world product. For instance, the Graphical Interface will
have only the necessary commands to model a problem domain. Also, it will have the tools
for the user to interact with the graph and the ability to edit the Entities and their values or
remove them. The controller will help all of these components to communicate with each
other.
The Analytics Engine is another important aspect during the prototype phase. The
accuracy and correctness of its generated reports are critical to the success of the ICAT. The
Lab 1 – Interactive Context Analysis Tool
11
prototype version of the Analytics Engine will have two sets of algorithms. The tests on this
engine will focus on the reliability of its mathematical algorithms. Primarily this will be on
detecting any bugs or errors that might result in producing corrupted results.
4.2 Prototype Features and Capabilities
As for testing and modeling purposes, the prototype will focus on the prime
capabilities of the ICAT. The prototype will have only two prime capabilities. The first one
will be modeling of the problem’s domain. The second one will be the ability to generate
accurate analytical reports.
Modeling a problem domain correctly is the first step in solving the problem. The
user in System Engineering will use the ICAT Graphical Interface to create a visual
representation of the problem. Despite the fact that this is a prototype version, the user will
still be able to modify the graph as well as use the zoom, search, and panning features.
The Analytics Engine will be responsible for creating the influence and prominence
reports. These two reports are critical for solving the problem and having accurate results
that will help solve any problems. The user will have the option of having and exporting
these two reports as PDF files in order to share the reports with other users.
4.3 Prototype Development Challenges
Bugs and errors are a challenge for any software developer. These are typical issues
which happen in the software development process. Detecting these issues in their early
stages will save the developers much time and give them good feedback that will lead to
better solutions.
Lab 1 – Interactive Context Analysis Tool
The major functionality for the ICAT is the Graphical Interface. It is a significant
challenge for the ICAT developer. The ICAT developers are not quite familiar with the
graphic algorithms and its functions. These challenges can be overcome with huge
enthusiasm and the desire among the team to build a unique tool to help solve complex
problems.
(This space intentionally left blank.)
12
Lab 1 – Interactive Context Analysis Tool
13
Glossary:
Entity: Object within a data model; types include: problem, stakeholder, objective, attribute, and
resource
Force: Constraining or enabling Forces that show influence between Entities
Attribute: An Entity that represents some quality that exhibits an effect on other Entities
Influence: A measure of the effect that one Entity has on others in the system; also known as
out-centrality
Metadata: Data associated with Entities or Forces
Objective: An Entity that represents a goal or target of the real world project
Problem: An Entity that represents the issue or conflict that the solution is designed to address
Project: The collection of metadata and associated diagram created by the user
Prominence: A measure of the effect that other Entities in a system have on a specific Entity;
also known as in-centrality
Resource: An Entity that represents a required good or service
Stakeholder: An individual or group affected in some way by the undertaking (Stevens
Institute of Technology, 2008)
Systems Approach: The application of a systematic disciplined engineering approach that
considers the system as a whole, its impact on its environment and continues throughout the
lifecycle of a project (Stevens Institute of Technology, 2008)
Systems Engineering: The orderly process of bringing a system into being using a systems
approach (Stevens Institute of Technology, 2008)
Type III Errors: The type of error described as “giving the right answer to the wrong problem”
(Kimball, 1957).
Workspace: The area within ICAT in which the user edits or views the project
\
Lab 1 – Interactive Context Analysis Tool
References:
Kimball, A. (1957). Errors of the third kind in statistical consulting. Journal of the American
Statistical Association, 52(278), 133–142.
Stevens Institute of Technology. (2008). Core Concepts of Systems Engineering: Glossary.
Retrieved from The Center for Innovation in Engineering and Science Education:
http://www.ciese.org/curriculum/seproject/glossary.html
Yadav, S. B., & Korukonda, A. (1985). Management of Type III Error in Problem
Identification. Interfaces, 15(4), 55-61.
14
Download