System Analyst

A systems analyst is a professional who is familiar with computer systems, programming, technical architectures & platforms and with his expertise in Information Technology (IT) along with his knowledge in business, he helps Organizations analyze and implement IT solutions. A system analyst pertains the understanding of programming languages, operating systems and information systems.

In the simplest of terms, a Systems (SA) Analyst is a Business Analyst (BA) who has extensive knowledge, hands-on experience and expertise in Information Technology and its applications. A BA might not have an understanding of software coding but a SA does, a BA might not know about Information systems (like Data warehouse, ERP, enterprise and web content management) but a SA does, a BA might not be exposed to software architecture but a SA is.

A system analyst pertains the understanding of programming languages, operating systems and information systems. Additionally, he/she helps identify and plan the technical solutions, write documents from technical aspects, create application models and keep himself up to date with technical and industry developments. Occasionally, a systems analyst may be a specialist for a specific set of technology and gives his services by providing the expert suggestions/recommendations against the application of technology in the betterment of the solution being developed.

Responsibilities
  • Examine and study the existing IT systems, process and business model of the Organization or the division you are working for
  • Understand the expectations and high level requirements of the IT solution/system to be developed
  • Learn about the hardware, software and technical requirements and configurations from every perspective (infrastructure, location, availability, ease of use)
  • Recommend whether you need to replace the old/legacy systems or modify the existing system
  • Conduct a cost-benefit analysis/feasibility study to understand if its economically viable for the organization to develop the system
  • Define the problem, how it intends to be resolved, what all will be required, high level risks/concerns and limitations
  • Validate that the suggested solution fits in the business goals and objectives of the organization

