System Specifications for an Information Sharing System (ISS):
Generic Reusable Form

Walt Scacchi

(Wscacchi@ics.uci.edu)

M271/F271

Preliminary Revision: 24 February 2003

Spring 2003





People roles: who uses <! -- an ISS>

Processes: what do they do

Inputs: what information do they put into <! -- an ISS>

Outputs: what information can they get out of <! -- an ISS>

System Components: what are the major software components of <! -- an ISS>
 
 

Note: What follows represents a high-level view of the specifications of <! -- an ISS> system (either a Global Peer-to-Peer File/Application Sharing System or an Enterprise (Web) Portal). It does NOT specify mid-level or low-level system features or operations. Thus, this is not a complete specification of the implementation of <! -- an ISS>. As such, when examining this system specification document, if you identify any system-related items that are missing or mis-stated, please bring them to the attention of the author.
 
 
 
 
 

ISS Domain Variables

You can find and replace the following variables in your project, if and when appropriate, with the reuse patterns indicated here:


 
 
 
 
 
 

People (stakeholders, actors, agents/ etc.) roles for <! -- an ISS>

Guidelines/Notes:

-- Identify roles as named objects (in boldface) and organize roles in a hierarchical abstraction.

-- Provide a brief narrative description of what people do in each role.

-- Identify concerns/issues for people in each role.
 
 
 
 
 
 
 
 

<! -- Institution>: One or more institutions (e.g., a business enterprise, a government agency, a university) provides the overall enterprise setting and workplace associated with the development, use, and evolution of <! -- an ISS>. The <! -- Sponsor> serves as the Executive that has committed resources to support <! -- an ISS> and to encourage its routine usage among the other people at the <! -- Institution>.

Concern: The institution operates either as a for-profit or non-profit enterprise. The institution seeks to offer products or services consistent with its mission and strategic objectives, while at the same time adhering to all applicable laws and community values. The institution may disconnect, terminate, or disassociate itself from activities or operations found to be in conflict with its mission, objectives, applicable laws and community values.
 
 
 
 

<! -- End-Users>:

Concerns:
 
 

<! -- Authors>:

Concerns:
 
 

<! -- Sponsor>:

Concerns:
 
 

<! -- Publishers>:

Concern: Assist <! -- Authors> in getting content into <! -- an ISS>
 
 
 
 

<! -- IS System Development Staff>:

Concerns:
 
 
 
 

<! -- an ISS> Role Hierarchy
 
 


 
 

Processes for <! -- an ISS>

Guidelines/Notes:

<Process-Identifier> </Process-Identifier> <Narrative> </Narrative> <Author> </Author> <Version> </Version> <Last-Modified-By> </Last-Modified-By> <People-Roles> </People-Roles> <Process> </Process> <Process-System-Components> </Process-System-Components>
 
 
 
 

System Process Specification Template: Copy and reuse as needed; then insert your project-specific information between the beginning <tag> and ending </tag>.


 

<Process-Identifier> </Process-Identifier>

<Narrative> </Narrative>

<Author> </Author>

<Version> </Version>

<Last-Modified-By> </Last-Modified-By>

<People-Roles> </People-Roles>

<Input-Objects> </Input-Objects>

<Output-Objects> </Output-Objects>

<Process> </Process>

<Process-System-Components> </Process-System-Components>
 
 
 
 
 
 
 
 
 
 
 
 
 
 

System Specification of the following Processes


 
 
 
 

<Process_Identifier>

Use <! -- an ISS> to Manage <! -- Institution> Content

</Process-Identifier>

<Narrative>

<! -- Institution> <! -- End-Users>, <! -- Authors>, <! -- Publishers>, and <! -- IS development staff> use <! -- an ISS> to access, browse/download, edit/update content associated with <! -- Institution> courses.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- Institution>, <! -- End-Users>, <! -- Authors>, <! -- Publishers>, and <! -- IS development staff>, <! -- Sponsor>

</People-Roles>

<Input-Objects>

content objects

</Input-Objects>

<Output-Objects>

views (copies) of content objects

</Output-Objects>

<Process>

All users (people) use <! -- an ISS> to organize, store and retrieve content object types approved by users and implemented by <! -- IS Development Staff>

</Process>
 
 

<Process-System-Components>

All <! -- an ISS> system components in operation.

</Process-System-Components>

Return to System Process Specifications
 
 
 
 

