Top Banner

of 21

Copy of F1

May 31, 2018

Download

Documents

martinfrid
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/14/2019 Copy of F1

    1/21

    F1 Server

  • 8/14/2019 Copy of F1

    2/21

    Presentation2

    F1

    Initial status

    Existing products with revenue streams and install bases PVCS VM, PVCS Dimensions Source code control and process Tracker Defect tracking Collage Web Content Management

    Project Motivator New markets Single code base Integrated solutions Two projects nearing end of life

    Multiple groups Denmark

    Server, Architecture

    Oregon

    Clients, Defect tracking, Versioning London

    Process

    Unclear overall structure and responsibility breakdown

  • 8/14/2019 Copy of F1

    3/21

    Presentation3

    Main Goals

    A Server framework for developing businesscapabilities that interact on an intelligent andsignificant level

    Platform for the company's enterprise products,Versioning, Issue Mgmt, Requirements Mgmt,

    A server that includes functions that are consideredstandard in an enterprise solution

    Based on generic parts of Collage Server. Redesignedas required to fit the architecture goals of F1

    Multi-tier solution that provides end-endinfrastructure, from DBMS to clients

    Support for major databases

  • 8/14/2019 Copy of F1

    4/21

    Presentation4

    Other goals

    Allow multiple groups to work on different core serverlogic capabilities

    Single code base

    International support

    Automated server testing

    Centralized platform support

    Scalable

  • 8/14/2019 Copy of F1

    5/21

    Presentation5

    Timeline

    Jan 2002

    Initial formulation of concept

    Jan 2003

    Official start of development based on Collage

    Series of Engineering meetings between groups to agreeon architecture and design (every 3 months)

    June 2003

    Course correction, more ambitious in rel 1.

    May 2004

    Cancelled by Serena

  • 8/14/2019 Copy of F1

    6/21

    Presentation6

    Services

    Administration

    Configuration

    Authentication

    Licensing

    Server Interface

    Transport

    Data accessConnection Pooling

    TransactionsResource tracking

    Oracle MS-SQL Sybase

    Versioning

    ContentMgmt.

    IssueMgmt.

    Requirements

    Workflow

    Revision

    Library

    F1 Server

    Desktop Clients

    IDE Integrations

    Server Interface

    Transport

    Test

    Framework

    Test case

    Data

    Metadata

    Repository

    FTP & WebDav

    Server Interface

    Transport

    Integrations

    Server Interface

    Transport

    WebService

    JSP Client

    UI Framework

    Public Web Service

  • 8/14/2019 Copy of F1

    7/21

    Presentation7

    Project and System

    System

    Installation configuration

    System aspects

    Project Database

    RDMS specific

    Shared project aspects

    Project

    Users & groups

    Project configuration

    Asset

    Asset types

    Generalized Asset concept

    Relationships

    Permissions

    System

    Project

    Database

    Project

    Asset

  • 8/14/2019 Copy of F1

    8/21

    Presentation8

    F1 System features

    Installation configuration

    Installer DBMS host configuration Flexible installation topology

    User & Group management LDAP Authentication

    Capability registration

    Licensing of capabilities

    Disaster recovery

    Audit logging Security violations Configuration changes

    Diagnostics Scheduled tasks management with mail notifications

    FTP & WebDav server

    System

  • 8/14/2019 Copy of F1

    9/21

    Presentation9

    F1 System services

    Database support

    Connection pooling

    Resource tracking and management

    Support for multiple DBMS

    XML wrapping of SQL thus abstracting SQL out of code

    User Interface framework Extensible client for new capabilities

    Localizable

    Infrastructure for main UI constructs for consistency

    Infrastructure to ensure efficient server communications

    Events

    Scripting

    System

  • 8/14/2019 Copy of F1

    10/21

    Presentation1

    F1 Project Databases

    Created on a DBMS host

    Configuration of content storage

    Revision libraries

    DBMS storage

    Container for one or more projects Container for configurations across projects

    Example: promotion model (versioning), asset typesetup (content management)

    Management of Users, Groups & Permissions acrossprojects

    Project

    Database

  • 8/14/2019 Copy of F1

    11/21

  • 8/14/2019 Copy of F1

    12/21

    Presentation1

    F1 Assets

    Asset is Reference point between capabilities

    Everything is an asset: files, folders, issues, workflow tasks,requirements,

    Assets are typed by mimetype, capability type

    Additional capability specific data can be added

    Asset types Hierarchy of types

    Definition of properties system and capability required

    Definition of Metadata user configurable

    Fine grained permission control as asset by asset basis Modeled after Windows NT permission model

    Audit log of asset related operations

    User, time, operation, description Extendable by capabilities

    System Asset service provide storage and linear versioning

    Asset

  • 8/14/2019 Copy of F1

    13/21

    Presentation1

    F1 Capabilities

    Encapsulates business objects and related businesslogic

    Objects implemented as F1 Assets

    Logic implemented as F1 Commands

    Self contained package

    Enabled by licensing

    Extends Server Interface with new functionality

    Extends Repository data model with new tables, columns

    Builds on F1 Server framework

    Built using F1 Capability SDK

    TBD

  • 8/14/2019 Copy of F1

    14/21

    Presentation1

    Interfacing to F1

    Server Interface

    The interface point

    Identical and collapsible In-proc and Remote interface

    In-Proc (Java)

    Remote (C++ or Java)

    Pluggable transport HTTP and Socket

    Designed to be efficient

    Java C++

    F1

    In-Proc

    Server Interface

    Transport

    Remote

    Server Interface

    Transport

    Socket/HTTP

    Remote

    Server Interface

    Transport

    Presentation ServerIntegrations

  • 8/14/2019 Copy of F1

    15/21

    Presentation1

    Presentation Server on Server Interface

    UI Framework

    Session Management

    Track active workspace andother session states

    User preferences

    Open SelectionSets other Server Interfaceresources

    Caching

    Frequently used metadata

    Project configuration Types (Mime, Asset,

    Contribution, )

    Load balancing

    Presentation Server

    F1-UI Framework

    Server Interface

    Transport

    Services

    Administration

    Configuration

    Authentication

    Session Mgmt.

    Versioning

    ContentMgmt.

    IssueMgmt.

    Workflow

    VM CM IM WF

    Server Interface

    Transport

    VM CM IM WF

    Administration

    Configuration

    Versioning

    ContentMgmt.

    IssueMgmt.

    Workflow

  • 8/14/2019 Copy of F1

    16/21

    Developing new capabilities

  • 8/14/2019 Copy of F1

    17/21

    Presentation1

    Capability Deliverables

    Client GUI desktop clients based on Server Interface Web application built on Presentation Server on Server Interface

    Server Interface Server Interface Capability object

    Remote and In-proc implementations

    Serializations for any payloads Server Capability

    Business Logic

    SQL Statements

    Data model schema

    Database upgrades

    Automated Test cases

    Well packaged functionality for other capabilities Versioned content storage from Versioning

  • 8/14/2019 Copy of F1

    18/21

    Presentation1

    Data model for capability

    Capability data model should contain new tables fornew properties

    Capability can refer/link into

    Asset

    Asset Types

    History

    Permission

    Project Users

    Projects

    Capability

    History

    Asset

  • 8/14/2019 Copy of F1

    19/21

    Presentation1

    Data model

    Asset table

    Unified way of referencing various kinds of businessobjects

    Allow requirements or issues to contain references to anyobject type

    Allows storage of content through Asset system service Optionally versioned content

    Permissions, Asset history

    History table

    Logging of events

    Centralized reporting on events across capabilities andobject types

  • 8/14/2019 Copy of F1

    20/21

    Presentation2

    Compromise Areas

    Extending existing tables vs. adding new

    Integration of functionality and business logic acrosscapabilities

    Data model upgrades

  • 8/14/2019 Copy of F1

    21/21

    Presentation2

    Defined model for business logic

    Strict set of rules for any business logic command

    Methods are Command object implementations

    Command object handles

    Database Connections, PreparedStatements,

    Resource tracking and cleanup Transactions

    Exception handling

    Diagnostics

    Error detection and reporting

    Scripting and Event hooking (incomplete planning)

    Database, platform and locale independent