A Reference Framework for Requirements and Architecture in Biomedical Grid Systems

合集下载

《软件工程》习题汇锦

《软件工程》习题汇锦

《软件工程》习题汇锦一、单项选择题提示:在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在下表中。

错选、多选或未选均无分.1. ( )If a system is being developed where the customers are not sure of what theywant, the requirements are often poorly defined。

Which of the following would be an appropriate process model for this type of development?(A)prototyping(B)waterfall(C)V-model(D)spiral2. ()The project team developing a new system is experienced in the domain.Although the new project is fairly large, it is not expected to vary much from applications that have been developed by this team in the past. Which process model would be appropriate for this type of development?(A)prototyping(B)waterfall(C)V-model(D)spiral3. ()Which of the items listed below is not one of the software engineering layers?(A)Process(B)Manufacturing(C)Methods(D)T ools4. ()Which of these are the 5 generic software engineering framework activities?(A)communication,planning,modeling,construction,deployment(B) communication, risk management, measurement,production, reviewing(C)analysis,designing,programming, debugging, maintenance(D)analysis, planning,designing,programming,testing5. ()The incremental model of software development is(A)A reasonable approach when requirements are well defined.(B)A good approach when a working core product is required quickly。

完善管理制度英文

完善管理制度英文

完善管理制度英文IntroductionA well-structured and efficient management system is crucial for the smooth operation of any organization. It provides a framework for decision-making, ensures compliance with regulations and standards, and helps in achieving the organizational goals. In this report, we will discuss the implementation of a comprehensive management system within an organization, including the necessary steps, the key components, and the benefits of a well-implemented management system.The Implementation ProcessThe implementation of a management system requires careful planning, effective communication, and commitment from the leadership team. The following steps should be followed for the successful implementation of a management system:1. Identify the need: The first step in implementing a management system is to identify the need for it. This could be due to the organization’s growth, change in regulations, or the desire to improve operational efficiency. It is important to understand the specific requirements of the organization and the areas where a management system can make a significant impact.2. Set objectives: Once the need for a management system has been identified, the next step is to set clear and achievable objectives. These objectives should be aligned with the overall strategic goals of the organization and should address the specific needs identified in the previous step.3. Select a framework: There are several management system frameworks available, such as ISO 9001, ISO 14001, and OHSAS 18001. The organization should select a framework that best fits its requirements. It is important to understand the specific requirements of each framework and how they align with the organization’s objectives.4. Develop a plan: The implementation of a management system requires a detailed plan that outlines the steps to be taken, the timeline for implementation, and the resources required. The plan should also include a risk assessment and a mitigation strategy to address any potential challenges that may arise during implementation.5. Communication and training: Effective communication is crucial during the implementation of a management system. It is important to clearly communicate the objectives, the benefits, and the expectations from the management system to all the stakeholders within the organization. In addition, training should be provided to the employees to ensure they understand their roles and responsibilities in the new system.6. Implementation: The next step is the actual implementation of the management system. This may involve changes to processes, documentation, and the adoption of new tools andtechnologies. It is important to monitor the progress of the implementation and make any necessary adjustments to ensure a smooth transition.Key Components of a Management SystemA well-implemented management system should include the following key components:1. Policy and objectives: The management system should be based on a clear policy that outlines the organization’s commitment to quality, environmental sustainability, or occupational health and safety, depending on the specific focus of the system. In addition, specific objectives should be set to address the organization’s goals in these areas.2. Documentation: The management system should include a comprehensive set of documentation that outlines the processes, procedures, and work instructions to be followed by the employees. This documentation should be easily accessible and regularly updated to reflect any changes in the system.3. Risk management: The management system should include a robust risk management process to identify, assess, and mitigate any potential risks to the organization. This may involve conducting risk assessments, implementing controls, and developing contingency plans.4. Monitoring and measurement: The management system should include a process for monitoring and measuring the performance of the organization in relation to the objectives set. This may involve the collection of data, analysis of performance indicators, and regular reporting to the management team.5. Continual improvement: A well-implemented management system should include a process for continual improvement. This may involve conducting regular audits, seeking feedback from stakeholders, and identifying opportunities for enhancing the system.Benefits of a Well-implemented Management SystemA well-implemented management system can bring numerous benefits to an organization, including:1. Improved operational efficiency: A management system can help streamline processes, eliminate waste, and improve productivity, leading to overall operational efficiency.2. Enhanced compliance: A well-implemented management system can help an organization comply with industry regulations, standards, and best practices, reducing the risk of non-compliance.3. Better decision-making: A management system provides a framework for making informed decisions, based on data and analysis, leading to better outcomes for the organization.4. Increased customer satisfaction: A well-implemented management system can lead to improved product quality, faster delivery times, and better customer service, resulting in higher customer satisfaction.5. Reduced costs: A management system can help identify and eliminate unnecessary expenses, leading to cost savings for the organization.ConclusionThe implementation of a management system is a complex process that requires careful planning, effective communication, and commitment from the leadership team. However, the benefits of a well-implemented management system can far outweigh the effort involved in its implementation. A well-implemented management system can lead to improved operational efficiency, enhanced compliance, better decision-making, increased customer satisfaction, and reduced costs for the organization. Therefore, it is important for organizations to invest in the implementation of a comprehensive management system to achieve long-term success and sustainability.。

