Quality

Extensibility: The proposed architecture is based on Components adhering to well-defined interfaces and industry based standards (J2EE), so adding new features and implementing new components will not require extensive rework of existing components.

Reliability: The architecture uses standard J2EE architecture and will have the capabilities of Load balancing. Fail-over mechanisms will improve the reliability of the system.

Portability: The Enterprise Service Layer abstracts the platform and protocol specific implementation of common services into a generic set of interfaces. Clients use these interfaces to access the services are not tied to protocol/platform. It will be possible to port applications to different protocols/platforms by implementing the Generic set of interfaces on the client protocol/platform.

By complying with J2EE standards, it will be possible to port the application to multiple server vendors.

Glossary

No. Term Description
ReCAP Research Collections and Preservation Consortium (ReCAP) is a storage facility for all the shared collection items.
UML Unified Modeling Language (UML) is a standardized, general-purpose modeling language in the field of software engineering
GFA LAS Generation Fifth Applications - Library Archive System is an inventory management system from Generation FifthApplications which catalogs and controls archival storage of shared collection items in the ReCAP facility.
Patrons Users of the System who place a request for a shared collection item/items.
ReCAP Middleware The central component of this architecture which handles search, discover, request processing, reporting and collection management for a shared collection item by interacting with other components in the system.
Shared collection items Any item stored in the ReCAP facility which can be requested by any of the partners.
Institution items Any item stored in the ReCAP facility which can be requested only by the owning partner.
Refiling Refiling is a process of re-shelving the item in the ReCAP facility.
Item Records An item record represents a physical piece in the library
Bib Records A bibliographic record is an entry being a uniform representation and description of a specific content item in a bibliographic database (or a library catalog), containing data elements required for its identification and retrieval, as well as additional supporting information, presented in a formalized bibliographic format
Federated Search Federated search is an information retrieval technology that allows the simultaneous search of multiple searchable resources
SOA Service-oriented architecture (SOA) is a flexible set of design principles used during the phases of systems development and integration
Temporary item record An item record which is created in any of the partners ILS which is temporary in nature and requires deletion in the near future
Circulation policies Rules related to circulation of any given item to a patron
Hold To place a hold on an item means to reserve it. An item that is checked out may have a hold placed on it by another patron who wishes to use it. When the item is returned, the library will contact the patron who is waiting so they may come in and check it out.
Recall Recall is a special type of request by a library to a borrower for the return of a borrowed item before the due date.
Owning institution Any institution which borrows an item which belongs to itself is called an owning institution.
Borrowing institution Any institution which borrows an item which belongs to other partners is called an borrowing institution.
Accession The process of recording an item and its location in the ReCAP facility into the GFA LAS system.
Barcodes A barcode is an optical machine-readable representation of data relating to the object to which it is attached. Every item such as books or films and location such as aisle, shelf, and bin has a unique barcode.
Circulation code A unique identifier for every item which dictates its circulation policy.
Collection Code A code which is assigned to determine the scope of the sharing of an item.
Customer Code A unique identifier which is currently used in GFA to identify a group to which an item belongs.
Staff interfaces User Interface screens for Library staff
Borrow Direct Borrow Direct is an interlibrary borrowing service offered by all of the Ivy League Universities except Harvard.
Source Control Repositories It’s a space set aside to maintain code base for the ReCAP middleware project.
SVN(Apache Subversion) It’s a type of Source control repository.
CVS(Concurrent Version System) It’s a type of Source control repository.
NCIP Responders National Information Standards Organization Circulation Interchange Protocol (NCIP) is a protocol that is limited to the exchange of messages between and among computer-based applications to enable them to perform functions necessary to lend and borrow items, to provide controlled access to electronic resources, and to facilitate cooperative management of these functions. It’s a mechanism by which ReCAP middleware communicates with any of the ILS which belongs to the participating institutions.
Fault tolerance Fault-tolerant describes a computer system or component designed so that, in the event that a component fails, a backup component or procedure can immediately take its place with no loss of service.
Cluster A cluster is a group of servers and other resources that act like a single system and enable high availability and, in some cases, load balancing and parallel processing.
Shard A shard is a term which is used in SolrCloud a feature in Apache SOLR which enables high fault toleranceof SolrCores.
Load Balancer Load Balancer achieves high fault tolerance by distributing incoming requests across one or more web servers.
Deaccession It is a process of withdrawing an item from ReCAP facility
RDS Amazon Relational Database Service (Amazon RDS) is a web service that makes it easy to set up, operate, and scale a relational database in the cloud
AZ Multi-AZ deployment is for enhanced data durability and availability
IOPS The ability which Amazon provides to specify or provision the I/O capacity needs is called IOPS.
EC2 Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud
EBS Amazon Elastic Block Store (EBS) provides block level storage volumes for use with Amazon EC2 instances
Elastic Load Balancing Elastic Load Balancing automatically distributes incoming application traffic across multiple Amazon EC2 instances
S3 Amazon S3 is storage for the Internet. Amazon S3 provides a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web

References

No. Reference Author
ReCAP Technology Report.doc Marshall Breeding
ReCAP Grant Overview.doc ReCAP Team
ReCAP Technology Workshop.ppt Marshall Breeding
ReCAP Shared Collection Policies.doc Lizanne Payne
ReCAP Workflows.doc HTC Team
  1. R

    | ReCAP NCIP.doc | HTC Team | | | ReCAP Library Archival System API Requirements.doc | HTC Team |

Naming and Coding Standards

Project will adopt the following industry standard naming and coding standards:

No. Reference URL
Code Conventions for the Java TM Programming Language http://www.oracle.com/technetwork/java/javase/documentation/codeconvtoc-136057.html
Guidelines, Patterns, and code for end-to-end Java applications http://www.oracle.com/technetwork/java/namingconventions-139351.html
J2EE Patterns http://www.oracle.com/technetwork/java/catalog-137601.html

| Securing Web Applications | http://docs.oracle.com/javaee/5/tutorial/doc/bncbx.html | | | CERT Secure Coding Standards – Java Guidelines | https://www.securecoding.cert.org/confluence/display/java/Java+Coding+Guidelines | |

  1. .

    | Secure Coding Guidelines for Java SE | http://www.oracle.com/technetwork/java/seccodeguide-139067.html | | | Open Web Application Security Project | https://www.owasp.org/index.php/OWASP_Secure_Coding_Practices_-_Quick_Reference_Guide | | | Cloud Infrastructure | https://media.amazonwebservices.com/AWS_Cloud_Best_Practices.pdf |