Fayad’s Unified Software Engines (FUSEs) (BASE)
Fayad’s Unified Software Engines (FUSEs) are here to Stay (BASE)
System and Applications Software are out.
Professor Dr. Mohamed E. Fayad
A fuse is a standard device found in any electrical system. Examples include a home, an automobile, a power tool, and many more. The fuse itself is standard and comes in a relatively small number of variants about the required application and the amperage or load the fuse is expected to carry. For a particular application and load, fuses are typically interchangeable. If the FUSE fails, the circuit is open and will not conduct electricity. However, you can plug in a new fuse, complete the course, and resumes operation.
How many software programs are there in the world? Joseph Newcomer, Former Chief Software Architect (1987–2010) and Author have 14.7K replies and 3.7M answer views. Billions. Probably not trillions. But certainly, more than hundreds of millions. Some are one line long. Some are a hundred million lines long. And everything in between.
These software programs have insidious problems, such as Lack of reliability; Lack of stability/unstable; Excessively costly (billions) to build, purchase and operate; Brittle; Software projects that continue to fail at an alarming rate; hardware dependency; maintenance nightmare; etc.
The Ultimate Alternative is Fayad’s Unified Software Engine (FUSE) & what is BASE?
1) Capture the art, science, and engineering of the engine; 2) Capture and develop the engine’s unified and stable functional and non-functional requirements; 3) Develop the ultimate design and unified software architecture on-demand of the engine; 4) The new and improved next generation of solutions; 5) Built on any common core infrastructure, e.g., SaaS infrastructures; 6) Facilitate on-demand, highly reusable architectures and applications with rapid times and open space to the market, starting from requirements to final product delivery; 7) Incorporating qualities such as scalability, adaptability, maintainability, unlimited reuse and applicability, and many more; 8) Stop building instance-oriented systems and reinventing the wheels; 9) Prevent hardware dependencies, etc.
Toward “Automated and Immune Testing–
Fayad’s Unified Software Engine” (AIT-FUSE)
Professor Dr. Mohamed E. Fayad
Despite much progress and research in software technology, testing is still the primary quality assurance technique that is used today. Currently, major issues in software testing are:
It is necessary to develop and test software rapidly to meet the new economy market. In this new market, it is important to deliver the software on time to capture the market. Software must be delivered on time, and it must be good enough to meet the customer’s need.
2. The software requirements keep changing as the project progresses, and in some projects, the rate of requirement changes can grow exponentially as the deadline approaches. This kind of rapid software changes impose significant constraints on testing, because once a software program is changed, the corresponding test cases/scripts may have to be updated. Furthermore, regression testing may have to be performed to ensure that those parts that are supposed to remain unchanged are indeed unchanged.
3. The number of test cases needed is enormous; however, the cost of developing test cases is extremely high.
4. Software development technologies, such as object-oriented techniques, design patterns (such as Decorator, Factory, Strategy), components (such as CORBA, Java’s EJB and J2EE, and Microsoft’s .NET), agents, application frameworks, client-server computing (such as socket programming, RMI, CORBA, Internet protocols), and software architecture (such as MVC, agent architecture, and N-tier architecture), progress rapidly, while designing and programming towards dynamic and runtime behavior. Dynamic behavior makes software flexible, but it also makes the software difficult to test. Objects can now send a message to another object without even knowing the type of the object that will receive the message. The receiver may be just downloaded from the Internet with no interface definition and implementation. Numerous testing techniques have been proposed to test object-oriented software. However, testing technology is still far behind software development technology.
5. Conventional software testing concentrates on industrial objects (IOs) or application objects (AOs) that are tangible & not stable and it is generally application-specific and hardly reusable and is not extensible. Even within a software development organization, software development and test artifacts are developed by different teams and are described in separate documents. These make test reuse difficult.
As a part of this research, we plan to work toward AIT-FUSE that includes 1. Testing the functional and nonfunctional requirements that include “Stable Analysis Patterns” (SAPs) or enduring Business themes (EBTs), software design that include Stable Design Patterns (SDPs) or Business Objects (BOs), and software architectures that include Stable Architecture Patterns (SArchPs) or Unified Software Architecture on-Demand (USA on-Demand); 2. Built-In Test (BIT); 3. End-to-End (E2E) Testing; 4. Agent-Based Testing; 5. Automatic Test Case Generators (ATCG); and 6. Smart Software Testing (SST). The development of AIT-FUSE is based on software stability model (SSM), knowledge map (KM), and the notion of software agents. Basically, an agent is a computational entity evolving in an environment, with an autonomous behavior, capable of perceiving and acting on this environment, and capable of communicating with other agents.
Tiny Data Visualization
Fayad’s Unified Software Engine (TDV-FUSE)
Professor Dr. Mohamed E. Fayad
Visualization offers users a powerful means of analysis and deductions that can help and assist them in uncovering and divulging different patterns and trends that they may likely to miss with other non-visual approaches. The TDV-FUSE covers and encompasses ten different visualization approaches and models that proved very successful across numerous problem domains. Where it is easy to map and visually present most data sets into a variety of graphical schemes, the TDV-FUSE will utilize to help us manage and administer diverse, intricate, and complex data sets. TDV-FUSE is a stable, reliable, easy to use, and extremely cost effective. It is also very beneficial to use this engine.
The main challenge or task for any data visualization engine is to apply ten different approaches and methods to visualize one complex set of data, to compare and/or how to apply one visualization approach on different sets of data to find all interesting patterns, which are useful to businesses. However, it is quite difficult to arrive at some predefined and standard ways of visually analyzing the data. The stupendous volume and the sheer complexity of the data make it almost impossible to run same visualization algorithms on different datasets.
This project focuses on the following aims and challenges:
Specific Aim 1: TDV-FUSE Tiny Scale Prototype, including its Knowledge Map and Architecture will undergo a serious development. The core knowledge forms an engine called “TDV-FUSE.” One can easily extend, adapt to different needs, and customize this application. TDV-FUSE has many additional properties, such as (a) Runs online all the time like major search engines, (b) Provides unlimited Any Data and Any Collection of abstract data types, such as string or integer, rational or real number and a list, or multisets, such as set of points in a plane that represent spatial, temporal, and spatiotemporal applications, (c) Has ten capabilities or visualization methods, (d) Does not require prior investment, (e) Handles unlimited number of Users/Usages, (f) Limits cost per usage, (g) Handles unlimited number of applications (RUNS) at the same time, (h) Has no maintenance and license fees – no prior fees for using the engine, and (i) Easy to adapt, customize, extend with many different kernels, such as animation, constraint databases, etc
Specific Aim 2: Easy Web-Based Interface to TDV-FUSE is a single-entry interface. It takes Any Log (i.e. file) which contains the data to be visualized and shows one or more logs which contains the visualizations results.
This project is best suited for students who are interested and skilled in iPhone, iPad, mobile devices programming and Web & Internet applications’ developments. Strong Java skills are essential.
Two Conditions:
The students must participate in writing a technical and business proposal that to be submitted to different agencies for funding.
The TDV-FUSE will utilize the most recent technology such as Software Stability, Knowledge Maps, Cloud computing in general and SaaS in particular, Spatiotemporal Databases, and a few Visualization Techniques
Human Rights Unified Software Engine
(HR-FUSE)
Professor Dr. Mohamed E. Fayad
Human Rights Unified Software Engine (HR-USE) is a multi-purposes social network engine that provides many ways for any person to report a complaint for one or more reasons with evidence. The engine provinces analysis of this complaint using content mining and visualization techniques looks for any violation to human rights rules. The engine keeps track of different types of violations and categorizes and records the violation in many different logs that will leads to generate many different reports. The engine provides many different supports to their users, such as advises of what to do, notifications of the responsible and authorized parties, consulting, and legal guidelines and actions.
The HR-USE provides complaint management, reason and evidence analysis, true violation discovery and severity assessment, human right violation early warning and preventive measures, human rights monitoring, risk identification, analysis and assessment, solution scenarios generation, illustrate scenarios with different actors and parties and simulate their roles in any human rights violations, generate all the data needed to be analyzed, visualized, and animated and can be utilized in unlimited humn rights violations at all levels world-wide. The HR-USE covers a large number of aspects or mechanisms focused on geographic aspects, (combination of spatial data and temporal data), combined political and economic dimensions, right-based approaches, human rights violation dynamism, structural root causes of human rights violations, understanding of the roots of any human rights violations, human security and human rights, event data analysis (qualitative and qualitative), devising evidence-based peace-building and strategies, aid fostering long-term reconciliation and recovery, etc. The HR-Engine generates gigantic volumes of many different types of data driven from the above mentioned aspects and mechanisms, such as spatial, temporal, views, analytical, political, economic, event-driven, behavioral, stack-holder data, and historical data For example, Spatial data is the data or information that identifies or detects the geographic locations of various features and boundaries of where the human rights violation exists. Data can also be temporal in nature, i.e. temporal data is such that it is valid only for a certain extent in time and has an expiry date and time to it. Currently, most of the research efforts on data mining in geospatial data take the static view of geospatial phenomena, which captures only one aspect of data, i.e. ‘spatiality’ only. However, as all geographic aspects evolve slowly over time, both ‘spatiality’ and ‘temporality’ is central to our understanding of geographic process and events. The HR-Engine extracts and culls knowledge and skills from spatiotemporal data that will help us to have better prediction of spatial processes or events over time. HR-Engine extracts other data, such as stake-holder behavior data, economic data, political data will shed understanding of the conflict situation and predicate on possible resolutions.
Main Goals
Specific Goal 1: To formulate a large-scale prototype including its Knowledge Map and Architecture for the proposed system. The core knowledge forms an engine called ‘HR-USE that can be extended, adapted to different needs, and customized. HR-USE has many additional properties, such as (a) Runs online all the time like search engines, (b) Provides unlimited spatial, temporal, and spatiotemporal applications, (c) Has unlimited capabilities, such as algorithms and mechanism, (d) Does not require prior investment needed, (e) Has provisions of high security and privacy, (f) Handles unlimited number of Users/Usages, (g) Limits cost per usage (Royalty, Subscriptions, and Memberships), (h) Handles unlimited number of applications (RUNS) in the same time, (i) Shows a level of needs and demand for a giving technology (Evaluation of Technology), (j) Available all the time for usage online ranges from single users (individuals) and large enterprises, (k) Has no maintenance and license fees – no prior fees for using the engine, (l) Runs multiple algorithms on a complex aspects’ dataset and provide comparative results, (m) Easy to adapt, customize, extend with many different kernels, such as visualization, animation, etc., and (n) collect unlimited types of data and contents including live data on the spot, such as videos, pictures, environmental conditions, recordings, etc..
Specific Goal 2: To develop an easy, web-based portal/interface to HR-USE, a single entry interfaces. It takes Any Log (i.e. file), which contains different types of human rights violations data and contents to be mining, analyzed, assessed, visualized, animated and shows one or more logs which contains the data results. The web-based provides hidden pages that will track and show several trends about the number of users, number of members, number of subscribers, and number of transactions daily, weekly, monthly, etc., with meaningful curves. Also, use of mechanisms’ frequency and durations as bases to compare different mechanisms and aspects, mechanisms’ findings, and suggest actions to be taken – Use tables and curves to compare the frequency and duration of all the mechanisms and to compare data results and show the similarities and differences of using different aspects and mechanisms.
Specific Goal 3: Collect and document of the HR-USE core knowledge (analysis, design, architectural) patterns. We plan to collect, analyze, and document all the stable core knowledge patterns of the entire knowledge map based on software stability.