USB Type-C 规范1.2(中文版)

USB Type-C 规范1.2(中文版)
INTELLECTUAL PROPERTY DISCLAIMER
知识产权声明
THIS SPECIFICATION IS PROVIDED TO YOU “AS IS” WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE. THE AUTHORS OF THIS SPECIFICATION DISCLAIM ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PROPRIETARY RIGHTS, RELATING TO USE OR IMPLEMENTATION OF INFORMATION IN THIS SPECIFICATION. THE PROVISION OF THIS SPECIFICATION TO YOU DOES NOT PROVIDE YOU WITH ANY LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS.
预发行行业审查公司提供反馈
Revision History.......................................................................................................................14
LIMITED COPYRIGHT LICENSE: The USB 3.0 Promoters grant a conditional copyright license under the copyrights embodied in the USB Type-C Cable and Connector Specification to use and reproduce the Specification for the sole purpose of, and solely to the extent necessary for, evaluating whether to implement the Specification in products that would comply with the specification.

规范和通用规范怎么用英语表达

规范和通用规范怎么用英语表达

规范和通用规范怎么用英语表达Standard and General StandardIn the field of industry, standards play a vital role in ensuring consistency, efficiency and safety. Standards can be categorized into two types: specific standards and general standards. Specific standards are industry-specific and focus on a particular product or process, while general standards apply to various industries and provide a framework for quality and performance.Specific standards, also known as technical standards, are developed to address the specific requirements or characteristics of a particular product or industry. For example, in the automotive industry, there are specific standards for engine performance, emissions, safety features, and so on. These standards are developed by industry associations, regulatory bodies, and experts in the field to ensure that products meet the required performance and safety standards.General standards, on the other hand, are broad-based and apply to multiple industries or sectors. These standards are usually developed by recognized standard-setting organizations such as the International Organization for Standardization (ISO). General standards provide a framework for quality management, environmental management, occupational health and safety, information security, and other aspects of business operations. They help organizations streamline their processes, enhance customer satisfaction, and comply with legal and regulatory requirements.Using English to express the concepts of specific standards and general standards, we can say:Specific standards are industry-specific guidelines that focus on the requirements and characteristics of a particular product or process. These standards are tailored to address the unique challenges and considerations of specific industries, ensuring that products meet industry performance, safety, and quality requirements.General standards, on the other hand, are overarching guidelines that apply to various industries and sectors. These standards provide a framework for best practices and help organizations adhere to quality, safety, environmental, and other management principles. They promote consistency, efficiency, and effectiveness across industries, allowing organizations to meet customer expectations and comply with legal and regulatory requirements. In conclusion, specific standards and general standards are both essential in maintaining consistency, efficiency, and safety in industries. Specific standards address the unique requirements of a particular product or process, while general standards provide a broader framework for quality and performance across industries. By adhering to these standards, organizations can provide reliable products and services, enhance customer satisfaction, and achieve operational excellence.。

Requirements_Definition

Requirements_Definition

Requirements Definition How we should (attempt to) specify exactly what is needed before we start designing12Requirements DefinitionRequirements describe the necessary functions and features of the system we are to conceive, design,implement and operate.PerformanceScheduleCost Other Characteristics (e.g. lifecycle properties)Requirements are often organized hierarchically At a high level requirements focus on what should be achieved, not how to achieve itRequirements are specified at every level, from the overall system to each hardware and software component.Critically important to establish properly4Importance of TechnicalRequirements Development (2/2)Provides a baseline for verificationOrganizations can develop their validation and verification plans much more productively from a good requirements document.The requirements document provides a baseline against which compliance can be measured.The requirements are also used to provide the stakeholders with a basis for acceptance of thesystem.Facilitates transfer of the product tonew users or new machines. Serve as a basis for later enhancement or alteration of the finished product.MOE, MOP, TPMRelationship8Technical Requirements Definition Best Practice Process Flow DiagramActivitiesInputOutput910Requirements AllocationDecompose system requirements into lower levels of design.Define all the lower level functions which must be performed to satisfy the requirement Create architecture of sub-components to provide thosefunctionsAllocate a level of performance to each lower level functionSpecify interface requirements to other sub-systems Closure -Ensure that satisfaction of the set of requirements at the lower level will guarantee satisfaction of the higher level requirement .Requirements Analysis. The requirementsanalysis is this: First we determine thefunctions that must be accomplished for thesubsystem to meet its requirement. Then wecreate an architecture for the subsystem madeup of sub-components and define therequirements for each sub-component. Willthis set of requirements ensure satisfaction ofthe requirements at the higher level? Is the setboth necessary and sufficient? Then we iteratethe allocation of requirements to optimize thedesign. As we proceed down into therequirement/architecture tree, we may learnthat we need to revise an upper level of thearchitecture, using different subsystems orrequirement allocation to optimize the overalldesign.11Requirement Allocation Process.Requirements are always developed fromthe top down. We begin with the top-levelfunctional requirements and decompose itinto what is necessary to achieve itsfunctional capability. Then we specify whateach sub-component will have to do, howwell it will have to function to provide thatcapability. This process often includesnegotiation and balancing betweensubsystems to minimize the overall effort.13Sometimes it is necessary to push back onrequirements when the cost to achieve thestated capability is too great. We also prioritizerequirements when not all requirements can beachieved. The set of subsystems, togetherwith the requirements necessary and sufficientto guarantee the performance of the systemabove, is called an architecture. It is only onearchitecture of potentially many and may notbe optimum. We continue to iterate the designand apportionment of requirements to optimizethe design, maximizing some performancefactor or minimizing cost or schedule.1415VerificationEvery requirement must be verified to ensure that the proposed design actually satisfies the requirement byExamination, Test,Demonstration, orAnalysisRequirement documentation specifies the development phase and method of verification。