<Process_Identifier>

Create Content, Edit and Upload it into <! -- an ISS>

</Process_Identifier>

<Narrative>

<! -- Authors> create high-quality content that they edit/upload into <! -- an ISS> for access by <! -- End-Users> or others at <! -- Institution>.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- Authors>

</People-Roles>

<Input-Objects>

content objects

</Input-Objects>

<Output-Objects>

views (copies) of content objects

</Output-Objects>

<Process>

</Process>

<Process-System-Components>

<! -- Authors> can select any tools available to them to create content. <! -- Authors> can edit content entered and stored within a Database Management System or Network File Server incorporated within <! -- an ISS> via an Input Object content form accessed with a Web (client) Browser, by directly editing the content in the form.

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Edit, Upload and Check Content for <! -- Authors>

</Process-Identifier>

<Narrative>

<! -- Publishers> edit and upload content that <! -- Authors> have created and forwarded to them to post in <! -- an ISS>.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- Publishers>, <! -- Authors>

</People-Roles>

<Input-Objects>

content objects

</Input-Objects>

<Output-Objects>

views (copies) of content objects

</Output-Objects>

<Process>

</Process>

<Process-System-Components>

<! -- Publishers> can select any tools available to them to edit content created by <! -- Authors>. <! -- Publishers> can edit content entered and stored within a Database Management System or Network File Server incorporated within <! -- an ISS> via an Input Object content form accessed with a Web (client) Browser, by directly editing the content in the form.

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Download Content for Examination or Review

</Process-Identifier>

<Narrative>

<! -- End-Users>, <! -- Publishers>>, and <! -- Authors> regularly browse/download content for courses posted in <! -- an ISS>. The <! -- Sponsor> and <! -- IS development staff> may less frequently download content from <! -- an ISS>.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- End-Users>, <! -- Publishers>, <! -- Authors>, <! -- Sponsor> and <! -- IS development staff>

</People-Roles>

<Input-Objects>

Content navigation selection commands (e.g., mouse clicks on hyperlinked content, pull-down menu item selection, check box selection)

</Input-Objects>

<Output-Objects>

views (copies) of selected content objects

</Output-Objects>

<Process>

System error: <! -- an ISS> will not allow search or download of <! -- an ISS> content if the <! -- an ISS> DBMS is unavailable.

</Process>

<Process-System-Components>

Web (client) Browser, <! -- an ISS> Web server, Database Management System, Network File Server.

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Upload messages or personal information

</Process-Identifier>

<Narrative>

<! -- End-Users> are encouraged to upload/post messages using <! -- Asynchronous messaging system> or <! -- Synchronous messaging system> that can be browsed/downloaded by other users of <! -- an ISS>. <! -- Authors> may also upload personal information for storage within and dissemination from <! -- an ISS>.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- End-Users>, <! -- Authors>

</People-Roles>

<Input-Objects>

Messages (text), file attachments, input submission selection commands (e.g., mouse clicks on button)

</Input-Objects>

<Output-Objects>

views (copies) of message content, file attachments in client display

</Output-Objects>

<Process>

</Process>

<Process-System-Components>

Separate or embedded <! -- Asynchronous messaging system>, <! -- Synchronous messaging system> client (peer).

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Do Email

</Process-Identifier>

<Narrative>

All users can send and receive Email content and file attachments, either from within or external to <! -- an ISS>.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- End-Users>, <! -- Publishers>, <! -- Authors>, <! -- Sponsor> and <! -- IS development staff>

</People-Roles>

<Input-Objects>

Email content, email file attachments

</Input-Objects>

<Output-Objects>

copies (views) of Email content, email file attachments

</Output-Objects>

<Process>

</Process>

<Process-System-Components>

An Email system external to, or accessed from within, <! -- an ISS>, and an Email client for reading, writing and sending Email content.

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Do User Messaging

</Process-Identifier>

<Narrative>

<! -- Authors> can request <! -- End-users> to engage in sending and receiving message between one another in order to conduct a shared discussion or review of some designated content topic.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- End-users>, <! -- Authors>

</People-Roles>

<Input-Objects>

Messages (text), file attachments, messaging input submission selection commands (e.g., mouse clicks on button)

</Input-Objects>

<Output-Objects>

views (copies) of message content, file attachments in client display

</Output-Objects>

<Process>

</Process>

<Process-System-Components>