Planning
  • Liaise with internal/external users to understand the exact business requirements
  • Conduct facilitated workshops/interviews/sessions/questionnaire aimed at interacting with specialized audiences of the product being developed and understanding the complete requirements details
  • Document detailed technical requirements, hardware requirements and logic implementations
  • Technical Documentation – Prepare System Requirement Specification (SRS), Functional Requirement Specification (FRS), system/application architecture
  • Requirement Documentation – Create use cases, user stories, Business Requirement Document (BRD), class diagram, Entity-Relationship (ER) diagram and sequence diagrams.
  • Application Modelling – Create models, flow charts, wireframes, Data Flow Diagram (DFD and Process Flow Diagrams (PFD) by using modelling techniques and notations i.e. UML, BPMN, etc.

System Design 

  • Plan how the system in expected to behave in different situations/environments and document exceptions
  • Obtain approval of the complete requirement set and get a written sign-off on all the documents prepared for the project
  • Help programmers understand the complete requirements and all the associated aspects (technical, functional and operational)
  • Oversee development, assign tasks and supervise the progress of the activities assigned to the development team
  • Mentor the team by providing expert advice, suggestion, clarifying doubts and solving technical/functional issues
  • Create test cases and assist the testing team in identifying testing scenarios
  • Test the application by doing unit testing, functional testing and application testing – ensuring the functional and technical compatibility of the product with the requirements
  • Assist in change management and in developing/recommending workarounds.
  • Measure whether the development of the project is in sync with the documented and approved technical and functional requirements and planned deadlines (Very Important!)
  • Control any deviations from the plan by having proper preventive actions in place and correct any defects by implementing corrective actions
  • Present the interim and final solution/application to the business owners and seek their approval and feedback
  • Assist in the deployment of the system in the UAT and Production environments
  • Inspect the installed and configured systems, validate their functioning and look out for any flaws and errors
  • Aid in the maintenance of the deployed system along with operational support
  • Prepare user manuals, technical handouts and operational manuals for the deployed application/system
  • Train end users and system users and make them comfortable with the new system
  • Stay updated with the latest developments and emerging technologies in the technical sphere
  • Analyze whether the existing systems are outdated and needs to be replaced with latest, easy to use, efficient or more optimal technology
  • Research existing systems/process and prepare technical proposals for implementing new systems
  • Author case studies, research papers, publications and continuously enhance the technical skills to be on top of the technology
  • Compare different recommendations and proposals for system modifications and replacement on criteria like organizational feasibility, infrastructure, usability, technology used, technical challenges, etc… and present a comparative report

Skill Set
  • Understanding of software development lifecycle (SDLC).
  • Knowledge of software designing concepts.
  • Working know how of data modelling.
  • Awareness of database concepts like DBMS, ETL and SQL.
  • Analysis and elicitation skills.
  • Good command over spoken and written communication
  • Testing skills and eye for detail.

Business System Analyst

A Business System Analyst possesses proficiency in both the domains: Business and Technology. A professional having strong business domain knowledge and good grasp over technical aspects of the information technology domains is a worthy candidate for the Business Systems Analyst title. Unsurprisingly, owing to their skillfulness, business systems analyst are highly valued in an organization and their contribution is expected in almost all phases of a project’s life-cycle

Responsibilities

  • Understand and help create the project’s business case.
  • Conduct a cost-benefit analysis.
  • Identify and propose technology solutions viable to the business case.
  • Conduct facilitated workshops to elicit requirements both functional and technical requirements.
  • Analyze and decompose complex requirements.
  • Spot technical constraints to the proposed solutions.
  • Work with other IT experts and address business, technical and hardware needs.
  • Document requirements, create use cases and process models.
  • Generate interface designs, prototypes, data flow diagrams and system models.
  • Assist the technical team and strengthen their understanding of the solution to be developed.
  • Create test plans, test scripts and conduct system testing.
  • Participate in code deployment and migration.

Skill Set

  • Understanding of software development life cycle (SDLC)
  • Analysis and comprehension skills
  • Visualization and prototyping skills
  • Knowledge of software designing concepts 
  • Working know how of business process
  • Grip over database concepts like DBMS, ETL and SQL
  • Understanding of networks, operating systems and technology system interfaces
  • Good command over spoken and written communication
  • Testing skills and eye for detail
  • Organizational and presentation skills

1.   What is System Analysis ?


System Analysis is a set of tasks and techniques used to bridge the system gap The system analyst build a bridge in terms of system related requirements. The system analyst does the research analysis work before recommending any system requirements.

2. What are the responsibilities of a System Analyst ?


A system analyst is responsible for the complete life cycle of a new/modified IT system, from analyzing existing arrangements to implementing systems and providing training.

System Analysts are also responsible for preparing and submitting comprehensive feasibility studies including detailed documentation if procedures and personnel utilization with recommendations identifying specific software application areas. .

3. What are the roles and responsibilities of a System Analyst ?

  • Studying and documenting present work flow and procedures.
  • Identifying potential system application areas.
  • Supervising and assisting in all software operation functions.
  • Determining system requirements and personnel requirements.
  • Testing and de-bugging complex programs.
  • Preparing system flow diagrams.
  • Designing forms and specifications.
  • Developing systems procedures.
  • Preparing systems operational instructions
  • Analyzing existing systems and redefining them to take into account changes in system requirements or systems configuration.
  • Preparing, co-ordinating and supervising systems implementations
  • Providing technical assistance and training a to the user staff and to programming operations personnel.
  • Performing other duties as assigned.

4. What characteristics should a system analyst possess to be good at his/her job?

System analysts are technical experts and outstanding analytical thinkers. They are highly organized and knowledgeable about many different types of technological systems. They are also able to adapt to the various unique technological conditions which each new company brings. They possess very good communication skills and are able to prepare effective reports, flowcharts, and diagrams.

5. What is the difference between SSH and SSL?

SSL and SSH both are special encryption and protocol technologies used to connect two computers. 
  • SSH: SSH stands for “Secure Shell” which commonly uses port 22 to connect your system on another system via internet. It is often used by network administrators as a remote login or remote control to manage their business servers.
  • SSL: SSL stands for “Secure Sockets Layer” it commonly uses port 443 to connect your system to a secure system on the Internet. It is often used for transmitting information like tax, banking, credit card, personal information to a business server somewhere.

    6. What Is Spoofed Packet?

    Spoofed packet is an internet protocol packet that is created from a fake IP address, but behaves as a legitimate and authenticated sender. It is usually used in denial of service attacks and are used to defeat the security mechanism of the network and bye-pass service which are based on IP authentication.

    7. What Is DHCP Server?
    DHCP server stands for dynamic host configuration protocol; that is designed as the functional extension of the Bootstrap network Protocol. It is a server or client protocol that automatically caters an internet protocol (IP) host with its IP address and other configuration as the subnet mask and default gateway.

    8. Why To Use DHCP Server ?

    DHCP server allowed entire process to be auto-mated and managed centrally. DHCP server maintains the IP addresses in bulk and assign an address to any DHCP enabled client when he switch on to the network. As such the addresses are dynamic rather than static, so the addresses which are no more in use are automatically return to the bulk for re-allocation.

    9. What Is Sub-netting?

    Sub-netting is the procedure of partitioning a single TCP/IP network into a number of distinct network segments called subnets.

    10. Can you provide the documentation required by the system analyst?

    System analyst can document what is going in current systems, and what can be expected in systems that have not been built yet. Documenting is often done in collaboration with technical writers, system designers and system architects. They make records of inventory and maintain system documentation.
    List of thing that system analysts document include:
    •     User Scenarios
    •     Functional activities
    •     Data flows
    •     Classes 
    •     Interfaces between Systems

    11. What are the types of requirements that a system analyst should gather and analyze?

    System analyst should gather requirements which include:
    Technical requirements: It includes the detail about what the system is built, including which language it will be programmed in, what standards are to maintained, etc.
    Functional requirements: It includes the detail about what needs to be delivered, which is generally read by software engineers, project managers and business analyst.


    12. What are some organization software usage policies that computer analyst can implement in an organization ?
    • Disallowing the use of external drives for employees to access organization’s data.
    • Not allowing to download pirated software and electronic files that are copyrighted or unauthenticated.
    • No sharing of confidential material, proprietary information or trade secrets outside the organization.
    • Not allowing them to hack into unauthorized websites or download contents.
    • Not allowing them to post or send information that is offensive to the company or organization.
    • Preventing downloading of any malicious software onto the company network
    • Not allowing employees to pass off personal views as representing those of the organization.

    13. What does the Software Audit includes?

    Software audit includes:
    • Looking into an employee’s computer system for violation of security and company’s policy
    • Regular audits of all servers and computers to check whether they are updated in streamlined with all software licenses
    • Adapting audit system that is least bothering to employee and their task
    • Apart from regular audits, random audit should be done to check whether there is any deletion or addition of software to the system.

    14. What are the steps for record keeping for software?
    A register should be maintained that includes the detail of software like:
    • Software’s publisher name and title
    • Source and date of software acquisition
    • Location of the software installation as well as the serial number of the hardware on which copy of the software is installed
    • Location and existence of back-up copies
    • Serial number of software products

    15. How to do the registration of software?
    • When an organization receives purchased software, the designated department must receive the software first to complete registration and inventory requirement before installations
    • And in the event the software is shrink-wrapped, the software receiving department must complete the registration forms and return it to the software publisher
    • Software must be registered on the name of the organization and not an individual user.


    16. What is OLAP and OLTP in data warehousing?
    •     OLAP - OLAP stands for Online Analytical Processing. It performs multidimensional analysis of business data and provides the capability for complex calculations, trend analysis and sophisticated data model. OLAP is characterized by relatively low volume of transactions. 
    •     OLTP - OLTP stands for Online Transaction Processing. It is a class of software programs capable of supporting transaction oriented applications. OLTP systems are used for order entry, financial transactions, CRM and retail sales. In OLTP database, there is detailed and current data, and schema used to store transactional databases is the entity model. Queries are often very complex and involve aggregations.


    17. What is the difference between Data Translation & Data Transformation?
    •     Data Transformation - Data transformation is the process of converting data or information from one format to another, usually from the format of a source system into the required format of a new destination system. An example of data transformation is to map shipping and billing address information from a purchase order to an invoice. Data transformation can also apply to operations such as:
      • Averaging data from a looping record and sending the output to a single field in the destination schema.
      • Converting character data to its ASCII format.
      • Adding or subtracting data from one or more records and putting the result in a single field in the destination schema.
    • Data Translation - Data translation is the process of changing the format of an instance message. Data translation is very helpful in solving enterprise application integration problems by translating a given type of message into alternative formats required by existing systems. An example of data translation is convert the data in XML format and then load it in different systems. XML is becoming the standard for exchanging information between applications.

    18. What Is REST?

    REST stands for Representational state transfer which essentially refers to a style of web architecture that has many underlying characteristics and governs the behavior of clients and servers.

    The REST architectural style describes six constraints. These constraints, applied to the architecture and defines the basis of RESTful-style.
    Following are the six constraints -
    • Uniform Interface
    • Stateless
    • Cacheable
    • Client-Server
    • Layered System
    • Code on Demand

    19. What is REST API ?

    A REST API defines a set of functions which developers can perform requests and receive responses via HTTP protocol such as GET and POST. REST API lets the user interact with Parse from anything that can send an HTTP request.

    The REST API should specify what it can provide and how to use it, details such as query parameters, response format, request limitations, public use/API keys, method (GET/POST/PUT/DELETE), language support, callback usage, HTTPS support and resource representations should be self-descriptive.

    Because REST API’s use HTTP, they can be used by practically any programming language and easy to test (it’s a requirement of a REST API that the client and server are independent of each other allowing either to be coded in any language and improved upon supporting longevity and evolution).

    Examples -
    • Twitter provides a REST API which you can query to get the latest tweets, you can provide a search query (or hash tag) and it will return the results in JSON format.
    • Google Translate REST API.
    • The world wide web (www) is an example of a distributed system that uses REST protocol architecture to provide a hypermedia driven interface for websites. I’m saying hypermedia (instead of hypertext) as an expansion to avoid confusion about the REST API supporting other formats to be provided not just the HTML.

    20. What do you understand by the term “RESTful API”?


    A RESTful API is an application program interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. A RESTful API is also referred to as a RESTful web service based on representational state transfer (REST) technology, an architectural style and approach to communications often used in web services development.
    An API can be considered “RESTful” if it has anyone of the following features -
    • Client Server – The client handles the front end the server handles the backend and can both be replaced independently of each other.
    • Stateless – No client data is stored on the server between requests and session state is stored on the client.
    • Cacheable – Clients can cache response (just like browsers caching static elements of a web page) to improve performance.
    Complying with these constraints, and thus conforming to the REST architectural style enables any kind of distributed hypermedia system to have desirable emergent properties, such as performance, scalability, simplicity, modifiability, visibility, portability, and reliability. A common trend I have seen is to use absolute urls for RESTful APIs which are meaningful.
    For example - Dropbox API for file operations
    File Operations
    • /fileops/copy
    • /fileops/create_folder
    • /fileops/delete
    • /fileops/move
    /fileops/copy
    Descriptionn: Copies a file or folder to a new location
    URL Structure: https://api.dropbox.com/1/fileops/copy
    Version: 0.1
    Method: POST


    21. What do you know about RESTful Web Services (API)?

    A RESTful web service (also called a RESTful web API) is a web service implemented using HTTP and the principles of REST. It is a collection of resources, with four defined aspects. The base URI for the web service, such as http://example.com/resources.

    The Internet media type of the data supported by the web service. This is often JSON or XML but can be any other valid Internet media type provided that the API must be hypertext driven. The set of operations supported by the web service using HTTP methods (e.g., GET, PUT, POST, or DELETE).


    22. What are the popular REST API Request & Response formats?

    Popular REST API Request Formats are –

    • REST
    • XML-RPC
    • SOAP
    Popular REST API Response Formats are -

    • REST
    • XML-RPC
    • SOAP
    • JSON
    • PHP
    Developers work mostly with JSON it seems to be the most popular for jQuery developers.


    23. What do you know by “RESTful” Client Server Architecture?

    HTTP, for example, has a very rich vocabulary in terms of verbs (or “methods”), URIs, Internet media types, request and response codes, etc. REST uses these existing features of the HTTP protocol, and thus allows existing layered proxy and gateway components to perform additional functions on the network such as HTTP caching and security enforcement.
    24. Do you need an API key to access a REST API?

    Most API’s have a request limit and might ask you to provide an API key (which you may have created an application with them). Data sensitive APIs will require you to authenticate and the most popular method is Open Authentication also known as oAuth. For example - Google Translate requires your API Key in a GET request.


    25. What is SOAP and SOAP web service?

    SOAP (Simple Object Access Protocol) is a messaging protocol that allows programs that run on disparate operating systems (such as Windows and Linux) to communicate using Hypertext Transfer Protocol (HTTP) and its Extensible Markup Language (XML). SOAP enables applications to call functions from other applications, running on any hardware platform, regardless of different operating systems or programming languages.

    Since Web protocols are installed and available for use by all major operating systems, HTTP and XML provide an at-hand solution that allows programs running under different operating systems in a network to communicate with each other. SOAP specifies exactly how to encode an HTTP header and an XML file so that a program in one computer can call a program in another computer and pass along information. 

    SOAP also specifies how the called program can return a response. Despite its frequent pairing with HTTP, SOAP supports other transport protocols as well.
     SOAP defines the XML-based message format that Web service-enabled applications use to communicate and inter-operate with each other over the Web. SOAP is a standard for encoding messages in XML that invoke functions in other applications.

    SOAP calls are much more likely to get through firewall servers, since HTTP is typically Port 80 compliant, where other calls may be blocked for security reasons. Since HTTP requests are usually allowed through firewalls, programs using SOAP to communicate can be sure that the program can communicate with programs anywhere.


    26. What is SOAP request and response?

    SOAP is an XML-based messaging protocol. It defines a set of rules for structuring messages that can be used for simple one-way messaging but is particularly useful for performing RPC-style (Remote Procedure Call) request-response dialogues. It is not tied to any particular transport protocol though HTTP is popular.

    SOAP enables applications to call functions from other applications, running on any hardware platform, regardless of different operating systems or programming languages as long as they can formulate and understand SOAP messages. As such it is an important building block for developing distributed applications that exploit functionality published as services over an intranet or the internet.

    For example - Imagine you have a very simple corporate database that holds a table specifying employee reference number, name and telephone number. You want to offer a service that enables other systems in your company to do a lookup on this data. The service should return a name and telephone number (a two element array of strings) for a given employee reference number (an integer). 

    27. What is the difference between SOAP and REST API?

    SOAP defines a standard communication protocol (set of rules) specification for XML-based message exchange. SOAP uses different transport protocols, such as HTTP and SMTP. The standard protocol HTTP makes it easier for SOAP model to tunnel across firewalls and proxies without any modifications to the SOAP protocol. SOAP can sometimes be slower than middleware technologies like CORBA or ICE due to its verbose XML format.
    • The Web Services Description Language (WSDL) describes a common set of rules to define the messages, bindings, operations and location of the service. WSDL is akin to a contract to define the interface that the service offers.
    • SOAP requires less plumbing code than REST services design (e.g., transactions, security, coordination, addressing and trust). Most real-world applications are not simple and support complex operations, which require conversational state and contextual information to be maintained. With the SOAP approach, developers don't need to write plumbing code into the application layer.
    • SOAP web services, such as JAX-WS, are useful for asynchronous processing and invocation.
    • SOAP supports several protocols and technologies, including WSDL, XSDs and WS-Addressing.
    REST describes a set of architectural principles by which data can be transmitted over a standardized interface (such as HTTP). REST does not contain an additional messaging layer and focuses on design rules for creating stateless services. A client can access the resource using the unique URI and a representation of the resource is returned. With each new resource representation, the client is said to transfer state. While accessing RESTful resources with HTTP protocol, the URL of the resource serves as the resource identifier and GET, PUT, DELETE, POST and HEAD are the standard HTTP operations to be performed on that resource.
    • RESTful web services are stateless. You can test this condition by restarting the server and checking if interactions survive.
    • For most servers, RESTful web services provide a good caching infrastructure over an HTTP GET method. This can improve the performance if the information the service returns is not altered frequently and is not dynamic.
    • Service producers and consumers must understand the context and content being passed along as there is no standard set of rules to describe the REST web services interface.
    • REST is useful for restricted-profile devices, such as mobile, for which the overhead of additional parameters are less (e.g., headers).
    • REST services are easy to integrate with existing websites and are exposed with XML so the HTML pages can consume the same with ease. There is little need to refactor the existing site architecture. As such, developers are more productive because they don't need to rewrite everything from scratch; instead, they just need to add on the existing functionality.
    • A REST-based implementation is simple compared to SOAP.

    28. Which one to choose between REST  and SOAP ?

    REST or SOAP, depends on your web service architecture. Both SOAP and RESTful architectures have proven themselves to be reliable, successful and capable of scaling infinitely, so the decision to use REST or SOAP has less to do with their efficacy and more to do with how either approach fits in with an organization’s software development culture and project needs. Both SOAP web services and RESTful web services have proven their ability to meet the demands of the large enterprise organizations.

    While deciding between REST and SOAP, following are the two factors to be considered:
    1. The types of clients that will be supported. For example, REST services offer an effective way for interacting with lightweight clients, such as smartphones.
    2. How varying degrees of flexibility and standardization will be either rebuffed or accepted by the organization’s corporate culture.
    Keeping these factors in mind will go a long way in helping organizations to choose between SOAP and RESTful web services.

    29. What are the common problems you face when invoking Web Services - REST or SOAP?
    Sometimes, even after doing everything as expected in the stored procedure to call the Web service, the procedure doesn't get compiled. The following is a compilation of runtime errors faced during stored procedure execution to invoke a Web service and their solutions.

    Problem 1: Getting "ORA-25293 : HTTP request failed" error during procedure compilation.
    Solution: Following are the steps to resolve this error -
    • Log in through sys user as sysdba.
    • View the privileges to the selected schema to use the utl_HTTP package by using the command as follows:
      • select grantee, table_name, privilege
        from dba_tab_privs
        where table_name = 'UTL_HTTP';
    • The grant will be provided to all the public users by default.
    • Revoke execute grant on utl_http from public and provide it explicitly to the specific schema from which the Web service needs to be invoked.
      • revoke execute on utl_http from public;
      • grant execute on utl_http to BTFT2;
      • select grantee, table_name, privilege
        from dba_tab_privs
        where table_name =  'UTL_HTTP';
    Problem 2: If the stored procedure calling the Web service gives "Network access denied" during the call of Web service.
    Solution: Add the Web service URL to the access control list by following the steps below.
    • Login through sys as sysdba.
    • Execute the following procedure to create ACL.
      • BEGIN
        DBMS_NETWORK_ACL_ADMIN.CREATE_ACL (
             acl          => '<name of the acl file>.xml',
             description  => 'Permissions to access the web service url',
             principal    => '<Schema name>',
             is_grant    => TRUE,
             privilege    =>
         'connect');
        COMMIT;
        END;/
    • Create a role and then grant connect to this role on the ACL by using the steps below:
      • create role role1;
      • BEGIN
               DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE (
                                  acl          => '<name of the acl file>.xml',               
                                  principal   => 'role1',
                                  is_grant     => TRUE,
                                  privilege 
           => 'connect',
                                  position     => null);
        COMMIT;
        END;
        /
      • Assign the host names to the ACL to open all the related links in the host.
        • BEGIN
          DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL (
               acl          => '<name of the acl file>.xml',               
          host         => '*.<host name of the webservice url>');
          COMMIT;
          END;
          /
      • OR
        • BEGIN
          DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL (
                acl          => '<name of the acl file>.xml',               
          host         => '<ip>’);
          COMMIT;
          END;
          /
      • Confirm whether the domain has been added in the ACL using ACL_UTILITY package.
        • SELECT * FROM
          TABLE
          (DBMS_NETWORK_ACL_UTILITY.DOMAINS('www.ajax.googleapis.com'));
        • selectacl , host , lower_port , upper_port from DBA_NETWORK_ACLS;
        • selectacl , principal , privilege , is_grant from BA_NETWORK_ACL_PRIVILEGES;
      30. What are the different schema in data warehousing?

      schema is a collection of database objects, including tables, views, indexes, and synonyms. There is a variety of ways of arranging schema objects in the schema models designed for data warehousing. Most common data warehouse schema model are - star schema and snowflake schema.


      31. What is Star Schema?

      The star schema architecture is the simplest data warehouse schema. It is called a star schema because the diagram resembles a star, with points radiating from a center. The center of the star schema consists of fact table and the points of the star schema are the dimension tables. Usually the fact tables in a star schema are in third normal form(3NF) whereas dimensional tables are de-normalized. Despite the fact that the star schema is the simplest architecture, it is most commonly used nowadays and is recommended by Oracle.

      32. What is Snowflake Schema?

      In data warehousing, Snowflake is a form of dimension model in which dimensions are stored in multiple related dimension tables. A snowflake schema is a variation of the star schema. Snowflaking is used to improve the performance of certain queries.  The schema is diagramed with each fact surrounded by its associated dimensions (as in a star schema), and those dimensions are further related to other dimensions, branching out into a snowflake pattern.

      No comments:

      Post a Comment