上海CMC培训生物利用度和生物等效性在仿制药和新药申请中的法规要求幻灯片PPT

上海CMC培训生物利用度和生物等效性在仿制药和新药申请中的法规要求幻灯片PPT

BE Study Designs 生物等效性试验的设计
Single-dose, two-way crossover, fasted Single-dose, two-way crossover, fed Alternatives
• Single-dose, parallel, fasted • Long Half-Life (wash-out): Amiodarone, Etidronate
• Products are pharmaceutical equivalents
• Drug substance is highly soluble and highly permeable and is not considered have a narrow therapeutic range
Plasma Concentration Profile 血药浓度时间曲线
Points to Consider – BA 生物利用度PK指标
For bioavailability studies, our primary “metric〞 of interest is:
area under the concentration-time curve (AUC) AUC is a derived parameter, it is not observed
Agenda议程
General BA/BE生物利用度和生物等效性内容概述
Biowaiver 生物等效性试验豁免
Regulatory requirements for BE supplies, sample storage and data analysis 生物等效性试验的法规要求
BE and 505(b)(2) NDA 生物等效性和505(b)(2) 类新药上 市申报申请

英美合同法生效条件

英美合同法生效条件

英美合同法生效条件Contract law is a fundamental aspect of a legal system, providing the framework for agreements between parties to be enforceable. In both the UK and the US, certain requirements must be met for a contract to be considered legally binding. The first key requirement is that there must be an offer made by one party to another, which sets out the terms of the agreement. This offer must be clear and unequivocal, indicating a willingness to enter into a contract under the specified terms.合同法是法律体系的一个基本方面,为各方之间的协议提供可执行的框架。

在英国和美国,合同要想被视为具有法律约束力,必须满足一定的要求。

第一个关键要求是必须有一方向另一方提出的要约,详细规定了协议的条款。

这个要约必须明确而明确,表明愿意按照指定的条款进入合同。

Furthermore, the second requirement for a contract to be valid is the acceptance of the offer by the other party. Acceptance must be unequivocal and in accordance with the terms set out in the offer. This acceptance creates a meeting of the minds between the parties, indicating their mutual agreement to be bound by the terms of thecontract. Without a valid acceptance, there can be no contract formed between the parties.此外,合同有效的第二个要求是另一方对要约的接受。

工作流参考模型英文

工作流参考模型英文