Separate or embedded <! -- Asynchronous messaging system>, <! -- Synchronous messaging system> client (peer).

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Access other Web Content via <!-- an ISS>

</Process-Identifier>

<Narrative>

Any user of <! -- an ISS> can navigate from managed content to access any Web content object through its Web Browser.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- End-Users>, <! -- Publishers>, <! -- Authors>, <! -- Sponsor> and <! -- IS development staff>

</People-Roles>

<Input-Objects>

Web Browser navigation selection commands (e.g., mouse clicks on hyperlinked content objects).

</Input-Objects>

<Output-Objects>

Views (copies) of Web content objects, Applets downloaded into Web Browser

</Output-Objects>

<Process>

System error: <! -- an ISS> may unexpectedly terminate a user session if a user accesses Web items that attempt to upload information into <! -- an ISS>, or launch applications unknown to <! -- an ISS>.

</Process>

<Process-System-Components>

Web (client) Browser, (Optional: Browser plug-ins and Helper applications), <! -- an ISS> Web server

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Manage <! -- an ISS> Content

</Process-Identifier>

<Narrative>

<! -- IS Development Staff> create, test, and modify (i.e., insert, update, delete) logical data models and physical data storage representations (e.g., Database schemas specified in SQL. Files and directories for organizing content stored in a networked file server) that other users employ to insert, update, delete, select or browse content of interest.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- IS Development Staff>

</People-Roles>

<Input-Objects>

logical data models, physical data storage representations, repository source code, Web Server servlets (e.g., CGI programs or scripts), content test cases, and updates to same.

</Input-Objects>

<Output-Objects>

versions of <! -- an ISS> content repository suitable for either further development, testing, production, or archiving; also result displays from content test cases or repository error messages.

</Output-Objects>

<Process>

</Process>

<Process-System-Components>

<! -- an ISS> content repository, including a Database Management System, Network File Server, and Web Server.

</Process-System-Components>

Return to System Process Specifications
 
 

<Process-Identifier>

Develop and Test <! -- an ISS>

</Process-Identifier>

<Narrative>

The <! -- an ISS> <! -- IS development staff> are responsible for developing, testing, and investigating reports of system anomalies from users of <! -- an ISS> at <! -- Institution>.

</Narrative>

<Author>Walt Scacchi</Author>

<Version>2003/05/12/22:00</Version>

<Last-Modified-By>Walt Scacchi</Last-Modified-By>

<People-Roles>

<! -- IS Development Staff>

</People-Roles>

<Input-Objects>

logical data models, physical data storage representations, <! -- an ISS> application and repository source code, Web Server servlets (e.g., CGI programs or scripts), content test cases, Browser client Applets, and updates to same.

</Input-Objects>

<Output-Objects>

versions of all <! -- an ISS> system components suitable for either further development, testing, production, or archiving; also result displays from content test cases or repository error messages.

</Output-Objects>

<Process>

</Process>

<Process-System-Components>

Development, test, operational and archived versions of all <! -- an ISS> system components; also all system development and testing tools available to the <! -- IS Development Staff>.

</Process-System-Components>

Return to System Process Specifications
 
 
 
 
 
 

ISS Process Hierarchy


 
 

Inputs for <! -- an ISS>

Guidelines/Notes:

-- Identify type of Input as named objects (in boldface)

-- There are many types and kinds of information content managed by <! -- an ISS>. I identify those Inputs/Outputs that I have created, used, or seen. Subsequently, there may be other Inputs/Outputs for <! -- an ISS> that are unknown or unfamiliar to me, so let me know J .


 
 

Outputs for <! -- an ISS>

Guidelines/Notes:

-- Identify types of Output as named objects (in boldface)


 
 
 
 
 
 

<! -- an ISS> Object Hierarchy
 
 
 
 
 
 

System components for <! -- an ISS>

Guidelines/Notes:

-- Identify components as named objects (in boldface) and organize in a hierarchical abstraction.

-- We will limit our attention here to the main software components of the operational system. Software tools, programs or platforms employed to support ongoing development, testing and maintenance of <! -- an ISS> are not included. Furthermore, there exists some hardware configuration that operates the <! -- an ISS> server and content repository, but those are unknown to me, at this time. User clients generally operate on a user's PC, laptop, or workstation, whether running at home, work or at UCI.

-- Optional: a brief description of each component is included.

User Clients

Content Server Content Repository