工作流参考模型英文Workflow Reference ModelIntroductionIn today's highly competitive business environment, organizations strive to optimize their operations and processes to improve efficiency and productivity. One of the key ways to achieve this is by implementing effective workflow management systems. A workflow refers to the series of tasks, activities, and steps that are necessary to complete a specific process or project. A workflow management system enables organizations to streamline their processes, automate tasks, and monitor progress, leading to improved productivity and better quality output. This article will provide a comprehensive reference model for designing and implementing a workflow management system.1. Workflow DefinitionThe first step in implementing a workflow management system is to define the workflows. This involves identifying the key processes and tasks within an organization and mapping out the sequence of activities required to complete these processes. It is important to involve all relevant stakeholders, including employees, managers, and subject matter experts, in this process to ensure a comprehensive understanding of the workflows.2. Workflow AnalysisAfter defining the workflows, the next step is to analyze them.This involves identifying bottlenecks, inefficiencies, and areas where automation can be implemented. A thorough analysis of the workflows allows organizations to identify areas for improvement and design more efficient processes. Workflow analysis can be done through process mapping, data analysis, and collaboration with the employees involved in the workflows.3. Workflow DesignOnce the workflows have been defined and analyzed, the next step is to design the workflows. This involves determining the sequence of tasks, setting up standards and guidelines, and designing the workflow structure. Workflow design also includes creating decision points, defining inputs and outputs, and identifying the roles and responsibilities of individuals involved in the workflows. It is important to consider the organization's goals, resources, and constraints during the workflow design phase.4. Workflow AutomationAutomation is a key aspect of workflow management systems as it eliminates manual, repetitive tasks and allows employees to focus on more value-added activities. Workflow automation involves implementing software tools and technologies that automate tasks, facilitate communication and collaboration, and monitor progress. Automation can be achieved through the use of workflow management software, integration with other systems, and the use of artificial intelligence and machine learning technologies.5. Workflow ImplementationAfter designing the workflows and automating tasks, the next step is to implement the workflows. This involves training employees on the new processes, communicating the changes, and integrating the workflows into the organization's existing systems and processes. Workflow implementation also involves monitoring and evaluating the workflows to ensure they are delivering the desired outcomes. Feedback from employees and stakeholders should be collected and used to make any necessary adjustments or improvements to the workflows.6. Workflow Monitoring and ControlOnce the workflows have been implemented, it is important to monitor and control them to ensure they are functioning effectively. Workflow monitoring involves tracking the progress of tasks, identifying bottlenecks, and monitoring key performance indicators to measure the efficiency and effectiveness of the workflows. Workflow control involves taking corrective actions when necessary, such as reassigning tasks, reallocating resources, or making process improvements based on the monitoring data.7. Continuous ImprovementWorkflow management is an iterative process that requires continuous improvement. Organizations should regularly review and evaluate their workflows, gather feedback from employees and stakeholders, and identify areas for further optimization. Continuous improvement involves making ongoing adjustments and enhancements to the workflows to ensure they remain alignedwith the organization's goals and objectives.ConclusionImplementing an effective workflow management system is essential for organizations to optimize their operations, improve efficiency, and achieve better outcomes. This reference model provides a comprehensive framework for designing and implementing a workflow management system. By following this model, organizations can streamline their processes, automate tasks, and monitor progress to achieve higher productivity, better quality output, and a competitive edge in the market.8. Workflow IntegrationAnother important aspect of workflow management is integrating workflows with other systems and processes within the organization. This ensures smooth flow of information and tasks, eliminating silos and improving efficiency. Workflow integration involves connecting the workflow management system with other software applications, such as customer relationship management (CRM) systems, enterprise resource planning (ERP) systems, and project management tools. Integration allows data and tasks to be seamlessly transferred between systems, reducing manual effort and data duplication.Integration also enables real-time data sharing, providing stakeholders with a comprehensive view of the workflows and facilitating better decision-making. For example, integrating the workflow management system with a CRM system allows sales teams to access customer data and update it in real-time, improvingcustomer service and sales effectiveness. Similarly, integrating the workflow management system with a project management tool enables project managers to track project progress and allocate resources efficiently.9. Workflow CollaborationCollaboration is a crucial aspect of workflow management as it promotes communication, knowledge sharing, and teamwork. A workflow management system should include features that facilitate collaboration among team members working on a workflow. This includes features such as task assignment, notification system, and document sharing.Task assignment allows workflow managers to assign tasks to specific individuals or teams, ensuring clear accountability and ownership of tasks. A notification system notifies team members about new tasks, task updates, or deadlines, ensuring everyone is aware of their responsibilities and can take appropriate action. Document sharing enables team members to collaborate on documents, share feedback, and make updates in real-time, improving productivity and reducing version control issues.10. Workflow OptimizationContinuous optimization is a key aspect of workflow management. Once the workflows have been implemented, organizations should regularly review and evaluate their effectiveness. This involves analyzing key performance indicators (KPIs) and gathering feedback from employees and stakeholders.KPIs can include metrics such as cycle time, throughput, and error rates, which provide insights into the efficiency and effectiveness of the workflows. Gathering feedback from employees and stakeholders allows organizations to identify areas for improvement and make necessary adjustments to the workflows.Workflow optimization may involve making process improvements, reallocating resources, or reassigning tasks to improve efficiency and reduce bottlenecks. It may also involve exploring new technologies or tools that can further optimize the workflows, such as artificial intelligence or machine learning algorithms that can automate decision-making or predict behavior patterns in the workflows.11. Workflow ScalabilityAs businesses grow and evolve, their workflows may need to be scaled up or down to accommodate changing demands. Therefore, a workflow management system should be designed to be scalable, allowing organizations to easily adjust their workflows as needed. Scalability can be achieved through flexible workflow design, modular architecture, and the ability to easily add or remove tasks and processes. It also involves having a robust infrastructure that can handle increased workflow volume without sacrificing performance or causing system downtime.Additionally, a scalable workflow management system should be able to integrate with other systems and technologies seamlessly,allowing for future expansion or integration with new systems. 12. Workflow Security and ComplianceAnother important aspect of workflow management is ensuring the security and compliance of the workflows. Organizations need to protect sensitive data and ensure that workflows adhere to applicable regulations and industry standards.Workflow management systems should have built-in security features, such as access control, authentication, and encryption, to protect data from unauthorized access or breaches. They should also support auditing and logging capabilities to track and monitor workflow activities, ensuring compliance with regulatory requirements.Moreover, organizations should regularly assess their workflows for risks and vulnerabilities and implement appropriate controls to mitigate them. This may involve conducting risk assessments, implementing cybersecurity measures, and training employees on data protection and compliance standards.ConclusionA well-designed and implemented workflow management system can significantly improve productivity, efficiency, and quality of output for organizations. This reference model provides a comprehensive framework for organizations to follow when designing, implementing, and managing their workflows.By defining and analyzing workflows, designing efficient processes, automating tasks, and integrating systems, organizations can streamline their operations and achieve better outcomes. Collaboration, optimization, scalability, and security are all essential considerations to ensure the ongoing success of the workflows.Continuous improvement is crucial in maintaining the effectiveness of workflows, as organizations need to adapt to changing business demands and leverage emerging technologies. By following this model and continuously optimizing their workflows, organizations can stay competitive and achieve their goals in today's fast-paced business environment.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

A Reference Framework for Requirements and Architecture inBiomedical Grid SystemsVito Perrone2, Chris A. Mattmann1, 3, Sean Kelly1, Daniel J. Crichton1,Anthony Finkelstein2, Nenad Medvidovic31Jet Propulsion Lab {mattmann,kelly} @Univ. College London{v.perrone,a.finkelstein}@Univ. of Southern California{mattmann,neno}@ AbstractIn this paper we introduce the work done to define a framework for requirements and architectural understanding in biomedical grid computing systems. A set of core requirements for biomedical grids have been identified on the basis of our experience in the analysis and development of several biomedical and other grid systems including the National Cancer Institute’s Early Detection Research Network (EDRN) in the US and the National Cancer Research Institute (NCRI) Platform in the UK. The requirements have been specified taking into account different points of view and are intended as a core set that can be extended on the basis of project specific aspects. These are also mapped to existing architectures of biomedical grid systems, and their constituent components. Such a framework is intended as a guide for equipping developers with conceptual tools to avoid costly mistakes when architecting biomedical grid systems.1. IntroductionDuring the last ten years, biomedical research has grown rapidly fuelled in parts by the advances in computational bioinformatics, government support, and increase of interest for molecular-based medicine and in the use of Internet and information technologies (IT). Many data repositories and services have been developed and made accessible through the Internet to researchers who need to use them in their daily research activities. Often, however, these resources have been developed in independent projects and suffer of most of the known incompatibilities [1], e.g., heterogeneous data formats, and models. Such incompatibilities hamper the typical researcher’s tasks where access and use of data available in different repositories is required. To address this problem requires recognizing that true advances in biomedicine can be achieved if data produced in countless distributed initiatives can be accessed in an integrated way, alleviating the heterogeneity of the data and systems involved. Several efforts have been established worldwide aimed at developing large-scale integrative systems that deal with the aforementioned problems. Most of these projects have similar objectives and propose similar solutions. For instance, many projects use the grid paradigm as reference for the system development, and reference implementations such as Globus [2] have been adopted to some extent. However, the research literature concerning existing projects mainly focuses on technical issues, whereas analysis and early architecture design aspects have not received, in our view, the attention they deserve. We believe that this course is extremely risky for the community since poor understanding of requirements can lead to system that is different from what users really need. Furthermore, wrong architectural choices (again related to poor understanding of requirements) can lead to the development of ineffective systems, high maintenance costs, and scalability problems.Over the last years we have been involved in the analysis and development of several gridsystems in the biomedical and in other e-science domains [1, 3-7]. We have also reviewed the documentation available for many other existing grid projects [8, 9]. We have observed that although projects may refer to (domain-)specific topics in e-science, all share a number of aspects and achievements upon which other similar systems can capitalize. This is even more evident if we restrict our focus on a particular domain such as biomedicine. Given our specific expertise on requirements analysis and architecture design, we have recently begun a project aimed at defining a reference framework where a core set of requirements for biomedical systems are related to architectural choices, including definition of a set of canonical components and styles for biomedical grid systems. Our work is intended to provide guidelines and reference requirements and architectural patterns to biomedical grid analysts and designers, allowing them to capitalize on the work we and other practitioners have done in similar projects.2. Background and Related WorkThere have been several high-level efforts to describe over-arching challenges for biomedical grid systems [6, 10, 11]. Where these efforts lack is in the formal, principled definition of requirements in the domain. Some of our recent projects have studied formal grid requirements specification in general [8, 9], however, these projects focus on general computational and data grid requirements, neglecting to consider the domain specific requirements for biomedical grids as a whole. Our current work on biomedical grids focuses on defining the general grid requirements, and additionally defining and capturing those requirements specific to the biomedical community, e.g., the system shall interface with picture archiving and communication services.Our work is grounded within the context of two real-world, biomedical grid projects. The first, the U.S. National Cancer Institute (NCI)’s Early Detection Research Network (EDRN) [4, 5, 7], is a large-scale research network comprising over 31 institutions and a large number of researchers supporting the early detection of cancer in the United States. The second project is the UK’s National Cancer Research Institute (NCRI) [12], a network of 20 member organizations supporting common plans for cancer research and strategic initiative in the UK. Within the context of these two projects, we have delivered operational grid software, engineered formal requirements and specifications for biomedical grid software components, and participated in the development of ontologies and vocabulary allowing cancer researchers to discover and annotate their data. Our work can be compared with Brenton et al. [10] which describes the European Data Grid project in the context of supporting biomedical informatics. The authors describe three key genomics challenges that biomedical grids must address: (1) data acquisition and storage, (2) access to external bioinformatics web resources, and (3) local data management. The authors explain several core components for biomedical grids, including science processing algorithms, and grid middleware. These coarse-grained components map to our fine-grained biomedical components described in Section 4. In contrast to Brenton et al., our work identifies similar core components, but also shows their mapping to the core requirements, and a set of core architectural principles. Brenton et al.’s work is similar to that of Pohjonen et al. [13], who describe the use of biomedical grids in the pervasive computing domain.3. Defining Core Requirements for Biomedical Grid SystemsBiomedical grids are generally large-scale systems addressing the key issues of data and services sharing in an open and changing community. In such a context a clear understanding of the key goals and requirements is crucial to avoid developing a system that does not fit the stakeholders’ expectations. The complexities of the biomedical domain are two-fold: theheterogeneity of initiatives and stakeholders and the high level of specialization of the various sub-fields that can contribute to the grid system. Both of these complexities pose several challenges to requirements engineers and architecture designers. It is crucial to adopt systematic requirements engineering methods to master the complexity and remove early any ambiguity potentially leading to late failure. On the other hand, it is known [14] that in many cases such techniques are not widely adopted in the practice even in the case of complex systems development.In our analysis we have adopted rigorous requirements engineering techniques such as the ViewPoints framework [15] and goal oriented methods [16] to analyze the requirements of our systems. By leveraging basic system engineering principles such as separation of concerns,decentralization, layering, etc.,these techniques have allowed us to achieve two main results: (1) Isolate a core set of requirements which can be considered typical of this category of systems; (2) Take into account explicitly the different perspectives that coexist in such a category of systems in order to analyze early potential conflicts and synchronies [17]. The requirements we have identified can be considered a core set which should apply, in variable measure, to any biomedical grid project but that can be extended and adapted on the basis of each project peculiarities. These are not intended as all the possible requirements of any biomedical system but as a guide analysts and designers involved in the development of biomedical systems can use to drive the analysis activities and the architecture definition. To address this objective, requirements have been specified in a way that is general enough to concern a category of systems rather than to a specific system, but detailed enough to relate them to specific architectural choices (as we detail in Section 4). Both functional and non-functional requirements are been covered. Their description reflects the multi-perspective analysis we have carried out. Given their purpose, only three high level perspectives have been considered: the grid users, the resource providers and the grid (i.e. the system being developed and its proponents). Grid Users are those stakeholders who need to find and use biomedical data for their daily work. The grid will provide them with the needed functionalities to discover, access and process the needed data. Different types of users should be considered, however it is often important to distinguish between naive user and the expert user, depending on their skills and their attitude as to dealing with informatics resources. Resource providers are organizations that curate either data repositories or services registries [18]. Generally resource providers provide the data or services that may be used by the grid users in their daily activities. The grid generally enables access and integration of data across the various resource providers and may support data publishing from researchers to resources. Finally, the grid point of view considers the organization(s) involved in the deployment of the grid system. Requirements have been grouped into a number of categories that can be considered high level functionalities or qualities the system has to provide, including 7 categories of functional requirements and 7 non-functional ones. Lack of space prevents us to describe in full all the requirements we have identified. As an example, Figure 1 shows some R2: Data access Two main aspects related to data access should be considered: data querying and data presentation. Considering data querying, users should be provided with different ways to discover the needed data. Naive users should be provided with simple search interfaces and some guidance (e.g. classifications) to access the available data and services. Expert users should be provided with interface to query on all the available metadata and on the most relevant data fields in the target data format. Researchers are usually familiar with some existing biomedical terminologies (ontologies) therefore these should be used whenever possible to build the query. If available, mapping between terminologies may be used so that researchers can choose the terminology they are more familiar with. ….. Concerning data presentation, data retrieved from different sources should be presented integrated and the impact of dealing with different data formats should be minimized. To avoid information overload, user interfaces should provide features to narrow the retrieved set and preview and detailed views implemented……….Given the high dynamicity of information generated in many biomedical fields and the need of constantly up to date information, both push and pull data querying techniques should be supported…. Resource providers are mainly concerned with access policies being respected and system overhead minimized…….Figure 1: Examples of functional requirements from the frameworkexcerpts from the specification of a functional category, R2-Data Access. As for any requirement, generic considerations along with the perspectives of the three types of stakeholders are discussed and specific sub requirements identified. The multi-perspective view and the categorization should also ease adaptation and extension of this core set to encompass the specific characteristics of biomedical grid projects.4. Relating Requirements to Architectural ChoicesThere are many architectural styles regularly utilized in grid systems as we have noted in our previous work [8]. Architectural styles are key design idioms that guide the componentization, and assembly of software architectures in a given family of software systems. There have been numerous identified architectural styles over the years (see [19-21]), including pipe-and-filter, and peer-to-peer styles. The chosen architectural style for a software system can greatly affect its design and requirements. Thus, the architectural style chosen for a biomedical grid should reify the design constraints and requirements presented in the prior section. The two pervasive styles used in biomedical grid systems are: (1) the client/server style, and (2) the peer-to-peer style. For example, client/server style components regularly involve synchronous interactions, which are highly reliable. Client/server components are well suited to deal with data access. On the other hand, peer-to-peer components are highly scalable, involving asynchronous interactions, and fault tolerance. Such components are more easily suited to deal with load, capacity and scalability requirements.We have found there to be four main architectural principles, that, coupled with the above two architectural styles, guide the set of canonical components for a biomedical grid. The first principle, division of labor (AP1), ensures that no one component in the system is responsible for providing all of its capabilities. This principle allows biomedical grid components to support “plug and play” architectures, and load, capacity and scaling. The second principle, technology independence (AP2), mandates that the underlying implementation substrate not dictate the architecture of the system, and vice versa. This principle directly affords biomedical grid components extensibility, and modularity, supporting the large amount of the aforementioned heterogeneity of the domain. The third principle, metadata as a first class citizen (AP3), recognizes the need for explicit software components to manage metadata, or data about data. Metadata describes the scientific data in a biomedical grid, allowing complex search, and discovery of images, specimens, through components such as metadata registries. The fourth principle is separation of the software and data models (AP4), allowing both to evolve independently. Because data, software, and users are highly heterogeneous in biomedical grid systems, the software that is used to realize the grid must not be directly tied to the data that it manages. Put simply, a change in the data model (e.g., the addition of an attribute to describe an image) should not mandate a change in the software implementation.Using the aforementioned styles, and architectural principles, we have deduced the core classes of components required in any biomedical grid. This set is not meant to be exhaustive, but represents a tangible milestone as we move forward with our understanding of such systems. The first class of biomedical grid component is a data repository. Data repositories manage science data information, such as locations of files, their identifiers, and sizes. Data repositories are client/server components that address data access and management requirements, ensuring that there exists due division of labor within the system. The second class of components is metadata registries that are client/server components that catalog and manage metadata. Metadata stored by the registry generally falls into three categories: housekeeping information (e.g., object id, collection time), resource information (e.g., author, creator, location),and domain-specific information (e.g., specimen code, patient id). Metadata registries directly address the separation of software and data model principle, as well as the metadata as a first class citizen principle. The third class of components is workflow components . Workflow components are responsible for managing scientific data “pipelines”: essentially pipe-and-filter style [22] compositions of processing algorithms that allow scientists to generate derived data and value added science from original raw samples. Workflow components fulfill the architectural principles of division of labor, and technology independence. This class of components fulfills data publishing, user interface and application-level requirements. The final class of components is data distribution and retrieval components. Data distribution and retrieval components allow for users in the biomedical grid to access and retrieve data from data repositories. Data distribution also occurs between components within the biomedical grid, such as between two data repositories, or between a workflow component and a data repository. These components directly support technology independence, and software and data model independence. Additionally, these components address requirements data management, data access, data publishing, and performance . Table 1 summarizes a sampling of the requirements discussed in the prior section, identifying the relationships with architectural principles (AP) and components described above. 5. Discussion and Future WorkClear understanding of requirements and their relationships with architectural choices is a critical success factor for any large-scale project. However, the complexity of the bioinformatics poses challenges to the teams involved in the analysis and architecture design for grid systems. State-of-art requirements and software engineering techniques can help to master the complexity but often the teams involved are not sufficiently equipped or the project(s) lack funding to perform a thorough analysis. Drawing on our experience, we have developed a framework where a set of core requirements distilled from the biomedical domain has been related to typical architectural choices of grid systems. Although we do not claim that our work is a ready to use as requirements and architecture specification yet we believe it can provide significant guidance to teams involved in the development of grid systems in the biomedical domain. The framework can be considered either a starting point for analysis activities or a reference against which the requirements and architecture Table 1. Partial mapping of requirements to architectural principles and core componentsAP1 AP2 AP3 AP4 Data Repositories Metadata Registries Workflow Components Data Distribution DataManagementX X X Data AccessX X X MetadataX X X DataPublishingX X UserInterfaceX Applicationsand ToolsX X CompatibilityX X Load,Capacity andScalability X X X X Xspecification of a new grid system can be compared. The framework has been conceived to enable its extension to encompass the characteristics of a specific system. Requirements are extended either by specializing the requirements within one of the proposed stakeholders [15] or by specializing the stakeholders. Of course this approach does not prevent introducing new independent stakeholders and/or requirements. We note that introducing new requirements could entail new conflicts that will need to be resolved. Although given its abstract nature it is impossible to evaluate the coverage of requirements and architectural components with respect to a generic biomedical grid system, we have validated it against our case study projects and a number of other projects such as [10, 11, 13, 23] (using the publicly available documentation) obtaining encouraging results.References[1] A. M. Ouksel and A. Sheth, "Semantic Interoperability in Global Information Systems," ACM SIGMODRecord, 1999.[2] C. Kesselman, et al., "The Anatomy of the Grid: Enabling Scalable Virtual Organizations," Intl' Journal ofSupercomputing Applications, pp. 1-25, 2001.[3] R. D. Bentley, et al., "EGSO - The European Grid of Solar Observations," In Proc. 10th European SolarPhysics Meeting "Solar Variability: From the Core to Outer Frontiers", 2002.[4] D. Crichton, et al., "A Distributed Information Services Architecture to Support Biomarker Discovery inEarly Detection of Cancer," In Proc. 2nd IEEE e-Science and Grid Computing Conference, Amsterdam, the Netherlands, 2006.[5] D. J. Crichton, et al., "An Interoperable Data Architecture for Data Exchange in a Biomedical ResearchNetwork," In Proc. CBMS, 2001.[6] A. Finkelstein, et al., "Computational Challenges of Systems Biology," Computer, vol. 37, pp. 26-33, 2004.[7] H. Kincaid, et al., "A National Virtual Specimen Database for Early Cancer Detection," In Proc. CBMS,2003.[8] A. Finkelstein, et al., "Relating Requirements and Architectures: A Study of Data Grids," J. Grid Computing,vol. 2, pp. 207-222, 2004.[9] C. Mattmann, et al., "Unlocking the Grid," In Proc. Component-based Software Engineering (CBSE), St.Louis, MO, 2005.[10] V. Brenton, et al., "DataGrid, Prototype of a Biomedical Grid," Methods of Information in Medicine, vol. 42,pp. 143-147, 2003.[11] K. H. Buetow, "Cyberinfrastructure: Empowering a "Third Way" in Biomedical Research," Science, vol. 308,pp. 821-824, 2005.[12] V. Perrone, et al., "Developing an Integrative Platform for Cancer Research: a Requirements EngineeringPerspective," In Proc. 5th e-Science All Hands Meeting, 2006.[13] H. Pohjonen, et al., "Pervasive Access to Images and Data -- The Use of Computing Grids andMobile/Wireless Devices Across Healthcare Enterprises," IEEE Trans. Information Technology in Biomedicine, vol. 11, pp. 81-86, 2007.[14] H. Kaindl, et al., "Requirements Engineering and Technology Transfer: Obstacles, Incentives andImprovement Agenda," Requirements Engineering, vol. 7, pp. 113-123.[15] A. Finkelstein, et al., "Viewpoints: A Framework for Integrating Multiple Perspectives in SystemsDevelopment," Intl' Journal of Software Engineering and Knowledge Engineering, vol. 2, 1992.[16] A. Dardenne, et al., "Goal-Directed Requirements Acquisition," Science of Computer Programming, vol. 20,1993.[17] A. v. Lamsweerde, et al., "Managing Conflicts in Goal-Driven Requirements Engineering," IEEE TSE, vol.24, pp. 908-926, 1998.[18] "Information Architecture Reference Model," CCSDS, Draft Informational Report, Green Book CCSDS-312.0-G-0, 2006.[19] R. Fielding, "Architectural Styles and the Design of Network-based Software Architectures", Ph.D.,University of California, Irvine, 2000.[20] R. Khare and R. N. Taylor, "Extending the Representational State Transfer (REST) Architectural Style forDecentralized Systems," In Proc. ICSE, Edinburgh, Scotland, 2004.[21] R. N. Taylor, et al., "A Component-and-Message-Based Architectural Style for GUI Software," IEEETransactions on Software Engineering, vol. 22, pp. 390-406, 1996.[22] M. Shaw and D. Garlan, Software architecture : perspectives on an emerging discipline. Upper Saddle River,N.J.: Prentice Hall, 1996.[23] caBIG, /, 2007。

相关文档
最新文档